[kernel] r22242 - in dists/sid/linux/debian: . patches patches/bugfix/x86

Ben Hutchings benh at moszumanska.debian.org
Fri Jan 2 04:26:06 UTC 2015


Author: benh
Date: Fri Jan  2 04:26:05 2015
New Revision: 22242

Log:
[x86] ACPI / video: Run _BCL before deciding registering backlight (regression in 3.16) (Closes: #762285)

Added:
   dists/sid/linux/debian/patches/bugfix/x86/acpi-video-run-_bcl-before-deciding-registering-back.patch
Modified:
   dists/sid/linux/debian/changelog
   dists/sid/linux/debian/patches/series

Modified: dists/sid/linux/debian/changelog
==============================================================================
--- dists/sid/linux/debian/changelog	Fri Jan  2 04:19:56 2015	(r22241)
+++ dists/sid/linux/debian/changelog	Fri Jan  2 04:26:05 2015	(r22242)
@@ -101,6 +101,8 @@
     (Closes: #774209)
   * udeb: Add i2c-designware-{core,platform} to i2c-modules and i2c-hid to
     input-modules (Closes: #772578)
+  * [x86] ACPI / video: Run _BCL before deciding registering backlight
+    (regression in 3.16) (Closes: #762285)
 
   [ Ian Campbell ]
   * [armhf] Enable support for support OMAP5432 uEVM by enabling:

Added: dists/sid/linux/debian/patches/bugfix/x86/acpi-video-run-_bcl-before-deciding-registering-back.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/bugfix/x86/acpi-video-run-_bcl-before-deciding-registering-back.patch	Fri Jan  2 04:26:05 2015	(r22242)
@@ -0,0 +1,61 @@
+From: Aaron Lu <aaron.lu at intel.com>
+Date: Tue, 28 Oct 2014 14:35:59 +0800
+Subject: ACPI / video: Run _BCL before deciding registering backlight
+Origin: https://git.kernel.org/linus/dce4ec2e452fddb7542b5fc15d0e6b8531f6d5eb
+
+The ASUS K53SM's ACPI table queries _OSI("Windows 2012") in the video
+output device's _BCL and _BCM control method instead of the usual _INI
+functions of the _SB or PCI host bridge PCI0 devices. This made our
+video module thought this is a pre-Win8 system when deciding if we
+should register a backlight interface for it and the end result is that
+a non-working acpi_video interface is registered and user is unable to
+control backlight from GUI. Solve this problem by evaluating _BCL control
+method before doing the decision.
+
+Note that for some Thinkpad systems, the _BCL is also required to be
+evaluated for the hotkey event to be generated no matter if we will
+register an ACPI video backlight interface for it or not. Since the
+thinkpad_acpi module will do this anyway we didn't add such a thing in
+the video module previously. But now with this change here, the
+thinkpad_acpi module is no more necessary for those systems regarding
+backlight functionality.
+
+Link: https://bugzilla.kernel.org/show_bug.cgi?id=85051
+Reported-and-tested-by: Ralf Jung <post+kernel at ralfj.de>
+Signed-off-by: Aaron Lu <aaron.lu at intel.com>
+Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki at intel.com>
+---
+ drivers/acpi/video.c | 15 +++++++++++++++
+ 1 file changed, 15 insertions(+)
+
+--- a/drivers/acpi/video.c
++++ b/drivers/acpi/video.c
+@@ -1836,6 +1836,19 @@ static void acpi_video_dev_register_back
+ 		printk(KERN_ERR PREFIX "Create sysfs link\n");
+ }
+ 
++static void acpi_video_run_bcl_for_osi(struct acpi_video_bus *video)
++{
++	struct acpi_video_device *dev;
++	union acpi_object *levels;
++
++	mutex_lock(&video->device_list_lock);
++	list_for_each_entry(dev, &video->video_device_list, entry) {
++		if (!acpi_video_device_lcd_query_levels(dev, &levels))
++			kfree(levels);
++	}
++	mutex_unlock(&video->device_list_lock);
++}
++
+ static int acpi_video_bus_register_backlight(struct acpi_video_bus *video)
+ {
+ 	struct acpi_video_device *dev;
+@@ -1843,6 +1856,8 @@ static int acpi_video_bus_register_backl
+ 	if (video->backlight_registered)
+ 		return 0;
+ 
++	acpi_video_run_bcl_for_osi(video);
++
+ 	if (!acpi_video_verify_backlight_support())
+ 		return 0;
+ 

Modified: dists/sid/linux/debian/patches/series
==============================================================================
--- dists/sid/linux/debian/patches/series	Fri Jan  2 04:19:56 2015	(r22241)
+++ dists/sid/linux/debian/patches/series	Fri Jan  2 04:26:05 2015	(r22242)
@@ -483,3 +483,4 @@
 debian/arm-thread_info-fix-abi-change-in-3.16.7-ckt3.patch
 debian/pci-fix-abi-change-in-3.16.7-ckt3.patch
 features/x86/platform-chrome-chromeos_laptop-add-support-for-acer.patch
+bugfix/x86/acpi-video-run-_bcl-before-deciding-registering-back.patch



More information about the Kernel-svn-changes mailing list