Hi
Am 05.03.24 um 10:36 schrieb Lee Jones:
On Mon, 04 Mar 2024, Thomas Zimmermann wrote:
Backlight drivers implement struct backlight_ops.check_fb, which
uses struct fb_info in its interface. Replace the callback with one
that does not use fb_info.
In DRM, we have several drivers that implement backlight support. By
including <linux/backlight.h> these drivers depend on <linux/fb.h>.
At the same time, fbdev is deprecated for new drivers and likely to
be replaced on many systems.
This patchset is part of a larger effort to implement the backlight
code without depending on fbdev.
Patch 1 makes the backlight core match backlight and framebuffer
devices via struct fb_info.bl_dev. Patches 2 to 9 then go through
drivers and remove unnecessary implementations of check_fb. Finally,
patch 10 replaces the check_fb hook with controls_device, which
uses the framebuffer's Linux device instead of the framebuffer.
v3:
* hide CONFIG_FB_BACKLIGHT behind fb_bl_device() (Lee)
* if-else cleanups (Andy)
* fix commit message of patch 2 (Andy)
v2:
* fix hid-picolcd for CONFIG_FB_BACKLIGHT=n
* fixes to commit messages
Thomas Zimmermann (10):
backlight: Match backlight device against struct fb_info.bl_dev
auxdisplay/ht16k33: Remove struct backlight_ops.check_fb
hid/hid-picolcd: Fix initialization order
hid/hid-picolcd: Remove struct backlight_ops.check_fb
backlight/aat2870-backlight: Remove struct backlight.check_fb
backlight/pwm-backlight: Remove struct backlight_ops.check_fb
fbdev/sh_mobile_lcdc_fb: Remove struct backlight_ops.check_fb
fbdev/ssd1307fb: Init backlight before registering framebuffer
fbdev/ssd1307fb: Remove struct backlight_ops.check_fb
backlight: Add controls_device callback to struct backlight_ops
drivers/auxdisplay/ht16k33.c | 8 ------
drivers/hid/hid-picolcd_backlight.c | 7 ------
drivers/hid/hid-picolcd_core.c | 14 +++++------
drivers/hid/hid-picolcd_fb.c | 6 +++++
drivers/video/backlight/aat2870_bl.c | 7 ------
drivers/video/backlight/backlight.c | 8 ++++--
drivers/video/backlight/bd6107.c | 12 ++++-----
drivers/video/backlight/gpio_backlight.c | 12 ++++-----
drivers/video/backlight/lv5207lp.c | 12 ++++-----
drivers/video/backlight/pwm_bl.c | 12 ---------
drivers/video/fbdev/core/fb_backlight.c | 5 ++++
drivers/video/fbdev/sh_mobile_lcdcfb.c | 7 ------
drivers/video/fbdev/ssd1307fb.c | 31 +++++++++---------------
include/linux/backlight.h | 16 ++++++------
include/linux/fb.h | 9 +++++++
include/linux/pwm_backlight.h | 1 -
16 files changed, 70 insertions(+), 97 deletions(-)
Which Acks are you missing for us to merge this?
Only yours.
If you decide to only merge the backlight patches, I'll merge the other
patches via other fbdev/drm trees during the next release cycle. Patch
10/10 would afterwards go into the backlight tree again.
Best regards
Thomas
--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)