Commit b5f82176 authored by Stafford Horne's avatar Stafford Horne

openrisc: use qspinlocks and qrwlocks

Enable OpenRISC to use qspinlocks and qrwlocks for upcoming SMP support.
Signed-off-by: default avatarStafford Horne <shorne@gmail.com>
parent 489e0f80
...@@ -28,6 +28,8 @@ config OPENRISC ...@@ -28,6 +28,8 @@ config OPENRISC
select OR1K_PIC select OR1K_PIC
select CPU_NO_EFFICIENT_FFS if !OPENRISC_HAVE_INST_FF1 select CPU_NO_EFFICIENT_FFS if !OPENRISC_HAVE_INST_FF1
select NO_BOOTMEM select NO_BOOTMEM
select ARCH_USE_QUEUED_SPINLOCKS
select ARCH_USE_QUEUED_RWLOCKS
config CPU_BIG_ENDIAN config CPU_BIG_ENDIAN
def_bool y def_bool y
......
...@@ -28,6 +28,10 @@ generic-y += module.h ...@@ -28,6 +28,10 @@ generic-y += module.h
generic-y += pci.h generic-y += pci.h
generic-y += percpu.h generic-y += percpu.h
generic-y += preempt.h generic-y += preempt.h
generic-y += qspinlock_types.h
generic-y += qspinlock.h
generic-y += qrwlock_types.h
generic-y += qrwlock.h
generic-y += sections.h generic-y += sections.h
generic-y += segment.h generic-y += segment.h
generic-y += string.h generic-y += string.h
......
...@@ -19,6 +19,16 @@ ...@@ -19,6 +19,16 @@
#ifndef __ASM_OPENRISC_SPINLOCK_H #ifndef __ASM_OPENRISC_SPINLOCK_H
#define __ASM_OPENRISC_SPINLOCK_H #define __ASM_OPENRISC_SPINLOCK_H
#error "or32 doesn't do SMP yet" #include <asm/qspinlock.h>
#include <asm/qrwlock.h>
#define arch_read_lock_flags(lock, flags) arch_read_lock(lock)
#define arch_write_lock_flags(lock, flags) arch_write_lock(lock)
#define arch_spin_relax(lock) cpu_relax()
#define arch_read_relax(lock) cpu_relax()
#define arch_write_relax(lock) cpu_relax()
#endif #endif
#ifndef _ASM_OPENRISC_SPINLOCK_TYPES_H
#define _ASM_OPENRISC_SPINLOCK_TYPES_H
#include <asm/qspinlock_types.h>
#include <asm/qrwlock_types.h>
#endif /* _ASM_OPENRISC_SPINLOCK_TYPES_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment