diff options
Diffstat (limited to 'drivers/i2c')
-rw-r--r-- | drivers/i2c/busses/Kconfig | 3 | ||||
-rw-r--r-- | drivers/i2c/busses/i2c-piix4.c | 9 |
2 files changed, 8 insertions, 4 deletions
diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig index 8206442fbabd..bb216c5fe30e 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig | |||
@@ -113,7 +113,7 @@ config I2C_ISCH | |||
113 | will be called i2c-isch. | 113 | will be called i2c-isch. |
114 | 114 | ||
115 | config I2C_PIIX4 | 115 | config I2C_PIIX4 |
116 | tristate "Intel PIIX4 and compatible (ATI/Serverworks/Broadcom/SMSC)" | 116 | tristate "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)" |
117 | depends on PCI | 117 | depends on PCI |
118 | help | 118 | help |
119 | If you say yes to this option, support will be included for the Intel | 119 | If you say yes to this option, support will be included for the Intel |
@@ -128,6 +128,7 @@ config I2C_PIIX4 | |||
128 | ATI SB600 | 128 | ATI SB600 |
129 | ATI SB700 | 129 | ATI SB700 |
130 | ATI SB800 | 130 | ATI SB800 |
131 | AMD SB900 | ||
131 | Serverworks OSB4 | 132 | Serverworks OSB4 |
132 | Serverworks CSB5 | 133 | Serverworks CSB5 |
133 | Serverworks CSB6 | 134 | Serverworks CSB6 |
diff --git a/drivers/i2c/busses/i2c-piix4.c b/drivers/i2c/busses/i2c-piix4.c index 0249a7d762b9..a782c7a08f9e 100644 --- a/drivers/i2c/busses/i2c-piix4.c +++ b/drivers/i2c/busses/i2c-piix4.c | |||
@@ -22,6 +22,7 @@ | |||
22 | Intel PIIX4, 440MX | 22 | Intel PIIX4, 440MX |
23 | Serverworks OSB4, CSB5, CSB6, HT-1000, HT-1100 | 23 | Serverworks OSB4, CSB5, CSB6, HT-1000, HT-1100 |
24 | ATI IXP200, IXP300, IXP400, SB600, SB700, SB800 | 24 | ATI IXP200, IXP300, IXP400, SB600, SB700, SB800 |
25 | AMD SB900 | ||
25 | SMSC Victory66 | 26 | SMSC Victory66 |
26 | 27 | ||
27 | Note: we assume there can only be one device, with one SMBus interface. | 28 | Note: we assume there can only be one device, with one SMBus interface. |
@@ -479,6 +480,7 @@ static struct pci_device_id piix4_ids[] = { | |||
479 | { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP300_SMBUS) }, | 480 | { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP300_SMBUS) }, |
480 | { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_SMBUS) }, | 481 | { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_SMBUS) }, |
481 | { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_SBX00_SMBUS) }, | 482 | { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_SBX00_SMBUS) }, |
483 | { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_SB900_SMBUS) }, | ||
482 | { PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, | 484 | { PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, |
483 | PCI_DEVICE_ID_SERVERWORKS_OSB4) }, | 485 | PCI_DEVICE_ID_SERVERWORKS_OSB4) }, |
484 | { PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, | 486 | { PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, |
@@ -499,9 +501,10 @@ static int __devinit piix4_probe(struct pci_dev *dev, | |||
499 | { | 501 | { |
500 | int retval; | 502 | int retval; |
501 | 503 | ||
502 | if ((dev->vendor == PCI_VENDOR_ID_ATI) && | 504 | if ((dev->vendor == PCI_VENDOR_ID_ATI && |
503 | (dev->device == PCI_DEVICE_ID_ATI_SBX00_SMBUS) && | 505 | dev->device == PCI_DEVICE_ID_ATI_SBX00_SMBUS && |
504 | (dev->revision >= 0x40)) | 506 | dev->revision >= 0x40) || |
507 | dev->vendor == PCI_VENDOR_ID_AMD) | ||
505 | /* base address location etc changed in SB800 */ | 508 | /* base address location etc changed in SB800 */ |
506 | retval = piix4_setup_sb800(dev, id); | 509 | retval = piix4_setup_sb800(dev, id); |
507 | else | 510 | else |