aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/ipr.c18
-rw-r--r--drivers/scsi/ipr.h6
2 files changed, 23 insertions, 1 deletions
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
index 244173adf8b5..f1e01b6ff7c0 100644
--- a/drivers/scsi/ipr.c
+++ b/drivers/scsi/ipr.c
@@ -98,7 +98,7 @@ static DEFINE_SPINLOCK(ipr_driver_lock);
98 98
99/* This table describes the differences between DMA controller chips */ 99/* This table describes the differences between DMA controller chips */
100static const struct ipr_chip_cfg_t ipr_chip_cfg[] = { 100static const struct ipr_chip_cfg_t ipr_chip_cfg[] = {
101 { /* Gemstone, Citrine, and Obsidian */ 101 { /* Gemstone, Citrine, Obsidian, and Obsidian-E */
102 .mailbox = 0x0042C, 102 .mailbox = 0x0042C,
103 .cache_line_size = 0x20, 103 .cache_line_size = 0x20,
104 { 104 {
@@ -135,6 +135,7 @@ static const struct ipr_chip_t ipr_chip[] = {
135 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_CITRINE, &ipr_chip_cfg[0] }, 135 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_CITRINE, &ipr_chip_cfg[0] },
136 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_OBSIDIAN, &ipr_chip_cfg[0] }, 136 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_OBSIDIAN, &ipr_chip_cfg[0] },
137 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN, &ipr_chip_cfg[0] }, 137 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN, &ipr_chip_cfg[0] },
138 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN_E, &ipr_chip_cfg[0] },
138 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_SNIPE, &ipr_chip_cfg[1] }, 139 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_SNIPE, &ipr_chip_cfg[1] },
139 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_SCAMP, &ipr_chip_cfg[1] } 140 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_SCAMP, &ipr_chip_cfg[1] }
140}; 141};
@@ -7363,12 +7364,24 @@ static struct pci_device_id ipr_pci_table[] __devinitdata = {
7363 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_OBSIDIAN, 7364 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_OBSIDIAN,
7364 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572B, 7365 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572B,
7365 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] }, 7366 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
7367 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_OBSIDIAN,
7368 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_575C,
7369 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
7366 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN, 7370 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN,
7367 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572A, 7371 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572A,
7368 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] }, 7372 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
7369 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN, 7373 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN,
7370 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572B, 7374 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572B,
7371 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] }, 7375 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
7376 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN,
7377 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_575C,
7378 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
7379 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN,
7380 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_57B8,
7381 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
7382 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN_E,
7383 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_57B7,
7384 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
7372 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_SNIPE, 7385 { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_SNIPE,
7373 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_2780, 7386 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_2780,
7374 0, 0, (kernel_ulong_t)&ipr_chip_cfg[1] }, 7387 0, 0, (kernel_ulong_t)&ipr_chip_cfg[1] },
@@ -7378,6 +7391,9 @@ static struct pci_device_id ipr_pci_table[] __devinitdata = {
7378 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_SCAMP, 7391 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_SCAMP,
7379 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_571F, 7392 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_571F,
7380 0, 0, (kernel_ulong_t)&ipr_chip_cfg[1] }, 7393 0, 0, (kernel_ulong_t)&ipr_chip_cfg[1] },
7394 { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_SCAMP,
7395 PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572F,
7396 0, 0, (kernel_ulong_t)&ipr_chip_cfg[1] },
7381 { } 7397 { }
7382}; 7398};
7383MODULE_DEVICE_TABLE(pci, ipr_pci_table); 7399MODULE_DEVICE_TABLE(pci, ipr_pci_table);
diff --git a/drivers/scsi/ipr.h b/drivers/scsi/ipr.h
index 6d035283af08..75669251fb63 100644
--- a/drivers/scsi/ipr.h
+++ b/drivers/scsi/ipr.h
@@ -54,6 +54,8 @@
54 */ 54 */
55#define IPR_NUM_BASE_CMD_BLKS 100 55#define IPR_NUM_BASE_CMD_BLKS 100
56 56
57#define PCI_DEVICE_ID_IBM_OBSIDIAN_E 0x0339
58
57#define IPR_SUBS_DEV_ID_2780 0x0264 59#define IPR_SUBS_DEV_ID_2780 0x0264
58#define IPR_SUBS_DEV_ID_5702 0x0266 60#define IPR_SUBS_DEV_ID_5702 0x0266
59#define IPR_SUBS_DEV_ID_5703 0x0278 61#define IPR_SUBS_DEV_ID_5703 0x0278
@@ -66,7 +68,11 @@
66#define IPR_SUBS_DEV_ID_571F 0x02D5 68#define IPR_SUBS_DEV_ID_571F 0x02D5
67#define IPR_SUBS_DEV_ID_572A 0x02C1 69#define IPR_SUBS_DEV_ID_572A 0x02C1
68#define IPR_SUBS_DEV_ID_572B 0x02C2 70#define IPR_SUBS_DEV_ID_572B 0x02C2
71#define IPR_SUBS_DEV_ID_572F 0x02C3
69#define IPR_SUBS_DEV_ID_575B 0x030D 72#define IPR_SUBS_DEV_ID_575B 0x030D
73#define IPR_SUBS_DEV_ID_575C 0x0338
74#define IPR_SUBS_DEV_ID_57B7 0x0360
75#define IPR_SUBS_DEV_ID_57B8 0x02C2
70 76
71#define IPR_NAME "ipr" 77#define IPR_NAME "ipr"
72 78