diff options
author | Aaron Lu <aaron.lu@intel.com> | 2014-12-01 02:09:18 +0100 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2014-12-01 02:09:18 +0100 |
commit | 35d0565b95547ec12d025dc9b1394f22968d113d (patch) | |
tree | c5879b6f7b6ec184c32a71c82a7eb2003af3be2a /drivers/acpi/video.c | |
parent | 009d0431c3914de64666bec0d350e54fdd59df6a (diff) | |
download | linux-35d0565b95547ec12d025dc9b1394f22968d113d.tar.gz linux-35d0565b95547ec12d025dc9b1394f22968d113d.tar.bz2 linux-35d0565b95547ec12d025dc9b1394f22968d113d.zip |
ACPI / video: update condition to check if device is in _DOD list
Commit 0b8db271f159 ("ACPI / video: check _DOD list when creating
backlight devices") checks if the video device is in the bind devices
list to decide if we should create backlight device for it, that causes
problem for one Dell Latitude E6410, where none of the video output
devices are properly bound due to the way how we did the comparing
between its _ADR and the _DOD's values. Solve this problem by comparing
the lower 12 bits of both the device's _ADR and the _DOD's values instead
of relying on bind result.
Fixes: 0b8db271f159 ("ACPI / video: check _DOD list when creating backlight devices")
Reported-and-tested-by: Brian Norris <computersforpeace@gmail.com>
Signed-off-by: Aaron Lu <aaron.lu@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/video.c')
-rw-r--r-- | drivers/acpi/video.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c index 807a88a0f394..9d75ead2a1f9 100644 --- a/drivers/acpi/video.c +++ b/drivers/acpi/video.c @@ -1164,7 +1164,8 @@ static bool acpi_video_device_in_dod(struct acpi_video_device *device) return true; for (i = 0; i < video->attached_count; i++) { - if (video->attached_array[i].bind_info == device) + if ((video->attached_array[i].value.int_val & 0xfff) == + (device->device_id & 0xfff)) return true; } |