diff options
Diffstat (limited to 'samsung-laptop-Add-use_native_backlight-quirk-and-en.patch')
-rw-r--r-- | samsung-laptop-Add-use_native_backlight-quirk-and-en.patch | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/samsung-laptop-Add-use_native_backlight-quirk-and-en.patch b/samsung-laptop-Add-use_native_backlight-quirk-and-en.patch deleted file mode 100644 index 39aa5fffa..000000000 --- a/samsung-laptop-Add-use_native_backlight-quirk-and-en.patch +++ /dev/null @@ -1,107 +0,0 @@ -From: Hans de Goede <hdegoede@redhat.com> -Date: Fri, 9 Jan 2015 14:51:21 +0100 -Subject: [PATCH] samsung-laptop: Add use_native_backlight quirk, and enable it - on some models - -Since kernel 3.14 the backlight control has been broken on various Samsung -Atom based netbooks. This has been bisected and this problem happens since -commit b35684b8fa94 ("drm/i915: do full backlight setup at enable time") - -This has been reported and discussed in detail here: -http://lists.freedesktop.org/archives/intel-gfx/2014-July/049395.html - -Unfortunately no-one has been able to fix this. This only affects Samsung -Atom netbooks, and the Linux kernel and the BIOS of those laptops have never -worked well together. All affected laptops already have a quirk to avoid using -the standard acpi-video interface and instead use the samsung specific SABI -interface which samsung-laptop uses. It seems that recent fixes to the i915 -driver have also broken backlight control through the SABI interface. - -The intel_backlight driver OTOH works fine, and also allows for finer grained -backlight control. So add a new use_native_backlight quirk, and replace the -broken_acpi_video quirk with this quirk for affected models. This new quirk -disables acpi-video as before and also stops samsung-laptop from registering -the SABI based samsung_laptop backlight interface, leaving only the working -intel_backlight interface. - -This commit enables this new quirk for 3 models which are known to be affected, -chances are that it needs to be used on other models too. - -BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1094948 # N145P -BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1115713 # N250P -Reported-by: Bertrik Sikken <bertrik@sikken.nl> # N150P -Cc: stable@vger.kernel.org # 3.16 -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- - drivers/platform/x86/samsung-laptop.c | 20 +++++++++++++++++--- - 1 file changed, 17 insertions(+), 3 deletions(-) - -diff --git a/drivers/platform/x86/samsung-laptop.c b/drivers/platform/x86/samsung-laptop.c -index ff765d8e1a09..ce364a41842a 100644 ---- a/drivers/platform/x86/samsung-laptop.c -+++ b/drivers/platform/x86/samsung-laptop.c -@@ -353,6 +353,7 @@ struct samsung_quirks { - bool broken_acpi_video; - bool four_kbd_backlight_levels; - bool enable_kbd_backlight; -+ bool use_native_backlight; - }; - - static struct samsung_quirks samsung_unknown = {}; -@@ -361,6 +362,10 @@ static struct samsung_quirks samsung_broken_acpi_video = { - .broken_acpi_video = true, - }; - -+static struct samsung_quirks samsung_use_native_backlight = { -+ .use_native_backlight = true, -+}; -+ - static struct samsung_quirks samsung_np740u3e = { - .four_kbd_backlight_levels = true, - .enable_kbd_backlight = true, -@@ -1507,7 +1512,7 @@ static struct dmi_system_id __initdata samsung_dmi_table[] = { - DMI_MATCH(DMI_PRODUCT_NAME, "N150P"), - DMI_MATCH(DMI_BOARD_NAME, "N150P"), - }, -- .driver_data = &samsung_broken_acpi_video, -+ .driver_data = &samsung_use_native_backlight, - }, - { - .callback = samsung_dmi_matched, -@@ -1517,7 +1522,7 @@ static struct dmi_system_id __initdata samsung_dmi_table[] = { - DMI_MATCH(DMI_PRODUCT_NAME, "N145P/N250P/N260P"), - DMI_MATCH(DMI_BOARD_NAME, "N145P/N250P/N260P"), - }, -- .driver_data = &samsung_broken_acpi_video, -+ .driver_data = &samsung_use_native_backlight, - }, - { - .callback = samsung_dmi_matched, -@@ -1557,7 +1562,7 @@ static struct dmi_system_id __initdata samsung_dmi_table[] = { - DMI_MATCH(DMI_PRODUCT_NAME, "N250P"), - DMI_MATCH(DMI_BOARD_NAME, "N250P"), - }, -- .driver_data = &samsung_broken_acpi_video, -+ .driver_data = &samsung_use_native_backlight, - }, - { - .callback = samsung_dmi_matched, -@@ -1616,6 +1621,15 @@ static int __init samsung_init(void) - pr_info("Disabling ACPI video driver\n"); - acpi_video_unregister(); - } -+ -+ if (samsung->quirks->use_native_backlight) { -+ pr_info("Using native backlight driver\n"); -+ /* Tell acpi-video to not handle the backlight */ -+ acpi_video_dmi_promote_vendor(); -+ acpi_video_unregister(); -+ /* And also do not handle it ourselves */ -+ samsung->handle_backlight = false; -+ } - #endif - - ret = samsung_platform_init(samsung); --- -2.1.0 - |