summaryrefslogtreecommitdiff
path: root/board/freescale/imx8qm_mek/imx8qm_mek.c
diff options
context:
space:
mode:
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;
}