From: Miquel Raynal <miquel.raynal@bootlin.com>
Date: Tue, 7 May 2019 12:18:51 +0000 (+0200)
Subject: arm: spear: Simplify start.S organization
X-Git-Tag: v2025.01-rc5-pxa1908~2891^2~11
X-Git-Url: http://git.dujemihanovic.xyz/img/html/static/%7B%7B%20%28.OutputFormats.Get?a=commitdiff_plain;h=6a9d0e275f0edb952541ae4efb0dc394242f9b5a;p=u-boot.git

arm: spear: Simplify start.S organization

There is no reason to do the few spear-related initialization, in a
different procedure than 'reset'. Spare one branching and get a linear
code flow by removing this indirection.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Stefan Roese <sr@denx.de>
---

diff --git a/arch/arm/cpu/arm926ejs/spear/start.S b/arch/arm/cpu/arm926ejs/spear/start.S
index 2bc9d5990e..5fb2bd12ec 100644
--- a/arch/arm/cpu/arm926ejs/spear/start.S
+++ b/arch/arm/cpu/arm926ejs/spear/start.S
@@ -36,20 +36,7 @@ reset:
 	* UART boot, USB boot): save registers in BootROM's stack.
 	*/
 	push	{r0-r12,lr}
-	bl	cpu_init_crit
-	pop	{r0-r12,pc}
 
-/*
- *************************************************************************
- *
- * CPU_init_critical registers
- *
- * setup important registers
- * setup memory timing
- *
- *************************************************************************
- */
-cpu_init_crit:
 	/*
 	 * Flush v4 I/D caches
 	 */
@@ -67,6 +54,6 @@ cpu_init_crit:
 	/*
 	 * Go setup Memory and board specific bits prior to relocation.
 	 */
-	push	{lr}
 	bl	_main	/* _main will call board_init_f */
-	pop	{pc}
+
+	pop	{r0-r12,pc}