mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00
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: Hans de Goede <hdegoede@redhat.com> Acked-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220917205920.647212-6-hdegoede@redhat.com |
||
|---|---|---|
| .. | ||
| backlight.c | ||
| cdv_device.c | ||
| cdv_device.h | ||
| cdv_intel_crt.c | ||
| cdv_intel_display.c | ||
| cdv_intel_dp.c | ||
| cdv_intel_hdmi.c | ||
| cdv_intel_lvds.c | ||
| framebuffer.c | ||
| framebuffer.h | ||
| gem.c | ||
| gem.h | ||
| gma_device.c | ||
| gma_device.h | ||
| gma_display.c | ||
| gma_display.h | ||
| gtt.c | ||
| gtt.h | ||
| intel_bios.c | ||
| intel_bios.h | ||
| intel_gmbus.c | ||
| intel_i2c.c | ||
| Kconfig | ||
| Makefile | ||
| mid_bios.c | ||
| mid_bios.h | ||
| mmu.c | ||
| mmu.h | ||
| oaktrail_crtc.c | ||
| oaktrail_device.c | ||
| oaktrail_hdmi_i2c.c | ||
| oaktrail_hdmi.c | ||
| oaktrail_lvds_i2c.c | ||
| oaktrail_lvds.c | ||
| oaktrail.h | ||
| opregion.c | ||
| opregion.h | ||
| power.c | ||
| power.h | ||
| psb_device.c | ||
| psb_device.h | ||
| psb_drv.c | ||
| psb_drv.h | ||
| psb_intel_display.c | ||
| psb_intel_drv.h | ||
| psb_intel_lvds.c | ||
| psb_intel_modes.c | ||
| psb_intel_reg.h | ||
| psb_intel_sdvo_regs.h | ||
| psb_intel_sdvo.c | ||
| psb_irq.c | ||
| psb_irq.h | ||
| psb_lid.c | ||
| psb_reg.h | ||