[PATCH v7 4/8] arm: armv7: save boot arguments
Raymond Mao
raymond.mao at linaro.org
Fri Jan 19 16:10:00 CET 2024
Save boot arguments r[0-3] into an array for handover of bloblist from
previous boot stage.
Signed-off-by: Raymond Mao <raymond.mao at linaro.org>
---
Changes in v2
- New patch file created for v2.
Changes in v3
- Swap value of r0 with r2.
Changes in v4
- Fix a bug when saving the boot args.
Changes in V5
- Drop the dependence on OF_BOARD.
Changes in V7
- Exclude the saved_args when BLOBLIST is disabled.
arch/arm/cpu/armv7/start.S | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/arch/arm/cpu/armv7/start.S b/arch/arm/cpu/armv7/start.S
index 69e281b086..91691062c1 100644
--- a/arch/arm/cpu/armv7/start.S
+++ b/arch/arm/cpu/armv7/start.S
@@ -152,9 +152,30 @@ ENDPROC(c_runtime_cpu_setup)
*
*************************************************************************/
WEAK(save_boot_params)
+#if (IS_ENABLED(CONFIG_BLOBLIST))
+ ldr r12, =saved_args
+ /*
+ * Intentionally swapping r0 with r2 in order to simplify the C
+ * function we use later.
+ */
+ str r2, [r12]
+ str r1, [r12, #4]
+ str r0, [r12, #8]
+ str r3, [r12, #12]
+#endif
b save_boot_params_ret @ back to my caller
ENDPROC(save_boot_params)
+#if (IS_ENABLED(CONFIG_BLOBLIST))
+.section .data
+.global saved_args
+saved_args:
+ .rept 4
+ .word 0
+ .endr
+END(saved_args)
+#endif
+
#ifdef CONFIG_ARMV7_LPAE
WEAK(switch_to_hypervisor)
b switch_to_hypervisor_ret
--
2.25.1
More information about the U-Boot
mailing list