On Sat, Dec 23, 2017 at 07:41:47PM +0100, Hans de Goede wrote:
We're seeing a lot of bogus backlight interfaces on newer machines without a LCD such as desktops, servers and HDMI sticks. This causes userspace to show a non-functional brightness slider in e.g. the GNOME3 system menu, which is undesirable. More in general we should simply just not register a non functional backlight interface.
Checking the lcd flag causes the bogus acpi_video backlight interfaces to go away (on the machines this was tested on).
This commit enables the lcd_only option by default on any machines which are win8 ready, fixing this.
This is not entirely without risk of regressions, but video_detect.c already prefers native-backlight interfaces over the acpi_video one on win8 ready machines, calling acpi_video_unregister_backlight() as soon as a native interface shows up. This is done because the acpi backlight interface often is broken on win8 ready machines, because win8 does not seem to actually use it.
This patch (in the form of commit 965736ee654d ("ACPI / video: Default lcd_only to true on Win8-ready and newer machines") in stable v4.15.17), breaks backlight control on my 2013 XPS13 laptop.
It normally uses the acpi backlight device, but after this patch that device no longer shows up in sysfs.
This isn't the first time the backlight has gotton broken on this system, though I think last time it was because the intel backlight driver got used instead of the ACPI one and that didn't work properly with it, so it needed a quirk to make it use ACPI instead.
Is some other quirk needed around here too?
Cheers James