65 #include <inc/hw_types.h>
81 #define CPUcpsid NOROM_CPUcpsid
82 #define CPUprimask NOROM_CPUprimask
83 #define CPUcpsie NOROM_CPUcpsie
84 #define CPUbasepriGet NOROM_CPUbasepriGet
85 #define CPUdelay NOROM_CPUdelay
142 #if defined(__IAR_SYSTEMS_ICC__) || defined(DOXYGEN)
151 #elif defined(__CC_ARM) || defined(__ARMCC_VERSION)
152 __asm __STATIC_INLINE
void
161 #elif defined(__TI_COMPILER_VERSION__)
171 __STATIC_INLINE
void __attribute__((always_inline))
191 #if defined(__IAR_SYSTEMS_ICC__) || defined(DOXYGEN)
200 #elif defined(__CC_ARM) || defined(__ARMCC_VERSION)
201 __asm __STATIC_INLINE
void
210 #elif defined(__TI_COMPILER_VERSION__)
220 __STATIC_INLINE
void __attribute__((always_inline))
240 #if defined(__IAR_SYSTEMS_ICC__) || defined(DOXYGEN)
249 #elif defined(__CC_ARM) || defined(__ARMCC_VERSION)
250 __asm __STATIC_INLINE
void
259 #elif defined(__TI_COMPILER_VERSION__)
269 __STATIC_INLINE
void __attribute__((always_inline))
292 #if defined(__IAR_SYSTEMS_ICC__) || defined(DOXYGEN)
299 __asm(
" msr BASEPRI, r0\n");
301 #elif defined(__CC_ARM) || defined(__ARMCC_VERSION)
302 __asm __STATIC_INLINE
void
311 #elif defined(__TI_COMPILER_VERSION__)
318 __asm(
" msr BASEPRI, r0\n");
321 #pragma GCC diagnostic push
322 #pragma GCC diagnostic ignored "-Wattributes"
323 __STATIC_INLINE
void __attribute__ ((naked))
329 __asm(
" msr BASEPRI, r0\n"
332 #pragma GCC diagnostic pop
362 extern void CPUdelay(uint32_t ui32Count);
370 #if !defined(DRIVERLIB_NOROM) && !defined(DOXYGEN)
374 #define CPUcpsid ROM_CPUcpsid
376 #ifdef ROM_CPUprimask
378 #define CPUprimask ROM_CPUprimask
382 #define CPUcpsie ROM_CPUcpsie
384 #ifdef ROM_CPUbasepriGet
386 #define CPUbasepriGet ROM_CPUbasepriGet
390 #define CPUdelay ROM_CPUdelay
uint32_t CPUprimask(void)
Get the current interrupt state.
static void CPUbasepriSet(uint32_t ui32NewBasepri)
Update the interrupt priority disable level.
static void CPUwfi(void)
Wait for interrupt.
uint32_t CPUcpsid(void)
Disable all external interrupts.
static void CPUwfe(void)
Wait for event.
uint32_t CPUcpsie(void)
Enable all external interrupts.
static void CPUsev(void)
Send event.
uint32_t CPUbasepriGet(void)
Get the interrupt priority disable level.
void CPUdelay(uint32_t ui32Count)
Provide a small delay.