summaryrefslogtreecommitdiff
path: root/board/freescale/imx8qm_mek/imx8qm_mek.c
diff options
context:
space:
mode:
authorHaoran.Wang <elven.wang@nxp.com>2018-01-04 21:02:38 +0800
committerHaoran.Wang <elven.wang@nxp.com>2018-01-17 16:21:35 +0800
commit07295a9eba92e77f30fa236f9e9c7bde14902bef (patch)
tree4e818a2f2923103b8fbf14919876b6d6af403a2c /board/freescale/imx8qm_mek/imx8qm_mek.c
parente567f089a5d9a0f873622ed8bb90cbb15825dd4e (diff)
MA-10983-1 Load HDMI firmware from u-boot.bin
Load HDMI firmware from u-boot.bin instead of /system partition. Change-Id: I8945940cfe14db50c95a56b8bff2a94990a7fbaf Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
Diffstat (limited to 'board/freescale/imx8qm_mek/imx8qm_mek.c')
-rw-r--r--board/freescale/imx8qm_mek/imx8qm_mek.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/board/freescale/imx8qm_mek/imx8qm_mek.c b/board/freescale/imx8qm_mek/imx8qm_mek.c
index 1d5648b2a3..9248f0c9a4 100644
--- a/board/freescale/imx8qm_mek/imx8qm_mek.c
+++ b/board/freescale/imx8qm_mek/imx8qm_mek.c
@@ -413,6 +413,7 @@ int mmc_map_to_kernel_blk(int dev_no)
return dev_no;
}
+extern uint32_t _end_ofs;
int board_late_init(void)
{
#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
@@ -424,6 +425,18 @@ int board_late_init(void)
board_late_mmc_env_init();
#endif
+#ifdef IMX_LOAD_HDMI_FIMRWARE
+ char *end_of_uboot;
+ char command[256];
+ end_of_uboot = (char *)(ulong)(CONFIG_SYS_TEXT_BASE + _end_ofs + fdt_totalsize(gd->fdt_blob));
+ end_of_uboot += 9;
+
+ memcpy(IMX_HDMI_FIRMWARE_LOAD_ADDR, end_of_uboot, IMX_HDMI_FIRMWARE_SIZE);
+
+ sprintf(command, "hdp load 0x%x", IMX_HDMI_FIRMWARE_LOAD_ADDR);
+ run_command(command, 0);
+#endif
+
return 0;
}