1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _ASM_IA64_SPINLOCK_TYPES_H 3 #define _ASM_IA64_SPINLOCK_TYPES_H 4 5 #ifndef __LINUX_SPINLOCK_TYPES_H 6 # error "please don't include this file directly" 7 #endif 8 9 typedef struct { 10 volatile unsigned int lock; 11 } arch_spinlock_t; 12 13 #define __ARCH_SPIN_LOCK_UNLOCKED { 0 } 14 15 typedef struct { 16 volatile unsigned int read_counter : 31; 17 volatile unsigned int write_lock : 1; 18 } arch_rwlock_t; 19 20 #define __ARCH_RW_LOCK_UNLOCKED { 0, 0 } 21 22 #endif