aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2014-05-03 07:58:19 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2014-05-03 07:58:19 +0000
commit4afa0b98dff9eac6a94c104acf900e15147d2da3 (patch)
tree4d58d0ddc1cdb13a9161029237321d98ad7b4a51
parent3b7d4e76af654868280e58f90bd16fd532f00c74 (diff)
downloadChibiOS-4afa0b98dff9eac6a94c104acf900e15147d2da3.tar.gz
ChibiOS-4afa0b98dff9eac6a94c104acf900e15147d2da3.tar.bz2
ChibiOS-4afa0b98dff9eac6a94c104acf900e15147d2da3.zip
Fixed bug #494.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@6908 35acf78f-673a-0410-8e92-d51de3d6d3f4
-rw-r--r--os/ports/GCC/ARMCMx/chcore_v6m.h4
-rw-r--r--os/ports/GCC/ARMCMx/chcore_v7m.h4
-rw-r--r--readme.txt2
3 files changed, 6 insertions, 4 deletions
diff --git a/os/ports/GCC/ARMCMx/chcore_v6m.h b/os/ports/GCC/ARMCMx/chcore_v6m.h
index 955778f42..30791f792 100644
--- a/os/ports/GCC/ARMCMx/chcore_v6m.h
+++ b/os/ports/GCC/ARMCMx/chcore_v6m.h
@@ -66,13 +66,13 @@
* @brief Per-thread stack overhead for interrupts servicing.
* @details This constant is used in the calculation of the correct working
* area size.
- * @note In this port this value is conservatively set to 32 because the
+ * @note In this port this value is conservatively set to 64 because the
* function @p chSchDoReschedule() can have a stack frame, especially
* with compiler optimizations disabled. The value can be reduced
* when compiler optimizations are enabled.
*/
#if !defined(PORT_INT_REQUIRED_STACK)
-#define PORT_INT_REQUIRED_STACK 32
+#define PORT_INT_REQUIRED_STACK 64
#endif
/**
diff --git a/os/ports/GCC/ARMCMx/chcore_v7m.h b/os/ports/GCC/ARMCMx/chcore_v7m.h
index 1afdb42f9..ee1e37731 100644
--- a/os/ports/GCC/ARMCMx/chcore_v7m.h
+++ b/os/ports/GCC/ARMCMx/chcore_v7m.h
@@ -63,13 +63,13 @@
* @brief Per-thread stack overhead for interrupts servicing.
* @details This constant is used in the calculation of the correct working
* area size.
- * @note In this port this value is conservatively set to 32 because the
+ * @note In this port this value is conservatively set to 64 because the
* function @p chSchDoReschedule() can have a stack frame, especially
* with compiler optimizations disabled. The value can be reduced
* when compiler optimizations are enabled.
*/
#if !defined(PORT_INT_REQUIRED_STACK)
-#define PORT_INT_REQUIRED_STACK 32
+#define PORT_INT_REQUIRED_STACK 64
#endif
/**
diff --git a/readme.txt b/readme.txt
index bd2ce2f3c..4315610fd 100644
--- a/readme.txt
+++ b/readme.txt
@@ -89,6 +89,8 @@
*****************************************************************************
*** 2.7.0 ***
+- FIX: Fixed insufficient ISR-reserved stack in ARMCMx port when
+ optimizations are disabled (bug #494)(backported to 2.6.4).
- FIX: Fixed configuration descriptors larger than 127 bytes don't
work (bug #373)(backported to 2.6.4).
- FIX: Fixed invalid cast in PWM_FRACTION_TO_WIDTH() macro (bug #487)