Browse Source

MLK-16326 imx8qxp_mek: Add LVDS0 display support for splash screen

The MEK board has two display ports, we enable the LVDS0 as default display. User
needs to connect miniSAS LVDS to HDMI card on the CPU board and set "panel" env variable
to "IT6263" to enable the display.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit 603b764ad5)
Ye Li 3 years ago
parent
commit
cbfdc88ad0
3 changed files with 62 additions and 0 deletions
  1. +48
    -0
      board/freescale/imx8qxp_mek/imx8qxp_mek.c
  2. +2
    -0
      configs/imx8qxp_mek_defconfig
  3. +12
    -0
      include/configs/imx8qxp_mek.h

+ 48
- 0
board/freescale/imx8qxp_mek/imx8qxp_mek.c View File

@ -496,3 +496,51 @@ int is_recovery_key_pressing(void)
}
#endif /*CONFIG_ANDROID_RECOVERY*/
#endif /*CONFIG_FSL_FASTBOOT*/
#if defined(CONFIG_VIDEO_IMXDPUV1)
static void enable_lvds(struct display_info_t const *dev)
{
struct gpio_desc desc;
int ret;
/* MIPI_DSI0_EN on IOEXP 0x1a port 6, MIPI_DSI1_EN on IOEXP 0x1d port 7 */
ret = dm_gpio_lookup_name("gpio@1a_6", &desc);
if (ret)
return;
ret = dm_gpio_request(&desc, "lvds0_en");
if (ret)
return;
dm_gpio_set_dir_flags(&desc, GPIOD_IS_OUT | GPIOD_IS_OUT_ACTIVE);
display_controller_setup((PS2KHZ(dev->mode.pixclock) * 1000));
lvds_soc_setup(dev->bus, (PS2KHZ(dev->mode.pixclock) * 1000));
lvds_configure(dev->bus);
lvds2hdmi_setup(13);
}
struct display_info_t const displays[] = {{
.bus = 0, /* LVDS0 */
.addr = 0, /* LVDS0 */
.pixfmt = IMXDPUV1_PIX_FMT_BGRA32,
.detect = NULL,
.enable = enable_lvds,
.mode = {
.name = "IT6263", /* 720P60 */
.refresh = 60,
.xres = 1280,
.yres = 720,
.pixclock = 13468, /* 74250000 */
.left_margin = 110,
.right_margin = 220,
.upper_margin = 5,
.lower_margin = 20,
.hsync_len = 40,
.vsync_len = 5,
.sync = FB_SYNC_EXT,
.vmode = FB_VMODE_NONINTERLACED
} } };
size_t display_count = ARRAY_SIZE(displays);
#endif /* CONFIG_VIDEO_IMXDPUV1 */

+ 2
- 0
configs/imx8qxp_mek_defconfig View File

@ -59,6 +59,8 @@ CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
CONFIG_DM_REGULATOR_GPIO=y
CONFIG_VIDEO=y
CONFIG_PINCTRL=y
CONFIG_PINCTRL_IMX8=y


+ 12
- 0
include/configs/imx8qxp_mek.h View File

@ -268,6 +268,18 @@
#define CONFIG_USB_FUNCTION_MASS_STORAGE
#endif
/* Framebuffer */
#ifdef CONFIG_VIDEO
#define CONFIG_VIDEO_IMXDPUV1
#define CONFIG_VIDEO_BMP_RLE8
#define CONFIG_SPLASH_SCREEN
#define CONFIG_SPLASH_SCREEN_ALIGN
#define CONFIG_BMP_16BPP
#define CONFIG_VIDEO_LOGO
#define CONFIG_VIDEO_BMP_LOGO
#define CONFIG_IMX_VIDEO_SKIP
#endif
#define CONFIG_OF_SYSTEM_SETUP
#define BOOTAUX_RESERVED_MEM_BASE 0x88000000
#define BOOTAUX_RESERVED_MEM_SIZE 0x08000000 /* Reserve from second 128MB */


Loading…
Cancel
Save