[PATCH] i2c-piix4: Add ATI IXP200/300/400 support
authorRudolf Marek <r.marek@sh.cvut.cz>
Thu, 23 Mar 2006 15:48:09 +0000 (16:48 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 22 Jun 2006 18:10:32 +0000 (11:10 -0700)
This patch adds the ATI IXP southbridges support to i2c-piix4,
as it turned out those chips are compatible with it.

Signed-off-by: Rudolf Marek <r.marek@sh.cvut.cz>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Documentation/i2c/busses/i2c-piix4
drivers/i2c/busses/Kconfig
drivers/i2c/busses/i2c-piix4.c
include/linux/pci_ids.h

index a1c8f581afeda64a9265f66da067efc35446d2b2..6e6c905143a1596de15f78c50b343a138eb67da6 100644 (file)
@@ -6,6 +6,8 @@ Supported adapters:
     Datasheet: Publicly available at the Intel website
   * ServerWorks OSB4, CSB5, CSB6 and HT-1000 southbridges
     Datasheet: Only available via NDA from ServerWorks
+  * ATI IXP southbridges IXP200, IXP300, IXP400
+    Datasheet: Not publicly available
   * Standard Microsystems (SMSC) SLC90E66 (Victory66) southbridge
     Datasheet: Publicly available at the SMSC website http://www.smsc.com
 
index d6d44946a283156e6d3829b6b6fca039ad331992..e3450d16d8a4f2309a71b9f778a69a18d879cbe0 100644 (file)
@@ -163,7 +163,7 @@ config I2C_PXA_SLAVE
          I2C bus.
 
 config I2C_PIIX4
-       tristate "Intel PIIX4"
+       tristate "Intel PIIX4 and compatible (ATI/Serverworks/Broadcom/SMSC)"
        depends on I2C && PCI
        help
          If you say yes to this option, support will be included for the Intel
@@ -172,6 +172,9 @@ config I2C_PIIX4
          of Broadcom):
            Intel PIIX4
            Intel 440MX
+           ATI IXP200
+           ATI IXP300
+           ATI IXP400
            Serverworks OSB4
            Serverworks CSB5
            Serverworks CSB6
index d9c7c00e71f9df6df1d2b655859918f9b9fd5398..5f06e81a20876edcea7ba574831dd849b37430e6 100644 (file)
@@ -413,6 +413,12 @@ static struct i2c_adapter piix4_adapter = {
 static struct pci_device_id piix4_ids[] = {
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82371AB_3),
          .driver_data = 3 },
+       { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP200_SMBUS),
+         .driver_data = 0 },
+       { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP300_SMBUS),
+         .driver_data = 0 },
+       { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_SMBUS),
+         .driver_data = 0 },
        { PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_OSB4),
          .driver_data = 0 },
        { PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_CSB5),
index bcfe9d4f56aea1ba730f329aaf6f7af084c05f50..489af9d3ce1f4389b018f12296d8e0326a0ad410 100644 (file)
 #define PCI_DEVICE_ID_ATI_RS480         0x5950
 /* ATI IXP Chipset */
 #define PCI_DEVICE_ID_ATI_IXP200_IDE   0x4349
+#define PCI_DEVICE_ID_ATI_IXP200_SMBUS 0x4353
+#define PCI_DEVICE_ID_ATI_IXP300_SMBUS 0x4363
 #define PCI_DEVICE_ID_ATI_IXP300_IDE   0x4369
 #define PCI_DEVICE_ID_ATI_IXP300_SATA   0x436e
+#define PCI_DEVICE_ID_ATI_IXP400_SMBUS 0x4372
 #define PCI_DEVICE_ID_ATI_IXP400_IDE   0x4376
 #define PCI_DEVICE_ID_ATI_IXP400_SATA   0x4379
 #define PCI_DEVICE_ID_ATI_IXP400_SATA2 0x437a