Loading Documentation/laptops/acer-wmi.txt +7 −3 Original line number Diff line number Diff line Acer Laptop WMI Extras Driver http://code.google.com/p/aceracpi Version 0.2 18th August 2008 Version 0.3 4th April 2009 Copyright 2007-2008 Carlos Corbacho <carlos@strangeworlds.co.uk> Copyright 2007-2009 Carlos Corbacho <carlos@strangeworlds.co.uk> acer-wmi is a driver to allow you to control various parts of your Acer laptop hardware under Linux which are exposed via ACPI-WMI. Loading Loading @@ -36,6 +36,10 @@ not possible in kernel space from a 64 bit OS. Supported Hardware ****************** NOTE: The Acer Aspire One is not supported hardware. It cannot work with acer-wmi until Acer fix their ACPI-WMI implementation on them, so has been blacklisted until that happens. Please see the website for the current list of known working hardare: http://code.google.com/p/aceracpi/wiki/SupportedHardware Loading drivers/platform/x86/acer-wmi.c +33 −2 Original line number Diff line number Diff line /* * Acer WMI Laptop Extras * * Copyright (C) 2007-2008 Carlos Corbacho <carlos@strangeworlds.co.uk> * Copyright (C) 2007-2009 Carlos Corbacho <carlos@strangeworlds.co.uk> * * Based on acer_acpi: * Copyright (C) 2005-2007 E.M. Smith Loading Loading @@ -225,6 +225,25 @@ static struct quirk_entry quirk_fujitsu_amilo_li_1718 = { .wireless = 2, }; /* The Aspire One has a dummy ACPI-WMI interface - disable it */ static struct dmi_system_id __devinitdata acer_blacklist[] = { { .ident = "Acer Aspire One (SSD)", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Acer"), DMI_MATCH(DMI_PRODUCT_NAME, "AOA110"), }, }, { .ident = "Acer Aspire One (HDD)", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Acer"), DMI_MATCH(DMI_PRODUCT_NAME, "AOA150"), }, }, {} }; static struct dmi_system_id acer_quirks[] = { { .callback = dmi_matched, Loading Loading @@ -1117,10 +1136,16 @@ static int __devinit acer_platform_probe(struct platform_device *device) } err = acer_rfkill_init(&device->dev); if (err) goto error_rfkill; return err; error_rfkill: if (has_cap(ACER_CAP_BRIGHTNESS)) acer_backlight_exit(); error_brightness: if (has_cap(ACER_CAP_MAILLED)) acer_led_exit(); error_mailled: return err; Loading Loading @@ -1254,6 +1279,12 @@ static int __init acer_wmi_init(void) printk(ACER_INFO "Acer Laptop ACPI-WMI Extras\n"); if (dmi_check_system(acer_blacklist)) { printk(ACER_INFO "Blacklisted hardware detected - " "not loading\n"); return -ENODEV; } find_quirks(); /* Loading Loading
Documentation/laptops/acer-wmi.txt +7 −3 Original line number Diff line number Diff line Acer Laptop WMI Extras Driver http://code.google.com/p/aceracpi Version 0.2 18th August 2008 Version 0.3 4th April 2009 Copyright 2007-2008 Carlos Corbacho <carlos@strangeworlds.co.uk> Copyright 2007-2009 Carlos Corbacho <carlos@strangeworlds.co.uk> acer-wmi is a driver to allow you to control various parts of your Acer laptop hardware under Linux which are exposed via ACPI-WMI. Loading Loading @@ -36,6 +36,10 @@ not possible in kernel space from a 64 bit OS. Supported Hardware ****************** NOTE: The Acer Aspire One is not supported hardware. It cannot work with acer-wmi until Acer fix their ACPI-WMI implementation on them, so has been blacklisted until that happens. Please see the website for the current list of known working hardare: http://code.google.com/p/aceracpi/wiki/SupportedHardware Loading
drivers/platform/x86/acer-wmi.c +33 −2 Original line number Diff line number Diff line /* * Acer WMI Laptop Extras * * Copyright (C) 2007-2008 Carlos Corbacho <carlos@strangeworlds.co.uk> * Copyright (C) 2007-2009 Carlos Corbacho <carlos@strangeworlds.co.uk> * * Based on acer_acpi: * Copyright (C) 2005-2007 E.M. Smith Loading Loading @@ -225,6 +225,25 @@ static struct quirk_entry quirk_fujitsu_amilo_li_1718 = { .wireless = 2, }; /* The Aspire One has a dummy ACPI-WMI interface - disable it */ static struct dmi_system_id __devinitdata acer_blacklist[] = { { .ident = "Acer Aspire One (SSD)", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Acer"), DMI_MATCH(DMI_PRODUCT_NAME, "AOA110"), }, }, { .ident = "Acer Aspire One (HDD)", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Acer"), DMI_MATCH(DMI_PRODUCT_NAME, "AOA150"), }, }, {} }; static struct dmi_system_id acer_quirks[] = { { .callback = dmi_matched, Loading Loading @@ -1117,10 +1136,16 @@ static int __devinit acer_platform_probe(struct platform_device *device) } err = acer_rfkill_init(&device->dev); if (err) goto error_rfkill; return err; error_rfkill: if (has_cap(ACER_CAP_BRIGHTNESS)) acer_backlight_exit(); error_brightness: if (has_cap(ACER_CAP_MAILLED)) acer_led_exit(); error_mailled: return err; Loading Loading @@ -1254,6 +1279,12 @@ static int __init acer_wmi_init(void) printk(ACER_INFO "Acer Laptop ACPI-WMI Extras\n"); if (dmi_check_system(acer_blacklist)) { printk(ACER_INFO "Blacklisted hardware detected - " "not loading\n"); return -ENODEV; } find_quirks(); /* Loading