[PATCH RFT v1 17/17] arm: spl: use fdt addr if arg is unset in falcon mode
Anshul Dalal
anshuld at ti.com
Thu Sep 11 15:14:13 CEST 2025
spl_image->arg is passed to the kernel as an argument in the x0
register. However in cases when the kernel is loaded from a FIT
container along with a DT, the arg remains unset which leads to boot
failure.
Therefore, this patch sets the arg to fdt address if it's null.
Signed-off-by: Anshul Dalal <anshuld at ti.com>
---
arch/arm/lib/spl.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/lib/spl.c b/arch/arm/lib/spl.c
index c43a63f1819..2e7613a6f2e 100644
--- a/arch/arm/lib/spl.c
+++ b/arch/arm/lib/spl.c
@@ -53,6 +53,8 @@ void __weak board_init_f(ulong dummy)
#ifdef CONFIG_ARM64
void __noreturn jump_to_image_linux(struct spl_image_info *spl_image)
{
+ if (!spl_image->arg)
+ spl_image->arg = spl_image_fdt_addr(spl_image);
debug("Entering kernel arg pointer: 0x%p\n", spl_image->arg);
cleanup_before_linux();
armv8_switch_to_el2((u64)spl_image->arg, 0, 0, 0,
--
2.51.0
More information about the U-Boot
mailing list