diff options
author | Carlos Corbacho <carlos@strangeworlds.co.uk> | 2008-06-21 04:09:48 -0400 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2008-07-16 17:27:02 -0400 |
commit | 5753dd539a86d8fc40a25e1a2cd1005a6525f083 (patch) | |
tree | 601a7fd86ba98424019f979b021cfd7329384fdd /drivers/misc/acer-wmi.c | |
parent | 6f061ab5e55d7fe6ce0c36e8954f56f0d95348fb (diff) |
acer-wmi: Disable device autodetection on Fujitsu Siemens Amilo Li2732
The AMW0 (V1) device detection method doesn't work properly on this laptop,
so disable it, and for other laptops that may have this problem, by
switching on a strange GUID.
Signed-off-by: Carlos Corbacho <carlos@strangeworlds.co.uk>
Signed-off-by: Len Brown <len.brown@intel.com>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Diffstat (limited to 'drivers/misc/acer-wmi.c')
-rw-r--r-- | drivers/misc/acer-wmi.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/misc/acer-wmi.c b/drivers/misc/acer-wmi.c index 5b7c5fcd5af7..dd0b8d8b5bd9 100644 --- a/drivers/misc/acer-wmi.c +++ b/drivers/misc/acer-wmi.c | |||
@@ -88,6 +88,7 @@ struct acer_quirks { | |||
88 | * Acer ACPI method GUIDs | 88 | * Acer ACPI method GUIDs |
89 | */ | 89 | */ |
90 | #define AMW0_GUID1 "67C3371D-95A3-4C37-BB61-DD47B491DAAB" | 90 | #define AMW0_GUID1 "67C3371D-95A3-4C37-BB61-DD47B491DAAB" |
91 | #define AMW0_GUID2 "431F16ED-0C2B-444C-B267-27DEB140CF9C" | ||
91 | #define WMID_GUID1 "6AF4F258-B401-42fd-BE91-3D4AC2D7C0D3" | 92 | #define WMID_GUID1 "6AF4F258-B401-42fd-BE91-3D4AC2D7C0D3" |
92 | #define WMID_GUID2 "95764E09-FB56-4e83-B31A-37761F60994A" | 93 | #define WMID_GUID2 "95764E09-FB56-4e83-B31A-37761F60994A" |
93 | 94 | ||
@@ -548,6 +549,15 @@ static acpi_status AMW0_set_capabilities(void) | |||
548 | struct acpi_buffer out = { ACPI_ALLOCATE_BUFFER, NULL }; | 549 | struct acpi_buffer out = { ACPI_ALLOCATE_BUFFER, NULL }; |
549 | union acpi_object *obj; | 550 | union acpi_object *obj; |
550 | 551 | ||
552 | /* | ||
553 | * On laptops with this strange GUID (non Acer), normal probing doesn't | ||
554 | * work. | ||
555 | */ | ||
556 | if (wmi_has_guid(AMW0_GUID2)) { | ||
557 | interface->capability |= ACER_CAP_WIRELESS; | ||
558 | return AE_OK; | ||
559 | } | ||
560 | |||
551 | args.eax = ACER_AMW0_WRITE; | 561 | args.eax = ACER_AMW0_WRITE; |
552 | args.ecx = args.edx = 0; | 562 | args.ecx = args.edx = 0; |
553 | 563 | ||