1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef __SPARC_SPINLOCK_TYPES_H 3#define __SPARC_SPINLOCK_TYPES_H 4 5#ifdef CONFIG_QUEUED_SPINLOCKS 6#include <asm-generic/qspinlock_types.h> 7#else 8 9typedef struct { 10 volatile unsigned char lock; 11} arch_spinlock_t; 12 13#define __ARCH_SPIN_LOCK_UNLOCKED { 0 } 14#endif /* CONFIG_QUEUED_SPINLOCKS */ 15 16#ifdef CONFIG_QUEUED_RWLOCKS 17#include <asm-generic/qrwlock_types.h> 18#else 19typedef struct { 20 volatile unsigned int lock; 21} arch_rwlock_t; 22 23#define __ARCH_RW_LOCK_UNLOCKED { 0 } 24#endif /* CONFIG_QUEUED_RWLOCKS */ 25#endif 26