NAK Re: [Pull Request v2][SRU][OEM-6.0] both dell_backlight and nvidia_0 backlight interface appear, and can't adjust the display brightness

Timo Aaltonen tjaalton at ubuntu.com
Mon May 8 09:49:05 UTC 2023


AceLan Kao kirjoitti 8.5.2023 klo 9.32:
> From: "Chia-Lin Kao (AceLan)" <acelan.kao at canonical.com>
> 
> BugLink: https://launchpad.net/bugs/2017774
> 
> [Impact]
> When switched to discrete mode in the BIOS, nvidia driver will create its
> own backlight interface(nvidia_0) to control the backlight, but at the
> same time dell-laptop creates its own backlight interface(dell_backlight),
> too. In discrete mode, dell_backlight interface doesn't work, and it leads
> to gnome chooses the wrong interface(dell_backlight) to control the
> backlight and then leads to the issue.
> 
> [Fix]
> The acpi_video_backlight_use_native() helper function is introduced after
> v6.1 and nvidia driver will call this function if kernel provides it. This
> helper tells video_detect module that nvidia controls the backlight, so
> that dell-laptop won't create another backlight interface when it's loaded
> 
> Below commits are all from v6.1-rc1
> fb1836c91317 ACPI: video: Prefer native over vendor
> a5df42521f32 ACPI: video: Simplify __acpi_video_get_backlight_type()454d61a56d5e ACPI: video: Make acpi_video_backlight_use_native() always return true
> b39be9f441f9 ACPI: video: Refactor acpi_video_get_backlight_type() a bit
> a2fc3c899bb0 ACPI: video: Drop backlight_device_get_by_type() call from acpi_video_get_backlight_type()
> 2600bfa3df99 ACPI: video: Add acpi_video_backlight_use_native() helper
> 
> v2. Add more commits to fix the potential regresson on other platforms.
> 
> [Test]
> Verified on the target machine and confirmed dell_backlight interface is
> not generated.
> 
> [Where problem could occur]
> All changes are in __acpi_video_get_backlight_type() function and to make
> it smarter to decide which type of backlight interface should be created.
> The final result is pretty similar to the latest mainline version, if it
> introduce any regression we can add quirk to list those misjudged machines.
> 
> The following changes since commit 83025ac229723ffcb98554b3c17aa5ae3de46775:
> 
>    UBUNTU: Ubuntu-oem-6.0-6.0.0-1015.15 (2023-04-18 16:01:23 +0300)
> 
> are available in the Git repository at:
> 
>    git://git.launchpad.net/~acelankao/+git/ubuntu-jammy backlight
> 
> for you to fetch changes up to 44af5b48b7e955a33ae72fb658b59f02efb61107:
> 
>    ACPI: video: Add backlight=native DMI quirk for HP EliteBook 8460p (2023-05-08 11:46:35 +0800)
> 
> ----------------------------------------------------------------
> Dmitry Osipenko (1):
>        ACPI: video: Fix missing native backlight on Chromebooks
> 
> Hans de Goede (20):
>        ACPI: video: Add acpi_video_backlight_use_native() helper
>        ACPI: video: Drop backlight_device_get_by_type() call from acpi_video_get_backlight_type()
>        ACPI: video: Make backlight class device registration a separate step (v2)
>        ACPI: video: Remove code to unregister acpi_video backlight when a native backlight registers
>        ACPI: video: Refactor acpi_video_get_backlight_type() a bit
>        platform/x86: nvidia-wmi-ec-backlight: Move fw interface definitions to a header (v2)
>        ACPI: video: Add Nvidia WMI EC brightness control detection (v3)
>        ACPI: video: Add Apple GMUX brightness control detection
>        platform/x86: apple-gmux: Move port defines to apple-gmux.h
>        platform/x86: apple-gmux: Add apple_gmux_detect() helper
>        ACPI: video: Improve Chromebook checks
>        ACPI: video: Make acpi_video_backlight_use_native() always return true
>        ACPI: video: Add backlight=native DMI quirk for Dell G15 5515
>        ACPI: video: Simplify __acpi_video_get_backlight_type()
>        ACPI: video: Prefer native over vendor
>        ACPI: video: Fix Apple GMUX backlight detection
>        ACPI: video: Allow selecting NVidia-WMI-EC or Apple GMUX backlight from the cmdline
>        ACPI: video: Fix apple gmux detection
>        ACPI: video: Add backlight=native DMI quirk for Asus U46E
>        ACPI: video: Add backlight=native DMI quirk for HP EliteBook 8460p
> 
>   MAINTAINERS                                        |   1 +
>   drivers/acpi/Kconfig                               |   1 +
>   drivers/acpi/acpi_video.c                          |  52 ++++++-
>   drivers/acpi/video_detect.c                        | 165 +++++++++++++++------
>   drivers/gpu/drm/gma500/Kconfig                     |   2 +
>   drivers/gpu/drm/i915/Kconfig                       |   2 +
>   drivers/platform/x86/apple-gmux.c                  |  93 +++---------
>   drivers/platform/x86/nvidia-wmi-ec-backlight.c     |  68 +--------
>   include/acpi/video.h                               |   9 ++
>   include/linux/apple-gmux.h                         | 109 +++++++++++++-
>   .../platform_data/x86/nvidia-wmi-ec-backlight.h    |  76 ++++++++++
>   11 files changed, 382 insertions(+), 196 deletions(-)
>   create mode 100644 include/linux/platform_data/x86/nvidia-wmi-ec-backlight.h
> 

I prefer v1 since it's a smaller set for a kernel about to be EOL'd.


-- 
t




More information about the kernel-team mailing list