Patch by Steven Scholz, 4 Apr 2005:
- remove all references to CONFIG_INIT_CRITICAL for ARM based boards
- introduce two new configuration options instead:
  CONFIG_SKIP_LOWLEVEL_INIT and CONFIG_SKIP_RELOCATE_UBOOT
diff --git a/cpu/arm720t/start.S b/cpu/arm720t/start.S
index 0e15965..3695465 100644
--- a/cpu/arm720t/start.S
+++ b/cpu/arm720t/start.S
@@ -119,10 +119,11 @@
 	 * we do sys-critical inits only at reboot,
 	 * not when booting from ram!
 	 */
-#ifdef CONFIG_INIT_CRITICAL
+#ifndef CONFIG_SKIP_LOWLEVEL_INIT
 	bl	cpu_init_crit
 #endif
 
+#ifndef CONFIG_SKIP_RELOCATE_UBOOT
 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 */
@@ -150,6 +151,8 @@
 	cmp	r0, r2			/* until source end addreee [r2]    */
 	ble	copy_loop
 
+#endif	/* CONFIG_SKIP_RELOCATE_UBOOT */
+
 	/* Set up the stack						    */
 stack_setup:
 	ldr	r0, _TEXT_BASE		/* upper 128 KiB: relocated uboot   */