37 lines
1.2 KiB
Diff
37 lines
1.2 KiB
Diff
Patch submitted to lm-sensors@lm-sensors.org, here:
|
|
|
|
http://lists.lm-sensors.org/pipermail/lm-sensors/2010-January/027606.html
|
|
|
|
--- drivers/hwmon/asus_atk0110.c.orig 2010-01-07 00:07:45.000000000 +0100
|
|
+++ drivers/hwmon/asus_atk0110.c 2010-01-12 19:38:48.066204943 +0100
|
|
@@ -1141,12 +1141,7 @@ static int atk_add(struct acpi_device *d
|
|
buf.length = ACPI_ALLOCATE_BUFFER;
|
|
ret = acpi_evaluate_object_typed(data->atk_handle, BOARD_ID, NULL,
|
|
&buf, ACPI_TYPE_PACKAGE);
|
|
- if (ret != AE_OK) {
|
|
- dev_dbg(&device->dev, "atk: method MBIF not found\n");
|
|
- err = -ENODEV;
|
|
- goto out;
|
|
- }
|
|
-
|
|
+ if (ret == AE_OK) {
|
|
obj = buf.pointer;
|
|
if (obj->package.count >= 2 &&
|
|
obj->package.elements[1].type == ACPI_TYPE_STRING) {
|
|
@@ -1154,6 +1149,15 @@ static int atk_add(struct acpi_device *d
|
|
obj->package.elements[1].string.pointer);
|
|
}
|
|
ACPI_FREE(buf.pointer);
|
|
+ } else {
|
|
+ /*
|
|
+ * Some DSDTs do not have the MBIF method, but this should
|
|
+ * not be treated as fatal error! just mention this fact
|
|
+ * and continue.
|
|
+ */
|
|
+ dev_dbg(&device->dev,
|
|
+ "atk: method MBIF not found, continuing...\n");
|
|
+ }
|
|
|
|
/* Check for hwmon methods: first check "old" style methods; note that
|
|
* both may be present: in this case we stick to the old interface;
|