From: Wen Xiong <wenxi...@linux.vnet.ibm.com>

Add the appropriate definitions and table entries for new
adapters support.

Signed-off-by: Wen Xiong <wenxi...@linux.vnet.ibm.com>

---
 drivers/scsi/ipr.c |   34 ++++++++++++++++++++++++++++++++++
 drivers/scsi/ipr.h |    3 +++
 2 files changed, 37 insertions(+), 0 deletions(-)

diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
index f2df57a..28c0aac 100644
--- a/drivers/scsi/ipr.c
+++ b/drivers/scsi/ipr.c
@@ -189,6 +189,35 @@ static const struct ipr_chip_cfg_t ipr_chip_cfg[] = {
                        .endian_swap_reg = 0x00084
                }
        },
+       { /* RattleSnake */
+               .mailbox = 0x00044,
+               .max_cmds = 1000,
+               .cache_line_size = 0x20,
+               .clear_isr = 0,
+               .iopoll_weight = 64,
+               {
+                       .set_interrupt_mask_reg = 0x00010,
+                       .clr_interrupt_mask_reg = 0x00018,
+                       .clr_interrupt_mask_reg32 = 0x0001C,
+                       .sense_interrupt_mask_reg = 0x00010,
+                       .sense_interrupt_mask_reg32 = 0x00014,
+                       .clr_interrupt_reg = 0x00008,
+                       .clr_interrupt_reg32 = 0x0000C,
+                       .sense_interrupt_reg = 0x00000,
+                       .sense_interrupt_reg32 = 0x00004,
+                       .ioarrin_reg = 0x00070,
+                       .sense_uproc_interrupt_reg = 0x00020,
+                       .sense_uproc_interrupt_reg32 = 0x00024,
+                       .set_uproc_interrupt_reg = 0x00020,
+                       .set_uproc_interrupt_reg32 = 0x00024,
+                       .clr_uproc_interrupt_reg = 0x00028,
+                       .clr_uproc_interrupt_reg32 = 0x0002C,
+                       .init_feedback_reg = 0x0005C,
+                       .dump_addr_reg = 0x00064,
+                       .dump_data_reg = 0x00068,
+                       .endian_swap_reg = 0x00084
+               }
+       },
 };
 
 static const struct ipr_chip_t ipr_chip[] = {
@@ -201,6 +230,7 @@ static const struct ipr_chip_t ipr_chip[] = {
        { PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_SCAMP, IPR_USE_LSI, 
IPR_SIS32, IPR_PCI_CFG, &ipr_chip_cfg[1] },
        { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_CROC_FPGA_E2, IPR_USE_MSI, 
IPR_SIS64, IPR_MMIO, &ipr_chip_cfg[2] },
        { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_CROCODILE, IPR_USE_MSI, 
IPR_SIS64, IPR_MMIO, &ipr_chip_cfg[2] }
+       { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_RATTLESNAME, IPR_USE_MSI, 
IPR_SIS64, IPR_MMIO, &ipr_chip_cfg[3] }
 };
 
 static int ipr_max_bus_speeds[] = {
@@ -10787,6 +10817,10 @@ static struct pci_device_id ipr_pci_table[] = {
                PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_2CD2, 0, 0, 0 },
        { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_CROCODILE,
                PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_2CCD, 0, 0, 0 },
+       { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_RATTLESNAKE,
+               PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_580A, 0, 0, 0 },
+       { PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_RATTLESNAKE,
+               PCI_VENDOR_ID_IBM, IPR_SUBS_DEV_ID_580B, 0, 0, 0 },
        { }
 };
 MODULE_DEVICE_TABLE(pci, ipr_pci_table);
diff --git a/drivers/scsi/ipr.h b/drivers/scsi/ipr.h
index a7ef83f..32c8b26 100644
--- a/drivers/scsi/ipr.h
+++ b/drivers/scsi/ipr.h
@@ -60,6 +60,7 @@
 
 #define PCI_DEVICE_ID_IBM_CROC_FPGA_E2          0x033D
 #define PCI_DEVICE_ID_IBM_CROCODILE             0x034A
+#define PCI_DEVICE_ID_IBM_RATTLESNAKE          0x04DA
 
 #define IPR_SUBS_DEV_ID_2780   0x0264
 #define IPR_SUBS_DEV_ID_5702   0x0266
@@ -111,6 +112,8 @@
 #define IPR_SUBS_DEV_ID_2CCA   0x04C7
 #define IPR_SUBS_DEV_ID_2CD2   0x04C8
 #define IPR_SUBS_DEV_ID_2CCD   0x04C9
+#define IPR_SUBS_DEV_ID_580A   0x04FC
+#define IPR_SUBS_DEV_ID_580B   0x04FB
 #define IPR_NAME                               "ipr"
 
 /*
-- 
1.7.1


------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
Iprdd-devel mailing list
Iprdd-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/iprdd-devel

Reply via email to