diff options
author | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2013-08-09 07:25:16 +0000 |
---|---|---|
committer | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2013-08-09 07:25:16 +0000 |
commit | 4b363412c9348457ebce2cf96f25a9c2802b0116 (patch) | |
tree | 9e1f39ded7ef58cec45de46b05b64cf7e7c66c00 /os | |
parent | 9728e44141592787faff89d858ffba528de70f61 (diff) | |
download | ChibiOS-4b363412c9348457ebce2cf96f25a9c2802b0116.tar.gz ChibiOS-4b363412c9348457ebce2cf96f25a9c2802b0116.tar.bz2 ChibiOS-4b363412c9348457ebce2cf96f25a9c2802b0116.zip |
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/branches/kernel_3_dev@6106 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os')
-rw-r--r-- | os/kernel/ports/ARMCMx/chcore_v7m.h | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/os/kernel/ports/ARMCMx/chcore_v7m.h b/os/kernel/ports/ARMCMx/chcore_v7m.h index 22f81d00a..a0a2680b7 100644 --- a/os/kernel/ports/ARMCMx/chcore_v7m.h +++ b/os/kernel/ports/ARMCMx/chcore_v7m.h @@ -121,18 +121,6 @@ #endif
/**
- * @brief SYSTICK handler priority.
- * @note The default SYSTICK handler priority is calculated as the priority
- * level in the middle of the numeric priorities range.
- */
-#if !defined(CORTEX_PRIORITY_SYSTICK)
-#define CORTEX_PRIORITY_SYSTICK (CORTEX_PRIORITY_LEVELS >> 1)
-#elif !CORTEX_IS_VALID_PRIORITY(CORTEX_PRIORITY_SYSTICK)
-/* If it is externally redefined then better perform a validity check on it.*/
-#error "invalid priority level specified for CORTEX_PRIORITY_SYSTICK"
-#endif
-
-/**
* @brief FPU support in context switch.
* @details Activating this option activates the FPU support in the kernel.
*/
@@ -147,6 +135,8 @@ /**
* @brief Simplified priority handling flag.
* @details Activating this option makes the Kernel work in compact mode.
+ * In compact mode interrupts are disabled globally instead of
+ * raising the priority mask to some intermediate level.
*/
#if !defined(CORTEX_SIMPLIFIED_PRIORITY)
#define CORTEX_SIMPLIFIED_PRIORITY FALSE
@@ -194,7 +184,6 @@ /**
* @brief BASEPRI level within kernel lock.
- * @note In compact kernel mode this constant value is enforced to zero.
*/
#define CORTEX_BASEPRI_KERNEL \
CORTEX_PRIO_MASK(CORTEX_MAX_KERNEL_PRIORITY)
@@ -382,7 +371,7 @@ struct context { #define port_switch(ntp, otp) _port_switch(ntp, otp)
#else
#define port_switch(ntp, otp) { \
- register struct intctx *r13 asm ("r13"); \
+ struct intctx *r13 = __get_PSP(); \
if ((stkalign_t *)(r13 - 1) < otp->p_stklimit) \
chDbgPanic("stack overflow"); \
_port_switch(ntp, otp); \
|