Commit a74dd5fd authored by Carlos Corbacho's avatar Carlos Corbacho Committed by Len Brown

acer-wmi: Blacklist Acer Aspire One

The Aspire One's ACPI-WMI interface is a placeholder that does nothing,
and the invalid results that we get from it are now causing userspace
problems as acer-wmi always returns that the rfkill is enabled (i.e. the
radio is off, when it isn't). As it's hardware controlled, acer-wmi
isn't needed on the Aspire One either.

Thanks to Andy Whitcroft at Canonical for tracking down Ubuntu's userspace
issues to this.
Signed-off-by: default avatarCarlos Corbacho <carlos@strangeworlds.co.uk>
Reported-by: default avatarAndy Whitcroft <apw@canonical.com>
Cc: stable@kernel.org
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent 8e0ee43b
......@@ -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,
......@@ -1254,6 +1273,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();
/*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment