diff options
| author | hathach <[email protected]> | 2026-03-05 23:24:14 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2026-03-05 23:24:14 +0700 |
| commit | 61e4b9ce3fba2fea731396c56eee1c7b5a2f5338 (patch) | |
| tree | 8a9e326a544a34f7a0999a8c5b11bee4307314e2 /src/osal | |
| parent | 97476872aa841fcd9cd622e4082d6c57b183c67f (diff) | |
add IAR warning flags to cmake build and fix them
Diffstat (limited to 'src/osal')
| -rw-r--r-- | src/osal/osal_freertos.h | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/osal/osal_freertos.h b/src/osal/osal_freertos.h index 32ee2d55c..db724179d 100644 --- a/src/osal/osal_freertos.h +++ b/src/osal/osal_freertos.h @@ -141,11 +141,12 @@ TU_ATTR_ALWAYS_INLINE static inline void osal_spin_init(osal_spinlock_t *ctx) { TU_ATTR_ALWAYS_INLINE static inline void osal_spin_lock(osal_spinlock_t *ctx, bool in_isr) { if (in_isr) { - if (TUP_MCU_MULTIPLE_CORE == 0) { - (void) ctx; - return; // single core MCU does not need to lock in ISR - } + #if TUP_MCU_MULTIPLE_CORE *ctx = taskENTER_CRITICAL_FROM_ISR(); + #else + (void) ctx; + return; // single core MCU does not need to lock in ISR + #endif } else { taskENTER_CRITICAL(); } @@ -153,11 +154,12 @@ TU_ATTR_ALWAYS_INLINE static inline void osal_spin_lock(osal_spinlock_t *ctx, bo TU_ATTR_ALWAYS_INLINE static inline void osal_spin_unlock(osal_spinlock_t *ctx, bool in_isr) { if (in_isr) { - if (TUP_MCU_MULTIPLE_CORE == 0) { - (void) ctx; - return; // single core MCU does not need to lock in ISR - } + #if TUP_MCU_MULTIPLE_CORE taskEXIT_CRITICAL_FROM_ISR(*ctx); + #else + (void) ctx; + return; // single core MCU does not need to lock in ISR + #endif } else { taskEXIT_CRITICAL(); } |
