The usptream TF-A was shifting around the base address from version to version. But finally with upstream TF-A v2.7 it is correctly set to 0x970000. This change was done since the final silicium has an SRAM size of 576KB where as the pre-silicium had only 512KB. The upstream TF-A has adapt it in verion v2.5 so the BL31 blob is at the end of the SRAM. Unfortunately they had (accidental) reverted back to 0x960000 in v2.6. They noticed that and changed (again) back to 0x970000. with v2.7. This commit also adapts the documentation for the i.MX8MP-EVK to reference the upstream TF-A. The new warning should point out that we strongly recommended to use versions from v2.7 onwards, due to the version mess explained above. Signed-off-by: Marco Felsch <m.felsch@xxxxxxxxxxxxxx> --- Documentation/boards/imx/nxp-imx8mp-evk.rst | 11 +++++++---- arch/arm/mach-imx/include/mach/atf.h | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Documentation/boards/imx/nxp-imx8mp-evk.rst b/Documentation/boards/imx/nxp-imx8mp-evk.rst index 366c1de500..1074992f2f 100644 --- a/Documentation/boards/imx/nxp-imx8mp-evk.rst +++ b/Documentation/boards/imx/nxp-imx8mp-evk.rst @@ -40,15 +40,18 @@ As a last step of this process those files need to be placed in firmware/${f}; \ done -Get and Build the ARM Trusted firmware --------------------------------------- +Get and Build the Trusted Firmware A +------------------------------------ -Get ATF from https://source.codeaurora.org/external/imx/imx-atf, branch -imx_5.4.3_2.0.0:: +Get TF-A from https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/ and +checkout version v2.7:: make PLAT=imx8mp bl31 cp build/imx8mp/release/bl31.bin ${barebox_srctree}/imx8mp-bl31.bin +.. warning:: It is important to use a version >= v2.7 else your system + might not boot. + Build Barebox ------------- diff --git a/arch/arm/mach-imx/include/mach/atf.h b/arch/arm/mach-imx/include/mach/atf.h index 09396f4646..bc400ddbad 100644 --- a/arch/arm/mach-imx/include/mach/atf.h +++ b/arch/arm/mach-imx/include/mach/atf.h @@ -10,7 +10,7 @@ #define MX8MM_ATF_BL31_BASE_ADDR 0x00920000 #define MX8MN_ATF_BL31_BASE_ADDR 0x00960000 -#define MX8MP_ATF_BL31_BASE_ADDR 0x00960000 +#define MX8MP_ATF_BL31_BASE_ADDR 0x00970000 #define MX8MQ_ATF_BL31_BASE_ADDR 0x00910000 #define MX8M_ATF_BL33_BASE_ADDR 0x40200000 #define MX8MM_ATF_BL33_BASE_ADDR MX8M_ATF_BL33_BASE_ADDR -- 2.30.2