board: toradex: turn off lcd backlight before OS handover
PATCH RESEND 1/1 board: toradex: turn off lcd backlight before OS handover
From: Gerard Salvatella <[email protected]>
U-Boot typically tears down the display controller before handing control over to Linux. On LCD displays disabling pixel clock leads to a fading out effect with vertical/horizontal lines. Make sure to disable back light before booting Linux.
Signed-off-by Gerard Salvatella <[email protected]>
Signed-off-by Philippe Schenker <[email protected]>
---
board/toradex/apalis-tk1/apalis-tk1.c | 9 +++++++++ board/toradex/apalis_imx6/apalis_imx6.c | 9 +++++++++ board/toradex/apalis_t30/apalis_t30.c | 9 +++++++++ board/toradex/colibri_imx6/colibri_imx6.c | 9 +++++++++ board/toradex/colibri_imx7/colibri_imx7.c | 9 +++++++++ board/toradex/colibri_t20/colibri_t20.c | 9 +++++++++ board/toradex/colibri_t30/colibri_t30.c | 9 +++++++++ board/toradex/colibri_vf/colibri_vf.c | 12 +++++++++++- 8 files changed, 74 insertions(+), 1 deletion(-)
board/toradex/apalis-tk1/apalis-tk1.c +9 -0
@@ -240,3 +240,12 @@ void tegra_pcie_board_port_reset(struct tegra_pcie_port *port) } }#endif /* CONFIG_PCI_TEGRA */ + +/* +* Backlight off before OS handover +*/ +void board_preboot_os (void ) +{ +gpio_request (TEGRA_GPIO (BB ,5 ),"BL_ON" ); +gpio_direction_output (TEGRA_GPIO (BB ,5 ),0 ); +}
board/toradex/apalis_imx6/apalis_imx6.c +9 -0
@@ -745,6 +745,15 @@ static void setup_display(void)gpio_direction_output (RGB_BACKLIGHTPWM_OE ,0 ); gpio_direction_output(RGB_BACKLIGHT_GP, 1); } + +/* +* Backlight off before OS handover +*/ +void board_preboot_os (void ) +{ +gpio_direction_output (RGB_BACKLIGHTPWM_GP ,1 ); +gpio_direction_output (RGB_BACKLIGHT_GP ,0 ); +}#endif /* defined(CONFIG_VIDEO_IPUV3) */ int board_early_init_f (void )
board/toradex/apalis_t30/apalis_t30.c +9 -0
@@ -164,3 +164,12 @@ void tegra_pcie_board_port_reset(struct tegra_pcie_port *port)#endif /* CONFIG_APALIS_T30_PCIE_EVALBOARD_INIT */ }#endif /* CONFIG_PCI_TEGRA */ + +/* +* Backlight off before OS handover +*/ +void board_preboot_os (void ) +{ +gpio_request (TEGRA_GPIO (V ,2 ),"BKL1_ON" ); +gpio_direction_output (TEGRA_GPIO (V ,2 ),0 ); +}
board/toradex/colibri_imx6/colibri_imx6.c +9 -0
@@ -622,6 +622,15 @@ static void setup_display(void)gpio_direction_output (RGB_BACKLIGHTPWM_GP ,0 ); gpio_direction_output(RGB_BACKLIGHT_GP, 1); } + +/* +* Backlight off before OS handover +*/ +void board_preboot_os (void ) +{ +gpio_direction_output (RGB_BACKLIGHTPWM_GP ,1 ); +gpio_direction_output (RGB_BACKLIGHT_GP ,0 ); +}#endif /* defined(CONFIG_VIDEO_IPUV3) */ int board_early_init_f (void )
board/toradex/colibri_imx7/colibri_imx7.c +9 -0
@@ -182,6 +182,15 @@ static int setup_lcd(void) }#endif +/* +* Backlight off before OS handover +*/ +void board_preboot_os (void ) +{ +gpio_direction_output (GPIO_PWM_A ,1 ); +gpio_direction_output (GPIO_BL_ON ,0 ); +} +#ifdef CONFIG_FEC_MXC static iomux_v3_cfg_t const fec1_pads[] = { #ifndef CONFIG_COLIBRI_IMX7_EXT_PHYCLK
board/toradex/colibri_t20/colibri_t20.c +9 -0
@@ -150,4 +150,13 @@ void pin_mux_display(void)pinmux_set_func (PMUX_PINGRP_SDC ,PMUX_FUNC_PWM ); pinmux_tristate_disable(PMUX_PINGRP_SDC); } + +/* +* Backlight off before OS handover +*/ +void board_preboot_os (void ) +{ +gpio_request (TEGRA_GPIO (T ,4 ),"BL_ON" ); +gpio_direction_output (TEGRA_GPIO (T ,4 ),0 ); +}#endif
board/toradex/colibri_t30/colibri_t30.c +9 -0
@@ -66,3 +66,12 @@ void pin_mux_usb(void)udelay (5 );gpio_set_value (TEGRA_GPIO (DD ,0 ),1 ); } + +/* +* Backlight off before OS handover +*/ +void board_preboot_os (void ) +{ +gpio_request (TEGRA_GPIO (V ,2 ),"BL_ON" ); +gpio_direction_output (TEGRA_GPIO (V ,2 ),0 ); +}
board/toradex/colibri_vf/colibri_vf.c +11 -1
@@ -38,8 +38,9 @@ DECLARE_GLOBAL_DATA_PTR;#define ENET_PAD_CTRL (PAD_CTL_PUS_47K_UP | PAD_CTL_SPEED_HIGH | \ PAD_CTL_DSE_50ohm | PAD_CTL_OBE_IBE_ENABLE) -#define USB_PEN_GPIO 83 +#define USB_PEN_GPIO 83#define USB_CDET_GPIO 102 +#define PTC0_GPIO_45 45static struct ddrmc_cr_setting colibri_vf_cr_settings[] = {/* levelling */
@@ -640,3 +641,12 @@ int board_usb_phy_mode(int port) } }#endif + +/* +* Backlight off before OS handover +*/ +void board_preboot_os (void ) +{ +gpio_request (PTC0_GPIO_45 ,"BL_ON" ); +gpio_direction_output (PTC0_GPIO_45 ,0 ); +}
Signature · 1 line
2.19.1