[PATCH v3 0/3] Adjust ACPI video detection fallback path

Limonciello, Mario Mario.Limonciello at amd.com
Thu Dec 15 19:20:30 UTC 2022


[Public]

> -----Original Message-----
> From: Limonciello, Mario <Mario.Limonciello at amd.com>
> Sent: Thursday, December 8, 2022 10:42
> To: Rafael J . Wysocki <rafael at kernel.org>; Deucher, Alexander
> <Alexander.Deucher at amd.com>; Hans de Goede
> <hdegoede at redhat.com>
> Cc: amd-gfx at lists.freedesktop.org; linux-acpi at vger.kernel.org; Daniel
> Dadap <ddadap at nvidia.com>; Limonciello, Mario
> <Mario.Limonciello at amd.com>
> Subject: [PATCH v3 0/3] Adjust ACPI video detection fallback path
> 
> In kernel 6.1 the backlight registration code was overhauled so that
> at most one backlight device got registered. As part of this change
> there was code added to still allow making an acpi_video0 device if the
> BIOS contained backlight control methods but no native or vendor drivers
> registered.
> 
> Even after the overhaul this fallback logic is failing on the BIOS from
> a number of motherboard manufacturers supporting Ryzen APUs.
> What happens is the amdgpu driver finishes registration and as expected
> doesn't create a backlight control device since no eDP panels are connected
> to a desktop.
> 
> Then 8 seconds later the ACPI video detection code creates an
> acpi_video0 device that is non-operational. GNOME then creates a
> backlight slider.
> 
> To avoid this situation from happening make two sets of changes:
> 
> Prevent desktop problems w/ fallback logic
> ------------------------------------------
> 1) Add support for the video detect code to let native drivers cancel the
> fallback logic if they didn't find a panel.
> 
> This is done this way so that if another driver decides that the ACPI
> mechanism is still needed it can instead directly call the registration
> function.
> 
> 2) Add code to amdgpu to notify the ACPI video detection code that no panel
> was detected on an APU.
> 
> Disable fallback logic by default
> ---------------------------------
> This fallback logic was introduced to prevent regressions in the backlight
> overhaul.  As it has been deemed unnecessary by Hans explicitly disable the
> timeout.  If this turns out to be mistake and this part is reverted, the
> other patches for preventing desktop problems will avoid regressions on
> desktops.
> 
> Mario Limonciello (3):
>   ACPI: video: Allow GPU drivers to report no panels
>   drm/amd/display: Report to ACPI video if no panels were found
>   ACPI: video: Don't enable fallback path for creating ACPI backlight by
>     default
> 
>  drivers/acpi/acpi_video.c                       | 17 ++++++++++++-----
>  .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c   |  4 ++++
>  include/acpi/video.h                            |  2 ++
>  3 files changed, 18 insertions(+), 5 deletions(-)
> 
> --
> 2.34.1

FYI, besides me, this series also tested successfully by one of the
reporters to the Red Hat bugzilla.

https://bugzilla.redhat.com/show_bug.cgi?id=1783786#c8


More information about the amd-gfx mailing list