of: MSI: Simplify irqdomain lookup
[linux/fpc-iii.git] / arch / arm / include / asm / mcs_spinlock.h
blobf652ad65840a44c4dbd0e5b3bd26d3bab7d09f9d
1 #ifndef __ASM_MCS_LOCK_H
2 #define __ASM_MCS_LOCK_H
4 #ifdef CONFIG_SMP
5 #include <asm/spinlock.h>
7 /* MCS spin-locking. */
8 #define arch_mcs_spin_lock_contended(lock) \
9 do { \
10 /* Ensure prior stores are observed before we enter wfe. */ \
11 smp_mb(); \
12 while (!(smp_load_acquire(lock))) \
13 wfe(); \
14 } while (0) \
16 #define arch_mcs_spin_unlock_contended(lock) \
17 do { \
18 smp_store_release(lock, 1); \
19 dsb_sev(); \
20 } while (0)
22 #endif /* CONFIG_SMP */
23 #endif /* __ASM_MCS_LOCK_H */