diff options
Diffstat (limited to 'include/scsi/scsi.h')
-rw-r--r-- | include/scsi/scsi.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/scsi/scsi.h b/include/scsi/scsi.h index 32742c4563de..00137a7769ee 100644 --- a/include/scsi/scsi.h +++ b/include/scsi/scsi.h | |||
@@ -9,6 +9,7 @@ | |||
9 | #define _SCSI_SCSI_H | 9 | #define _SCSI_SCSI_H |
10 | 10 | ||
11 | #include <linux/types.h> | 11 | #include <linux/types.h> |
12 | #include <scsi/scsi_cmnd.h> | ||
12 | 13 | ||
13 | /* | 14 | /* |
14 | * The maximum number of SG segments that we will put inside a | 15 | * The maximum number of SG segments that we will put inside a |
@@ -400,6 +401,7 @@ struct scsi_lun { | |||
400 | #define SOFT_ERROR 0x2005 | 401 | #define SOFT_ERROR 0x2005 |
401 | #define ADD_TO_MLQUEUE 0x2006 | 402 | #define ADD_TO_MLQUEUE 0x2006 |
402 | #define TIMEOUT_ERROR 0x2007 | 403 | #define TIMEOUT_ERROR 0x2007 |
404 | #define SCSI_RETURN_NOT_HANDLED 0x2008 | ||
403 | 405 | ||
404 | /* | 406 | /* |
405 | * Midlevel queue return values. | 407 | * Midlevel queue return values. |
@@ -424,6 +426,22 @@ struct scsi_lun { | |||
424 | #define driver_byte(result) (((result) >> 24) & 0xff) | 426 | #define driver_byte(result) (((result) >> 24) & 0xff) |
425 | #define suggestion(result) (driver_byte(result) & SUGGEST_MASK) | 427 | #define suggestion(result) (driver_byte(result) & SUGGEST_MASK) |
426 | 428 | ||
429 | static inline void set_msg_byte(struct scsi_cmnd *cmd, char status) | ||
430 | { | ||
431 | cmd->result |= status << 8; | ||
432 | } | ||
433 | |||
434 | static inline void set_host_byte(struct scsi_cmnd *cmd, char status) | ||
435 | { | ||
436 | cmd->result |= status << 16; | ||
437 | } | ||
438 | |||
439 | static inline void set_driver_byte(struct scsi_cmnd *cmd, char status) | ||
440 | { | ||
441 | cmd->result |= status << 24; | ||
442 | } | ||
443 | |||
444 | |||
427 | #define sense_class(sense) (((sense) >> 4) & 0x7) | 445 | #define sense_class(sense) (((sense) >> 4) & 0x7) |
428 | #define sense_error(sense) ((sense) & 0xf) | 446 | #define sense_error(sense) ((sense) & 0xf) |
429 | #define sense_valid(sense) ((sense) & 0x80); | 447 | #define sense_valid(sense) ((sense) & 0x80); |