summaryrefslogtreecommitdiffstats
path: root/arch/arm/cpu/arm1176
diff options
context:
space:
mode:
authorCédric Schieli <cschieli@gmail.com>2016-11-11 11:59:06 +0100
committerTom Rini <trini@konsulko.com>2016-11-21 14:07:31 -0500
commit3e10fcde3f3c24a488866dd33fa3f5d46ff3d7a3 (patch)
tree1e935b48349ce4dcab5f4644497b953303ba8969 /arch/arm/cpu/arm1176
parent83dd98e012b55b494ac2bf1f9a5d66f684bfbbe8 (diff)
downloadu-boot-3e10fcde3f3c24a488866dd33fa3f5d46ff3d7a3.tar.gz
u-boot-3e10fcde3f3c24a488866dd33fa3f5d46ff3d7a3.tar.xz
u-boot-3e10fcde3f3c24a488866dd33fa3f5d46ff3d7a3.zip
arm: add save_boot_params for ARM1176
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> Acked-by: Stephen Warren <swarren@nvidia.com>
Diffstat (limited to 'arch/arm/cpu/arm1176')
-rw-r--r--arch/arm/cpu/arm1176/start.S10
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/arm/cpu/arm1176/start.S b/arch/arm/cpu/arm1176/start.S
index a602d4e693..7c00201dd0 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)