• Hans de Goede's avatar
    drm/gma500: Call acpi_video_register_backlight() · c989a624
    Hans de Goede authored
    On machines without an Intel video opregion the acpi_video driver
    immediately probes the ACPI video bus and used to also immediately
    register acpi_video# backlight devices when supported.
    
    Once the drm/kms driver then loaded later and possibly registered
    a native backlight device then the drivers/acpi/video_detect.c code
    unregistered the acpi_video0 device to avoid there being 2 backlight
    devices (when acpi_video_get_backlight_type()==native).
    
    This means that userspace used to briefly see 2 devices and the
    disappearing of acpi_video0 after a brief time confuses the systemd
    backlight level save/restore code, see e.g.:
    https://bbs.archlinux.org/viewtopic.php?id=269920
    
    To fix this the ACPI video code has been modified to make backlight class
    device registration a separate step, relying on the drm/kms driver to
    ask for the acpi_video backlight registration after it is done setting up
    its native backlight device.
    
    Add a call to the new acpi_video_register_backlight() function after
    setting up the gma500's native backlight, so that the acpi_video backlight
    device gets registered on systems where the gma500's native backlight
    device is not registered.
    Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
    Acked-by: default avatarPatrik Jakobsson <patrik.r.jakobsson@gmail.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20220917205920.647212-6-hdegoede@redhat.com
    c989a624
psb_drv.c 14.1 KB