23 lines
440 B
C
23 lines
440 B
C
#ifndef __ASM_SH_SPINLOCK_TYPES_H
|
|
#define __ASM_SH_SPINLOCK_TYPES_H
|
|
|
|
#ifndef __LINUX_SPINLOCK_TYPES_H
|
|
# error "please don't include this file directly"
|
|
#endif
|
|
|
|
typedef struct {
|
|
volatile unsigned long lock;
|
|
} raw_spinlock_t;
|
|
|
|
#define __SPIN_LOCK_UNLOCKED { 0 }
|
|
|
|
typedef struct {
|
|
raw_spinlock_t lock;
|
|
atomic_t counter;
|
|
} raw_rwlock_t;
|
|
|
|
#define RW_LOCK_BIAS 0x01000000
|
|
#define __RAW_RW_LOCK_UNLOCKED { { 0 }, { RW_LOCK_BIAS } }
|
|
|
|
#endif
|