From 8c0add4eeeb77b8b4c6cb5a0313e6f06b0a62d32 Mon Sep 17 00:00:00 2001 From: Dave Hylands Date: Sun, 24 Aug 2014 12:21:12 -0700 Subject: [PATCH] Add save/restore_irq Factored irq functions into a separate file. --- teensy/teensy_hal.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) 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);