forked from Minki/linux
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: Carlos Corbacho <carlos@strangeworlds.co.uk> Reported-by: Andy Whitcroft <apw@canonical.com> Cc: stable@kernel.org Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
8e0ee43bc2
commit
a74dd5fdab
@ -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();
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user