Re: [PATCH] backlight: apple_bl: Use acpi_video_get_backlight_type()

From: Andy Shevchenko
Date: Tue Mar 07 2023 - 07:27:39 EST


On Tue, Mar 07, 2023 at 01:05:40PM +0100, Hans de Goede wrote:
> On some MacBooks both the apple_bl and the apple-gmux backlight drivers
> may be able to export a /sys/class/backlight device.
>
> To avoid having 2 backlight devices for one LCD panel until now
> the apple-gmux driver has been calling apple_bl_unregister() to move
> the apple_bl backlight device out of the way when it loads.
>
> Similar problems exist on other x86 laptops and all backlight drivers
> which may be used on x86 laptops have moved to using
> acpi_video_get_backlight_type() to determine whether they should load
> or not.
>
> Switch apple_bl to this model too, so that it is consistent with all
> the other x86 backlight drivers.
>
> Besides code-simplification and consistency this has 2 other benefits:
>
> 1) It removes a race during boot where userspace will briefly see
> an apple_bl backlight and then have it disappear again, leading to e.g.:
> https://bbs.archlinux.org/viewtopic.php?id=269920
>
> 2) This allows user to switch between the drivers by passing
> acpi_backlight=apple_gmux or acpi_backlight=vendor on the kernel
> commandline.

...

> + depends on ACPI_VIDEO=n || ACPI_VIDEO

I'm wondering if "imply ACPI_VIDEO" (i.o.w. weak dependency) is what suitable
here.

--
With Best Regards,
Andy Shevchenko