diff options
-rw-r--r-- | drivers/scsi/qla2xxx/qla_def.h | 7 | ||||
-rw-r--r-- | drivers/scsi/qla2xxx/qla_os.c | 11 |
2 files changed, 15 insertions, 3 deletions
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h index e8073917e7a3..a72b29f4dd79 100644 --- a/drivers/scsi/qla2xxx/qla_def.h +++ b/drivers/scsi/qla2xxx/qla_def.h | |||
@@ -3059,6 +3059,7 @@ struct qla_hw_data { | |||
3059 | #define PCI_DEVICE_ID_QLOGIC_ISP2031 0x2031 | 3059 | #define PCI_DEVICE_ID_QLOGIC_ISP2031 0x2031 |
3060 | #define PCI_DEVICE_ID_QLOGIC_ISP2071 0x2071 | 3060 | #define PCI_DEVICE_ID_QLOGIC_ISP2071 0x2071 |
3061 | #define PCI_DEVICE_ID_QLOGIC_ISP2271 0x2271 | 3061 | #define PCI_DEVICE_ID_QLOGIC_ISP2271 0x2271 |
3062 | #define PCI_DEVICE_ID_QLOGIC_ISP2261 0x2261 | ||
3062 | 3063 | ||
3063 | uint32_t device_type; | 3064 | uint32_t device_type; |
3064 | #define DT_ISP2100 BIT_0 | 3065 | #define DT_ISP2100 BIT_0 |
@@ -3082,7 +3083,8 @@ struct qla_hw_data { | |||
3082 | #define DT_ISP8044 BIT_18 | 3083 | #define DT_ISP8044 BIT_18 |
3083 | #define DT_ISP2071 BIT_19 | 3084 | #define DT_ISP2071 BIT_19 |
3084 | #define DT_ISP2271 BIT_20 | 3085 | #define DT_ISP2271 BIT_20 |
3085 | #define DT_ISP_LAST (DT_ISP2271 << 1) | 3086 | #define DT_ISP2261 BIT_21 |
3087 | #define DT_ISP_LAST (DT_ISP2261 << 1) | ||
3086 | 3088 | ||
3087 | #define DT_T10_PI BIT_25 | 3089 | #define DT_T10_PI BIT_25 |
3088 | #define DT_IIDMA BIT_26 | 3090 | #define DT_IIDMA BIT_26 |
@@ -3114,6 +3116,7 @@ struct qla_hw_data { | |||
3114 | #define IS_QLAFX00(ha) (DT_MASK(ha) & DT_ISPFX00) | 3116 | #define IS_QLAFX00(ha) (DT_MASK(ha) & DT_ISPFX00) |
3115 | #define IS_QLA2071(ha) (DT_MASK(ha) & DT_ISP2071) | 3117 | #define IS_QLA2071(ha) (DT_MASK(ha) & DT_ISP2071) |
3116 | #define IS_QLA2271(ha) (DT_MASK(ha) & DT_ISP2271) | 3118 | #define IS_QLA2271(ha) (DT_MASK(ha) & DT_ISP2271) |
3119 | #define IS_QLA2261(ha) (DT_MASK(ha) & DT_ISP2261) | ||
3117 | 3120 | ||
3118 | #define IS_QLA23XX(ha) (IS_QLA2300(ha) || IS_QLA2312(ha) || IS_QLA2322(ha) || \ | 3121 | #define IS_QLA23XX(ha) (IS_QLA2300(ha) || IS_QLA2312(ha) || IS_QLA2322(ha) || \ |
3119 | IS_QLA6312(ha) || IS_QLA6322(ha)) | 3122 | IS_QLA6312(ha) || IS_QLA6322(ha)) |
@@ -3122,7 +3125,7 @@ struct qla_hw_data { | |||
3122 | #define IS_QLA25XX(ha) (IS_QLA2532(ha)) | 3125 | #define IS_QLA25XX(ha) (IS_QLA2532(ha)) |
3123 | #define IS_QLA83XX(ha) (IS_QLA2031(ha) || IS_QLA8031(ha)) | 3126 | #define IS_QLA83XX(ha) (IS_QLA2031(ha) || IS_QLA8031(ha)) |
3124 | #define IS_QLA84XX(ha) (IS_QLA8432(ha)) | 3127 | #define IS_QLA84XX(ha) (IS_QLA8432(ha)) |
3125 | #define IS_QLA27XX(ha) (IS_QLA2071(ha) || IS_QLA2271(ha)) | 3128 | #define IS_QLA27XX(ha) (IS_QLA2071(ha) || IS_QLA2271(ha) || IS_QLA2261(ha)) |
3126 | #define IS_QLA24XX_TYPE(ha) (IS_QLA24XX(ha) || IS_QLA54XX(ha) || \ | 3129 | #define IS_QLA24XX_TYPE(ha) (IS_QLA24XX(ha) || IS_QLA54XX(ha) || \ |
3127 | IS_QLA84XX(ha)) | 3130 | IS_QLA84XX(ha)) |
3128 | #define IS_CNA_CAPABLE(ha) (IS_QLA81XX(ha) || IS_QLA82XX(ha) || \ | 3131 | #define IS_CNA_CAPABLE(ha) (IS_QLA81XX(ha) || IS_QLA82XX(ha) || \ |
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index 0d0ff33d010f..913a72506748 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c | |||
@@ -2208,6 +2208,13 @@ qla2x00_set_isp_flags(struct qla_hw_data *ha) | |||
2208 | ha->device_type |= DT_IIDMA; | 2208 | ha->device_type |= DT_IIDMA; |
2209 | ha->fw_srisc_address = RISC_START_ADDRESS_2400; | 2209 | ha->fw_srisc_address = RISC_START_ADDRESS_2400; |
2210 | break; | 2210 | break; |
2211 | case PCI_DEVICE_ID_QLOGIC_ISP2261: | ||
2212 | ha->device_type |= DT_ISP2261; | ||
2213 | ha->device_type |= DT_ZIO_SUPPORTED; | ||
2214 | ha->device_type |= DT_FWI2; | ||
2215 | ha->device_type |= DT_IIDMA; | ||
2216 | ha->fw_srisc_address = RISC_START_ADDRESS_2400; | ||
2217 | break; | ||
2211 | } | 2218 | } |
2212 | 2219 | ||
2213 | if (IS_QLA82XX(ha)) | 2220 | if (IS_QLA82XX(ha)) |
@@ -2285,7 +2292,8 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
2285 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISPF001 || | 2292 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISPF001 || |
2286 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISP8044 || | 2293 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISP8044 || |
2287 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISP2071 || | 2294 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISP2071 || |
2288 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISP2271) { | 2295 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISP2271 || |
2296 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISP2261) { | ||
2289 | bars = pci_select_bars(pdev, IORESOURCE_MEM); | 2297 | bars = pci_select_bars(pdev, IORESOURCE_MEM); |
2290 | mem_only = 1; | 2298 | mem_only = 1; |
2291 | ql_dbg_pci(ql_dbg_init, pdev, 0x0007, | 2299 | ql_dbg_pci(ql_dbg_init, pdev, 0x0007, |
@@ -5697,6 +5705,7 @@ static struct pci_device_id qla2xxx_pci_tbl[] = { | |||
5697 | { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP8044) }, | 5705 | { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP8044) }, |
5698 | { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2071) }, | 5706 | { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2071) }, |
5699 | { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2271) }, | 5707 | { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2271) }, |
5708 | { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2261) }, | ||
5700 | { 0 }, | 5709 | { 0 }, |
5701 | }; | 5710 | }; |
5702 | MODULE_DEVICE_TABLE(pci, qla2xxx_pci_tbl); | 5711 | MODULE_DEVICE_TABLE(pci, qla2xxx_pci_tbl); |