diff options
author | Ye Li <ye.li@nxp.com> | 2020-05-10 06:50:28 -0700 |
---|---|---|
committer | Ye Li <ye.li@nxp.com> | 2022-04-06 18:03:52 +0800 |
commit | 26345fe6a88888463cb7340aab8efd1e151479ef (patch) | |
tree | ca02974e75fcecd48cf0a1a67998e4bf9fa97b76 /board/freescale/mx6sllevk | |
parent | 1931f7f376649f8143312fd5ad9741cbcd131688 (diff) |
MLK-23964-25 imx6sll_evk: Enable splash screen
Enable the splash screen basing on video link
Update the DTS to fix the bpp in lcdif node and add alias
Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 93a53c60a73dab539fdf98542a367e83820df775)
(cherry picked from commit d10851677db691b5769acd66d9e67fa987dbe655)
(cherry picked from commit a7c604aba8c65db61c30aa39cb6fe2a1f7029462)
(cherry picked from commit 4eeb2d8218898424e8be08f3cbc03ba928d572b2)
Diffstat (limited to 'board/freescale/mx6sllevk')
-rw-r--r-- | board/freescale/mx6sllevk/mx6sllevk.c | 65 |
1 files changed, 10 insertions, 55 deletions
diff --git a/board/freescale/mx6sllevk/mx6sllevk.c b/board/freescale/mx6sllevk/mx6sllevk.c index ee29673193d..22e43dffe7c 100644 --- a/board/freescale/mx6sllevk/mx6sllevk.c +++ b/board/freescale/mx6sllevk/mx6sllevk.c @@ -108,36 +108,8 @@ int power_init_board(void) } #endif -#ifdef CONFIG_VIDEO_MXS +#ifdef CONFIG_DM_VIDEO static iomux_v3_cfg_t const lcd_pads[] = { - MX6_PAD_LCD_CLK__LCD_CLK | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_ENABLE__LCD_ENABLE | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_HSYNC__LCD_HSYNC | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_VSYNC__LCD_VSYNC | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA00__LCD_DATA00 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA01__LCD_DATA01 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA02__LCD_DATA02 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA03__LCD_DATA03 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA04__LCD_DATA04 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA05__LCD_DATA05 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA06__LCD_DATA06 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA07__LCD_DATA07 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA08__LCD_DATA08 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA09__LCD_DATA09 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA10__LCD_DATA10 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA11__LCD_DATA11 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA12__LCD_DATA12 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA13__LCD_DATA13 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA14__LCD_DATA14 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA15__LCD_DATA15 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA16__LCD_DATA16 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA17__LCD_DATA17 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA18__LCD_DATA18 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA19__LCD_DATA19 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA20__LCD_DATA20 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA21__LCD_DATA21 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA22__LCD_DATA22 | MUX_PAD_CTRL(LCD_PAD_CTRL), - MX6_PAD_LCD_DATA23__LCD_DATA23 | MUX_PAD_CTRL(LCD_PAD_CTRL), MX6_PAD_KEY_ROW5__GPIO4_IO03 | MUX_PAD_CTRL(NO_PAD_CTRL), MX6_PAD_LCD_RESET__GPIO2_IO19 | MUX_PAD_CTRL(NO_PAD_CTRL), @@ -145,15 +117,14 @@ static iomux_v3_cfg_t const lcd_pads[] = { MX6_PAD_PWM1__GPIO3_IO23 | MUX_PAD_CTRL(NO_PAD_CTRL), }; -void do_enable_parallel_lcd(struct display_info_t const *dev) - +static int setup_lcd(void) { int ret; - ret = enable_lcdif_clock(dev->bus, 1); + ret = enable_lcdif_clock(MX6SLL_LCDIF_BASE_ADDR, 1); if (ret) { printf("Enable LCDIF clock failed, %d\n", ret); - return; + return -EPERM; } imx_iomux_v3_setup_multiple_pads(lcd_pads, ARRAY_SIZE(lcd_pads)); @@ -170,29 +141,11 @@ void do_enable_parallel_lcd(struct display_info_t const *dev) /* Set Brightness to high */ gpio_request(IMX_GPIO_NR(3, 23), "backlight"); gpio_direction_output(IMX_GPIO_NR(3, 23) , 1); -} -struct display_info_t const displays[] = {{ - .bus = MX6SLL_LCDIF_BASE_ADDR, - .addr = 0, - .pixfmt = 24, - .detect = NULL, - .enable = do_enable_parallel_lcd, - .mode = { - .name = "MCIMX28LCD", - .xres = 800, - .yres = 480, - .pixclock = 29850, - .left_margin = 89, - .right_margin = 164, - .upper_margin = 23, - .lower_margin = 10, - .hsync_len = 10, - .vsync_len = 10, - .sync = 0, - .vmode = FB_VMODE_NONINTERLACED -} } }; -size_t display_count = ARRAY_SIZE(displays); + return 0; +} +#else +static inline int setup_lcd(void) { return 0; } #endif #ifdef CONFIG_MXC_EPDC @@ -440,6 +393,8 @@ int board_late_init(void) board_late_mmc_env_init(); #endif + setup_lcd(); + imx_iomux_v3_setup_multiple_pads(wdog_pads, ARRAY_SIZE(wdog_pads)); set_wdog_reset((struct wdog_regs *)WDOG1_BASE_ADDR); |