* Patch by Mark Jonas, 08 June 2004:
[oweals/u-boot.git] / cpu / at91rm9200 / cpu.c
index 262ca340e12d90ed5d8a34ca52f6041e4efcf762..02507297e1b6e4b3f5c50e39d8ea0017e9edcf47 100644 (file)
@@ -81,18 +81,16 @@ static void cp_delay(void)
 
 int cpu_init(void)
 {
-    /*
-     * setup up stack if necessary
-     */
+       /*
+        * setup up stacks if necessary
+        */
 #ifdef CONFIG_USE_IRQ
-    IRQ_STACK_START = _armboot_end +
-                       CONFIG_STACKSIZE + CONFIG_STACKSIZE_IRQ - 4;
-    FIQ_STACK_START = IRQ_STACK_START + CONFIG_STACKSIZE_FIQ;
-    _armboot_real_end = FIQ_STACK_START + 4;
-#else
-    _armboot_real_end = _armboot_end + CONFIG_STACKSIZE;
+       DECLARE_GLOBAL_DATA_PTR;
+
+       IRQ_STACK_START = _armboot_start - CFG_MALLOC_LEN - CFG_GBL_DATA_SIZE - 4;
+       FIQ_STACK_START = IRQ_STACK_START - CONFIG_STACKSIZE_IRQ;
 #endif
-    return 0;
+       return 0;
 }
 
 int cleanup_before_linux(void)