1 ==================== 1 ==================== 2 Kernel driver lp855x 2 Kernel driver lp855x 3 ==================== 3 ==================== 4 4 5 Backlight driver for LP855x ICs 5 Backlight driver for LP855x ICs 6 6 7 Supported chips: 7 Supported chips: 8 8 9 Texas Instruments LP8550, LP8551, LP85 9 Texas Instruments LP8550, LP8551, LP8552, LP8553, LP8555, LP8556 and 10 LP8557 10 LP8557 11 11 12 Author: Milo(Woogyom) Kim <milo.kim@ti.com> 12 Author: Milo(Woogyom) Kim <milo.kim@ti.com> 13 13 14 Description 14 Description 15 ----------- 15 ----------- 16 16 17 * Brightness control 17 * Brightness control 18 18 19 Brightness can be controlled by the pwm inpu 19 Brightness can be controlled by the pwm input or the i2c command. 20 The lp855x driver supports both cases. 20 The lp855x driver supports both cases. 21 21 22 * Device attributes 22 * Device attributes 23 23 24 1) bl_ctl_mode 24 1) bl_ctl_mode 25 25 26 Backlight control mode. 26 Backlight control mode. 27 27 28 Value: pwm based or register based 28 Value: pwm based or register based 29 29 30 2) chip_id 30 2) chip_id 31 31 32 The lp855x chip id. 32 The lp855x chip id. 33 33 34 Value: lp8550/lp8551/lp8552/lp8553/lp8555/lp 34 Value: lp8550/lp8551/lp8552/lp8553/lp8555/lp8556/lp8557 35 35 36 Platform data for lp855x 36 Platform data for lp855x 37 ------------------------ 37 ------------------------ 38 38 39 For supporting platform specific data, the lp8 39 For supporting platform specific data, the lp855x platform data can be used. 40 40 41 * name: 41 * name: 42 Backlight driver name. If it is not de 42 Backlight driver name. If it is not defined, default name is set. 43 * device_control: 43 * device_control: 44 Value of DEVICE CONTROL register. 44 Value of DEVICE CONTROL register. 45 * initial_brightness: 45 * initial_brightness: 46 Initial value of backlight brightness. 46 Initial value of backlight brightness. 47 * period_ns: 47 * period_ns: 48 Platform specific PWM period value. un 48 Platform specific PWM period value. unit is nano. 49 Only valid when brightness is pwm inpu 49 Only valid when brightness is pwm input mode. 50 * size_program: 50 * size_program: 51 Total size of lp855x_rom_data. 51 Total size of lp855x_rom_data. 52 * rom_data: 52 * rom_data: 53 List of new eeprom/eprom registers. 53 List of new eeprom/eprom registers. 54 54 55 Examples 55 Examples 56 ======== 56 ======== 57 57 58 1) lp8552 platform data: i2c register mode wit 58 1) lp8552 platform data: i2c register mode with new eeprom data:: 59 59 60 #define EEPROM_A5_ADDR 0xA5 60 #define EEPROM_A5_ADDR 0xA5 61 #define EEPROM_A5_VAL 0x4f /* EN_ 61 #define EEPROM_A5_VAL 0x4f /* EN_VSYNC=0 */ 62 62 63 static struct lp855x_rom_data lp8552_eepro 63 static struct lp855x_rom_data lp8552_eeprom_arr[] = { 64 {EEPROM_A5_ADDR, EEPROM_A5_VAL}, 64 {EEPROM_A5_ADDR, EEPROM_A5_VAL}, 65 }; 65 }; 66 66 67 static struct lp855x_platform_data lp8552_ 67 static struct lp855x_platform_data lp8552_pdata = { 68 .name = "lcd-bl", 68 .name = "lcd-bl", 69 .device_control = I2C_CONFIG(LP8552), 69 .device_control = I2C_CONFIG(LP8552), 70 .initial_brightness = INITIAL_BRT, 70 .initial_brightness = INITIAL_BRT, 71 .size_program = ARRAY_SIZE(lp8552_eepr 71 .size_program = ARRAY_SIZE(lp8552_eeprom_arr), 72 .rom_data = lp8552_eeprom_arr, 72 .rom_data = lp8552_eeprom_arr, 73 }; 73 }; 74 74 75 2) lp8556 platform data: pwm input mode with d 75 2) lp8556 platform data: pwm input mode with default rom data:: 76 76 77 static struct lp855x_platform_data lp8556_ 77 static struct lp855x_platform_data lp8556_pdata = { 78 .device_control = PWM_CONFIG(LP8556), 78 .device_control = PWM_CONFIG(LP8556), 79 .initial_brightness = INITIAL_BRT, 79 .initial_brightness = INITIAL_BRT, 80 .period_ns = 1000000, 80 .period_ns = 1000000, 81 }; 81 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.