[PATCH] ARM: i.MX8M: atf: add debug messages just before TF-A jump
Ahmad Fatoum
a.fatoum at pengutronix.de
Fri Jan 16 05:49:46 PST 2026
The handoff to TF-A has been a frequent source of hangs during board
bringup in the past for various reasons.
Add a debug print just before branching to TF-A and add a comment
explaining some possible issues to aid with future debugging.
Cc: Holger Assmann <h.assmann at pengutronix.de>
Cc: Fabian Pflug <f.pflug at pengutronix.de>
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
arch/arm/mach-imx/atf.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/arch/arm/mach-imx/atf.c b/arch/arm/mach-imx/atf.c
index 5a8a7a7fd541..773ebfad0be3 100644
--- a/arch/arm/mach-imx/atf.c
+++ b/arch/arm/mach-imx/atf.c
@@ -53,8 +53,23 @@ static __noreturn void imx8m_tfa_start_bl31(const void *tfa_bin, size_t tfa_size
pr_debug("CAAM early init successful\n");
}
+ pr_debug("Loading BL31 to %p ", tfa_bin);
+
memcpy(bl31, tfa_bin, tfa_size);
+ /*
+ * If all works fine (and TF-A has debug output enabled), the next
+ * serial output should start with:
+ *
+ * NOTICE: BL31:
+ *
+ * If not, set IMX_BOOT_UART_BASE=auto when building TF-A if supported,
+ * check if DRAM configuration is correct and that the PMIC correctly
+ * configured the DRAM rails. For very old TF-A versions, also compare
+ * barebox tfa_dest against whatever value your TF-A hardcodes.
+ */
+ pr_debug("and jumping with SP: %p\n", tfa_dest - 16);
+
asm volatile("msr sp_el2, %0" : :
"r" (tfa_dest - 16) :
"cc");
--
2.47.3
More information about the barebox
mailing list