On Thu, Jun 29, 2023 at 11:31:33AM +0200, Andrew Jones wrote: > On Thu, Jun 29, 2023 at 09:28:56AM +0100, Conor Dooley wrote: > > As it says on the tin, provide a Kconfig option to disabling parsing the > > "riscv,isa" devicetree property. Hide the option behind NONPORTABLE so > > that only those willing to keep the pieces enable it, and make sure the > > default kernel contains the fallback code. > > > > Suggested-by: Palmer Dabbelt <palmer@xxxxxxxxxxxx> > > Signed-off-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx> > > --- > > arch/riscv/Kconfig | 16 ++++++++++++++++ > > arch/riscv/kernel/cpu.c | 3 +++ > > arch/riscv/kernel/cpufeature.c | 2 +- > > 3 files changed, 20 insertions(+), 1 deletion(-) > > > > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig > > index 1d39efe2b940..0e1909ac5947 100644 > > --- a/arch/riscv/Kconfig > > +++ b/arch/riscv/Kconfig > > @@ -291,6 +291,22 @@ config NONPORTABLE > > > > If unsure, say N. > > > > +config NO_RISCV_ISA_FALLBACK > > + bool "Permit falling back to parsing riscv,isa for extension support" > > + depends on NONPORTABLE > > + help > > + Parsing the "riscv,isa" devicetree property has been deprecated and > > + replaced by a list of explicitly defined strings. For compatibility > > + with existing platforms, the kernel will fall back to parsing the > > + "riscv,isa" property if the replacements are not found. > > + > > + Selecting Y here will result in a kernel without this fallback, and > > + will not work on platforms where the devicetree does not contain the > > + replacement properties of "riscv,isa-base" and > ^ spacing issue Huh, weird. Given the tab followed by spaces, it must have snuck in during reflow of the text after some rewording. Wonder how I missed it, given that... > Should we also have a kernel command line option, 'isa_fallback', where > without this config the command line option is not necessary to fallback, > but, with this config, no fallback will be done unless 'isa_fallback' is > provided? I don't know, maybe I have the wrong end of the stick but it feels a bit premature for something that may never not be hidden behind NONPORTABLE? Perhaps that could be left for a point in time where the default value of the symbol changes, or the dependency on NONPORTABLE is removed? Cheers, Conor.
Attachment:
signature.asc
Description: PGP signature