board: ge: bx50v3: enable backlight on demand
Enable display backlight only if a message needs to be displayed. The kernel re-initializes the backlight, which results in some unwanted artifacts. Signed-off-by: Ian Ray <ian.ray@ge.com> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
This commit is contained in:
parent
7a0ce1f797
commit
6c0e6b45f9
@ -786,23 +786,6 @@ int board_late_init(void)
|
||||
add_board_boot_modes(board_boot_modes);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_VIDEO_IPUV3
|
||||
/* We need at least 200ms between power on and backlight on
|
||||
* as per specifications from CHI MEI */
|
||||
mdelay(250);
|
||||
|
||||
/* enable backlight PWM 1 */
|
||||
pwm_init(0, 0, 0);
|
||||
|
||||
/* duty cycle 5000000ns, period: 5000000ns */
|
||||
pwm_config(0, 5000000, 5000000);
|
||||
|
||||
/* Backlight Power */
|
||||
gpio_direction_output(LVDS_BACKLIGHT_GP, 1);
|
||||
|
||||
pwm_enable(0);
|
||||
#endif
|
||||
|
||||
/* board specific pmic init */
|
||||
pmic_init();
|
||||
|
||||
@ -843,3 +826,31 @@ int checkboard(void)
|
||||
printf("BOARD: %s\n", CONFIG_BOARD_NAME);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int do_backlight_enable(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||
{
|
||||
#ifdef CONFIG_VIDEO_IPUV3
|
||||
/* We need at least 200ms between power on and backlight on
|
||||
* as per specifications from CHI MEI */
|
||||
mdelay(250);
|
||||
|
||||
/* enable backlight PWM 1 */
|
||||
pwm_init(0, 0, 0);
|
||||
|
||||
/* duty cycle 5000000ns, period: 5000000ns */
|
||||
pwm_config(0, 5000000, 5000000);
|
||||
|
||||
/* Backlight Power */
|
||||
gpio_direction_output(LVDS_BACKLIGHT_GP, 1);
|
||||
|
||||
pwm_enable(0);
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
U_BOOT_CMD(
|
||||
bx50_backlight_enable, 1, 1, do_backlight_enable,
|
||||
"enable Bx50 backlight",
|
||||
""
|
||||
);
|
||||
|
@ -128,6 +128,7 @@
|
||||
"swappartitions=" \
|
||||
"setexpr partnum 3 - ${partnum}\0" \
|
||||
"failbootcmd=" \
|
||||
"bx50_backlight_enable; " \
|
||||
"msg=\"Monitor failed to start. Try again, or contact GE Service for support.\"; " \
|
||||
"echo $msg; " \
|
||||
"setenv stdout vga; " \
|
||||
|
Loading…
Reference in New Issue
Block a user