aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/scsi/qla2xxx/qla_def.h7
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c11
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};
5702MODULE_DEVICE_TABLE(pci, qla2xxx_pci_tbl); 5711MODULE_DEVICE_TABLE(pci, qla2xxx_pci_tbl);