aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_def.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_def.h')
-rw-r--r--drivers/scsi/qla2xxx/qla_def.h23
1 files changed, 12 insertions, 11 deletions
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h
index 645cfd9e6cf6..57d659cf99ee 100644
--- a/drivers/scsi/qla2xxx/qla_def.h
+++ b/drivers/scsi/qla2xxx/qla_def.h
@@ -93,6 +93,7 @@
93#define LSD(x) ((uint32_t)((uint64_t)(x))) 93#define LSD(x) ((uint32_t)((uint64_t)(x)))
94#define MSD(x) ((uint32_t)((((uint64_t)(x)) >> 16) >> 16)) 94#define MSD(x) ((uint32_t)((((uint64_t)(x)) >> 16) >> 16))
95 95
96#define MAKE_HANDLE(x, y) ((uint32_t)((((uint32_t)(x)) << 16) | (uint32_t)(y)))
96 97
97/* 98/*
98 * I/O register 99 * I/O register
@@ -179,6 +180,7 @@
179#define REQUEST_ENTRY_CNT_24XX 2048 /* Number of request entries. */ 180#define REQUEST_ENTRY_CNT_24XX 2048 /* Number of request entries. */
180#define RESPONSE_ENTRY_CNT_2100 64 /* Number of response entries.*/ 181#define RESPONSE_ENTRY_CNT_2100 64 /* Number of response entries.*/
181#define RESPONSE_ENTRY_CNT_2300 512 /* Number of response entries.*/ 182#define RESPONSE_ENTRY_CNT_2300 512 /* Number of response entries.*/
183#define RESPONSE_ENTRY_CNT_MQ 128 /* Number of response entries.*/
182 184
183struct req_que; 185struct req_que;
184 186
@@ -2008,7 +2010,8 @@ typedef struct vport_params {
2008#define VP_RET_CODE_NOT_FOUND 6 2010#define VP_RET_CODE_NOT_FOUND 6
2009 2011
2010struct qla_hw_data; 2012struct qla_hw_data;
2011 2013struct req_que;
2014struct rsp_que;
2012/* 2015/*
2013 * ISP operations 2016 * ISP operations
2014 */ 2017 */
@@ -2030,10 +2033,9 @@ struct isp_operations {
2030 void (*enable_intrs) (struct qla_hw_data *); 2033 void (*enable_intrs) (struct qla_hw_data *);
2031 void (*disable_intrs) (struct qla_hw_data *); 2034 void (*disable_intrs) (struct qla_hw_data *);
2032 2035
2033 int (*abort_command) (struct scsi_qla_host *, srb_t *, 2036 int (*abort_command) (srb_t *);
2034 struct req_que *); 2037 int (*target_reset) (struct fc_port *, unsigned int, int);
2035 int (*target_reset) (struct fc_port *, unsigned int); 2038 int (*lun_reset) (struct fc_port *, unsigned int, int);
2036 int (*lun_reset) (struct fc_port *, unsigned int);
2037 int (*fabric_login) (struct scsi_qla_host *, uint16_t, uint8_t, 2039 int (*fabric_login) (struct scsi_qla_host *, uint16_t, uint8_t,
2038 uint8_t, uint8_t, uint16_t *, uint8_t); 2040 uint8_t, uint8_t, uint16_t *, uint8_t);
2039 int (*fabric_logout) (struct scsi_qla_host *, uint16_t, uint8_t, 2041 int (*fabric_logout) (struct scsi_qla_host *, uint16_t, uint8_t,
@@ -2079,7 +2081,6 @@ struct isp_operations {
2079#define QLA_PCI_MSIX_CONTROL 0xa2 2081#define QLA_PCI_MSIX_CONTROL 0xa2
2080 2082
2081struct scsi_qla_host; 2083struct scsi_qla_host;
2082struct rsp_que;
2083 2084
2084struct qla_msix_entry { 2085struct qla_msix_entry {
2085 int have_irq; 2086 int have_irq;
@@ -2140,7 +2141,6 @@ struct qla_statistics {
2140#define MBC_INITIALIZE_MULTIQ 0x1f 2141#define MBC_INITIALIZE_MULTIQ 0x1f
2141#define QLA_QUE_PAGE 0X1000 2142#define QLA_QUE_PAGE 0X1000
2142#define QLA_MQ_SIZE 32 2143#define QLA_MQ_SIZE 32
2143#define QLA_MAX_HOST_QUES 16
2144#define QLA_MAX_QUEUES 256 2144#define QLA_MAX_QUEUES 256
2145#define ISP_QUE_REG(ha, id) \ 2145#define ISP_QUE_REG(ha, id) \
2146 ((ha->mqenable) ? \ 2146 ((ha->mqenable) ? \
@@ -2170,6 +2170,7 @@ struct rsp_que {
2170 struct qla_hw_data *hw; 2170 struct qla_hw_data *hw;
2171 struct qla_msix_entry *msix; 2171 struct qla_msix_entry *msix;
2172 struct req_que *req; 2172 struct req_que *req;
2173 srb_t *status_srb; /* status continuation entry */
2173}; 2174};
2174 2175
2175/* Request queue data structure */ 2176/* Request queue data structure */
@@ -2246,7 +2247,8 @@ struct qla_hw_data {
2246 struct rsp_que **rsp_q_map; 2247 struct rsp_que **rsp_q_map;
2247 unsigned long req_qid_map[(QLA_MAX_QUEUES / 8) / sizeof(unsigned long)]; 2248 unsigned long req_qid_map[(QLA_MAX_QUEUES / 8) / sizeof(unsigned long)];
2248 unsigned long rsp_qid_map[(QLA_MAX_QUEUES / 8) / sizeof(unsigned long)]; 2249 unsigned long rsp_qid_map[(QLA_MAX_QUEUES / 8) / sizeof(unsigned long)];
2249 uint16_t max_queues; 2250 uint8_t max_req_queues;
2251 uint8_t max_rsp_queues;
2250 struct qla_npiv_entry *npiv_info; 2252 struct qla_npiv_entry *npiv_info;
2251 uint16_t nvram_npiv_size; 2253 uint16_t nvram_npiv_size;
2252 2254
@@ -2532,6 +2534,7 @@ struct qla_hw_data {
2532 uint16_t num_vsans; /* number of vsan created */ 2534 uint16_t num_vsans; /* number of vsan created */
2533 uint16_t max_npiv_vports; /* 63 or 125 per topoloty */ 2535 uint16_t max_npiv_vports; /* 63 or 125 per topoloty */
2534 int cur_vport_count; 2536 int cur_vport_count;
2537 uint16_t flex_port_count;
2535 2538
2536 struct qla_chip_state_84xx *cs84xx; 2539 struct qla_chip_state_84xx *cs84xx;
2537 struct qla_statistics qla_stats; 2540 struct qla_statistics qla_stats;
@@ -2591,8 +2594,6 @@ typedef struct scsi_qla_host {
2591#define SWITCH_FOUND BIT_0 2594#define SWITCH_FOUND BIT_0
2592#define DFLG_NO_CABLE BIT_1 2595#define DFLG_NO_CABLE BIT_1
2593 2596
2594 srb_t *status_srb; /* Status continuation entry. */
2595
2596 /* ISP configuration data. */ 2597 /* ISP configuration data. */
2597 uint16_t loop_id; /* Host adapter loop id */ 2598 uint16_t loop_id; /* Host adapter loop id */
2598 2599
@@ -2648,7 +2649,7 @@ typedef struct scsi_qla_host {
2648#define VP_ERR_FAB_LOGOUT 4 2649#define VP_ERR_FAB_LOGOUT 4
2649#define VP_ERR_ADAP_NORESOURCES 5 2650#define VP_ERR_ADAP_NORESOURCES 5
2650 struct qla_hw_data *hw; 2651 struct qla_hw_data *hw;
2651 int req_ques[QLA_MAX_HOST_QUES]; 2652 struct req_que *req;
2652} scsi_qla_host_t; 2653} scsi_qla_host_t;
2653 2654
2654/* 2655/*