diff options
Diffstat (limited to 'include/scsi/fc/fc_fcp.h')
| -rw-r--r-- | include/scsi/fc/fc_fcp.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/include/scsi/fc/fc_fcp.h b/include/scsi/fc/fc_fcp.h index 652dec23051..9c8702942b6 100644 --- a/include/scsi/fc/fc_fcp.h +++ b/include/scsi/fc/fc_fcp.h @@ -20,6 +20,8 @@ #ifndef _FC_FCP_H_ #define _FC_FCP_H_ +#include <scsi/scsi.h> + /* * Fibre Channel Protocol for SCSI. * From T10 FCP-3, T10 project 1560-D Rev 4, Sept. 13, 2005. @@ -45,7 +47,7 @@ * FCP_CMND IU Payload. */ struct fcp_cmnd { - __u8 fc_lun[8]; /* logical unit number */ + struct scsi_lun fc_lun; /* logical unit number */ __u8 fc_cmdref; /* command reference number */ __u8 fc_pri_ta; /* priority and task attribute */ __u8 fc_tm_flags; /* task management flags */ @@ -57,7 +59,7 @@ struct fcp_cmnd { #define FCP_CMND_LEN 32 /* expected length of structure */ struct fcp_cmnd32 { - __u8 fc_lun[8]; /* logical unit number */ + struct scsi_lun fc_lun; /* logical unit number */ __u8 fc_cmdref; /* command reference number */ __u8 fc_pri_ta; /* priority and task attribute */ __u8 fc_tm_flags; /* task management flags */ @@ -125,6 +127,9 @@ struct fcp_txrdy { * * All response frames will always contain the fcp_resp template. Some * will also include the fcp_resp_len template. + * + * From Table 23, the FCP_RSP_INFO can either be 4 bytes or 8 bytes, both + * are valid length. */ struct fcp_resp { __u8 _fr_resvd[8]; /* reserved */ @@ -154,6 +159,9 @@ struct fcp_resp_rsp_info { __u8 _fr_resvd2[4]; /* reserved */ }; +#define FCP_RESP_RSP_INFO_LEN4 4 /* without reserved field */ +#define FCP_RESP_RSP_INFO_LEN8 8 /* with reserved field */ + struct fcp_resp_with_ext { struct fcp_resp resp; struct fcp_resp_ext ext; |
