linux_dsm_epyc7002/drivers/video/backlight
Liu Ying a55944ca82 backlight: update bd state & fb_blank properties when necessary
We don't have to update the state and fb_blank properties of a backlight
device every time a blanking or unblanking event comes because they may
have already been what we want.  Another thought is that one backlight
device may be shared by multiple framebuffers.  The backlight driver
should take the backlight device as a resource shared by all the
associated framebuffers.

This patch adds some logic to record each framebuffer's backlight usage
to determine the backlight device use count and whether the two
properties should be updated or not.  To be more specific, only one
unblank operation on a certain blanked framebuffer may increase the
backlight device's use count by one, while one blank operation on a
certain unblanked framebuffer may decrease the use count by one, because
the userspace is likely to unblank an unblanked framebuffer or blank a
blanked framebuffer.

Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
Cc: Jingoo Han <jg1.han@samsung.com>
Cc: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2014-04-03 16:21:09 -07:00
..
88pm860x_bl.c backlight: 88pm860x_bl: use devm_backlight_device_register() 2013-11-13 12:09:16 +09:00
aat2870_bl.c backlight: aat2870: use devm_backlight_device_register() 2013-11-13 12:09:16 +09:00
adp5520_bl.c backlight: adp5520: use devm_backlight_device_register() 2013-11-13 12:09:16 +09:00
adp8860_bl.c backlight: adp8860: use devm_backlight_device_register() 2013-11-13 12:09:16 +09:00
adp8870_bl.c backlight: adp8870: use devm_backlight_device_register() 2013-11-13 12:09:16 +09:00
ams369fg06.c backlight: ams369fg06: use devm_{backlight,lcd}_device_register() 2013-11-13 12:09:20 +09:00
apple_bl.c ACPI: Remove useless type argument of driver .remove() operation 2013-01-26 00:37:24 +01:00
as3711_bl.c backlight: as3711_bl: use devm_backlight_device_register() 2013-11-13 12:09:16 +09:00
atmel-pwm-bl.c backlight: atmel-pwm-bl: use gpio_request_one 2013-11-13 12:09:22 +09:00
backlight.c backlight: update bd state & fb_blank properties when necessary 2014-04-03 16:21:09 -07:00
bd6107.c backlight: bd6107: use devm_backlight_device_register() 2013-11-13 12:09:17 +09:00
corgi_lcd.c backlight: corgi_lcd: use devm_{backlight,lcd}_device_register() 2013-11-13 12:09:20 +09:00
cr_bllcd.c backlight: cr_bllcd: use devm_{backlight,lcd}_device_register() 2013-11-13 12:09:20 +09:00
da903x_bl.c backlight: da903x_bl: use devm_backlight_device_register() 2013-11-13 12:09:17 +09:00
da9052_bl.c backlight: da9052_bl: use devm_backlight_device_register() 2013-11-13 12:09:17 +09:00
ep93xx_bl.c backlight: ep93xx: use devm_backlight_device_register() 2013-11-13 12:09:17 +09:00
generic_bl.c backlight: generic_bl: use devm_backlight_device_register() 2013-11-13 12:09:17 +09:00
gpio_backlight.c backlight: gpio_backlight: use devm_backlight_device_register() 2013-11-13 12:09:17 +09:00
hp680_bl.c backlight: hp680_bl: use devm_backlight_device_register() 2014-01-23 16:36:56 -08:00
hx8357.c drivers/video/backlight/hx8357.c: remove redundant of_match_ptr 2013-11-13 12:09:22 +09:00
ili922x.c backlight: ili922x: use devm_lcd_device_register() 2013-11-13 12:09:19 +09:00
ili9320.c backlight: ili9320: use devm_lcd_device_register() 2013-11-13 12:09:19 +09:00
ili9320.h backlight: vgg2432a4: convert vgg2432a4_driver to dev_pm_ops 2013-04-29 18:28:18 -07:00
jornada720_bl.c backlight: jornada720: use devm_backlight_device_register() 2014-01-23 16:36:56 -08:00
jornada720_lcd.c backlight: jornada720: use devm_lcd_device_register() 2014-01-23 16:36:56 -08:00
kb3886_bl.c backlight: kb3886_bl: fix incorrect placement of __initdata marker 2014-01-23 16:36:57 -08:00
Kconfig backlight: lm3630: apply chip revision 2013-11-13 12:09:15 +09:00
l4f00242t03.c backlight: l4f00242t03: use devm_lcd_device_register() 2014-01-23 16:36:56 -08:00
lcd.c drivers/video/backlight/lcd.c: call put_device if device_register fails 2014-01-30 16:56:54 -08:00
ld9040_gamma.h backlight: ld9040: Staticize local variable gamma_table 2013-11-13 12:09:15 +09:00
ld9040.c backlight: ld9040: use devm_{backlight,lcd}_device_register() 2013-11-13 12:09:20 +09:00
lm3533_bl.c backlight: lm3533_bl: use devm_backlight_device_register() 2013-11-13 12:09:18 +09:00
lm3630a_bl.c drivers/video/backlight/lm3630a_bl.c: add missing destroy_workqueue() on error in lm3630a_intr_config() 2013-11-13 12:09:20 +09:00
lm3639_bl.c backlight: use dev_get_platdata() 2013-11-13 12:09:16 +09:00
lms283gf05.c backlight: lms283gf05: use devm_lcd_device_register() 2013-11-13 12:09:19 +09:00
lms501kf03.c backlight: lms501kf03: use devm_lcd_device_register() 2013-11-13 12:09:19 +09:00
locomolcd.c backlight: locomolcd: convert locomolcd to dev_pm_ops 2013-04-29 18:28:16 -07:00
lp855x_bl.c backlight: lp855x: remove unnecessary parentheses 2014-01-23 16:36:57 -08:00
lp8788_bl.c backlight: lp8788: remove unnecessary parentheses 2014-01-23 16:36:57 -08:00
ltv350qv.c backlight: ltv350qv: use devm_lcd_device_register() 2013-11-13 12:09:19 +09:00
ltv350qv.h backlight: Add Samsung LTV350QV LCD driver 2007-10-11 22:24:12 +01:00
lv5207lp.c backlight: lv5207lp: use devm_backlight_device_register() 2013-11-13 12:09:18 +09:00
Makefile backlight: lm3630: apply chip revision 2013-11-13 12:09:15 +09:00
max8925_bl.c backlight: max8925_bl: use devm_backlight_device_register() 2013-11-13 12:09:18 +09:00
omap1_bl.c backlight: omap1: use devm_backlight_device_register() 2014-01-23 16:36:56 -08:00
ot200_bl.c backlight: ot200_bl: use devm_backlight_device_register() 2014-01-23 16:36:56 -08:00
pandora_bl.c backlight: pandora_bl: use devm_backlight_device_register() 2013-11-13 12:09:18 +09:00
pcf50633-backlight.c backlight: pcf50633: use devm_backlight_device_register() 2013-11-13 12:09:18 +09:00
platform_lcd.c backlight: platform_lcd: use devm_lcd_device_register() 2013-11-13 12:09:19 +09:00
pwm_bl.c backlight: pwm_bl: Remove error message upon devm_kzalloc() failure 2013-12-17 10:18:25 +01:00
s6e63m0_gamma.h backlight: add S6E63M0 AMOLED LCD Panel driver 2010-05-26 17:34:16 +01:00
s6e63m0.c backlight: s6e63m0: use devm_{backlight,lcd}_device_register() 2013-11-13 12:09:20 +09:00
tdo24m.c backlight: tdo24m: use devm_lcd_device_register() 2013-11-13 12:09:20 +09:00
tosa_bl.c backlight: tosa: use devm_backlight_device_register() 2014-01-23 16:36:56 -08:00
tosa_lcd.c backlight: tosa: use devm_lcd_device_register() 2014-01-23 16:36:57 -08:00
tps65217_bl.c backlight: tps65217_bl: use devm_backlight_device_register() 2013-11-13 12:09:18 +09:00
vgg2432a4.c backlight: vgg2432a4: convert vgg2432a4_driver to dev_pm_ops 2013-04-29 18:28:18 -07:00
wm831x_bl.c backlight: wm831x_bl: use devm_backlight_device_register() 2013-11-13 12:09:18 +09:00