Commit 9e052e2d authored by Joe Carnuccio's avatar Joe Carnuccio Committed by Martin K. Petersen

qla2xxx: Separate ISP type bits out from device type.

Signed-off-by: default avatarJoe Carnuccio <joe.carnuccio@qlogic.com>
Signed-off-by: default avatarHimanshu Madhani <himanshu.madhani@qlogic.com>
Reviewed-by: default avatarHannes Reinecke <hare@suse.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent ef55e513
...@@ -3130,7 +3130,7 @@ struct qla_hw_data { ...@@ -3130,7 +3130,7 @@ struct qla_hw_data {
#define PCI_DEVICE_ID_QLOGIC_ISP2271 0x2271 #define PCI_DEVICE_ID_QLOGIC_ISP2271 0x2271
#define PCI_DEVICE_ID_QLOGIC_ISP2261 0x2261 #define PCI_DEVICE_ID_QLOGIC_ISP2261 0x2261
uint32_t device_type; uint32_t isp_type;
#define DT_ISP2100 BIT_0 #define DT_ISP2100 BIT_0
#define DT_ISP2200 BIT_1 #define DT_ISP2200 BIT_1
#define DT_ISP2300 BIT_2 #define DT_ISP2300 BIT_2
...@@ -3155,6 +3155,7 @@ struct qla_hw_data { ...@@ -3155,6 +3155,7 @@ struct qla_hw_data {
#define DT_ISP2261 BIT_21 #define DT_ISP2261 BIT_21
#define DT_ISP_LAST (DT_ISP2261 << 1) #define DT_ISP_LAST (DT_ISP2261 << 1)
uint32_t device_type;
#define DT_T10_PI BIT_25 #define DT_T10_PI BIT_25
#define DT_IIDMA BIT_26 #define DT_IIDMA BIT_26
#define DT_FWI2 BIT_27 #define DT_FWI2 BIT_27
...@@ -3162,7 +3163,8 @@ struct qla_hw_data { ...@@ -3162,7 +3163,8 @@ struct qla_hw_data {
#define DT_OEM_001 BIT_29 #define DT_OEM_001 BIT_29
#define DT_ISP2200A BIT_30 #define DT_ISP2200A BIT_30
#define DT_EXTENDED_IDS BIT_31 #define DT_EXTENDED_IDS BIT_31
#define DT_MASK(ha) ((ha)->device_type & (DT_ISP_LAST - 1))
#define DT_MASK(ha) ((ha)->isp_type & (DT_ISP_LAST - 1))
#define IS_QLA2100(ha) (DT_MASK(ha) & DT_ISP2100) #define IS_QLA2100(ha) (DT_MASK(ha) & DT_ISP2100)
#define IS_QLA2200(ha) (DT_MASK(ha) & DT_ISP2200) #define IS_QLA2200(ha) (DT_MASK(ha) & DT_ISP2200)
#define IS_QLA2300(ha) (DT_MASK(ha) & DT_ISP2300) #define IS_QLA2300(ha) (DT_MASK(ha) & DT_ISP2300)
......
...@@ -2110,27 +2110,27 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha) ...@@ -2110,27 +2110,27 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha)
ha->device_type = DT_EXTENDED_IDS; ha->device_type = DT_EXTENDED_IDS;
switch (ha->pdev->device) { switch (ha->pdev->device) {
case PCI_DEVICE_ID_QLOGIC_ISP2100: case PCI_DEVICE_ID_QLOGIC_ISP2100:
ha->device_type |= DT_ISP2100; ha->isp_type |= DT_ISP2100;
ha->device_type &= ~DT_EXTENDED_IDS; ha->device_type &= ~DT_EXTENDED_IDS;
ha->fw_srisc_address = RISC_START_ADDRESS_2100; ha->fw_srisc_address = RISC_START_ADDRESS_2100;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2200: case PCI_DEVICE_ID_QLOGIC_ISP2200:
ha->device_type |= DT_ISP2200; ha->isp_type |= DT_ISP2200;
ha->device_type &= ~DT_EXTENDED_IDS; ha->device_type &= ~DT_EXTENDED_IDS;
ha->fw_srisc_address = RISC_START_ADDRESS_2100; ha->fw_srisc_address = RISC_START_ADDRESS_2100;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2300: case PCI_DEVICE_ID_QLOGIC_ISP2300:
ha->device_type |= DT_ISP2300; ha->isp_type |= DT_ISP2300;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->fw_srisc_address = RISC_START_ADDRESS_2300; ha->fw_srisc_address = RISC_START_ADDRESS_2300;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2312: case PCI_DEVICE_ID_QLOGIC_ISP2312:
ha->device_type |= DT_ISP2312; ha->isp_type |= DT_ISP2312;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->fw_srisc_address = RISC_START_ADDRESS_2300; ha->fw_srisc_address = RISC_START_ADDRESS_2300;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2322: case PCI_DEVICE_ID_QLOGIC_ISP2322:
ha->device_type |= DT_ISP2322; ha->isp_type |= DT_ISP2322;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
if (ha->pdev->subsystem_vendor == 0x1028 && if (ha->pdev->subsystem_vendor == 0x1028 &&
ha->pdev->subsystem_device == 0x0170) ha->pdev->subsystem_device == 0x0170)
...@@ -2138,60 +2138,60 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha) ...@@ -2138,60 +2138,60 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha)
ha->fw_srisc_address = RISC_START_ADDRESS_2300; ha->fw_srisc_address = RISC_START_ADDRESS_2300;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP6312: case PCI_DEVICE_ID_QLOGIC_ISP6312:
ha->device_type |= DT_ISP6312; ha->isp_type |= DT_ISP6312;
ha->fw_srisc_address = RISC_START_ADDRESS_2300; ha->fw_srisc_address = RISC_START_ADDRESS_2300;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP6322: case PCI_DEVICE_ID_QLOGIC_ISP6322:
ha->device_type |= DT_ISP6322; ha->isp_type |= DT_ISP6322;
ha->fw_srisc_address = RISC_START_ADDRESS_2300; ha->fw_srisc_address = RISC_START_ADDRESS_2300;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2422: case PCI_DEVICE_ID_QLOGIC_ISP2422:
ha->device_type |= DT_ISP2422; ha->isp_type |= DT_ISP2422;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2432: case PCI_DEVICE_ID_QLOGIC_ISP2432:
ha->device_type |= DT_ISP2432; ha->isp_type |= DT_ISP2432;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP8432: case PCI_DEVICE_ID_QLOGIC_ISP8432:
ha->device_type |= DT_ISP8432; ha->isp_type |= DT_ISP8432;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP5422: case PCI_DEVICE_ID_QLOGIC_ISP5422:
ha->device_type |= DT_ISP5422; ha->isp_type |= DT_ISP5422;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP5432: case PCI_DEVICE_ID_QLOGIC_ISP5432:
ha->device_type |= DT_ISP5432; ha->isp_type |= DT_ISP5432;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2532: case PCI_DEVICE_ID_QLOGIC_ISP2532:
ha->device_type |= DT_ISP2532; ha->isp_type |= DT_ISP2532;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP8001: case PCI_DEVICE_ID_QLOGIC_ISP8001:
ha->device_type |= DT_ISP8001; ha->isp_type |= DT_ISP8001;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP8021: case PCI_DEVICE_ID_QLOGIC_ISP8021:
ha->device_type |= DT_ISP8021; ha->isp_type |= DT_ISP8021;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
...@@ -2199,7 +2199,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha) ...@@ -2199,7 +2199,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha)
qla82xx_init_flags(ha); qla82xx_init_flags(ha);
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP8044: case PCI_DEVICE_ID_QLOGIC_ISP8044:
ha->device_type |= DT_ISP8044; ha->isp_type |= DT_ISP8044;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
...@@ -2207,7 +2207,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha) ...@@ -2207,7 +2207,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha)
qla82xx_init_flags(ha); qla82xx_init_flags(ha);
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2031: case PCI_DEVICE_ID_QLOGIC_ISP2031:
ha->device_type |= DT_ISP2031; ha->isp_type |= DT_ISP2031;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
...@@ -2215,7 +2215,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha) ...@@ -2215,7 +2215,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha)
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP8031: case PCI_DEVICE_ID_QLOGIC_ISP8031:
ha->device_type |= DT_ISP8031; ha->isp_type |= DT_ISP8031;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
...@@ -2223,10 +2223,10 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha) ...@@ -2223,10 +2223,10 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha)
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISPF001: case PCI_DEVICE_ID_QLOGIC_ISPF001:
ha->device_type |= DT_ISPFX00; ha->isp_type |= DT_ISPFX00;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2071: case PCI_DEVICE_ID_QLOGIC_ISP2071:
ha->device_type |= DT_ISP2071; ha->isp_type |= DT_ISP2071;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
...@@ -2234,7 +2234,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha) ...@@ -2234,7 +2234,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha)
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2271: case PCI_DEVICE_ID_QLOGIC_ISP2271:
ha->device_type |= DT_ISP2271; ha->isp_type |= DT_ISP2271;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
...@@ -2242,7 +2242,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha) ...@@ -2242,7 +2242,7 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha)
ha->fw_srisc_address = RISC_START_ADDRESS_2400; ha->fw_srisc_address = RISC_START_ADDRESS_2400;
break; break;
case PCI_DEVICE_ID_QLOGIC_ISP2261: case PCI_DEVICE_ID_QLOGIC_ISP2261:
ha->device_type |= DT_ISP2261; ha->isp_type |= DT_ISP2261;
ha->device_type |= DT_ZIO_SUPPORTED; ha->device_type |= DT_ZIO_SUPPORTED;
ha->device_type |= DT_FWI2; ha->device_type |= DT_FWI2;
ha->device_type |= DT_IIDMA; ha->device_type |= DT_IIDMA;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment