diff options
author | Jisheng Zhang <[email protected]> | 2023-01-29 01:28:45 +0800 |
---|---|---|
committer | Palmer Dabbelt <[email protected]> | 2023-01-31 23:29:34 -0800 |
commit | 191b27c7c0e8c1a587832f8680132564743af76c (patch) | |
tree | e8bde942e8caaa49ead8676a59b8e55e1f4a39db | |
parent | abcc445acdbeb561e881fcbd8e1dc4684628cc9b (diff) |
riscv: cpufeature: detect RISCV_ALTERNATIVES_EARLY_BOOT earlier
Currently riscv_cpufeature_patch_func() does nothing at the
RISCV_ALTERNATIVES_EARLY_BOOT stage. Add a check to detect whether we
are in this stage and exit early. This will allow us to use
riscv_cpufeature_patch_func() for scanning of all ISA extensions.
Signed-off-by: Jisheng Zhang <[email protected]>
Reviewed-by: Andrew Jones <[email protected]>
Reviewed-by: Heiko Stuebner <[email protected]>
Reviewed-by: Conor Dooley <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Palmer Dabbelt <[email protected]>
-rw-r--r-- | arch/riscv/kernel/cpufeature.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/riscv/kernel/cpufeature.c b/arch/riscv/kernel/cpufeature.c index 62443fd32fa7..59e20cad1b3d 100644 --- a/arch/riscv/kernel/cpufeature.c +++ b/arch/riscv/kernel/cpufeature.c @@ -330,6 +330,9 @@ void __init_or_module riscv_cpufeature_patch_func(struct alt_entry *begin, struct alt_entry *alt; u32 tmp; + if (stage == RISCV_ALTERNATIVES_EARLY_BOOT) + return; + for (alt = begin; alt < end; alt++) { if (alt->vendor_id != 0) continue; |