Commit d41f8a5e authored by Ye Li's avatar Ye Li Committed by Jason Liu

MLK-15324-4 imx8qm/qxp: Enable DPUv1 driver and splash screen

Add IT6263 LVDS to HDMI card panel parameters to ARM2 boards. And enable
the DPUv1 driver and relevant settings for splash screen.

At default we set the environment variable "panel=NULL" to disable
the display output since it needs display adapter card to plug into the
board. Change the "panel=it6263" to enable it.
Signed-off-by: 's avatarYe Li <ye.li@nxp.com>
parent 9317f7ea
......@@ -25,6 +25,8 @@
#include <usb.h>
#include <asm/arch/iomux.h>
#include <asm/arch/sys_proto.h>
#include <asm/imx-common/video.h>
#include <asm/arch/video_common.h>
DECLARE_GLOBAL_DATA_PTR;
......@@ -758,6 +760,7 @@ int board_late_init(void)
return 0;
}
#ifdef CONFIG_FSL_FASTBOOT
#ifdef CONFIG_ANDROID_RECOVERY
int is_recovery_key_pressing(void)
......@@ -802,3 +805,38 @@ int board_usb_init(int index, enum usb_init_type init)
return 0;
}
#if defined(CONFIG_VIDEO_IMXDPUV1)
static void enable_lvds(struct display_info_t const *dev)
{
display_controller_setup((PS2KHZ(dev->mode.pixclock) * 1000));
lvds_soc_setup(dev->bus, (PS2KHZ(dev->mode.pixclock) * 1000));
lvds_configure(dev->bus);
lvds2hdmi_setup(6);
}
struct display_info_t const displays[] = {{
.bus = 0, /* LVDS0 */
.addr = 0, /* Unused */
.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 */
......@@ -25,6 +25,8 @@
#include <usb.h>
#include <asm/arch/iomux.h>
#include <asm/arch/sys_proto.h>
#include <asm/imx-common/video.h>
#include <asm/arch/video_common.h>
DECLARE_GLOBAL_DATA_PTR;
......@@ -674,3 +676,37 @@ 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)
{
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 */
......@@ -59,3 +59,5 @@ CONFIG_DM_ETH=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
CONFIG_DM_REGULATOR_GPIO=y
CONFIG_VIDEO=y
......@@ -55,3 +55,5 @@ CONFIG_DM_ETH=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
CONFIG_DM_REGULATOR_GPIO=y
CONFIG_VIDEO=y
......@@ -128,7 +128,7 @@
M4_BOOT_ENV \
"script=boot.scr\0" \
"image=Image\0" \
"mmcdev=1\0"\
"panel=NULL\0" \
"console=ttyLP0,115200 earlycon=lpuart32,0x5a060000,115200\0" \
"fdtaddr=0x83000000\0" \
"fdt_high=0xffffffffffffffff\0" \
......@@ -222,7 +222,7 @@
#endif
/* Size of malloc() pool */
#define CONFIG_SYS_MALLOC_LEN ((CONFIG_ENV_SIZE + (16*1024)) * 1024)
#define CONFIG_SYS_MALLOC_LEN ((CONFIG_ENV_SIZE + (32*1024)) * 1024)
#define CONFIG_SYS_SDRAM_BASE 0x80000000
#define CONFIG_NR_DRAM_BANKS 2
......@@ -300,4 +300,16 @@
#endif /* CONFIG_CMD_USB */
/* 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
#endif /* __IMX8QM_ARM2_H */
......@@ -116,7 +116,7 @@
M4_BOOT_ENV \
"script=boot.scr\0" \
"image=Image\0" \
"mmcdev=1\0"\
"panel=NULL\0" \
"console=ttyLP0,115200 earlycon=lpuart32,0x5a060000,115200\0" \
"fdtaddr=0x83000000\0" \
"fdt_high=0xffffffffffffffff\0" \
......@@ -203,7 +203,7 @@
#define CONFIG_SYS_FSL_USDHC_NUM 2
/* Size of malloc() pool */
#define CONFIG_SYS_MALLOC_LEN ((CONFIG_ENV_SIZE + (16*1024)) * 1024)
#define CONFIG_SYS_MALLOC_LEN ((CONFIG_ENV_SIZE + (32*1024)) * 1024)
#define CONFIG_SYS_SDRAM_BASE 0x80000000
#define CONFIG_NR_DRAM_BANKS 2
......@@ -267,4 +267,17 @@
#if defined(CONFIG_ANDROID_SUPPORT)
#include "imx8qxp_arm2_android.h"
#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
#endif /* __IMX8QXP_ARM2_H */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment