
Implement a hook to allow boards to save boot-time CPU state for later use. When U-Boot is chain-loaded by another bootloader, CPU registers may contain useful information such as system configuration information. This feature mirrors the equivalent ARMv7 feature.
Signed-off-by: Cédric Schieli cschieli@gmail.com ---
Changes in v4: - add save_boot_params hook for ARM1176 to make the passthrough work on ARMv6-based original Pis
Changes in v3: None Changes in v2: None
arch/arm/cpu/arm1176/start.S | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/arch/arm/cpu/arm1176/start.S b/arch/arm/cpu/arm1176/start.S index a602d4e..7c00201 100644 --- a/arch/arm/cpu/arm1176/start.S +++ b/arch/arm/cpu/arm1176/start.S @@ -16,6 +16,7 @@
#include <asm-offsets.h> #include <config.h> +#include <linux/linkage.h>
#ifndef CONFIG_SYS_PHY_UBOOT_BASE #define CONFIG_SYS_PHY_UBOOT_BASE CONFIG_SYS_UBOOT_BASE @@ -37,6 +38,11 @@ .globl reset
reset: + /* Allow the board to save important registers */ + b save_boot_params +.globl save_boot_params_ret +save_boot_params_ret: + /* * set the cpu to SVC32 mode */ @@ -110,3 +116,7 @@ mmu_disable_phys: c_runtime_cpu_setup:
mov pc, lr + +WEAK(save_boot_params) + b save_boot_params_ret /* back to my caller */ +ENDPROC(save_boot_params)