lp855x-driver.rst 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. ====================
  2. Kernel driver lp855x
  3. ====================
  4. Backlight driver for LP855x ICs
  5. Supported chips:
  6. Texas Instruments LP8550, LP8551, LP8552, LP8553, LP8555, LP8556 and
  7. LP8557
  8. Author: Milo(Woogyom) Kim <milo.kim@ti.com>
  9. Description
  10. -----------
  11. * Brightness control
  12. Brightness can be controlled by the pwm input or the i2c command.
  13. The lp855x driver supports both cases.
  14. * Device attributes
  15. 1) bl_ctl_mode
  16. Backlight control mode.
  17. Value: pwm based or register based
  18. 2) chip_id
  19. The lp855x chip id.
  20. Value: lp8550/lp8551/lp8552/lp8553/lp8555/lp8556/lp8557
  21. Platform data for lp855x
  22. ------------------------
  23. For supporting platform specific data, the lp855x platform data can be used.
  24. * name:
  25. Backlight driver name. If it is not defined, default name is set.
  26. * device_control:
  27. Value of DEVICE CONTROL register.
  28. * initial_brightness:
  29. Initial value of backlight brightness.
  30. * period_ns:
  31. Platform specific PWM period value. unit is nano.
  32. Only valid when brightness is pwm input mode.
  33. * size_program:
  34. Total size of lp855x_rom_data.
  35. * rom_data:
  36. List of new eeprom/eprom registers.
  37. Examples
  38. ========
  39. 1) lp8552 platform data: i2c register mode with new eeprom data::
  40. #define EEPROM_A5_ADDR 0xA5
  41. #define EEPROM_A5_VAL 0x4f /* EN_VSYNC=0 */
  42. static struct lp855x_rom_data lp8552_eeprom_arr[] = {
  43. {EEPROM_A5_ADDR, EEPROM_A5_VAL},
  44. };
  45. static struct lp855x_platform_data lp8552_pdata = {
  46. .name = "lcd-bl",
  47. .device_control = I2C_CONFIG(LP8552),
  48. .initial_brightness = INITIAL_BRT,
  49. .size_program = ARRAY_SIZE(lp8552_eeprom_arr),
  50. .rom_data = lp8552_eeprom_arr,
  51. };
  52. 2) lp8556 platform data: pwm input mode with default rom data::
  53. static struct lp855x_platform_data lp8556_pdata = {
  54. .device_control = PWM_CONFIG(LP8556),
  55. .initial_brightness = INITIAL_BRT,
  56. .period_ns = 1000000,
  57. };