diff options
author | Carlos Corbacho <carlos@strangeworlds.co.uk> | 2008-06-21 04:09:38 -0400 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2008-07-16 17:27:02 -0400 |
commit | 6f061ab5e55d7fe6ce0c36e8954f56f0d95348fb (patch) | |
tree | 18395eae8e9bd3f1b0165354ae33fe6a3e470f71 /drivers | |
parent | f2b585b4a31731b17b9769eae523986fa7fddcde (diff) |
acer-wmi: Add EC quirk for Fujitsu Siemens Amilo Li 1718
This laptop needs a different EC quirk from the standard Acer one to read
the wireless status.
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')
-rw-r--r-- | drivers/misc/acer-wmi.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/misc/acer-wmi.c b/drivers/misc/acer-wmi.c index e35825f7e7ba..5b7c5fcd5af7 100644 --- a/drivers/misc/acer-wmi.c +++ b/drivers/misc/acer-wmi.c | |||
@@ -212,6 +212,10 @@ static struct quirk_entry quirk_medion_md_98300 = { | |||
212 | .wireless = 1, | 212 | .wireless = 1, |
213 | }; | 213 | }; |
214 | 214 | ||
215 | static struct quirk_entry quirk_fujitsu_amilo_li_1718 = { | ||
216 | .wireless = 2, | ||
217 | }; | ||
218 | |||
215 | static struct dmi_system_id acer_quirks[] = { | 219 | static struct dmi_system_id acer_quirks[] = { |
216 | { | 220 | { |
217 | .callback = dmi_matched, | 221 | .callback = dmi_matched, |
@@ -323,6 +327,15 @@ static struct dmi_system_id acer_quirks[] = { | |||
323 | }, | 327 | }, |
324 | { | 328 | { |
325 | .callback = dmi_matched, | 329 | .callback = dmi_matched, |
330 | .ident = "Fujitsu Siemens Amilo Li 1718", | ||
331 | .matches = { | ||
332 | DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"), | ||
333 | DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Li 1718"), | ||
334 | }, | ||
335 | .driver_data = &quirk_fujitsu_amilo_li_1718, | ||
336 | }, | ||
337 | { | ||
338 | .callback = dmi_matched, | ||
326 | .ident = "Medion MD 98300", | 339 | .ident = "Medion MD 98300", |
327 | .matches = { | 340 | .matches = { |
328 | DMI_MATCH(DMI_SYS_VENDOR, "MEDION"), | 341 | DMI_MATCH(DMI_SYS_VENDOR, "MEDION"), |
@@ -416,6 +429,12 @@ struct wmi_interface *iface) | |||
416 | return AE_ERROR; | 429 | return AE_ERROR; |
417 | *value = result & 0x1; | 430 | *value = result & 0x1; |
418 | return AE_OK; | 431 | return AE_OK; |
432 | case 2: | ||
433 | err = ec_read(0x71, &result); | ||
434 | if (err) | ||
435 | return AE_ERROR; | ||
436 | *value = result & 0x1; | ||
437 | return AE_OK; | ||
419 | default: | 438 | default: |
420 | err = ec_read(0xA, &result); | 439 | err = ec_read(0xA, &result); |
421 | if (err) | 440 | if (err) |