diff mbox

[U-Boot,1/2] arm, arm926ejs: always do cpu critical inits

Message ID 1320905184-15277-2-git-send-email-hs@denx.de
State Accepted, archived
Delegated to: Tom Rini
Headers show

Commit Message

Heiko Schocher Nov. 10, 2011, 6:06 a.m. UTC
always do the cpu critical inits in cpu_init_crit,
and only jump to lowlevel_init, if CONFIG_SKIP_LOWLEVEL_INIT
is not defined.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Wolfgang Denk <hs@denx.de>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Tom Rini <tom.rini@gmail.com>
Cc: Christian Riesch <christian.riesch@omicron.at>
---
 arch/arm/cpu/arm926ejs/start.S |    6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

Comments

Tom Rini Nov. 29, 2011, 7:27 p.m. UTC | #1
On Wed, Nov 9, 2011 at 11:06 PM, Heiko Schocher <hs@denx.de> wrote:
> always do the cpu critical inits in cpu_init_crit,
> and only jump to lowlevel_init, if CONFIG_SKIP_LOWLEVEL_INIT
> is not defined.
>
> Signed-off-by: Heiko Schocher <hs@denx.de>
> Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
> Cc: Wolfgang Denk <hs@denx.de>
> Cc: Sandeep Paulraj <s-paulraj@ti.com>
> Cc: Tom Rini <tom.rini@gmail.com>
> Cc: Christian Riesch <christian.riesch@omicron.at>

(Will be) queued to u-boot-ti, thanks.
Albert ARIBAUD Dec. 5, 2011, 5:11 p.m. UTC | #2
Le 29/11/2011 20:27, Tom Rini a écrit :
> On Wed, Nov 9, 2011 at 11:06 PM, Heiko Schocher<hs@denx.de>  wrote:
>> always do the cpu critical inits in cpu_init_crit,
>> and only jump to lowlevel_init, if CONFIG_SKIP_LOWLEVEL_INIT
>> is not defined.
>>
>> Signed-off-by: Heiko Schocher<hs@denx.de>
>> Cc: Albert ARIBAUD<albert.u.boot@aribaud.net>
>> Cc: Wolfgang Denk<hs@denx.de>
>> Cc: Sandeep Paulraj<s-paulraj@ti.com>
>> Cc: Tom Rini<tom.rini@gmail.com>
>> Cc: Christian Riesch<christian.riesch@omicron.at>
>
> (Will be) queued to u-boot-ti, thanks.

Hmm... This commit alters the effect of CONFIG_SKIP_LOWLEVEL_INIT 
without making it possible to recreate it through configuration -- you 
now have to alter the source code to get the same effect as before. I'd 
prefer the CPU init crit code to be kept under a config option, and 
another option to be added for finer control.

Amicalement,
diff mbox

Patch

diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
index 339c5ed..8b5355b 100644
--- a/arch/arm/cpu/arm926ejs/start.S
+++ b/arch/arm/cpu/arm926ejs/start.S
@@ -194,9 +194,7 @@  reset:
 	 * we do sys-critical inits only at reboot,
 	 * not when booting from ram!
 	 */
-#ifndef CONFIG_SKIP_LOWLEVEL_INIT
 	bl	cpu_init_crit
-#endif
 
 /* Set stackpointer in internal RAM to call board_init_f */
 call_board_init_f:
@@ -353,7 +351,6 @@  _dynsym_start_ofs:
  *
  *************************************************************************
  */
-#ifndef CONFIG_SKIP_LOWLEVEL_INIT
 cpu_init_crit:
 	/*
 	 * flush v4 I/D caches
@@ -372,14 +369,15 @@  cpu_init_crit:
 	orr	r0, r0, #0x00001000	/* set bit 12 (I) I-Cache */
 	mcr	p15, 0, r0, c1, c0, 0
 
+#ifndef CONFIG_SKIP_LOWLEVEL_INIT
 	/*
 	 * Go setup Memory and board specific bits prior to relocation.
 	 */
 	mov	ip, lr		/* perserve link reg across call */
 	bl	lowlevel_init	/* go setup pll,mux,memory */
 	mov	lr, ip		/* restore link */
-	mov	pc, lr		/* back to my caller */
 #endif /* CONFIG_SKIP_LOWLEVEL_INIT */
+	mov	pc, lr		/* back to my caller */
 
 #ifndef CONFIG_SPL_BUILD
 /*