diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/acpi/blacklist.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/acpi/blacklist.c b/drivers/acpi/blacklist.c index 23e5a0519af5..2815df66f6f7 100644 --- a/drivers/acpi/blacklist.c +++ b/drivers/acpi/blacklist.c | |||
| @@ -185,6 +185,12 @@ static int __init dmi_disable_osi_vista(const struct dmi_system_id *d) | |||
| 185 | acpi_osi_setup("!Windows 2006"); | 185 | acpi_osi_setup("!Windows 2006"); |
| 186 | return 0; | 186 | return 0; |
| 187 | } | 187 | } |
| 188 | static int __init dmi_disable_osi_win7(const struct dmi_system_id *d) | ||
| 189 | { | ||
| 190 | printk(KERN_NOTICE PREFIX "DMI detected: %s\n", d->ident); | ||
| 191 | acpi_osi_setup("!Windows 2009"); | ||
| 192 | return 0; | ||
| 193 | } | ||
| 188 | 194 | ||
| 189 | static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | 195 | static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { |
| 190 | { | 196 | { |
| @@ -211,6 +217,14 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 211 | DMI_MATCH(DMI_PRODUCT_NAME, "Sony VGN-SR290J"), | 217 | DMI_MATCH(DMI_PRODUCT_NAME, "Sony VGN-SR290J"), |
| 212 | }, | 218 | }, |
| 213 | }, | 219 | }, |
| 220 | { | ||
| 221 | .callback = dmi_disable_osi_win7, | ||
| 222 | .ident = "ASUS K50IJ", | ||
| 223 | .matches = { | ||
| 224 | DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK Computer Inc."), | ||
| 225 | DMI_MATCH(DMI_PRODUCT_NAME, "K50IJ"), | ||
| 226 | }, | ||
| 227 | }, | ||
| 214 | 228 | ||
| 215 | /* | 229 | /* |
| 216 | * BIOS invocation of _OSI(Linux) is almost always a BIOS bug. | 230 | * BIOS invocation of _OSI(Linux) is almost always a BIOS bug. |
