|
@@ -98,7 +98,7 @@ static DEFINE_SPINLOCK(ipr_driver_lock);
|
|
|
|
|
|
/* This table describes the differences between DMA controller chips */
|
|
|
static const struct ipr_chip_cfg_t ipr_chip_cfg[] = {
|
|
|
- { /* Gemstone, Citrine, and Obsidian */
|
|
|
+ { /* Gemstone, Citrine, Obsidian, and Obsidian-E */
|
|
|
.mailbox = 0x0042C,
|
|
|
.cache_line_size = 0x20,
|
|
|
{
|
|
@@ -135,6 +135,7 @@ static const struct ipr_chip_t ipr_chip[] = {
|
|
|
{ PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_CITRINE, &ipr_chip_cfg[0] },
|
|
|
{ PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_OBSIDIAN, &ipr_chip_cfg[0] },
|
|
|
{ PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN, &ipr_chip_cfg[0] },
|
|
|
+ { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN_E, &ipr_chip_cfg[0] },
|
|
|
{ PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_SNIPE, &ipr_chip_cfg[1] },
|
|
|
{ PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_SCAMP, &ipr_chip_cfg[1] }
|
|
|
};
|
|
@@ -7363,12 +7364,24 @@ static struct pci_device_id ipr_pci_table[] __devinitdata = {
|
|
|
{ PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_OBSIDIAN,
|
|
|
PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572B,
|
|
|
0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
|
|
|
+ { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_OBSIDIAN,
|
|
|
+ PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_575C,
|
|
|
+ 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
|
|
|
{ PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN,
|
|
|
PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572A,
|
|
|
0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
|
|
|
{ PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN,
|
|
|
PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572B,
|
|
|
0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
|
|
|
+ { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN,
|
|
|
+ PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_575C,
|
|
|
+ 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
|
|
|
+ { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN,
|
|
|
+ PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_57B8,
|
|
|
+ 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
|
|
|
+ { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_OBSIDIAN_E,
|
|
|
+ PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_57B7,
|
|
|
+ 0, 0, (kernel_ulong_t)&ipr_chip_cfg[0] },
|
|
|
{ PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_SNIPE,
|
|
|
PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_2780,
|
|
|
0, 0, (kernel_ulong_t)&ipr_chip_cfg[1] },
|
|
@@ -7378,6 +7391,9 @@ static struct pci_device_id ipr_pci_table[] __devinitdata = {
|
|
|
{ PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_SCAMP,
|
|
|
PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_571F,
|
|
|
0, 0, (kernel_ulong_t)&ipr_chip_cfg[1] },
|
|
|
+ { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_SCAMP,
|
|
|
+ PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_572F,
|
|
|
+ 0, 0, (kernel_ulong_t)&ipr_chip_cfg[1] },
|
|
|
{ }
|
|
|
};
|
|
|
MODULE_DEVICE_TABLE(pci, ipr_pci_table);
|