From 8928ae380b7a75b4b23b021b706fa77b3e8d4af5 Mon Sep 17 00:00:00 2001 From: Raul E Rangel Date: Mon, 22 Nov 2021 10:35:40 -0700 Subject: [PATCH] arch/{arm,arm64,ppc64,riscv}: Add noop cpu_relax The cpu_relax method is defined for x86. This CL adds a no-op method so that it can be used in common code. BUG=b:179699789 TEST=none Signed-off-by: Raul E Rangel Change-Id: Ifcb4546ceb2894eeb37589d0282b7e076d7a4747 Reviewed-on: https://review.coreboot.org/c/coreboot/+/59546 Tested-by: build bot (Jenkins) Reviewed-by: Julius Werner --- src/arch/arm/include/armv4/arch/cpu.h | 2 ++ src/arch/arm/include/armv7/arch/cpu.h | 2 ++ src/arch/arm64/include/armv8/arch/cpu.h | 3 +++ src/arch/ppc64/include/arch/cpu.h | 2 ++ src/arch/riscv/include/arch/cpu.h | 2 ++ 5 files changed, 11 insertions(+) diff --git a/src/arch/arm/include/armv4/arch/cpu.h b/src/arch/arm/include/armv4/arch/cpu.h index 8a1b00ebeb..4c6cdf883e 100644 --- a/src/arch/arm/include/armv4/arch/cpu.h +++ b/src/arch/arm/include/armv4/arch/cpu.h @@ -3,6 +3,8 @@ #ifndef __ARCH_CPU_H__ #define __ARCH_CPU_H__ +static inline void cpu_relax(void) { } + #define asmlinkage #endif /* __ARCH_CPU_H__ */ diff --git a/src/arch/arm/include/armv7/arch/cpu.h b/src/arch/arm/include/armv7/arch/cpu.h index 3f1f1ae811..e3154e9488 100644 --- a/src/arch/arm/include/armv7/arch/cpu.h +++ b/src/arch/arm/include/armv7/arch/cpu.h @@ -6,6 +6,8 @@ #include #include +static inline void cpu_relax(void) { } + #define asmlinkage struct cpu_driver { diff --git a/src/arch/arm64/include/armv8/arch/cpu.h b/src/arch/arm64/include/armv8/arch/cpu.h index 15b2065443..e5e8a7cad3 100644 --- a/src/arch/arm64/include/armv8/arch/cpu.h +++ b/src/arch/arm64/include/armv8/arch/cpu.h @@ -3,6 +3,9 @@ #ifndef __ARCH_CPU_H__ #define __ARCH_CPU_H__ +/* TODO: Implement using SEV/WFE if this is ever actually used. */ +static inline void cpu_relax(void) { } + #define asmlinkage struct cpu_driver { }; diff --git a/src/arch/ppc64/include/arch/cpu.h b/src/arch/ppc64/include/arch/cpu.h index 5e5ba30ab5..638406d640 100644 --- a/src/arch/ppc64/include/arch/cpu.h +++ b/src/arch/ppc64/include/arch/cpu.h @@ -5,6 +5,8 @@ #include +static inline void cpu_relax(void) { } + #define asmlinkage struct cpu_driver { diff --git a/src/arch/riscv/include/arch/cpu.h b/src/arch/riscv/include/arch/cpu.h index 7cf94615a6..d51d8a9200 100644 --- a/src/arch/riscv/include/arch/cpu.h +++ b/src/arch/riscv/include/arch/cpu.h @@ -6,6 +6,8 @@ #include #include +static inline void cpu_relax(void) { } + #define asmlinkage struct cpu_driver {