2700_ThinkPad-30-brightness-control-fix.patch 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. diff --git a/drivers/acpi/blacklist.c b/drivers/acpi/blacklist.c
  2. index cb96296..6c242ed 100644
  3. --- a/drivers/acpi/blacklist.c
  4. +++ b/drivers/acpi/blacklist.c
  5. @@ -269,6 +276,61 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = {
  6. },
  7. /*
  8. + * The following Lenovo models have a broken workaround in the
  9. + * acpi_video backlight implementation to meet the Windows 8
  10. + * requirement of 101 backlight levels. Reverting to pre-Win8
  11. + * behavior fixes the problem.
  12. + */
  13. + {
  14. + .callback = dmi_disable_osi_win8,
  15. + .ident = "Lenovo ThinkPad L430",
  16. + .matches = {
  17. + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
  18. + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad L430"),
  19. + },
  20. + },
  21. + {
  22. + .callback = dmi_disable_osi_win8,
  23. + .ident = "Lenovo ThinkPad T430s",
  24. + .matches = {
  25. + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
  26. + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T430s"),
  27. + },
  28. + },
  29. + {
  30. + .callback = dmi_disable_osi_win8,
  31. + .ident = "Lenovo ThinkPad T530",
  32. + .matches = {
  33. + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
  34. + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T530"),
  35. + },
  36. + },
  37. + {
  38. + .callback = dmi_disable_osi_win8,
  39. + .ident = "Lenovo ThinkPad W530",
  40. + .matches = {
  41. + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
  42. + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad W530"),
  43. + },
  44. + },
  45. + {
  46. + .callback = dmi_disable_osi_win8,
  47. + .ident = "Lenovo ThinkPad X1 Carbon",
  48. + .matches = {
  49. + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
  50. + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X1 Carbon"),
  51. + },
  52. + },
  53. + {
  54. + .callback = dmi_disable_osi_win8,
  55. + .ident = "Lenovo ThinkPad X230",
  56. + .matches = {
  57. + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
  58. + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X230"),
  59. + },
  60. + },
  61. +
  62. + /*
  63. * BIOS invocation of _OSI(Linux) is almost always a BIOS bug.
  64. * Linux ignores it, except for the machines enumerated below.
  65. */