diff options
author | Michael Hope <michael.hope@linaro.org> | 2010-10-10 19:58:58 +1300 |
---|---|---|
committer | Michael Hope <michael.hope@linaro.org> | 2010-10-10 19:58:58 +1300 |
commit | 76e8745d80a822d9ae9a017c8f68a2f7f20695fc (patch) | |
tree | 486198ddd5aacea454f17a0f42514be2ede3999e | |
parent | 6fcd4cd306dbecf56f5b0b506a3c23762d1219fa (diff) | |
download | librambutan-76e8745d80a822d9ae9a017c8f68a2f7f20695fc.tar.gz librambutan-76e8745d80a822d9ae9a017c8f68a2f7f20695fc.zip |
Make systick.h C++ safe. Expose the sys tick count via systick.h and remove other externs.
-rw-r--r-- | libmaple/systick.c | 5 | ||||
-rw-r--r-- | libmaple/systick.h | 9 | ||||
-rw-r--r-- | wirish/time.h | 2 |
3 files changed, 8 insertions, 8 deletions
diff --git a/libmaple/systick.c b/libmaple/systick.c index 12a3e22..2b09a64 100644 --- a/libmaple/systick.c +++ b/libmaple/systick.c @@ -39,7 +39,7 @@ #define SYSTICK_TICKINT BIT(1) // Interrupt on systick countdown #define SYSTICK_ENABLE BIT(0) // Turn on the counter -volatile uint32 systick_timer_millis = 0; +volatile uint32 systick_timer_millis; void systick_init(uint32 reload_val) { /* Set the reload counter to tick every 1ms */ @@ -65,8 +65,7 @@ void systick_resume() { SYSTICK_TICKINT); } +/** SysTick interrupt handler. Bumps up the tick counter. */ void SysTickHandler(void) { systick_timer_millis++; } - - diff --git a/libmaple/systick.h b/libmaple/systick.h index 7ec8497..ae1268a 100644 --- a/libmaple/systick.h +++ b/libmaple/systick.h @@ -33,14 +33,17 @@ #include "libmaple.h" +#ifdef __cplusplus +extern "C"{ +#endif + #define SYSTICK_CSR 0xE000E010 // Control and status register #define SYSTICK_CNT 0xE000E018 // Current value register #define SYSTICK_CSR_COUNTFLAG BIT(16) -#ifdef __cplusplus -extern "C"{ -#endif +/** System elapsed time in milliseconds */ +volatile uint32 systick_timer_millis; void systick_init(uint32 reload_val); void systick_disable(); diff --git a/wirish/time.h b/wirish/time.h index 742f28d..2a561d3 100644 --- a/wirish/time.h +++ b/wirish/time.h @@ -40,8 +40,6 @@ extern "C"{ #define US_PER_MS 1000 -extern volatile uint32 systick_timer_millis; - /* time in milliseconds since boot */ static inline uint32 millis(void) { return systick_timer_millis; |