diff options
author | Josh Boyer <jwboyer@fedoraproject.org> | 2014-06-03 09:51:49 -0400 |
---|---|---|
committer | Josh Boyer <jwboyer@fedoraproject.org> | 2014-06-03 10:13:08 -0400 |
commit | 55244d5e48b8f0d2ecd0621e0f5d96c64f0ba1aa (patch) | |
tree | f356033ee01659592c141a38b9a97b64d4187423 /asus-wmi-Add-a-no-backlight-quirk.patch | |
parent | 9d60dbe3b59936979e6154c89d06c77a71c9c4b4 (diff) | |
download | kernel-55244d5e48b8f0d2ecd0621e0f5d96c64f0ba1aa.tar.gz kernel-55244d5e48b8f0d2ecd0621e0f5d96c64f0ba1aa.tar.xz kernel-55244d5e48b8f0d2ecd0621e0f5d96c64f0ba1aa.zip |
Add no backlight quirks for various Asus machines (rhbz 1097436)
From: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'asus-wmi-Add-a-no-backlight-quirk.patch')
-rw-r--r-- | asus-wmi-Add-a-no-backlight-quirk.patch | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/asus-wmi-Add-a-no-backlight-quirk.patch b/asus-wmi-Add-a-no-backlight-quirk.patch new file mode 100644 index 000000000..3a99afef9 --- /dev/null +++ b/asus-wmi-Add-a-no-backlight-quirk.patch @@ -0,0 +1,69 @@ +Bugzilla: 1097436 +Upstream-status: Sent upstream for 3.16 + +From f6fad201a0e4584e9826a2deb8ebbfccdb8cb13b Mon Sep 17 00:00:00 2001 +From: Hans de Goede <hdegoede@redhat.com> +Date: Mon, 2 Jun 2014 17:41:01 +0200 +Subject: [PATCH 04/14] asus-wmi: Add a no backlight quirk + +Some Asus motherboards for desktop PC-s export an acpi-video and +an asus-wmi interface advertising backlight support. Add a quirk to allow +to blacklist these so that desktop environments such as gnome don't start +showing nonsense brightness controls. + +https://bugzilla.redhat.com/show_bug.cgi?id=1097436 + +Signed-off-by: Hans de Goede <hdegoede@redhat.com> +--- + drivers/platform/x86/asus-wmi.c | 8 ++++++-- + drivers/platform/x86/asus-wmi.h | 1 + + 2 files changed, 7 insertions(+), 2 deletions(-) + +diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c +index c5e082fb82fa..6f73dc5125ca 100644 +--- a/drivers/platform/x86/asus-wmi.c ++++ b/drivers/platform/x86/asus-wmi.c +@@ -1272,6 +1272,9 @@ static int asus_wmi_backlight_init(struct asus_wmi *asus) + int max; + int power; + ++ if (asus->driver->quirks->no_backlight) ++ return -ENODEV; ++ + max = read_brightness_max(asus); + + if (max == -ENODEV) +@@ -1370,7 +1373,7 @@ static void asus_wmi_notify(u32 value, void *context) + code = ASUS_WMI_BRN_DOWN; + + if (code == ASUS_WMI_BRN_DOWN || code == ASUS_WMI_BRN_UP) { +- if (!acpi_video_backlight_support()) { ++ if (asus->backlight_device) { + asus_wmi_backlight_notify(asus, orig_code); + goto exit; + } +@@ -1773,7 +1776,8 @@ static int asus_wmi_add(struct platform_device *pdev) + if (err) + goto fail_rfkill; + +- if (asus->driver->quirks->wmi_backlight_power) ++ if (asus->driver->quirks->wmi_backlight_power || ++ asus->driver->quirks->no_backlight) + acpi_video_dmi_promote_vendor(); + if (!acpi_video_backlight_support()) { + pr_info("Disabling ACPI video driver\n"); +diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/x86/asus-wmi.h +index 4da4c8bafe70..cc47efe14974 100644 +--- a/drivers/platform/x86/asus-wmi.h ++++ b/drivers/platform/x86/asus-wmi.h +@@ -42,6 +42,7 @@ struct quirk_entry { + bool scalar_panel_brightness; + bool store_backlight_power; + bool wmi_backlight_power; ++ bool no_backlight; + int wapf; + /* + * For machines with AMD graphic chips, it will send out WMI event +-- +1.9.0 + |