Commit 0d1c2404e1e3bea3a022aaf654ba8c0109482982
1 parent
fdb9681eb3
Exists in
smarc_8mq-imx_v2020.04_5.4.24_2.1.0
and in
1 other branch
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)
Showing 8 changed files with 30 additions and 66 deletions Side-by-side Diff
arch/arm/dts/imx6sll-evk.dts
... | ... | @@ -98,7 +98,7 @@ |
98 | 98 | compatible = "regulator-fixed"; |
99 | 99 | reg = <4>; |
100 | 100 | regulator-name = "lcd-pwr"; |
101 | - gpio = <&gpio4 8 0>; | |
101 | + gpio = <&gpio4 3 0>; | |
102 | 102 | enable-active-high; |
103 | 103 | }; |
104 | 104 | |
... | ... | @@ -501,8 +501,8 @@ |
501 | 501 | MX6SLL_PAD_LCD_ENABLE__LCD_ENABLE 0x79 |
502 | 502 | MX6SLL_PAD_LCD_HSYNC__LCD_HSYNC 0x79 |
503 | 503 | MX6SLL_PAD_LCD_VSYNC__LCD_VSYNC 0x79 |
504 | - MX6SLL_PAD_LCD_RESET__LCD_RESET 0x79 | |
505 | - MX6SLL_PAD_ECSPI1_SCLK__GPIO4_IO08 0x79 | |
504 | + MX6SLL_PAD_LCD_RESET__GPIO2_IO19 0x17059 | |
505 | + MX6SLL_PAD_KEY_ROW5__GPIO4_IO03 0x17059 | |
506 | 506 | >; |
507 | 507 | }; |
508 | 508 | |
... | ... | @@ -719,7 +719,7 @@ |
719 | 719 | status = "okay"; |
720 | 720 | |
721 | 721 | display0: display@0 { |
722 | - bits-per-pixel = <16>; | |
722 | + bits-per-pixel = <24>; | |
723 | 723 | bus-width = <24>; |
724 | 724 | |
725 | 725 | display-timings { |
arch/arm/dts/imx6sll.dtsi
board/freescale/mx6sllevk/mx6sllevk.c
... | ... | @@ -105,36 +105,8 @@ |
105 | 105 | } |
106 | 106 | #endif |
107 | 107 | |
108 | -#ifdef CONFIG_VIDEO_MXS | |
108 | +#ifdef CONFIG_DM_VIDEO | |
109 | 109 | static iomux_v3_cfg_t const lcd_pads[] = { |
110 | - MX6_PAD_LCD_CLK__LCD_CLK | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
111 | - MX6_PAD_LCD_ENABLE__LCD_ENABLE | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
112 | - MX6_PAD_LCD_HSYNC__LCD_HSYNC | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
113 | - MX6_PAD_LCD_VSYNC__LCD_VSYNC | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
114 | - MX6_PAD_LCD_DATA00__LCD_DATA00 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
115 | - MX6_PAD_LCD_DATA01__LCD_DATA01 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
116 | - MX6_PAD_LCD_DATA02__LCD_DATA02 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
117 | - MX6_PAD_LCD_DATA03__LCD_DATA03 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
118 | - MX6_PAD_LCD_DATA04__LCD_DATA04 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
119 | - MX6_PAD_LCD_DATA05__LCD_DATA05 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
120 | - MX6_PAD_LCD_DATA06__LCD_DATA06 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
121 | - MX6_PAD_LCD_DATA07__LCD_DATA07 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
122 | - MX6_PAD_LCD_DATA08__LCD_DATA08 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
123 | - MX6_PAD_LCD_DATA09__LCD_DATA09 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
124 | - MX6_PAD_LCD_DATA10__LCD_DATA10 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
125 | - MX6_PAD_LCD_DATA11__LCD_DATA11 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
126 | - MX6_PAD_LCD_DATA12__LCD_DATA12 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
127 | - MX6_PAD_LCD_DATA13__LCD_DATA13 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
128 | - MX6_PAD_LCD_DATA14__LCD_DATA14 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
129 | - MX6_PAD_LCD_DATA15__LCD_DATA15 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
130 | - MX6_PAD_LCD_DATA16__LCD_DATA16 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
131 | - MX6_PAD_LCD_DATA17__LCD_DATA17 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
132 | - MX6_PAD_LCD_DATA18__LCD_DATA18 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
133 | - MX6_PAD_LCD_DATA19__LCD_DATA19 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
134 | - MX6_PAD_LCD_DATA20__LCD_DATA20 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
135 | - MX6_PAD_LCD_DATA21__LCD_DATA21 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
136 | - MX6_PAD_LCD_DATA22__LCD_DATA22 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
137 | - MX6_PAD_LCD_DATA23__LCD_DATA23 | MUX_PAD_CTRL(LCD_PAD_CTRL), | |
138 | 110 | MX6_PAD_KEY_ROW5__GPIO4_IO03 | MUX_PAD_CTRL(NO_PAD_CTRL), |
139 | 111 | MX6_PAD_LCD_RESET__GPIO2_IO19 | MUX_PAD_CTRL(NO_PAD_CTRL), |
140 | 112 | |
141 | 113 | |
142 | 114 | |
... | ... | @@ -142,15 +114,14 @@ |
142 | 114 | MX6_PAD_PWM1__GPIO3_IO23 | MUX_PAD_CTRL(NO_PAD_CTRL), |
143 | 115 | }; |
144 | 116 | |
145 | -void do_enable_parallel_lcd(struct display_info_t const *dev) | |
146 | - | |
117 | +static int setup_lcd(void) | |
147 | 118 | { |
148 | 119 | int ret; |
149 | 120 | |
150 | - ret = enable_lcdif_clock(dev->bus, 1); | |
121 | + ret = enable_lcdif_clock(MX6SLL_LCDIF_BASE_ADDR, 1); | |
151 | 122 | if (ret) { |
152 | 123 | printf("Enable LCDIF clock failed, %d\n", ret); |
153 | - return; | |
124 | + return -EPERM; | |
154 | 125 | } |
155 | 126 | |
156 | 127 | imx_iomux_v3_setup_multiple_pads(lcd_pads, ARRAY_SIZE(lcd_pads)); |
157 | 128 | |
... | ... | @@ -167,29 +138,11 @@ |
167 | 138 | /* Set Brightness to high */ |
168 | 139 | gpio_request(IMX_GPIO_NR(3, 23), "backlight"); |
169 | 140 | gpio_direction_output(IMX_GPIO_NR(3, 23) , 1); |
170 | -} | |
171 | 141 | |
172 | -struct display_info_t const displays[] = {{ | |
173 | - .bus = MX6SLL_LCDIF_BASE_ADDR, | |
174 | - .addr = 0, | |
175 | - .pixfmt = 24, | |
176 | - .detect = NULL, | |
177 | - .enable = do_enable_parallel_lcd, | |
178 | - .mode = { | |
179 | - .name = "MCIMX28LCD", | |
180 | - .xres = 800, | |
181 | - .yres = 480, | |
182 | - .pixclock = 29850, | |
183 | - .left_margin = 89, | |
184 | - .right_margin = 164, | |
185 | - .upper_margin = 23, | |
186 | - .lower_margin = 10, | |
187 | - .hsync_len = 10, | |
188 | - .vsync_len = 10, | |
189 | - .sync = 0, | |
190 | - .vmode = FB_VMODE_NONINTERLACED | |
191 | -} } }; | |
192 | -size_t display_count = ARRAY_SIZE(displays); | |
142 | + return 0; | |
143 | +} | |
144 | +#else | |
145 | +static inline int setup_lcd(void) { return 0; } | |
193 | 146 | #endif |
194 | 147 | |
195 | 148 | #ifdef CONFIG_MXC_EPDC |
... | ... | @@ -436,6 +389,8 @@ |
436 | 389 | #ifdef CONFIG_ENV_IS_IN_MMC |
437 | 390 | board_late_mmc_env_init(); |
438 | 391 | #endif |
392 | + | |
393 | + setup_lcd(); | |
439 | 394 | |
440 | 395 | imx_iomux_v3_setup_multiple_pads(wdog_pads, ARRAY_SIZE(wdog_pads)); |
441 | 396 |
configs/mx6sllevk_defconfig
... | ... | @@ -9,7 +9,6 @@ |
9 | 9 | CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6sllevk/imximage.cfg" |
10 | 10 | CONFIG_SUPPORT_RAW_INITRD=y |
11 | 11 | CONFIG_BOUNCE_BUFFER=y |
12 | -CONFIG_VIDEO=y | |
13 | 12 | CONFIG_BOOTDELAY=3 |
14 | 13 | CONFIG_BOARD_EARLY_INIT_F=y |
15 | 14 | CONFIG_HUSH_PARSER=y |
... | ... | @@ -22,6 +21,7 @@ |
22 | 21 | CONFIG_CMD_USB=y |
23 | 22 | CONFIG_CMD_DHCP=y |
24 | 23 | CONFIG_CMD_PING=y |
24 | +CONFIG_CMD_BMP=y | |
25 | 25 | CONFIG_CMD_CACHE=y |
26 | 26 | CONFIG_CMD_REGULATOR=y |
27 | 27 | CONFIG_CMD_EXT2=y |
... | ... | @@ -54,6 +54,9 @@ |
54 | 54 | CONFIG_USB_ETHER_RTL8152=y |
55 | 55 | CONFIG_DM_ETH=y |
56 | 56 | CONFIG_PHYLIB=y |
57 | + | |
58 | +CONFIG_DM_VIDEO=y | |
59 | +CONFIG_SYS_WHITE_ON_BLACK=y | |
57 | 60 | |
58 | 61 | CONFIG_USB_GADGET=y |
59 | 62 | CONFIG_USB_GADGET_DOWNLOAD=y |
configs/mx6sllevk_epdc_defconfig
configs/mx6sllevk_optee_defconfig
... | ... | @@ -9,7 +9,6 @@ |
9 | 9 | CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6sllevk/imximage.cfg" |
10 | 10 | CONFIG_SUPPORT_RAW_INITRD=y |
11 | 11 | CONFIG_BOUNCE_BUFFER=y |
12 | -CONFIG_VIDEO=y | |
13 | 12 | CONFIG_IMX_OPTEE=y |
14 | 13 | CONFIG_BOOTDELAY=3 |
15 | 14 | CONFIG_BOARD_EARLY_INIT_F=y |
... | ... | @@ -23,6 +22,7 @@ |
23 | 22 | CONFIG_CMD_USB=y |
24 | 23 | CONFIG_CMD_DHCP=y |
25 | 24 | CONFIG_CMD_PING=y |
25 | +CONFIG_CMD_BMP=y | |
26 | 26 | CONFIG_CMD_CACHE=y |
27 | 27 | CONFIG_CMD_REGULATOR=y |
28 | 28 | CONFIG_CMD_EXT2=y |
... | ... | @@ -55,6 +55,9 @@ |
55 | 55 | CONFIG_USB_ETHER_RTL8152=y |
56 | 56 | CONFIG_DM_ETH=y |
57 | 57 | CONFIG_PHYLIB=y |
58 | + | |
59 | +CONFIG_DM_VIDEO=y | |
60 | +CONFIG_SYS_WHITE_ON_BLACK=y | |
58 | 61 | |
59 | 62 | CONFIG_USB_GADGET=y |
60 | 63 | CONFIG_USB_GADGET_DOWNLOAD=y |
configs/mx6sllevk_plugin_defconfig
... | ... | @@ -10,7 +10,6 @@ |
10 | 10 | CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6sllevk/imximage.cfg" |
11 | 11 | CONFIG_SUPPORT_RAW_INITRD=y |
12 | 12 | CONFIG_BOUNCE_BUFFER=y |
13 | -CONFIG_VIDEO=y | |
14 | 13 | CONFIG_BOOTDELAY=3 |
15 | 14 | CONFIG_BOARD_EARLY_INIT_F=y |
16 | 15 | CONFIG_HUSH_PARSER=y |
... | ... | @@ -23,6 +22,7 @@ |
23 | 22 | CONFIG_CMD_USB=y |
24 | 23 | CONFIG_CMD_DHCP=y |
25 | 24 | CONFIG_CMD_PING=y |
25 | +CONFIG_CMD_BMP=y | |
26 | 26 | CONFIG_CMD_CACHE=y |
27 | 27 | CONFIG_CMD_REGULATOR=y |
28 | 28 | CONFIG_CMD_EXT2=y |
... | ... | @@ -54,6 +54,9 @@ |
54 | 54 | CONFIG_USB_ETHER_RTL8152=y |
55 | 55 | CONFIG_DM_ETH=y |
56 | 56 | CONFIG_PHYLIB=y |
57 | + | |
58 | +CONFIG_DM_VIDEO=y | |
59 | +CONFIG_SYS_WHITE_ON_BLACK=y | |
57 | 60 | |
58 | 61 | CONFIG_USB_GADGET=y |
59 | 62 | CONFIG_USB_GADGET_DOWNLOAD=y |
include/configs/mx6sllevk.h
... | ... | @@ -52,6 +52,7 @@ |
52 | 52 | "tee_file=uTee-6sllevk\0" \ |
53 | 53 | "boot_fdt=try\0" \ |
54 | 54 | "ip_dyn=yes\0" \ |
55 | + "splashimage=0x8c000000\0" \ | |
55 | 56 | "mmcdev="__stringify(CONFIG_SYS_MMC_ENV_DEV)"\0" \ |
56 | 57 | "mmcpart=1\0" \ |
57 | 58 | "mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \ |
58 | 59 | |
59 | 60 | |
60 | 61 | |
... | ... | @@ -169,16 +170,15 @@ |
169 | 170 | #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) |
170 | 171 | #endif |
171 | 172 | |
172 | -#ifdef CONFIG_VIDEO | |
173 | +#ifdef CONFIG_DM_VIDEO | |
173 | 174 | #define CONFIG_VIDEO_MXS |
175 | +#define CONFIG_VIDEO_LINK | |
174 | 176 | #define CONFIG_VIDEO_LOGO |
175 | 177 | #define CONFIG_SPLASH_SCREEN |
176 | 178 | #define CONFIG_SPLASH_SCREEN_ALIGN |
177 | -#define CONFIG_CMD_BMP | |
178 | 179 | #define CONFIG_BMP_16BPP |
179 | 180 | #define CONFIG_VIDEO_BMP_RLE8 |
180 | 181 | #define CONFIG_VIDEO_BMP_LOGO |
181 | -#define CONFIG_IMX_VIDEO_SKIP | |
182 | 182 | #endif |
183 | 183 | |
184 | 184 | /* |