Message ID | 20230711224600.10879-1-palmer@rivosinc.com |
---|---|
State | Accepted |
Commit | ab2dbc7accedc2e98eb7d8b8878d337e3b36c95d |
Headers | show |
Series | RISC-V: Don't include Zicsr or Zifencei in I from ACPI | expand |
On Tue, Jul 11, 2023 at 03:46:00PM -0700, Palmer Dabbelt wrote: > ACPI ISA strings are based on a specification after Zicsr and Zifencei > were split out of I, so we shouldn't be treating them as part of I. We > haven't release an ACPI-based kernel yet, so we don't need to worry > about compatibility with the old ISA strings. > > Fixes: 396c018332a1 ("RISC-V: cpufeature: Add ACPI support in riscv_fill_hwcap()") I think, if anything, this is actually: Fixes: 07edc32779e3 ("RISC-V: always report presence of extensions formerly part of the base ISA") Although my rationale was that if we get as far as here, then Zicsr and Zifencei are going to be enabled anyway so there is no harm in setting it for both. I probably should have been less of a cute hoor though. Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Cheers, Conor. > Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com> > --- > arch/riscv/kernel/cpufeature.c | 9 ++------- > 1 file changed, 2 insertions(+), 7 deletions(-) > > diff --git a/arch/riscv/kernel/cpufeature.c b/arch/riscv/kernel/cpufeature.c > index bdcf460ea53d..a8f66c015229 100644 > --- a/arch/riscv/kernel/cpufeature.c > +++ b/arch/riscv/kernel/cpufeature.c > @@ -317,19 +317,14 @@ void __init riscv_fill_hwcap(void) > #undef SET_ISA_EXT_MAP > } > > - /* > - * Linux requires the following extensions, so we may as well > - * always set them. > - */ > - set_bit(RISCV_ISA_EXT_ZICSR, isainfo->isa); > - set_bit(RISCV_ISA_EXT_ZIFENCEI, isainfo->isa); > - > /* > * These ones were as they were part of the base ISA when the > * port & dt-bindings were upstreamed, and so can be set > * unconditionally where `i` is in riscv,isa on DT systems. > */ > if (acpi_disabled) { > + set_bit(RISCV_ISA_EXT_ZICSR, isainfo->isa); > + set_bit(RISCV_ISA_EXT_ZIFENCEI, isainfo->isa); > set_bit(RISCV_ISA_EXT_ZICNTR, isainfo->isa); > set_bit(RISCV_ISA_EXT_ZIHPM, isainfo->isa); > } > -- > 2.40.1 > > > _______________________________________________ > linux-riscv mailing list > linux-riscv@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-riscv
On Tue, Jul 11, 2023 at 03:46:00PM -0700, Palmer Dabbelt wrote: > ACPI ISA strings are based on a specification after Zicsr and Zifencei > were split out of I, so we shouldn't be treating them as part of I. We > haven't release an ACPI-based kernel yet, so we don't need to worry > about compatibility with the old ISA strings. > > Fixes: 396c018332a1 ("RISC-V: cpufeature: Add ACPI support in riscv_fill_hwcap()") > Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com> > --- LGTM. I agree with Conor that Fixes tag should point to 07edc32779e3. Reviewed-by: Sunil V L <sunilvl@ventanamicro.com> Thanks, Sunil > arch/riscv/kernel/cpufeature.c | 9 ++------- > 1 file changed, 2 insertions(+), 7 deletions(-) > > diff --git a/arch/riscv/kernel/cpufeature.c b/arch/riscv/kernel/cpufeature.c > index bdcf460ea53d..a8f66c015229 100644 > --- a/arch/riscv/kernel/cpufeature.c > +++ b/arch/riscv/kernel/cpufeature.c > @@ -317,19 +317,14 @@ void __init riscv_fill_hwcap(void) > #undef SET_ISA_EXT_MAP > } > > - /* > - * Linux requires the following extensions, so we may as well > - * always set them. > - */ > - set_bit(RISCV_ISA_EXT_ZICSR, isainfo->isa); > - set_bit(RISCV_ISA_EXT_ZIFENCEI, isainfo->isa); > - > /* > * These ones were as they were part of the base ISA when the > * port & dt-bindings were upstreamed, and so can be set > * unconditionally where `i` is in riscv,isa on DT systems. > */ > if (acpi_disabled) { > + set_bit(RISCV_ISA_EXT_ZICSR, isainfo->isa); > + set_bit(RISCV_ISA_EXT_ZIFENCEI, isainfo->isa); > set_bit(RISCV_ISA_EXT_ZICNTR, isainfo->isa); > set_bit(RISCV_ISA_EXT_ZIHPM, isainfo->isa); > } > -- > 2.40.1 >
Hello: This patch was applied to riscv/linux.git (fixes) by Palmer Dabbelt <palmer@rivosinc.com>: On Tue, 11 Jul 2023 15:46:00 -0700 you wrote: > ACPI ISA strings are based on a specification after Zicsr and Zifencei > were split out of I, so we shouldn't be treating them as part of I. We > haven't release an ACPI-based kernel yet, so we don't need to worry > about compatibility with the old ISA strings. > > Fixes: 396c018332a1 ("RISC-V: cpufeature: Add ACPI support in riscv_fill_hwcap()") > Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com> > > [...] Here is the summary with links: - RISC-V: Don't include Zicsr or Zifencei in I from ACPI https://git.kernel.org/riscv/c/ab2dbc7acced You are awesome, thank you!
diff --git a/arch/riscv/kernel/cpufeature.c b/arch/riscv/kernel/cpufeature.c index bdcf460ea53d..a8f66c015229 100644 --- a/arch/riscv/kernel/cpufeature.c +++ b/arch/riscv/kernel/cpufeature.c @@ -317,19 +317,14 @@ void __init riscv_fill_hwcap(void) #undef SET_ISA_EXT_MAP } - /* - * Linux requires the following extensions, so we may as well - * always set them. - */ - set_bit(RISCV_ISA_EXT_ZICSR, isainfo->isa); - set_bit(RISCV_ISA_EXT_ZIFENCEI, isainfo->isa); - /* * These ones were as they were part of the base ISA when the * port & dt-bindings were upstreamed, and so can be set * unconditionally where `i` is in riscv,isa on DT systems. */ if (acpi_disabled) { + set_bit(RISCV_ISA_EXT_ZICSR, isainfo->isa); + set_bit(RISCV_ISA_EXT_ZIFENCEI, isainfo->isa); set_bit(RISCV_ISA_EXT_ZICNTR, isainfo->isa); set_bit(RISCV_ISA_EXT_ZIHPM, isainfo->isa); }
ACPI ISA strings are based on a specification after Zicsr and Zifencei were split out of I, so we shouldn't be treating them as part of I. We haven't release an ACPI-based kernel yet, so we don't need to worry about compatibility with the old ISA strings. Fixes: 396c018332a1 ("RISC-V: cpufeature: Add ACPI support in riscv_fill_hwcap()") Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com> --- arch/riscv/kernel/cpufeature.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-)