aboutsummaryrefslogtreecommitdiffstats
path: root/os/ports/GCC
diff options
context:
space:
mode:
Diffstat (limited to 'os/ports/GCC')
-rw-r--r--os/ports/GCC/ARMCMx/STM32F3xx/port.mk1
-rw-r--r--os/ports/GCC/ARMCMx/chcore_v7m.c4
-rw-r--r--os/ports/GCC/ARMCMx/chcore_v7m.h4
3 files changed, 9 insertions, 0 deletions
diff --git a/os/ports/GCC/ARMCMx/STM32F3xx/port.mk b/os/ports/GCC/ARMCMx/STM32F3xx/port.mk
index 09cc8dfd6..e4da1ad11 100644
--- a/os/ports/GCC/ARMCMx/STM32F3xx/port.mk
+++ b/os/ports/GCC/ARMCMx/STM32F3xx/port.mk
@@ -1,6 +1,7 @@
# List of the ChibiOS/RT Cortex-M4 STM32 port files.
PORTSRC = $(CHIBIOS)/os/ports/GCC/ARMCMx/crt0.c \
$(CHIBIOS)/os/ports/GCC/ARMCMx/STM32F3xx/vectors.c \
+ $(CHIBIOS)/os/ports/GCC/ARMCMx/STM32F3xx/chtimer.c \
${CHIBIOS}/os/ports/GCC/ARMCMx/chcore.c \
${CHIBIOS}/os/ports/GCC/ARMCMx/chcore_v7m.c \
${CHIBIOS}/os/ports/common/ARMCMx/nvic.c
diff --git a/os/ports/GCC/ARMCMx/chcore_v7m.c b/os/ports/GCC/ARMCMx/chcore_v7m.c
index 29d02761c..dfe2e2d5a 100644
--- a/os/ports/GCC/ARMCMx/chcore_v7m.c
+++ b/os/ports/GCC/ARMCMx/chcore_v7m.c
@@ -32,6 +32,7 @@
/* Port interrupt handlers. */
/*===========================================================================*/
+#if CH_CFG_TIMEDELTA == 0
/**
* @brief System Timer vector.
* @details This interrupt is used as system tick.
@@ -47,6 +48,7 @@ CH_IRQ_HANDLER(SysTickVector) {
CH_IRQ_EPILOGUE();
}
+#endif /* CH_CFG_TIMEDELTA == 0 */
#if !CORTEX_SIMPLIFIED_PRIORITY || defined(__DOXYGEN__)
/**
@@ -119,8 +121,10 @@ void _port_init(void) {
CORTEX_PRIORITY_MASK(CORTEX_PRIORITY_SVCALL));
nvicSetSystemHandlerPriority(HANDLER_PENDSV,
CORTEX_PRIORITY_MASK(CORTEX_PRIORITY_PENDSV));
+#if CH_CFG_TIMEDELTA == 0
nvicSetSystemHandlerPriority(HANDLER_SYSTICK,
CORTEX_PRIORITY_MASK(CORTEX_PRIORITY_SYSTICK));
+#endif
}
#if !CH_CFG_OPTIMIZE_SPEED
diff --git a/os/ports/GCC/ARMCMx/chcore_v7m.h b/os/ports/GCC/ARMCMx/chcore_v7m.h
index 8829872a9..8418139ff 100644
--- a/os/ports/GCC/ARMCMx/chcore_v7m.h
+++ b/os/ports/GCC/ARMCMx/chcore_v7m.h
@@ -518,6 +518,10 @@ extern "C" {
}
#endif
+#if CH_CFG_TIMEDELTA > 0
+#include "chtimer.h"
+#endif
+
#endif /* _FROM_ASM_ */
#endif /* _CHCORE_V7M_H_ */