[SCSI] add protocol definitions
authorJames Bottomley <James.Bottomley@HansenPartnership.com>
Sun, 3 Feb 2008 21:32:59 +0000 (15:32 -0600)
committerJames Bottomley <James.Bottomley@HansenPartnership.com>
Fri, 8 Feb 2008 00:02:41 +0000 (18:02 -0600)
A lot of SCSI command replies have a protocol ID field.  Add
definitions for the interpretation of that from SPC-3.

Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
include/scsi/scsi.h

index 82251575a9b45e1a4e24475dc71503deef0223a8..1f74bcd603fedaee2d513758add2ebe4d827fea6 100644 (file)
@@ -235,6 +235,20 @@ static inline int scsi_status_is_good(int status)
 #define TYPE_RBC           0x0e
 #define TYPE_NO_LUN         0x7f
 
+/* SCSI protocols; these are taken from SPC-3 section 7.5 */
+enum scsi_protocol {
+       SCSI_PROTOCOL_FCP = 0,  /* Fibre Channel */
+       SCSI_PROTOCOL_SPI = 1,  /* parallel SCSI */
+       SCSI_PROTOCOL_SSA = 2,  /* Serial Storage Architecture - Obsolete */
+       SCSI_PROTOCOL_SBP = 3,  /* firewire */
+       SCSI_PROTOCOL_SRP = 4,  /* Infiniband RDMA */
+       SCSI_PROTOCOL_ISCSI = 5,
+       SCSI_PROTOCOL_SAS = 6,
+       SCSI_PROTOCOL_ADT = 7,  /* Media Changers */
+       SCSI_PROTOCOL_ATA = 8,
+       SCSI_PROTOCOL_UNSPEC = 0xf, /* No specific protocol */
+};
+
 /* Returns a human-readable name for the device */
 extern const char * scsi_device_type(unsigned type);