aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i2c/busses/i2c-i801.c
diff options
context:
space:
mode:
authorJean Delvare <jdelvare@suse.de>2008-07-14 16:38:33 -0400
committerJean Delvare <khali@mahadeva.delvare>2008-07-14 16:38:33 -0400
commit54fb4a05af0a4b814e6716cfdf3fa97fc6be7a32 (patch)
treeb3a258dce4f1bc8ccb58541efae444ba89f9fc55 /drivers/i2c/busses/i2c-i801.c
parent2373c1801afd06d3a206376902b39a98458c9cfb (diff)
i2c: Check for ACPI resource conflicts
Check for ACPI resource conflicts in i2c bus drivers. I've included all recent SMBus master drivers for PC hardware. I've voluntarily left out: * Drivers that don't run on PCs: they can't conflict with ACPI. * Bit-banged bus device drivers: it's very unlikely that ACPI would deal with such buses. Signed-off-by: Jean Delvare <jdelvare@suse.de>
Diffstat (limited to 'drivers/i2c/busses/i2c-i801.c')
-rw-r--r--drivers/i2c/busses/i2c-i801.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c
index 46aa41f73fdd..8d0bc4bfe154 100644
--- a/drivers/i2c/busses/i2c-i801.c
+++ b/drivers/i2c/busses/i2c-i801.c
@@ -64,6 +64,7 @@
64#include <linux/ioport.h> 64#include <linux/ioport.h>
65#include <linux/init.h> 65#include <linux/init.h>
66#include <linux/i2c.h> 66#include <linux/i2c.h>
67#include <linux/acpi.h>
67#include <asm/io.h> 68#include <asm/io.h>
68 69
69/* I801 SMBus address offsets */ 70/* I801 SMBus address offsets */
@@ -624,6 +625,10 @@ static int __devinit i801_probe(struct pci_dev *dev, const struct pci_device_id
624 goto exit; 625 goto exit;
625 } 626 }
626 627
628 err = acpi_check_resource_conflict(&dev->resource[SMBBAR]);
629 if (err)
630 goto exit;
631
627 err = pci_request_region(dev, SMBBAR, i801_driver.name); 632 err = pci_request_region(dev, SMBBAR, i801_driver.name);
628 if (err) { 633 if (err) {
629 dev_err(&dev->dev, "Failed to request SMBus region " 634 dev_err(&dev->dev, "Failed to request SMBus region "