diff options
author | Andrey Smirnov <andrew.smirnov@gmail.com> | 2018-07-19 18:03:54 -0700 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2018-08-09 08:19:50 +0200 |
commit | 5026e1105f0227e8fe267544a5a4d60619a2835d (patch) | |
tree | f0033bb8407f2e5fa27aec01fa85c15acd9a425f /arch | |
parent | f27ab16086145f76e91694422e904f9723a43673 (diff) | |
download | barebox-5026e1105f0227e8fe267544a5a4d60619a2835d.tar.gz barebox-5026e1105f0227e8fe267544a5a4d60619a2835d.tar.xz |
ARM: nxp-imx8mq-evk: Add code to load ATF BL31 blob
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/boards/nxp-imx8mq-evk/lowlevel.c | 9 | ||||
-rw-r--r-- | arch/arm/mach-imx/Kconfig | 2 |
2 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/boards/nxp-imx8mq-evk/lowlevel.c b/arch/arm/boards/nxp-imx8mq-evk/lowlevel.c index 1ed918ee0e..db746bb947 100644 --- a/arch/arm/boards/nxp-imx8mq-evk/lowlevel.c +++ b/arch/arm/boards/nxp-imx8mq-evk/lowlevel.c @@ -23,6 +23,7 @@ #include <asm/cache.h> #include <asm/sections.h> #include <asm/mmu.h> +#include <mach/atf.h> #include "ddr.h" @@ -75,6 +76,14 @@ ENTRY_FUNCTION(start_nxp_imx8mq_evk, r0, r1, r2) if (get_pc() < MX8MQ_DDR_CSD1_BASE_ADDR) nxp_imx8mq_evk_sram_setup(); + if (current_el() == 3) { + const u8 *bl31; + size_t bl31_size; + + get_builtin_firmware(imx_imx8m_bl31_bin, &bl31, &bl31_size); + imx8mq_atf_load_bl31(bl31, bl31_size); + } + barebox_arm_entry(MX8MQ_DDR_CSD1_BASE_ADDR, SZ_2G + SZ_1G, __dtb_imx8mq_evk_start); } diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig index 73b7ea1b66..7cb9138d24 100644 --- a/arch/arm/mach-imx/Kconfig +++ b/arch/arm/mach-imx/Kconfig @@ -461,6 +461,8 @@ config MACH_NXP_IMX8MQ_EVK bool "NXP i.MX8MQ EVK Board" select ARCH_IMX8MQ select FIRMWARE_IMX_LPDDR4_PMU_TRAIN + select FIRMWARE_IMX8MQ_ATF + select ARM_SMCCC endif |