diff options
author | Dave Hylands <dhylands@gmail.com> | 2014-08-24 12:21:12 -0700 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-08-25 17:38:55 +0100 |
commit | 8c0add4eeeb77b8b4c6cb5a0313e6f06b0a62d32 (patch) | |
tree | 3c72a1ab25ea8af165fdbc1b432662da6845bded | |
parent | e5cbb70328239e58c820938eccd51f3c735fc312 (diff) | |
download | micropython-8c0add4eeeb77b8b4c6cb5a0313e6f06b0a62d32.tar.gz micropython-8c0add4eeeb77b8b4c6cb5a0313e6f06b0a62d32.zip |
Add save/restore_irq
Factored irq functions into a separate file.
-rw-r--r-- | teensy/teensy_hal.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/teensy/teensy_hal.h b/teensy/teensy_hal.h index d7589975c7..ffbb70bcc3 100644 --- a/teensy/teensy_hal.h +++ b/teensy/teensy_hal.h @@ -119,6 +119,19 @@ __attribute__(( always_inline )) static inline void __WFI(void) __asm volatile ("wfi"); } +__attribute__(( always_inline )) static inline uint32_t __get_PRIMASK(void) +{ + uint32_t result; + __asm volatile ("MRS %0, primask" : "=r" (result)); + return(result); +} + +__attribute__(( always_inline )) static inline void __set_PRIMASK(uint32_t priMask) +{ + __asm volatile ("MSR primask, %0" : : "r" (priMask) : "memory"); +} + + uint32_t HAL_GetTick(void); void HAL_Delay(uint32_t Delay); |