diff options
Diffstat (limited to 'nuttx/arch/arm/src')
-rw-r--r-- | nuttx/arch/arm/src/lm3s/lm3s_vectors.S | 7 | ||||
-rwxr-xr-x | nuttx/arch/arm/src/lpc17xx/lpc17_vectors.S | 9 | ||||
-rwxr-xr-x | nuttx/arch/arm/src/sam3u/sam3u_vectors.S | 7 | ||||
-rw-r--r-- | nuttx/arch/arm/src/stm32/stm32_vectors.S | 9 |
4 files changed, 18 insertions, 14 deletions
diff --git a/nuttx/arch/arm/src/lm3s/lm3s_vectors.S b/nuttx/arch/arm/src/lm3s/lm3s_vectors.S index 58674dda41..d760c13f75 100644 --- a/nuttx/arch/arm/src/lm3s/lm3s_vectors.S +++ b/nuttx/arch/arm/src/lm3s/lm3s_vectors.S @@ -377,7 +377,7 @@ lm3s_irqcommon: */
#ifdef CONFIG_ARCH_INTERRUPTSTACK
- ld sp, #up_interruptstack_base
+ ldr sp, =g_intstackbase
str r1, [sp, #-4]! /* Save the MSP on the interrupt stack */
bl up_doirq /* R0=IRQ, R1=register save (msp) */
ldr r1, [sp, #+4]! /* Recover R1=main stack pointer */
@@ -431,7 +431,7 @@ lm3s_irqcommon: .size handlers, .-handlers
/************************************************************************************
- * Name: up_interruptstack/g_userstack
+ * Name: up_interruptstack/g_intstackbase
*
* Description:
* Shouldn't happen
@@ -440,10 +440,11 @@ lm3s_irqcommon: #if CONFIG_ARCH_INTERRUPTSTACK > 3
.bss
+ .global g_intstackbase
.align 4
up_interruptstack:
.skip (CONFIG_ARCH_INTERRUPTSTACK & ~3)
-up_interruptstack_base:
+g_intstackbase:
.size up_interruptstack, .-up_interruptstack
#endif
diff --git a/nuttx/arch/arm/src/lpc17xx/lpc17_vectors.S b/nuttx/arch/arm/src/lpc17xx/lpc17_vectors.S index fc69e7dd84..8498dd87ac 100755 --- a/nuttx/arch/arm/src/lpc17xx/lpc17_vectors.S +++ b/nuttx/arch/arm/src/lpc17xx/lpc17_vectors.S @@ -255,8 +255,8 @@ lpc17_common: * Otherwise, we will re-use the main stack for interrupt level processing.
*/
-#ifdef CONFIG_ARCH_INTERRUPTSTACK
- ld sp, #up_interruptstack_base
+#if CONFIG_ARCH_INTERRUPTSTACK > 3
+ ldr sp, =g_intstackbase
str r1, [sp, #-4]! /* Save the MSP on the interrupt stack */
bl up_doirq /* R0=IRQ, R1=register save (msp) */
ldr r1, [sp, #+4]! /* Recover R1=main stack pointer */
@@ -310,7 +310,7 @@ lpc17_common: .size handlers, .-handlers
/************************************************************************************************
- * Name: up_interruptstack/g_userstack
+ * Name: up_interruptstack/g_intstackbase
*
* Description:
* Shouldn't happen
@@ -319,10 +319,11 @@ lpc17_common: #if CONFIG_ARCH_INTERRUPTSTACK > 3
.bss
+ .global g_intstackbase
.align 4
up_interruptstack:
.skip (CONFIG_ARCH_INTERRUPTSTACK & ~3)
-up_interruptstack_base:
+g_intstackbase:
.size up_interruptstack, .-up_interruptstack
#endif
diff --git a/nuttx/arch/arm/src/sam3u/sam3u_vectors.S b/nuttx/arch/arm/src/sam3u/sam3u_vectors.S index 4941fb33cb..efa7e0a550 100755 --- a/nuttx/arch/arm/src/sam3u/sam3u_vectors.S +++ b/nuttx/arch/arm/src/sam3u/sam3u_vectors.S @@ -247,7 +247,7 @@ sam3u_common: */
#ifdef CONFIG_ARCH_INTERRUPTSTACK
- ld sp, #up_interruptstack_base
+ ldr sp, =g_intstackbase
str r1, [sp, #-4]! /* Save the MSP on the interrupt stack */
bl up_doirq /* R0=IRQ, R1=register save (msp) */
ldr r1, [sp, #+4]! /* Recover R1=main stack pointer */
@@ -301,7 +301,7 @@ sam3u_common: .size handlers, .-handlers
/************************************************************************************************
- * Name: up_interruptstack/g_userstack
+ * Name: up_interruptstack/g_intstackbase
*
* Description:
* Shouldn't happen
@@ -310,10 +310,11 @@ sam3u_common: #if CONFIG_ARCH_INTERRUPTSTACK > 3
.bss
+ .global g_intstackbase
.align 4
up_interruptstack:
.skip (CONFIG_ARCH_INTERRUPTSTACK & ~3)
-up_interruptstack_base:
+g_intstackbase:
.size up_interruptstack, .-up_interruptstack
#endif
diff --git a/nuttx/arch/arm/src/stm32/stm32_vectors.S b/nuttx/arch/arm/src/stm32/stm32_vectors.S index 6a8f64c5bb..7d119f326b 100644 --- a/nuttx/arch/arm/src/stm32/stm32_vectors.S +++ b/nuttx/arch/arm/src/stm32/stm32_vectors.S @@ -2,7 +2,7 @@ * arch/arm/src/stm32/stm32_vectors.S
* arch/arm/src/chip/stm32_vectors.S
*
- * Copyright (C) 2009 Gregory Nutt. All rights reserved.
+ * Copyright (C) 2009-2010 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
*
* Redistribution and use in source and binary forms, with or without
@@ -439,7 +439,7 @@ stm32_common: */
#ifdef CONFIG_ARCH_INTERRUPTSTACK
- ld sp, #up_interruptstack_base
+ ldr sp, =g_intstackbase
str r1, [sp, #-4]! /* Save the MSP on the interrupt stack */
bl up_doirq /* R0=IRQ, R1=register save (msp) */
ldr r1, [sp, #+4]! /* Recover R1=main stack pointer */
@@ -493,7 +493,7 @@ stm32_common: .size handlers, .-handlers
/************************************************************************************
- * Name: up_interruptstack/g_userstack
+ * Name: up_interruptstack/g_intstackbase
*
* Description:
* Shouldn't happen
@@ -502,10 +502,11 @@ stm32_common: #if CONFIG_ARCH_INTERRUPTSTACK > 3
.bss
+ .global g_intstackbase
.align 4
up_interruptstack:
.skip (CONFIG_ARCH_INTERRUPTSTACK & ~3)
-up_interruptstack_base:
+g_intstackbase:
.size up_interruptstack, .-up_interruptstack
#endif
|