You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
494 lines
18 KiB
494 lines
18 KiB
diff --git NuttX/nuttx/arch/arm/src/a1x/a1x_irq.c NuttX/nuttx/arch/arm/src/a1x/a1x_irq.c |
|
index ecabb5f..21c074d 100644 |
|
--- NuttX/nuttx/arch/arm/src/a1x/a1x_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/a1x/a1x_irq.c |
|
@@ -159,16 +159,6 @@ void up_irqinitialize(void) |
|
(void)getreg32(A1X_INTC_IRQ_PEND(i)); /* Reading status clears pending interrupts */ |
|
} |
|
|
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- { |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
- } |
|
-#endif |
|
- |
|
/* Set the interrupt base address to zero. We do not use the vectored |
|
* interrupts. |
|
*/ |
|
diff --git NuttX/nuttx/arch/arm/src/armv7-m/gnu/up_exception.S NuttX/nuttx/arch/arm/src/armv7-m/gnu/up_exception.S |
|
index 0010136..4f2927b 100644 |
|
--- NuttX/nuttx/arch/arm/src/armv7-m/gnu/up_exception.S |
|
+++ NuttX/nuttx/arch/arm/src/armv7-m/gnu/up_exception.S |
|
@@ -323,7 +323,7 @@ exception_common: |
|
.global g_intstackbase |
|
.align 8 |
|
g_intstackalloc: |
|
- .skip (CONFIG_ARCH_INTERRUPTSTACK & ~7) |
|
+ .skip ((CONFIG_ARCH_INTERRUPTSTACK + 4) & ~7) |
|
g_intstackbase: |
|
.size g_intstackalloc, .-g_intstackalloc |
|
#endif |
|
diff --git NuttX/nuttx/arch/arm/src/armv7-m/gnu/up_lazyexception.S NuttX/nuttx/arch/arm/src/armv7-m/gnu/up_lazyexception.S |
|
index 08ce8be..eb3e270 100644 |
|
--- NuttX/nuttx/arch/arm/src/armv7-m/gnu/up_lazyexception.S |
|
+++ NuttX/nuttx/arch/arm/src/armv7-m/gnu/up_lazyexception.S |
|
@@ -235,7 +235,7 @@ exception_common: |
|
* |
|
* Here: |
|
* r0 = Address of the register save area |
|
- |
|
+ |
|
* NOTE: It is a requirement that up_restorefpu() preserve the value of |
|
* r0! |
|
*/ |
|
@@ -355,7 +355,7 @@ exception_common: |
|
.global g_intstackbase |
|
.align 8 |
|
g_intstackalloc: |
|
- .skip (CONFIG_ARCH_INTERRUPTSTACK & ~7) |
|
+ .skip ((CONFIG_ARCH_INTERRUPTSTACK + 4) & ~7) |
|
g_intstackbase: |
|
.size g_intstackalloc, .-g_intstackalloc |
|
#endif |
|
diff --git NuttX/nuttx/arch/arm/src/common/up_createstack.c NuttX/nuttx/arch/arm/src/common/up_createstack.c |
|
index 70d83a8..4503e15 100644 |
|
--- NuttX/nuttx/arch/arm/src/common/up_createstack.c |
|
+++ NuttX/nuttx/arch/arm/src/common/up_createstack.c |
|
@@ -66,22 +66,11 @@ |
|
# define HAVE_KERNEL_HEAP 1 |
|
#endif |
|
|
|
-/* ARM requires at least a 4-byte stack alignment. For use with EABI and |
|
- * floating point, the stack must be aligned to 8-byte addresses. |
|
+/* For use with EABI and floating point, the stack must be aligned to 8-byte |
|
+ * addresses. |
|
*/ |
|
|
|
-#ifndef CONFIG_STACK_ALIGNMENT |
|
- |
|
-/* The symbol __ARM_EABI__ is defined by GCC if EABI is being used. If you |
|
- * are not using GCC, make sure that CONFIG_STACK_ALIGNMENT is set correctly! |
|
- */ |
|
- |
|
-# ifdef __ARM_EABI__ |
|
-# define CONFIG_STACK_ALIGNMENT 8 |
|
-# else |
|
-# define CONFIG_STACK_ALIGNMENT 4 |
|
-# endif |
|
-#endif |
|
+#define CONFIG_STACK_ALIGNMENT 8 |
|
|
|
/* Stack alignment macros */ |
|
|
|
@@ -233,9 +222,9 @@ int up_create_stack(FAR struct tcb_s *tcb, size_t stack_size, uint8_t ttype) |
|
|
|
top_of_stack = (uint32_t)tcb->stack_alloc_ptr + stack_size - 4; |
|
|
|
- /* The ARM stack must be aligned; 4 byte alignment for OABI and |
|
- * 8-byte alignment for EABI. If necessary top_of_stack must be |
|
- * rounded down to the next boundary |
|
+ /* The ARM stack must be aligned to 8-byte alignment for EABI. |
|
+ * If necessary top_of_stack must be rounded down to the next |
|
+ * boundary |
|
*/ |
|
|
|
top_of_stack = STACK_ALIGN_DOWN(top_of_stack); |
|
diff --git NuttX/nuttx/arch/arm/src/common/up_stackframe.c NuttX/nuttx/arch/arm/src/common/up_stackframe.c |
|
index b5712b2..dace2e9 100644 |
|
--- NuttX/nuttx/arch/arm/src/common/up_stackframe.c |
|
+++ NuttX/nuttx/arch/arm/src/common/up_stackframe.c |
|
@@ -53,22 +53,11 @@ |
|
* Pre-processor Macros |
|
****************************************************************************/ |
|
|
|
-/* ARM requires at least a 4-byte stack alignment. For use with EABI and |
|
- * floating point, the stack must be aligned to 8-byte addresses. |
|
+/* For use with EABI and floating point, the stack must be aligned to 8-byte |
|
+ * addresses. |
|
*/ |
|
|
|
-#ifndef CONFIG_STACK_ALIGNMENT |
|
- |
|
-/* The symbol __ARM_EABI__ is defined by GCC if EABI is being used. If you |
|
- * are not using GCC, make sure that CONFIG_STACK_ALIGNMENT is set correctly! |
|
- */ |
|
- |
|
-# ifdef __ARM_EABI__ |
|
-# define CONFIG_STACK_ALIGNMENT 8 |
|
-# else |
|
-# define CONFIG_STACK_ALIGNMENT 4 |
|
-# endif |
|
-#endif |
|
+#define CONFIG_STACK_ALIGNMENT 8 |
|
|
|
/* Stack alignment macros */ |
|
|
|
diff --git NuttX/nuttx/arch/arm/src/common/up_usestack.c NuttX/nuttx/arch/arm/src/common/up_usestack.c |
|
index 8873879..f8072a6 100644 |
|
--- NuttX/nuttx/arch/arm/src/common/up_usestack.c |
|
+++ NuttX/nuttx/arch/arm/src/common/up_usestack.c |
|
@@ -56,22 +56,11 @@ |
|
* Pre-processor Macros |
|
****************************************************************************/ |
|
|
|
-/* ARM requires at least a 4-byte stack alignment. For use with EABI and |
|
- * floating point, the stack must be aligned to 8-byte addresses. |
|
+/* For use with EABI and floating point, the stack must be aligned to 8-byte |
|
+ * addresses. |
|
*/ |
|
|
|
-#ifndef CONFIG_STACK_ALIGNMENT |
|
- |
|
-/* The symbol __ARM_EABI__ is defined by GCC if EABI is being used. If you |
|
- * are not using GCC, make sure that CONFIG_STACK_ALIGNMENT is set correctly! |
|
- */ |
|
- |
|
-# ifdef __ARM_EABI__ |
|
-# define CONFIG_STACK_ALIGNMENT 8 |
|
-# else |
|
-# define CONFIG_STACK_ALIGNMENT 4 |
|
-# endif |
|
-#endif |
|
+#define CONFIG_STACK_ALIGNMENT 8 |
|
|
|
/* Stack alignment macros */ |
|
|
|
@@ -143,9 +132,9 @@ int up_use_stack(struct tcb_s *tcb, void *stack, size_t stack_size) |
|
|
|
top_of_stack = (uint32_t)tcb->stack_alloc_ptr + stack_size - 4; |
|
|
|
- /* The ARM stack must be aligned; 4 byte alignment for OABI and 8-byte |
|
- * alignment for EABI. If necessary top_of_stack must be rounded down |
|
- * to the next boundary |
|
+ /* The ARM stack must be aligned to 8-byte alignment for EABI. |
|
+ * If necessary top_of_stack must be rounded down to the next |
|
+ * boundary |
|
*/ |
|
|
|
top_of_stack = STACK_ALIGN_DOWN(top_of_stack); |
|
diff --git NuttX/nuttx/arch/arm/src/common/up_vfork.c NuttX/nuttx/arch/arm/src/common/up_vfork.c |
|
index e655ab1..5a69e31 100644 |
|
--- NuttX/nuttx/arch/arm/src/common/up_vfork.c |
|
+++ NuttX/nuttx/arch/arm/src/common/up_vfork.c |
|
@@ -56,22 +56,11 @@ |
|
* Pre-processor Definitions |
|
****************************************************************************/ |
|
|
|
-/* ARM requires at least a 4-byte stack alignment. For use with EABI and |
|
- * floating point, the stack must be aligned to 8-byte addresses. |
|
+/* For use with EABI and floating point, the stack must be aligned to 8-byte |
|
+ * addresses. |
|
*/ |
|
|
|
-#ifndef CONFIG_STACK_ALIGNMENT |
|
- |
|
-/* The symbol __ARM_EABI__ is defined by GCC if EABI is being used. If you |
|
- * are not using GCC, make sure that CONFIG_STACK_ALIGNMENT is set correctly! |
|
- */ |
|
- |
|
-# ifdef __ARM_EABI__ |
|
-# define CONFIG_STACK_ALIGNMENT 8 |
|
-# else |
|
-# define CONFIG_STACK_ALIGNMENT 4 |
|
-# endif |
|
-#endif |
|
+#define CONFIG_STACK_ALIGNMENT 8 |
|
|
|
/**************************************************************************** |
|
* Public Functions |
|
diff --git NuttX/nuttx/arch/arm/src/efm32/efm32_irq.c NuttX/nuttx/arch/arm/src/efm32/efm32_irq.c |
|
index db5992d..db31e68 100644 |
|
--- NuttX/nuttx/arch/arm/src/efm32/efm32_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/efm32/efm32_irq.c |
|
@@ -319,16 +319,6 @@ void up_irqinitialize(void) |
|
putreg32(0xffffffff, NVIC_IRQ_CLEAR(i)); |
|
} |
|
|
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
- { |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
- } |
|
-#endif |
|
- |
|
/* Make sure that we are using the correct vector table. The default |
|
* vector address is 0x0000:0000 but if we are executing code that is |
|
* positioned in SRAM or in external FLASH, then we may need to reset |
|
diff --git NuttX/nuttx/arch/arm/src/imx6/imx_irq.c NuttX/nuttx/arch/arm/src/imx6/imx_irq.c |
|
index b15a9a4..d5248ef 100644 |
|
--- NuttX/nuttx/arch/arm/src/imx6/imx_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/imx6/imx_irq.c |
|
@@ -93,16 +93,6 @@ void up_irqinitialize(void) |
|
* access to the GIC. |
|
*/ |
|
|
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- { |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
- } |
|
-#endif |
|
- |
|
/* Initialize the Generic Interrupt Controller (GIC) for CPU0 */ |
|
|
|
arm_gic0_initialize(); /* Initialization unique to CPU0 */ |
|
diff --git NuttX/nuttx/arch/arm/src/kinetis/kinetis_vectors.S NuttX/nuttx/arch/arm/src/kinetis/kinetis_vectors.S |
|
index 48c74c7..3094019 100644 |
|
--- NuttX/nuttx/arch/arm/src/kinetis/kinetis_vectors.S |
|
+++ NuttX/nuttx/arch/arm/src/kinetis/kinetis_vectors.S |
|
@@ -484,7 +484,7 @@ exception_common: |
|
.global g_intstackbase |
|
.align 8 |
|
g_intstackalloc: |
|
- .skip (CONFIG_ARCH_INTERRUPTSTACK & ~7) |
|
+ .skip ((CONFIG_ARCH_INTERRUPTSTACK + 4) & ~7) |
|
g_intstackbase: |
|
.size g_intstackalloc, .-g_intstackalloc |
|
#endif |
|
diff --git NuttX/nuttx/arch/arm/src/lpc17xx/lpc17_vectors.S NuttX/nuttx/arch/arm/src/lpc17xx/lpc17_vectors.S |
|
index 6cee7d9..9881472 100644 |
|
--- NuttX/nuttx/arch/arm/src/lpc17xx/lpc17_vectors.S |
|
+++ NuttX/nuttx/arch/arm/src/lpc17xx/lpc17_vectors.S |
|
@@ -348,7 +348,7 @@ exception_common: |
|
* |
|
* Here: |
|
* r0 = Address of the register save area |
|
- |
|
+ |
|
* NOTE: It is a requirement that up_restorefpu() preserve the value of |
|
* r0! |
|
*/ |
|
@@ -468,7 +468,7 @@ exception_common: |
|
.global g_intstackbase |
|
.align 8 |
|
g_intstackalloc: |
|
- .skip (CONFIG_ARCH_INTERRUPTSTACK & ~7) |
|
+ .skip ((CONFIG_ARCH_INTERRUPTSTACK + 4) & ~7) |
|
g_intstackbase: |
|
.size g_intstackalloc, .-g_intstackalloc |
|
#endif |
|
diff --git NuttX/nuttx/arch/arm/src/sam34/sam_irq.c NuttX/nuttx/arch/arm/src/sam34/sam_irq.c |
|
index 0b3286d..a75caaf 100644 |
|
--- NuttX/nuttx/arch/arm/src/sam34/sam_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/sam34/sam_irq.c |
|
@@ -385,16 +385,6 @@ void up_irqinitialize(void) |
|
putreg32(0, regaddr); |
|
} |
|
|
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- { |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
- } |
|
-#endif |
|
- |
|
/* Make sure that we are using the correct vector table. The default |
|
* vector address is 0x0000:0000 but if we are executing code that is |
|
* positioned in SRAM or in external FLASH, then we may need to reset |
|
diff --git NuttX/nuttx/arch/arm/src/sam34/sam_vectors.S NuttX/nuttx/arch/arm/src/sam34/sam_vectors.S |
|
index 9765f61..9de7d24 100644 |
|
--- NuttX/nuttx/arch/arm/src/sam34/sam_vectors.S |
|
+++ NuttX/nuttx/arch/arm/src/sam34/sam_vectors.S |
|
@@ -362,7 +362,7 @@ exception_common: |
|
* |
|
* Here: |
|
* r0 = Address of the register save area |
|
- |
|
+ |
|
* NOTE: It is a requirement that up_restorefpu() preserve the value of |
|
* r0! |
|
*/ |
|
@@ -482,7 +482,7 @@ exception_common: |
|
.global g_intstackbase |
|
.align 8 |
|
g_intstackalloc: |
|
- .skip (CONFIG_ARCH_INTERRUPTSTACK & ~7) |
|
+ .skip ((CONFIG_ARCH_INTERRUPTSTACK + 4) & ~7) |
|
g_intstackbase: |
|
.size g_intstackalloc, .-g_intstackalloc |
|
#endif |
|
diff --git NuttX/nuttx/arch/arm/src/sama5/sam_irq.c NuttX/nuttx/arch/arm/src/sama5/sam_irq.c |
|
index c8cf1f5..fd4dfd8 100644 |
|
--- NuttX/nuttx/arch/arm/src/sama5/sam_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/sama5/sam_irq.c |
|
@@ -431,16 +431,6 @@ void up_irqinitialize(void) |
|
* access to the AIC. |
|
*/ |
|
|
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- { |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
- } |
|
-#endif |
|
- |
|
/* Redirect all interrupts to the AIC if so configured */ |
|
|
|
sam_aic_redirection(); |
|
diff --git NuttX/nuttx/arch/arm/src/samv7/sam_irq.c NuttX/nuttx/arch/arm/src/samv7/sam_irq.c |
|
index 08537f6..74d73d9 100644 |
|
--- NuttX/nuttx/arch/arm/src/samv7/sam_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/samv7/sam_irq.c |
|
@@ -381,16 +381,6 @@ void up_irqinitialize(void) |
|
putreg32(0, regaddr); |
|
} |
|
|
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- { |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
- } |
|
-#endif |
|
- |
|
/* Make sure that we are using the correct vector table. The default |
|
* vector address is 0x0000:0000 but if we are executing code that is |
|
* positioned in SRAM or in external FLASH, then we may need to reset |
|
diff --git NuttX/nuttx/arch/arm/src/stm32/gnu/stm32_vectors.S NuttX/nuttx/arch/arm/src/stm32/gnu/stm32_vectors.S |
|
index a1a39df..6d2d193 100644 |
|
--- NuttX/nuttx/arch/arm/src/stm32/gnu/stm32_vectors.S |
|
+++ NuttX/nuttx/arch/arm/src/stm32/gnu/stm32_vectors.S |
|
@@ -493,7 +493,7 @@ exception_common: |
|
.global g_intstackbase |
|
.align 8 |
|
g_intstackalloc: |
|
- .skip (CONFIG_ARCH_INTERRUPTSTACK & ~7) |
|
+ .skip ((CONFIG_ARCH_INTERRUPTSTACK + 4) & ~7) |
|
g_intstackbase: |
|
.size g_intstackalloc, .-g_intstackalloc |
|
#endif |
|
diff --git NuttX/nuttx/arch/arm/src/stm32/iar/stm32_vectors.S NuttX/nuttx/arch/arm/src/stm32/iar/stm32_vectors.S |
|
index cb9069d..450a9bc 100644 |
|
--- NuttX/nuttx/arch/arm/src/stm32/iar/stm32_vectors.S |
|
+++ NuttX/nuttx/arch/arm/src/stm32/iar/stm32_vectors.S |
|
@@ -1051,7 +1051,7 @@ l5: |
|
.global g_intstackbase |
|
.align 8 |
|
g_intstackalloc: |
|
- .skip (CONFIG_ARCH_INTERRUPTSTACK & ~7) |
|
+ .skip ((CONFIG_ARCH_INTERRUPTSTACK + 4) & ~7) |
|
g_intstackbase: |
|
.size g_intstackalloc, .-g_intstackalloc |
|
#endif |
|
diff --git NuttX/nuttx/arch/arm/src/stm32/stm32_irq.c NuttX/nuttx/arch/arm/src/stm32/stm32_irq.c |
|
index ff40bf8..23313f5 100644 |
|
--- NuttX/nuttx/arch/arm/src/stm32/stm32_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/stm32/stm32_irq.c |
|
@@ -310,16 +310,6 @@ void up_irqinitialize(void) |
|
putreg32(0xffffffff, NVIC_IRQ_CLEAR(i)); |
|
} |
|
|
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- { |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
- } |
|
-#endif |
|
- |
|
/* The standard location for the vector table is at the beginning of FLASH |
|
* at address 0x0800:0000. If we are using the STMicro DFU bootloader, then |
|
* the vector table will be offset to a different location in FLASH and we |
|
diff --git NuttX/nuttx/arch/arm/src/stm32f7/stm32_irq.c NuttX/nuttx/arch/arm/src/stm32f7/stm32_irq.c |
|
index 758f32b..2a61490 100644 |
|
--- NuttX/nuttx/arch/arm/src/stm32f7/stm32_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/stm32f7/stm32_irq.c |
|
@@ -415,16 +415,6 @@ void up_irqinitialize(void) |
|
putreg32(0, regaddr); |
|
} |
|
|
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- { |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
- } |
|
-#endif |
|
- |
|
/* Make sure that we are using the correct vector table. The default |
|
* vector address is 0x0000:0000 but if we are executing code that is |
|
* positioned in SRAM or in external FLASH, then we may need to reset |
|
diff --git NuttX/nuttx/arch/arm/src/stm32l4/stm32l4_irq.c NuttX/nuttx/arch/arm/src/stm32l4/stm32l4_irq.c |
|
index 720c05e..d9aeffd 100644 |
|
--- NuttX/nuttx/arch/arm/src/stm32l4/stm32l4_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/stm32l4/stm32l4_irq.c |
|
@@ -304,16 +304,6 @@ void up_irqinitialize(void) |
|
putreg32(0xffffffff, NVIC_IRQ_CLEAR(i)); |
|
} |
|
|
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- { |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
- } |
|
-#endif |
|
- |
|
/* The standard location for the vector table is at the beginning of FLASH |
|
* at address 0x0800:0000. If we are using the STMicro DFU bootloader, then |
|
* the vector table will be offset to a different location in FLASH and we |
|
diff --git NuttX/nuttx/arch/arm/src/tiva/tiva_vectors.S NuttX/nuttx/arch/arm/src/tiva/tiva_vectors.S |
|
index 4f56269..943581c 100644 |
|
--- NuttX/nuttx/arch/arm/src/tiva/tiva_vectors.S |
|
+++ NuttX/nuttx/arch/arm/src/tiva/tiva_vectors.S |
|
@@ -339,7 +339,7 @@ exception_common: |
|
* |
|
* Here: |
|
* r0 = Address of the register save area |
|
- |
|
+ |
|
* NOTE: It is a requirement that up_restorefpu() preserve the value of |
|
* r0! |
|
*/ |
|
@@ -459,7 +459,7 @@ exception_common: |
|
.global g_intstackbase |
|
.align 8 |
|
g_intstackalloc: |
|
- .skip (CONFIG_ARCH_INTERRUPTSTACK & ~7) |
|
+ .skip ((CONFIG_ARCH_INTERRUPTSTACK + 4) & ~7) |
|
g_intstackbase: |
|
.size g_intstackalloc, .-g_intstackalloc |
|
#endif |
|
diff --git NuttX/nuttx/arch/arm/src/tms570/tms570_irq.c NuttX/nuttx/arch/arm/src/tms570/tms570_irq.c |
|
index da9f8c5..be7cb05 100644 |
|
--- NuttX/nuttx/arch/arm/src/tms570/tms570_irq.c |
|
+++ NuttX/nuttx/arch/arm/src/tms570/tms570_irq.c |
|
@@ -115,14 +115,6 @@ void up_irqinitialize(void) |
|
FAR uintptr_t *vimram; |
|
int i; |
|
|
|
- /* Colorize the interrupt stack for debug purposes */ |
|
- |
|
-#if defined(CONFIG_STACK_COLORATION) && CONFIG_ARCH_INTERRUPTSTACK > 3 |
|
- size_t intstack_size = (CONFIG_ARCH_INTERRUPTSTACK & ~3); |
|
- up_stack_color((FAR void *)((uintptr_t)&g_intstackbase - intstack_size), |
|
- intstack_size); |
|
-#endif |
|
- |
|
/* Initialize VIM RAM vectors. These vectors are not used in the current |
|
* interrupt handler logic. |
|
*/
|
|
|