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