diff options
author | James Smart <james.smart@emulex.com> | 2010-04-06 14:48:51 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2010-04-11 14:44:44 -0400 |
commit | b19a061a785db22401b62cc4ee2baf95d5c7e2e7 (patch) | |
tree | cc5219324cd5a59455f195f51afe9807d3b07595 /drivers/scsi/lpfc/lpfc_hw4.h | |
parent | 40364a40b68a26cc882df05f7cc7f0ad87aac935 (diff) |
[SCSI] lpfc 8.3.12: Emulex SLI enhancements
- Add the new Logical Link speed event support.
- Add RATOV and EDTOV to the REG_VFI mailbox command.
Signed-off-by: Alex Iannicelli <alex.iannicelli@emulex.com>
Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_hw4.h')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_hw4.h | 53 |
1 files changed, 51 insertions, 2 deletions
diff --git a/drivers/scsi/lpfc/lpfc_hw4.h b/drivers/scsi/lpfc/lpfc_hw4.h index bff98add80cd..bbdcf96800f6 100644 --- a/drivers/scsi/lpfc/lpfc_hw4.h +++ b/drivers/scsi/lpfc/lpfc_hw4.h | |||
@@ -787,6 +787,7 @@ struct mbox_header { | |||
787 | #define LPFC_MBOX_OPCODE_EQ_DESTROY 0x37 | 787 | #define LPFC_MBOX_OPCODE_EQ_DESTROY 0x37 |
788 | #define LPFC_MBOX_OPCODE_QUERY_FW_CFG 0x3A | 788 | #define LPFC_MBOX_OPCODE_QUERY_FW_CFG 0x3A |
789 | #define LPFC_MBOX_OPCODE_FUNCTION_RESET 0x3D | 789 | #define LPFC_MBOX_OPCODE_FUNCTION_RESET 0x3D |
790 | #define LPFC_MBOX_OPCODE_MQ_CREATE_EXT 0x5A | ||
790 | 791 | ||
791 | /* FCoE Opcodes */ | 792 | /* FCoE Opcodes */ |
792 | #define LPFC_MBOX_OPCODE_FCOE_WQ_CREATE 0x01 | 793 | #define LPFC_MBOX_OPCODE_FCOE_WQ_CREATE 0x01 |
@@ -1108,6 +1109,39 @@ struct lpfc_mbx_mq_create { | |||
1108 | } u; | 1109 | } u; |
1109 | }; | 1110 | }; |
1110 | 1111 | ||
1112 | struct lpfc_mbx_mq_create_ext { | ||
1113 | struct mbox_header header; | ||
1114 | union { | ||
1115 | struct { | ||
1116 | uint32_t word0; | ||
1117 | #define lpfc_mbx_mq_create_ext_num_pages_SHIFT 0 | ||
1118 | #define lpfc_mbx_mq_create_ext_num_pages_MASK 0x0000FFFF | ||
1119 | #define lpfc_mbx_mq_create_ext_num_pages_WORD word0 | ||
1120 | uint32_t async_evt_bmap; | ||
1121 | #define lpfc_mbx_mq_create_ext_async_evt_link_SHIFT LPFC_TRAILER_CODE_LINK | ||
1122 | #define lpfc_mbx_mq_create_ext_async_evt_link_MASK 0x00000001 | ||
1123 | #define lpfc_mbx_mq_create_ext_async_evt_link_WORD async_evt_bmap | ||
1124 | #define lpfc_mbx_mq_create_ext_async_evt_fcfste_SHIFT LPFC_TRAILER_CODE_FCOE | ||
1125 | #define lpfc_mbx_mq_create_ext_async_evt_fcfste_MASK 0x00000001 | ||
1126 | #define lpfc_mbx_mq_create_ext_async_evt_fcfste_WORD async_evt_bmap | ||
1127 | #define lpfc_mbx_mq_create_ext_async_evt_group5_SHIFT LPFC_TRAILER_CODE_GRP5 | ||
1128 | #define lpfc_mbx_mq_create_ext_async_evt_group5_MASK 0x00000001 | ||
1129 | #define lpfc_mbx_mq_create_ext_async_evt_group5_WORD async_evt_bmap | ||
1130 | struct mq_context context; | ||
1131 | struct dma_address page[LPFC_MAX_MQ_PAGE]; | ||
1132 | } request; | ||
1133 | struct { | ||
1134 | uint32_t word0; | ||
1135 | #define lpfc_mbx_mq_create_q_id_SHIFT 0 | ||
1136 | #define lpfc_mbx_mq_create_q_id_MASK 0x0000FFFF | ||
1137 | #define lpfc_mbx_mq_create_q_id_WORD word0 | ||
1138 | } response; | ||
1139 | } u; | ||
1140 | #define LPFC_ASYNC_EVENT_LINK_STATE 0x2 | ||
1141 | #define LPFC_ASYNC_EVENT_FCF_STATE 0x4 | ||
1142 | #define LPFC_ASYNC_EVENT_GROUP5 0x20 | ||
1143 | }; | ||
1144 | |||
1111 | struct lpfc_mbx_mq_destroy { | 1145 | struct lpfc_mbx_mq_destroy { |
1112 | struct mbox_header header; | 1146 | struct mbox_header header; |
1113 | union { | 1147 | union { |
@@ -1434,8 +1468,8 @@ struct lpfc_mbx_reg_vfi { | |||
1434 | #define lpfc_reg_vfi_fcfi_WORD word2 | 1468 | #define lpfc_reg_vfi_fcfi_WORD word2 |
1435 | uint32_t wwn[2]; | 1469 | uint32_t wwn[2]; |
1436 | struct ulp_bde64 bde; | 1470 | struct ulp_bde64 bde; |
1437 | uint32_t word8_rsvd; | 1471 | uint32_t e_d_tov; |
1438 | uint32_t word9_rsvd; | 1472 | uint32_t r_a_tov; |
1439 | uint32_t word10; | 1473 | uint32_t word10; |
1440 | #define lpfc_reg_vfi_nport_id_SHIFT 0 | 1474 | #define lpfc_reg_vfi_nport_id_SHIFT 0 |
1441 | #define lpfc_reg_vfi_nport_id_MASK 0x00FFFFFF | 1475 | #define lpfc_reg_vfi_nport_id_MASK 0x00FFFFFF |
@@ -2048,6 +2082,7 @@ struct lpfc_mqe { | |||
2048 | struct lpfc_mbx_reg_fcfi reg_fcfi; | 2082 | struct lpfc_mbx_reg_fcfi reg_fcfi; |
2049 | struct lpfc_mbx_unreg_fcfi unreg_fcfi; | 2083 | struct lpfc_mbx_unreg_fcfi unreg_fcfi; |
2050 | struct lpfc_mbx_mq_create mq_create; | 2084 | struct lpfc_mbx_mq_create mq_create; |
2085 | struct lpfc_mbx_mq_create_ext mq_create_ext; | ||
2051 | struct lpfc_mbx_eq_create eq_create; | 2086 | struct lpfc_mbx_eq_create eq_create; |
2052 | struct lpfc_mbx_cq_create cq_create; | 2087 | struct lpfc_mbx_cq_create cq_create; |
2053 | struct lpfc_mbx_wq_create wq_create; | 2088 | struct lpfc_mbx_wq_create wq_create; |
@@ -2106,6 +2141,7 @@ struct lpfc_mcqe { | |||
2106 | #define LPFC_TRAILER_CODE_LINK 0x1 | 2141 | #define LPFC_TRAILER_CODE_LINK 0x1 |
2107 | #define LPFC_TRAILER_CODE_FCOE 0x2 | 2142 | #define LPFC_TRAILER_CODE_FCOE 0x2 |
2108 | #define LPFC_TRAILER_CODE_DCBX 0x3 | 2143 | #define LPFC_TRAILER_CODE_DCBX 0x3 |
2144 | #define LPFC_TRAILER_CODE_GRP5 0x5 | ||
2109 | }; | 2145 | }; |
2110 | 2146 | ||
2111 | struct lpfc_acqe_link { | 2147 | struct lpfc_acqe_link { |
@@ -2175,6 +2211,19 @@ struct lpfc_acqe_dcbx { | |||
2175 | uint32_t trailer; | 2211 | uint32_t trailer; |
2176 | }; | 2212 | }; |
2177 | 2213 | ||
2214 | struct lpfc_acqe_grp5 { | ||
2215 | uint32_t word0; | ||
2216 | #define lpfc_acqe_grp5_pport_SHIFT 0 | ||
2217 | #define lpfc_acqe_grp5_pport_MASK 0x000000FF | ||
2218 | #define lpfc_acqe_grp5_pport_WORD word0 | ||
2219 | uint32_t word1; | ||
2220 | #define lpfc_acqe_grp5_llink_spd_SHIFT 16 | ||
2221 | #define lpfc_acqe_grp5_llink_spd_MASK 0x0000FFFF | ||
2222 | #define lpfc_acqe_grp5_llink_spd_WORD word1 | ||
2223 | uint32_t event_tag; | ||
2224 | uint32_t trailer; | ||
2225 | }; | ||
2226 | |||
2178 | /* | 2227 | /* |
2179 | * Define the bootstrap mailbox (bmbx) region used to communicate | 2228 | * Define the bootstrap mailbox (bmbx) region used to communicate |
2180 | * mailbox command between the host and port. The mailbox consists | 2229 | * mailbox command between the host and port. The mailbox consists |