]> git.sur5r.net Git - u-boot/blobdiff - arch/arm/lib/interrupts.c
Merge branch 'master' of git://git.denx.de/u-boot-imx
[u-boot] / arch / arm / lib / interrupts.c
index 1f2b815611cfd4cc9b74c7c61722c492deff0868..74ff5ce1c442564303ae09944f543517e5f3ce6e 100644 (file)
 #include <common.h>
 #include <asm/proc-armv/ptrace.h>
 
-#ifdef CONFIG_USE_IRQ
 DECLARE_GLOBAL_DATA_PTR;
 
+#ifdef CONFIG_USE_IRQ
 int interrupt_init (void)
 {
        /*
         * setup up stacks if necessary
         */
-       IRQ_STACK_START = _armboot_start - CONFIG_SYS_MALLOC_LEN - CONFIG_SYS_GBL_DATA_SIZE - 4;
+       IRQ_STACK_START = gd->irq_sp - 4;
+       IRQ_STACK_START_IN = gd->irq_sp + 8;
        FIQ_STACK_START = IRQ_STACK_START - CONFIG_STACKSIZE_IRQ;
 
        return arch_interrupt_init();
@@ -81,6 +82,16 @@ int disable_interrupts (void)
        return (old & 0x80) == 0;
 }
 #else
+int interrupt_init (void)
+{
+       /*
+        * setup up stacks if necessary
+        */
+       IRQ_STACK_START_IN = gd->irq_sp + 8;
+
+       return 0;
+}
+
 void enable_interrupts (void)
 {
        return;