[U-Boot-Users] [Patch 2/4] U-Boot-V2: ARM: introduce CONFIG_SKIP_RELOCATION

Menon, Nishanth x0nishan at ti.com
Wed May 7 13:55:56 CEST 2008


Introduce CONFIG_SKIP_RELOCATION as alternative define. This may be
desired in some conditions where U-Boot is downloaded directly into SRAM
during NAND/Peripheral download mode and is not expected to be
relocated.

This patch also organizes SKIP_LOWLEVEL_INIT and SKIP_RELOCATION in a
common arm feature dependent section.

Signed-off-by: Nishanth Menon <x0nishan at ti.com>

Index: u-boot-v2.git/arch/arm/cpu/start-arm.S
===================================================================
--- u-boot-v2.git.orig/arch/arm/cpu/start-arm.S	2008-05-05
09:35:00.000000000 -0500
+++ u-boot-v2.git/arch/arm/cpu/start-arm.S	2008-05-05
09:35:05.000000000 -0500
@@ -160,6 +160,10 @@
 	bl	board_init_lowlevel
 #endif
 
+	/*
+	 * In some circumstances, we may choose not to relocate u-boot
+	 */
+#ifndef CONFIG_SKIP_RELOCATION
 relocate:				/* relocate U-Boot to RAM
*/
 	adr	r0, _start		/* r0 <- current position of
code   */
 	ldr	r1, _TEXT_BASE		/* test if we run from flash or
RAM */
@@ -176,6 +180,7 @@
 	stmia	r1!, {r3-r10}		/* copy to   target address [r1]
*/
 	cmp	r0, r2			/* until source end addreee [r2]
*/
 	ble	copy_loop
+#endif
 
 	/* Set up the stack
*/
 stack_setup:
Index: u-boot-v2.git/arch/arm/Kconfig
===================================================================
--- u-boot-v2.git.orig/arch/arm/Kconfig	2008-05-05 09:34:44.000000000
-0500
+++ u-boot-v2.git/arch/arm/Kconfig	2008-05-05 09:35:25.000000000
-0500
@@ -74,6 +74,7 @@
 	bool
 	select ARM926EJS
 
+
 choice
 	prompt "Select your board"
 
@@ -140,7 +141,7 @@
 	  The i.MX SoCs have a Pin which can output different reference
frequencies.
 	  Say y here if you want to have the clko command which lets you
select the
 	  frequency to output on this pin.
-	  
+
 source arch/arm/mach-netx/Kconfig
 
 menu "Arm specific settings         "
@@ -164,6 +165,27 @@
 	  If you want to start a 2.6 kernel and use an
 	  initrd image say y here.
 
+menu "Boot Features"
+
+config SKIP_LOWLEVEL_INIT
+	bool
+	default n
+	depends on ARM
+	prompt "Skip lowlevel init"
+	help
+	  This entry skips the SDRAM initialising on many ARM based
boards.
+	  It enables using U-boot as a second stage bootloader.
+
+config SKIP_RELOCATION
+	bool
+	default n
+	depends on ARM
+	prompt "Skip U-Boot Relocation"
+	help
+	  This entry skips the relocation logic on certain platforms
+	  It enables using U-boot as a second stage bootloader.
+endmenu
+
 endmenu
 
 source common/Kconfig
Index: u-boot-v2.git/common/Kconfig
===================================================================
--- u-boot-v2.git.orig/common/Kconfig	2008-05-05 09:34:44.000000000
-0500
+++ u-boot-v2.git/common/Kconfig	2008-05-05 09:35:05.000000000
-0500
@@ -216,14 +216,6 @@
 	help
 	  Enable build of u-boot with -g.
 
-config SKIP_LOWLEVEL_INIT
-	bool
-	depends on ARM
-	prompt "Skip lowlevel init"
-	help
-	  This entry skips the SDRAM initialising on many ARM based
boards.
-	  It enables using U-boot as a second stage bootloader.
-
 config ENABLE_FLASH_NOISE
 	bool
 	prompt "verbose flash handling"




More information about the U-Boot mailing list