diff options
| -rw-r--r-- | drivers/acpi/blacklist.c | 50 |
1 files changed, 42 insertions, 8 deletions
diff --git a/drivers/acpi/blacklist.c b/drivers/acpi/blacklist.c index 9ce983ed60f0..dfa4ac8e9982 100644 --- a/drivers/acpi/blacklist.c +++ b/drivers/acpi/blacklist.c | |||
| @@ -228,10 +228,10 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 228 | * DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 5520"), | 228 | * DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 5520"), |
| 229 | * DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 6460"), | 229 | * DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 6460"), |
| 230 | * DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 7510"), | 230 | * DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 7510"), |
| 231 | * DMI_MATCH(DMI_PRODUCT_NAME, "Extensa 5220"), | ||
| 232 | * | 231 | * |
| 233 | * _OSI(Linux) is a NOP: | 232 | * _OSI(Linux) is a NOP: |
| 234 | * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5315"), | 233 | * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5315"), |
| 234 | * DMI_MATCH(DMI_PRODUCT_NAME, "Extensa 5220"), | ||
| 235 | */ | 235 | */ |
| 236 | { | 236 | { |
| 237 | .callback = dmi_disable_osi_linux, | 237 | .callback = dmi_disable_osi_linux, |
| @@ -327,12 +327,20 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 327 | }, | 327 | }, |
| 328 | { /* OSI(Linux) effect unknown */ | 328 | { /* OSI(Linux) effect unknown */ |
| 329 | .callback = dmi_unknown_osi_linux, | 329 | .callback = dmi_unknown_osi_linux, |
| 330 | .ident = "Dell OP GX620", | 330 | .ident = "Dell OptiPlex GX620", |
| 331 | .matches = { | 331 | .matches = { |
| 332 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), | 332 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), |
| 333 | DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex GX620"), | 333 | DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex GX620"), |
| 334 | }, | 334 | }, |
| 335 | }, | 335 | }, |
| 336 | { /* OSI(Linux) causes some USB initialization to not run */ | ||
| 337 | .callback = dmi_unknown_osi_linux, | ||
| 338 | .ident = "Dell OptiPlex 755", | ||
| 339 | .matches = { | ||
| 340 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), | ||
| 341 | DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 755"), | ||
| 342 | }, | ||
| 343 | }, | ||
| 336 | { /* OSI(Linux) effect unknown */ | 344 | { /* OSI(Linux) effect unknown */ |
| 337 | .callback = dmi_unknown_osi_linux, | 345 | .callback = dmi_unknown_osi_linux, |
| 338 | .ident = "Dell PE 1900", | 346 | .ident = "Dell PE 1900", |
| @@ -342,6 +350,14 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 342 | }, | 350 | }, |
| 343 | }, | 351 | }, |
| 344 | { /* OSI(Linux) is a NOP */ | 352 | { /* OSI(Linux) is a NOP */ |
| 353 | .callback = dmi_unknown_osi_linux, | ||
| 354 | .ident = "Dell PE 1950", | ||
| 355 | .matches = { | ||
| 356 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), | ||
| 357 | DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 1950"), | ||
| 358 | }, | ||
| 359 | }, | ||
| 360 | { /* OSI(Linux) is a NOP */ | ||
| 345 | .callback = dmi_disable_osi_linux, | 361 | .callback = dmi_disable_osi_linux, |
| 346 | .ident = "Dell PE R200", | 362 | .ident = "Dell PE R200", |
| 347 | .matches = { | 363 | .matches = { |
| @@ -357,6 +373,22 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 357 | DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation 390"), | 373 | DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation 390"), |
| 358 | }, | 374 | }, |
| 359 | }, | 375 | }, |
| 376 | { /* OSI(Linux) touches USB */ | ||
| 377 | .callback = dmi_unknown_osi_linux, | ||
| 378 | .ident = "Dell PR 390", | ||
| 379 | .matches = { | ||
| 380 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), | ||
| 381 | DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation 690"), | ||
| 382 | }, | ||
| 383 | }, | ||
| 384 | { /* OSI(Linux) unknown - ASL looks benign, but may effect dock/SMM */ | ||
| 385 | .callback = dmi_unknown_osi_linux, | ||
| 386 | .ident = "Dell PR M4300", | ||
| 387 | .matches = { | ||
| 388 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), | ||
| 389 | DMI_MATCH(DMI_PRODUCT_NAME, "Precision M4300"), | ||
| 390 | }, | ||
| 391 | }, | ||
| 360 | { /* OSI(Linux) is a NOP */ | 392 | { /* OSI(Linux) is a NOP */ |
| 361 | .callback = dmi_disable_osi_linux, | 393 | .callback = dmi_disable_osi_linux, |
| 362 | .ident = "Dell Vostro 1000", | 394 | .ident = "Dell Vostro 1000", |
| @@ -390,10 +422,10 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 390 | * DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Pi 1536"), | 422 | * DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Pi 1536"), |
| 391 | * DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Pi 1556"), | 423 | * DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Pi 1556"), |
| 392 | * DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Xi 1546"), | 424 | * DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Xi 1546"), |
| 425 | * DMI_MATCH(DMI_PRODUCT_NAME, "ESPRIMO Mobile V5505"), | ||
| 393 | * _OSI(Linux) unknown effect: | 426 | * _OSI(Linux) unknown effect: |
| 394 | * DMI_MATCH(DMI_PRODUCT_NAME, "Amilo M1425"), | 427 | * DMI_MATCH(DMI_PRODUCT_NAME, "Amilo M1425"), |
| 395 | * DMI_MATCH(DMI_PRODUCT_NAME, "Amilo Si 1520"), | 428 | * DMI_MATCH(DMI_PRODUCT_NAME, "Amilo Si 1520"), |
| 396 | * DMI_MATCH(DMI_PRODUCT_NAME, "ESPRIMO Mobile V5505"), | ||
| 397 | */ | 429 | */ |
| 398 | { | 430 | { |
| 399 | .callback = dmi_disable_osi_linux, | 431 | .callback = dmi_disable_osi_linux, |
| @@ -443,10 +475,11 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 443 | * _OSI(Linux) helps sound | 475 | * _OSI(Linux) helps sound |
| 444 | * DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad R61"), | 476 | * DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad R61"), |
| 445 | * DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T61"), | 477 | * DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T61"), |
| 478 | * _OSI(Linux) has Linux specific hooks | ||
| 479 | * DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X61"), | ||
| 446 | * _OSI(Linux) is a NOP: | 480 | * _OSI(Linux) is a NOP: |
| 447 | * DMI_MATCH(DMI_PRODUCT_VERSION, "3000 N100"), | 481 | * DMI_MATCH(DMI_PRODUCT_VERSION, "3000 N100"), |
| 448 | * _OSI(Linux) effect unknown | 482 | * DMI_MATCH(DMI_PRODUCT_VERSION, "LENOVO3000 V100"), |
| 449 | * DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X61"), | ||
| 450 | */ | 483 | */ |
| 451 | { | 484 | { |
| 452 | .callback = dmi_enable_osi_linux, | 485 | .callback = dmi_enable_osi_linux, |
| @@ -465,7 +498,7 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 465 | }, | 498 | }, |
| 466 | }, | 499 | }, |
| 467 | { | 500 | { |
| 468 | .callback = dmi_unknown_osi_linux, | 501 | .callback = dmi_enable_osi_linux, |
| 469 | .ident = "Lenovo ThinkPad X61", | 502 | .ident = "Lenovo ThinkPad X61", |
| 470 | .matches = { | 503 | .matches = { |
| 471 | DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), | 504 | DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), |
| @@ -473,7 +506,7 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 473 | }, | 506 | }, |
| 474 | }, | 507 | }, |
| 475 | { | 508 | { |
| 476 | .callback = dmi_unknown_osi_linux, | 509 | .callback = dmi_disable_osi_linux, |
| 477 | .ident = "Lenovo 3000 V100", | 510 | .ident = "Lenovo 3000 V100", |
| 478 | .matches = { | 511 | .matches = { |
| 479 | DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), | 512 | DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), |
| @@ -543,8 +576,9 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = { | |||
| 543 | * Disable OSI(Linux) warnings on all "Sony Corporation" | 576 | * Disable OSI(Linux) warnings on all "Sony Corporation" |
| 544 | * | 577 | * |
| 545 | * _OSI(Linux) is a NOP: | 578 | * _OSI(Linux) is a NOP: |
| 546 | * DMI_MATCH(DMI_PRODUCT_NAME, "VGN-SZ650N"), | 579 | * DMI_MATCH(DMI_PRODUCT_NAME, "VGN-NR11S_S"), |
| 547 | * DMI_MATCH(DMI_PRODUCT_NAME, "VGN-SZ38GP_C"), | 580 | * DMI_MATCH(DMI_PRODUCT_NAME, "VGN-SZ38GP_C"), |
| 581 | * DMI_MATCH(DMI_PRODUCT_NAME, "VGN-SZ650N"), | ||
| 548 | * DMI_MATCH(DMI_PRODUCT_NAME, "VGN-TZ21MN_N"), | 582 | * DMI_MATCH(DMI_PRODUCT_NAME, "VGN-TZ21MN_N"), |
| 549 | * _OSI(Linux) unknown effect: | 583 | * _OSI(Linux) unknown effect: |
| 550 | * DMI_MATCH(DMI_PRODUCT_NAME, "VGN-FZ11M"), | 584 | * DMI_MATCH(DMI_PRODUCT_NAME, "VGN-FZ11M"), |
