blob: 9b7560db06ca9264cf1547624d3fee95fcfd97ac [file] [log] [blame]
Ingo Molnarfb1c8f92005-09-10 00:25:56 -07001#ifndef __ASM_SH_SPINLOCK_TYPES_H
2#define __ASM_SH_SPINLOCK_TYPES_H
3
4#ifndef __LINUX_SPINLOCK_TYPES_H
5# error "please don't include this file directly"
6#endif
7
8typedef struct {
Paul Mundt8a467a52007-08-22 10:34:31 +09009 volatile unsigned int lock;
Thomas Gleixner445c8952009-12-02 19:49:50 +010010} arch_spinlock_t;
Ingo Molnarfb1c8f92005-09-10 00:25:56 -070011
Thomas Gleixneredc35bd2009-12-03 12:38:57 +010012#define __ARCH_SPIN_LOCK_UNLOCKED { 1 }
Ingo Molnarfb1c8f92005-09-10 00:25:56 -070013
14typedef struct {
Paul Mundt8a467a52007-08-22 10:34:31 +090015 volatile unsigned int lock;
Thomas Gleixnerfb3a6bb2009-12-03 20:01:19 +010016} arch_rwlock_t;
Ingo Molnarfb1c8f92005-09-10 00:25:56 -070017
18#define RW_LOCK_BIAS 0x01000000
Thomas Gleixnerfb3a6bb2009-12-03 20:01:19 +010019#define __ARCH_RW_LOCK_UNLOCKED { RW_LOCK_BIAS }
Ingo Molnarfb1c8f92005-09-10 00:25:56 -070020
21#endif