linux/drivers/video/backlight
Enric Balletbo i Serra 573fe6d1c2 backlight: pwm_bl: Linear interpolation between brightness-levels
Setting num-interpolated-steps in the dts will allow you to have linear
interpolation between values of brightness-levels. This way a high
resolution pwm duty cycle can be used without having to list out every
possible value in the dts. This system also allows for gamma corrected
values.

The most simple example is interpolate between two brightness values a
number of steps, this can be done setting the following in the dts:

  brightness-levels = <0 65535>;
  num-interpolated-steps = <1024>;
  default-brightness-level = <512>;

This will create a brightness-level table with the following values:

  <0 63 126 189 252 315 378 441 ... 64260 64323 64386 64449 65535>

Another use case can be describe a gamma corrected curve, as we have
better sensitivity at low luminance than high luminance we probably
want have smaller steps for low brightness levels values and bigger
steps for high brightness levels values. This can be achieved with
the following in the dts:

  brightness-levels = <0 4096 65535>;
  num-interpolated-steps = <1024>;
  default-brightness-level = <512>;

This will create a brightness-levels table with the following values:

  <0 4 8 12 16 20 ... 4096 4156 4216 4276 ... 65535>

Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Acked-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
2018-07-04 10:30:46 +01:00
..
88pm860x_bl.c backlight: 88pm860x_bl: Add missing of_node_put 2015-10-15 12:06:21 +01:00
aat2870_bl.c backlight: Remove .owner field for drivers using module_platform_driver 2014-08-28 14:09:48 +01:00
adp5520_bl.c backlight: adp5520: Fix error handling in adp5520_bl_probe() 2017-01-04 11:37:31 +00:00
adp8860_bl.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
adp8870_bl.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
ams369fg06.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
apple_bl.c backlight: apple_bl: Deprecate pci_get_bus_and_slot() 2017-12-20 13:47:05 +00:00
arcxcnn_bl.c backlight: Add support for Arctic Sand LED backlight driver chips 2017-04-25 09:22:23 +01:00
as3711_bl.c backlight: as3711_bl: Fix Device Tree node leaks 2018-06-11 13:40:45 +01:00
backlight.c video: backlight: Add devres versions of of_find_backlight 2018-01-29 10:34:53 -05:00
bd6107.c
corgi_lcd.c backlight: tdo24m: Fix the SPI CS between transfers 2018-01-08 09:21:57 +00:00
cr_bllcd.c backlight: cr_bllcd: Add blank line after declarations 2014-08-29 08:24:51 +01:00
da903x_bl.c backlight: Remove .owner field for drivers using module_platform_driver 2014-08-28 14:09:48 +01:00
da9052_bl.c backlight: da9052: Fix module autoload 2017-01-04 11:37:58 +00:00
ep93xx_bl.c backlight: Remove .owner field for drivers using module_platform_driver 2014-08-28 14:09:48 +01:00
generic_bl.c backlight: generic-bl: Remove DRIVER1 state 2018-04-30 13:25:14 +01:00
gpio_backlight.c backlight: gpio_backlight: Delete pdata inversion 2017-08-07 17:11:28 +01:00
hp680_bl.c
hx8357.c
ili922x.c backlight: ili922x: Remove redundant variable len 2017-11-08 10:43:49 +00:00
ili9320.c
ili9320.h
ipaq_micro_bl.c backlight: ipaq_micro: Fix sparse non static symbol warning 2014-07-31 10:31:22 +01:00
jornada720_bl.c backlight: jornada720: Remove 'else' after a return 2014-08-29 08:26:32 +01:00
jornada720_lcd.c backlight: jornada720: Remove 'else' after a return 2014-08-29 08:26:51 +01:00
kb3886_bl.c dmi: Mark all struct dmi_system_id instances const 2017-09-14 11:59:30 +02:00
Kconfig backlight: otm3225a: Add support for ORISE OTM3225A LCD SoC 2018-04-30 10:50:44 +01:00
l4f00242t03.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
lcd.c backlight: lcd: Fix race condition during register 2017-01-04 11:37:31 +00:00
ld9040_gamma.h
ld9040.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
lm3533_bl.c backlight: Remove .owner field for drivers using module_platform_driver 2014-08-28 14:09:48 +01:00
lm3630a_bl.c backlight: lm3630a: Bump REG_MAX value to 0x50 instead of 0x1F 2017-07-17 13:27:06 +01:00
lm3639_bl.c backlight: lm3639: Remove unnecessary return statements 2014-08-29 08:25:23 +01:00
lms283gf05.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
lms501kf03.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
locomolcd.c
lp855x_bl.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
lp8788_bl.c backlight: lp8788: Explicitly apply PWM config extracted from pwm_args 2016-05-17 14:45:04 +02:00
ltv350qv.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
ltv350qv.h
lv5207lp.c
Makefile backlight: otm3225a: Add support for ORISE OTM3225A LCD SoC 2018-04-30 10:50:44 +01:00
max8925_bl.c backlight: max8925_bl: Fix Device Tree node lookup 2018-06-11 13:40:32 +01:00
omap1_bl.c backlight: omap1: add blank line after declarations 2014-08-29 08:27:53 +01:00
ot200_bl.c backlight: Remove .owner field for drivers using module_platform_driver 2014-08-28 14:09:48 +01:00
otm3225a.c backlight: otm3225a: Add support for ORISE OTM3225A LCD SoC 2018-04-30 10:50:44 +01:00
pandora_bl.c backlight: pandora: Stop using BL_CORE_DRIVER1 2018-04-30 13:25:14 +01:00
pcf50633-backlight.c backlight: pcf50633: Add blank line after declarations 2014-08-29 08:25:53 +01:00
platform_lcd.c backlight: Remove .owner field for drivers using module_platform_driver 2014-08-28 14:09:48 +01:00
pm8941-wled.c backlight: pm8941-wled: Add default-brightness property 2015-10-30 18:47:51 +00:00
pwm_bl.c backlight: pwm_bl: Linear interpolation between brightness-levels 2018-07-04 10:30:46 +01:00
rave-sp-backlight.c backlight: Add RAVE SP backlight driver 2018-04-30 10:50:43 +01:00
s6e63m0_gamma.h
s6e63m0.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
sky81452-backlight.c backlight: sky81452: Remove unneeded use of IS_ERR_VALUE() macro 2015-08-25 08:43:21 +01:00
tdo24m.c backlight: tdo24m: Fix the SPI CS between transfers 2018-01-08 09:21:57 +00:00
tosa_bl.c backlight-tosa: Delete unnecessary assignment for the field "owner" 2016-10-06 09:27:25 +01:00
tosa_lcd.c backlight: tdo24m: Fix the SPI CS between transfers 2018-01-08 09:21:57 +00:00
tps65217_bl.c backlight: tps65217_bl: Fix Device Tree node lookup 2018-06-11 13:40:39 +01:00
vgg2432a4.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
wm831x_bl.c backlight: wm831x_bl: Add blank line after declarations 2014-08-29 08:26:21 +01:00