Hi, On 11/9/22 14:51, Rafael J. Wysocki wrote: > On Sat, Nov 5, 2022 at 4:17 PM Hans de Goede <hdegoede@xxxxxxxxxx> wrote: >> >> Hi, >> >> On 11/5/22 15:52, Hans de Goede wrote: >>> Hi Rafael, Matthew, >>> >>> Here is a second attempt at always registering only a single >>> /sys/class/backlight device per panel. >>> >>> This first round of testing has shown that native works well even on >>> systems so old that the don't have acpi_video backlight control support. >>> >>> This patch series makes native be preferred over vendor, which should >>> avoid the problems seen with the 6.1 changes before the fixes. >>> >>> ATM there is one known model where this will cause a regression, >>> the Sony Vaio PCG-FRV3 from 2003. I plan to add a DMI quirk for that >>> in the next version of this series, but I'm waiting for some more >>> testing (to check that the vendor interface does actually work) first. >>> >>> I will also do another blogpost, focussing on asking users to see >>> if they have a laptop which provides a combination of vendor + native >>> backlight interfaces, which may be impacted by this series. This is >>> the main reason why this is a RFC for now. >> >> The blogpost requesting testing of laptops with a combination >> of vendor + native backlight interfaces can be found here: >> >> https://hansdegoede.dreamwidth.org/27024.html > > The patches in this series look reasonable to me, Thanks. > even though I'm not > sure if the assumption that the Windows 8 hardware certification > requirements were always followed is not overly optimistic. After the second patch in the series the only remaining prefer_native_over_acpi_video() and thus the only acpi_osi_is_win8() call is guarded by a (video_caps & ACPI_VIDEO_BACKLIGHT) check as before: if ((video_caps & ACPI_VIDEO_BACKLIGHT) && !(native_available && prefer_native_over_acpi_video())) return acpi_backlight_video; So even if the assumption is wrong, there is no behavior change other then the intended behavior change already caused by the second patch. The last part of __acpi_video_get_backlight_type() which contains the basic (non special case) heuristics looks like this after this series: /* Use ACPI video if available, except when native should be preferred. */ if ((video_caps & ACPI_VIDEO_BACKLIGHT) && !(native_available && prefer_native_over_acpi_video())) return acpi_backlight_video; /* Use native if available */ if (native_available) return acpi_backlight_native; /* No ACPI video/native (old hw), use vendor specific fw methods. */ return acpi_backlight_vendor; Which is also a bit more KISS / easier to follow then before and I hope that this will work well. Regards, Hans