diff options
-rw-r--r-- | Documentation/i2c/busses/i2c-piix4 | 14 | ||||
-rw-r--r-- | drivers/i2c/busses/i2c-piix4.c | 2 |
2 files changed, 15 insertions, 1 deletions
diff --git a/Documentation/i2c/busses/i2c-piix4 b/Documentation/i2c/busses/i2c-piix4 index a706ae6a1b41..921476333235 100644 --- a/Documentation/i2c/busses/i2c-piix4 +++ b/Documentation/i2c/busses/i2c-piix4 | |||
@@ -82,3 +82,17 @@ the SMI mode. | |||
82 | 82 | ||
83 | Please note that you don't need to do that in all cases, just when the SMBus is | 83 | Please note that you don't need to do that in all cases, just when the SMBus is |
84 | not working properly. | 84 | not working properly. |
85 | |||
86 | |||
87 | Hardware-specific issues | ||
88 | ------------------------ | ||
89 | |||
90 | This driver will refuse to load on IBM systems with an Intel PIIX4 SMBus. | ||
91 | Some of these machines have an RFID EEPROM (24RF08) connected to the SMBus, | ||
92 | which can easily get corrupted due to a state machine bug. These are mostly | ||
93 | Thinkpad laptops, but desktop systems may also be affected. We have no list | ||
94 | of all affected systems, so the only safe solution was to prevent access to | ||
95 | the SMBus on all IBM systems (detected using DMI data.) | ||
96 | |||
97 | For additional information, read: | ||
98 | http://www2.lm-sensors.nu/~lm78/cvs/lm_sensors2/README.thinkpad | ||
diff --git a/drivers/i2c/busses/i2c-piix4.c b/drivers/i2c/busses/i2c-piix4.c index 05af7b0292f4..8f2f65b793b9 100644 --- a/drivers/i2c/busses/i2c-piix4.c +++ b/drivers/i2c/busses/i2c-piix4.c | |||
@@ -130,7 +130,7 @@ static int __devinit piix4_setup(struct pci_dev *PIIX4_dev, | |||
130 | /* Don't access SMBus on IBM systems which get corrupted eeproms */ | 130 | /* Don't access SMBus on IBM systems which get corrupted eeproms */ |
131 | if (dmi_check_system(piix4_dmi_table) && | 131 | if (dmi_check_system(piix4_dmi_table) && |
132 | PIIX4_dev->vendor == PCI_VENDOR_ID_INTEL) { | 132 | PIIX4_dev->vendor == PCI_VENDOR_ID_INTEL) { |
133 | dev_err(&PIIX4_dev->dev, "IBM Laptop detected; this module " | 133 | dev_err(&PIIX4_dev->dev, "IBM system detected; this module " |
134 | "may corrupt your serial eeprom! Refusing to load " | 134 | "may corrupt your serial eeprom! Refusing to load " |
135 | "module!\n"); | 135 | "module!\n"); |
136 | return -EPERM; | 136 | return -EPERM; |