[PATCH v3 00/10] backlight: Replace struct fb_info in interfaces

Thomas Zimmermann tzimmermann at suse.de
Tue Mar 5 10:00:57 UTC 2024


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)



More information about the dri-devel mailing list