aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwmon/smsc47b397.c
diff options
context:
space:
mode:
authorJean Delvare <jdelvare@suse.de>2009-01-07 10:37:35 -0500
committerJean Delvare <khali@linux-fr.org>2009-01-07 10:37:35 -0500
commitb9acb64a385c5b26fc392e0d58ac7b8e0a2cd812 (patch)
treeefd4f47d256551082742a092a15ac9b28ddeefe5 /drivers/hwmon/smsc47b397.c
parentc8ac32e4711639c81e5f4d4cd78c8f21675a2bae (diff)
hwmon: Check for ACPI resource conflicts
Check for ACPI resource conflicts in hwmon drivers. I've included all Super-I/O and PCI drivers. I've voluntarily left out: * Vendor-specific drivers: if they conflicted on any system, this would pretty much mean that they conflict on all systems, and we would know by now. * Legacy ISA drivers (lm78 and w83781d): they only support chips found on old designs were ACPI either wasn't supported or didn't deal with thermal management. * Drivers accessing the I/O resources indirectly (e.g. through SMBus): the checks are already done where they belong, i.e. in the bus drivers. Signed-off-by: Jean Delvare <jdelvare@suse.de> Acked-by: David Hubbard <david.c.hubbard@gmail.com>
Diffstat (limited to 'drivers/hwmon/smsc47b397.c')
-rw-r--r--drivers/hwmon/smsc47b397.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/hwmon/smsc47b397.c b/drivers/hwmon/smsc47b397.c
index eb03544c731c..6f6d52b4fb64 100644
--- a/drivers/hwmon/smsc47b397.c
+++ b/drivers/hwmon/smsc47b397.c
@@ -36,6 +36,7 @@
36#include <linux/err.h> 36#include <linux/err.h>
37#include <linux/init.h> 37#include <linux/init.h>
38#include <linux/mutex.h> 38#include <linux/mutex.h>
39#include <linux/acpi.h>
39#include <asm/io.h> 40#include <asm/io.h>
40 41
41static unsigned short force_id; 42static unsigned short force_id;
@@ -303,6 +304,10 @@ static int __init smsc47b397_device_add(unsigned short address)
303 }; 304 };
304 int err; 305 int err;
305 306
307 err = acpi_check_resource_conflict(&res);
308 if (err)
309 goto exit;
310
306 pdev = platform_device_alloc(DRVNAME, address); 311 pdev = platform_device_alloc(DRVNAME, address);
307 if (!pdev) { 312 if (!pdev) {
308 err = -ENOMEM; 313 err = -ENOMEM;