[U-Boot] [PATCH] rockchip: rk3288: Change method of loading u-boot

Ziyuan Xu xzy.xu at rock-chips.com
Sun Jun 12 05:56:34 CEST 2016


If we would like to boot from SD card, we have to implement mmc driver
in SPL stage, and get a slightly larger spl binrary. RK3288's bootrom
code has the ability to load spl and u-boot. This patch tasks maskrom to
load u-boot.

Loading sequence after rework:
bootrom ==> spl ==> bootrom ==> u-boot

Signed-off-by: Ziyuan Xu <xzy.xu at rock-chips.com>
---
 arch/arm/mach-rockchip/rk3288/save_boot_param.S | 32 +++++++++++++++++++++++++
 1 file changed, 32 insertions(+)
 create mode 100644 arch/arm/mach-rockchip/rk3288/save_boot_param.S

diff --git a/arch/arm/mach-rockchip/rk3288/save_boot_param.S b/arch/arm/mach-rockchip/rk3288/save_boot_param.S
new file mode 100644
index 0000000..778ec83
--- /dev/null
+++ b/arch/arm/mach-rockchip/rk3288/save_boot_param.S
@@ -0,0 +1,32 @@
+/*
+ * (C) Copyright 2015 Google, Inc
+ *
+ * SPDX-License-Identifier:     GPL-2.0+
+ */
+
+#include <linux/linkage.h>
+
+.globl	SAVE_SP_ADDR
+SAVE_SP_ADDR:
+	.word 0
+
+/*
+ * void save_boot_params
+ *
+ * Save sp, lr, r1~r12
+ */
+ENTRY(save_boot_params)
+	push	{r1-r12, lr}
+	ldr	r0, =SAVE_SP_ADDR
+	str	sp, [r0]
+	b	save_boot_params_ret		@ back to my caller
+ENDPROC(save_boot_params)
+
+
+.globl back_to_bootrom
+ENTRY(back_to_bootrom)
+	ldr	r0, =SAVE_SP_ADDR
+	ldr	sp, [r0]
+	mov	r0, #0
+	pop	{r1-r12, pc}
+ENDPROC(back_to_bootrom)
-- 
1.9.1




More information about the U-Boot mailing list