diff options
| -rw-r--r-- | drivers/platform/x86/acer-wmi.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/drivers/platform/x86/acer-wmi.c b/drivers/platform/x86/acer-wmi.c index a6a42e8c060b..60fbef283e73 100644 --- a/drivers/platform/x86/acer-wmi.c +++ b/drivers/platform/x86/acer-wmi.c | |||
| @@ -225,6 +225,25 @@ static struct quirk_entry quirk_fujitsu_amilo_li_1718 = { | |||
| 225 | .wireless = 2, | 225 | .wireless = 2, |
| 226 | }; | 226 | }; |
| 227 | 227 | ||
| 228 | /* The Aspire One has a dummy ACPI-WMI interface - disable it */ | ||
| 229 | static struct dmi_system_id __devinitdata acer_blacklist[] = { | ||
| 230 | { | ||
| 231 | .ident = "Acer Aspire One (SSD)", | ||
| 232 | .matches = { | ||
| 233 | DMI_MATCH(DMI_SYS_VENDOR, "Acer"), | ||
| 234 | DMI_MATCH(DMI_PRODUCT_NAME, "AOA110"), | ||
| 235 | }, | ||
| 236 | }, | ||
| 237 | { | ||
| 238 | .ident = "Acer Aspire One (HDD)", | ||
| 239 | .matches = { | ||
| 240 | DMI_MATCH(DMI_SYS_VENDOR, "Acer"), | ||
| 241 | DMI_MATCH(DMI_PRODUCT_NAME, "AOA150"), | ||
| 242 | }, | ||
| 243 | }, | ||
| 244 | {} | ||
| 245 | }; | ||
| 246 | |||
| 228 | static struct dmi_system_id acer_quirks[] = { | 247 | static struct dmi_system_id acer_quirks[] = { |
| 229 | { | 248 | { |
| 230 | .callback = dmi_matched, | 249 | .callback = dmi_matched, |
| @@ -1254,6 +1273,12 @@ static int __init acer_wmi_init(void) | |||
| 1254 | 1273 | ||
| 1255 | printk(ACER_INFO "Acer Laptop ACPI-WMI Extras\n"); | 1274 | printk(ACER_INFO "Acer Laptop ACPI-WMI Extras\n"); |
| 1256 | 1275 | ||
| 1276 | if (dmi_check_system(acer_blacklist)) { | ||
| 1277 | printk(ACER_INFO "Blacklisted hardware detected - " | ||
| 1278 | "not loading\n"); | ||
| 1279 | return -ENODEV; | ||
| 1280 | } | ||
| 1281 | |||
| 1257 | find_quirks(); | 1282 | find_quirks(); |
| 1258 | 1283 | ||
| 1259 | /* | 1284 | /* |
