[PATCH v3 00/11] backlight, lcd, led: Remove fbdev dependencies
Thomas Zimmermann
tzimmermann at suse.de
Thu Mar 6 14:05:42 UTC 2025
This series removes the remaining dependencies on fbdev from the
backlight, lcd and led subsystems. Each depends on fbdev events to
track display state. Make fbdev inform each subsystem via a dedicated
interface instead.
Patches 1 to 3 make fbdev track blank state for each display, so that
backlight code doesn't have to.
Patches 4 to 6 remove fbdev event handling from backlight code. Patches
7 and 8 remove fbdev event handling from lcd code and patches 9 and 10
do the same for led's backlight trigger.
The final patch removes the event constants from fbdev.
With the series applied, the three subsystems do no longer depend on
fbdev. It's also a clean up for fbdev. Fbdev used to send out a large
number of events. That mechanism has been deprecated for some time and
converted call to dedicated functions instead.
Testing is very welcome, as I don't have the hardware to test this
series.
v3:
- export several symbols
- static-inline declare empty placeholders
v2:
- avoid IS_REACHABLE() in source file (Lee)
- simplify several interfaces and helpers
- use lock guards
- initialize global lists and mutices
Thomas Zimmermann (11):
fbdev: Rework fb_blank()
fbdev: Track display blanking state
fbdev: Send old blank state in FB_EVENT_BLANK
backlight: Implement fbdev tracking with blank state from event
backlight: Move blank-state handling into helper
backlight: Replace fb events with a dedicated function call
backlight: lcd: Move event handling into helpers
backlight: lcd: Replace fb events with a dedicated function call
leds: backlight trigger: Move blank-state handling into helper
leds: backlight trigger: Replace fb events with a dedicated function
call
fbdev: Remove constants of unused events
drivers/leds/trigger/ledtrig-backlight.c | 48 +++++-----
drivers/video/backlight/backlight.c | 93 +++++--------------
drivers/video/backlight/lcd.c | 108 +++++++++--------------
drivers/video/fbdev/core/fb_backlight.c | 12 +++
drivers/video/fbdev/core/fb_info.c | 1 +
drivers/video/fbdev/core/fbmem.c | 82 ++++++++++++++---
drivers/video/fbdev/core/fbsysfs.c | 8 +-
include/linux/backlight.h | 22 ++---
include/linux/fb.h | 12 +--
include/linux/lcd.h | 21 ++++-
include/linux/leds.h | 6 ++
11 files changed, 205 insertions(+), 208 deletions(-)
--
2.48.1
More information about the dri-devel
mailing list