18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * OpenRISC Linux 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Linux architectural port borrowing liberally from similar works of 68c2ecf20Sopenharmony_ci * others. All original copyrights apply as per the original source 78c2ecf20Sopenharmony_ci * declaration. 88c2ecf20Sopenharmony_ci * 98c2ecf20Sopenharmony_ci * OpenRISC implementation: 108c2ecf20Sopenharmony_ci * Copyright (C) 2003 Matjaz Breskvar <phoenix@bsemi.com> 118c2ecf20Sopenharmony_ci * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se> 128c2ecf20Sopenharmony_ci * et al. 138c2ecf20Sopenharmony_ci */ 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci#ifndef __ASM_OPENRISC_SPINLOCK_H 168c2ecf20Sopenharmony_ci#define __ASM_OPENRISC_SPINLOCK_H 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ci#include <asm/qspinlock.h> 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci#include <asm/qrwlock.h> 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci#define arch_read_lock_flags(lock, flags) arch_read_lock(lock) 238c2ecf20Sopenharmony_ci#define arch_write_lock_flags(lock, flags) arch_write_lock(lock) 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci#define arch_spin_relax(lock) cpu_relax() 268c2ecf20Sopenharmony_ci#define arch_read_relax(lock) cpu_relax() 278c2ecf20Sopenharmony_ci#define arch_write_relax(lock) cpu_relax() 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ci#endif 31