1 #ifndef __LINUX_SPINLOCK_H_ 2 #define __LINUX_SPINLOCK_H_ 3 4 #include <pthread.h> 5 #include <stdbool.h> 6 7 #define spinlock_t pthread_mutex_t 8 #define DEFINE_SPINLOCK(x) pthread_mutex_t x = PTHREAD_MUTEX_INITIALIZER; 9 10 #define spin_lock_irqsave(x, f) (void)f, pthread_mutex_lock(x) 11 #define spin_unlock_irqrestore(x, f) (void)f, pthread_mutex_unlock(x) 12 13 #define arch_spinlock_t pthread_mutex_t 14 #define __ARCH_SPIN_LOCK_UNLOCKED PTHREAD_MUTEX_INITIALIZER 15 16 static inline void arch_spin_lock(arch_spinlock_t *mutex) 17 { 18 pthread_mutex_lock(mutex); 19 } 20 21 static inline void arch_spin_unlock(arch_spinlock_t *mutex) 22 { 23 pthread_mutex_unlock(mutex); 24 } 25 26 static inline bool arch_spin_is_locked(arch_spinlock_t *mutex) 27 { 28 return true; 29 } 30 31 #endif 32