Re: acer-wmi broken in latest git kernel on TravelMate 6492 (Insufficient arguments - method [WQAA])

From: Carlos Corbacho
Date: Sat Aug 02 2008 - 12:53:48 EST


On Saturday 02 August 2008 16:50:54 Sven Wegener wrote:
> Is it a bug in acer-wmi or in Acer's ACPI implementation? I can provide
> more information as necessary.

Neither - it's a bug in wmi.c

Try the following patch:
---
ACPI: WMI: Set instance for query block calls

From: Carlos Corbacho <carlos@xxxxxxxxxxxxxxxxxxx>

Although the necessary data structure was set up, it was never actually
passed in, so data block calls have only been working by sheer chance.

(On Acer laptops. the data block methods we've been calling never look at
the instance value, hence acer-wmi never triggered this before).

f3454ae8104efb2dbf0d08ec42c6f5d0fe9225bc brought this to light.

Signed-off-by: Carlos Corbacho <carlos@xxxxxxxxxxxxxxxxxxx>
---

drivers/acpi/wmi.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)


diff --git a/drivers/acpi/wmi.c b/drivers/acpi/wmi.c
index c33b1c6..cfe2c83 100644
--- a/drivers/acpi/wmi.c
+++ b/drivers/acpi/wmi.c
@@ -347,7 +347,7 @@ struct acpi_buffer *out)
strcpy(method, "WQ");
strncat(method, block->object_id, 2);

- status = acpi_evaluate_object(handle, method, NULL, out);
+ status = acpi_evaluate_object(handle, method, &input, out);

/*
* If ACPI_WMI_EXPENSIVE, call the relevant WCxx method, even if
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/