Add Zawrs support and use it for spinlocks
From: Heiko Stuebner <heiko.stuebner@...> Date: Sun, 21 May 2023 13:39:54 +0200
Zawrs [0] was ratified in november 2022 [1], so I've resurrect the patch adding Zawrs support for spinlocks and adapted it to recent kernel changes. Also incorporated are the nice comments David Laight provided on v2. Changes since v2: - Rebase on top of 6.4-rc1 - Adapt to changed alternatives Kconfig handling - Adapt to changed cpufeature extension handling - Address review comments from David Laight - better handling for 32/64bit cases (less ifdefery) - less macros calling macros - don't duplicate __smp_load_reserved_relaxed in __smp_load_reserved_aquire Changes since v1: - Fixing type checking code for 32/64-bit values - Adjustments according to the specification change - Adding "depends on !XIP_KERNEL" to RISCV_ISA_ZAWRS [0] https://github.com/riscv/riscv-zawrs/blob/main/zawrs.adoc [1] https://github.com/riscv/riscv-zawrs/commit/9ff54f7e7fcd95cf1b111d2e54276ff1183bcd37 Christoph Müllner (1): riscv: Add Zawrs support for spinlocks Heiko Stuebner (1): riscv: don't include kernel.h into alternative.h arch/riscv/Kconfig | 10 +++++ arch/riscv/include/asm/alternative.h | 1 - arch/riscv/include/asm/barrier.h | 64 ++++++++++++++++++++++++++++ arch/riscv/include/asm/errata_list.h | 14 ++++++ arch/riscv/include/asm/hwcap.h | 1 + arch/riscv/kernel/cpu.c | 1 + arch/riscv/kernel/cpufeature.c | 1 + 7 files changed, 91 insertions(+), 1 deletion(-) -- 2.39.0
Patches in this set
- [0001] riscv: don't include kernel.h into alternative.h (raw)
- [0002] riscv: Add Zawrs support for spinlocks (raw)
Statistics
- 2 individual patches
- 91 lines added
- 1 lines removed