Commit | Line | Data |
---|---|---|
fb1c8f93 IM |
1 | #ifndef __ASM_SPINLOCK_TYPES_H |
2 | #define __ASM_SPINLOCK_TYPES_H | |
3 | ||
fb1c8f93 | 4 | typedef struct { |
14e256c1 MW |
5 | #ifdef CONFIG_PA20 |
6 | volatile unsigned int slock; | |
edc35bd7 | 7 | # define __ARCH_SPIN_LOCK_UNLOCKED { 1 } |
14e256c1 | 8 | #else |
fb1c8f93 | 9 | volatile unsigned int lock[4]; |
edc35bd7 | 10 | # define __ARCH_SPIN_LOCK_UNLOCKED { { 1, 1, 1, 1 } } |
14e256c1 | 11 | #endif |
445c8951 | 12 | } arch_spinlock_t; |
fb1c8f93 | 13 | |
fb1c8f93 | 14 | typedef struct { |
445c8951 | 15 | arch_spinlock_t lock; |
fb1c8f93 | 16 | volatile int counter; |
fb3a6bbc | 17 | } arch_rwlock_t; |
fb1c8f93 | 18 | |
fb3a6bbc | 19 | #define __ARCH_RW_LOCK_UNLOCKED { __ARCH_SPIN_LOCK_UNLOCKED, 0 } |
fb1c8f93 IM |
20 | |
21 | #endif |