aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/be2iscsi/be_main.h
diff options
context:
space:
mode:
authorJayamohan Kallickal <jayamohank@gmail.com>2013-09-28 18:35:44 -0400
committerJames Bottomley <JBottomley@Parallels.com>2013-10-25 04:58:06 -0400
commit843ae752eea769899d3c2008d7f2b2e094ddb6cc (patch)
tree221d9768c1441a7be4509e030d9a958e8c1a6473 /drivers/scsi/be2iscsi/be_main.h
parent92665a6628902246368494972a38d84b1b091cb8 (diff)
[SCSI] be2iscsi: Config parameters update for Dual Chute Support
On the adapter iSCSI protocol can be loaded on either one or both the CHUTE.Check on which CHUTE iSCSI Protocol is loaded and get configuration parameters based on which driver initization is done. For BE-X family iSCSI protocol is loaded only on single chute. Signed-off-by: John Soni Jose <sony.john-n@emulex.com> Signed-off-by: Jayamohan Kallickal <jayamohan.kallickal@emulex.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/be2iscsi/be_main.h')
-rw-r--r--drivers/scsi/be2iscsi/be_main.h27
1 files changed, 16 insertions, 11 deletions
diff --git a/drivers/scsi/be2iscsi/be_main.h b/drivers/scsi/be2iscsi/be_main.h
index 6ac4f2f5bbaa..39bc1857adc5 100644
--- a/drivers/scsi/be2iscsi/be_main.h
+++ b/drivers/scsi/be2iscsi/be_main.h
@@ -271,6 +271,12 @@ struct invalidate_command_table {
271#define chip_be2(phba) (phba->generation == BE_GEN2) 271#define chip_be2(phba) (phba->generation == BE_GEN2)
272#define chip_be3_r(phba) (phba->generation == BE_GEN3) 272#define chip_be3_r(phba) (phba->generation == BE_GEN3)
273#define is_chip_be2_be3r(phba) (chip_be3_r(phba) || (chip_be2(phba))) 273#define is_chip_be2_be3r(phba) (chip_be3_r(phba) || (chip_be2(phba)))
274
275#define BEISCSI_ULP0 0
276#define BEISCSI_ULP1 1
277#define BEISCSI_ULP_COUNT 2
278#define BEISCSI_ULP0_LOADED 0x01
279#define BEISCSI_ULP1_LOADED 0x02
274struct beiscsi_hba { 280struct beiscsi_hba {
275 struct hba_parameters params; 281 struct hba_parameters params;
276 struct hwi_controller *phwi_ctrlr; 282 struct hwi_controller *phwi_ctrlr;
@@ -328,20 +334,19 @@ struct beiscsi_hba {
328 * group together since they are used most frequently 334 * group together since they are used most frequently
329 * for cid to cri conversion 335 * for cid to cri conversion
330 */ 336 */
331 unsigned int iscsi_cid_start;
332 unsigned int phys_port; 337 unsigned int phys_port;
338 unsigned int iscsi_cid_start[BEISCSI_ULP_COUNT];
339#define BEISCSI_GET_CID_COUNT(phba, ulp_num) \
340 (phba->fw_config.iscsi_cid_count[ulp_num])
341 unsigned int iscsi_cid_count[BEISCSI_ULP_COUNT];
342 unsigned int iscsi_icd_count[BEISCSI_ULP_COUNT];
343 unsigned int iscsi_icd_start[BEISCSI_ULP_COUNT];
344 unsigned int iscsi_chain_start[BEISCSI_ULP_COUNT];
345 unsigned int iscsi_chain_count[BEISCSI_ULP_COUNT];
333 346
334 unsigned int isr_offset;
335 unsigned int iscsi_icd_start;
336 unsigned int iscsi_cid_count;
337 unsigned int iscsi_icd_count;
338 unsigned int pci_function;
339
340 unsigned short cid_alloc;
341 unsigned short cid_free;
342 unsigned short avlbl_cids;
343 unsigned short iscsi_features; 347 unsigned short iscsi_features;
344 spinlock_t cid_lock; 348 uint16_t dual_ulp_aware;
349 unsigned long ulp_supported;
345 } fw_config; 350 } fw_config;
346 351
347 unsigned int state; 352 unsigned int state;