[PATCH v2 0/5] Add Svadu extension support
Alexandre Ghiti
alex at ghiti.fr
Fri May 24 04:31:29 PDT 2024
Hi Anup,
On 14/11/2023 17:45, Anup Patel wrote:
> On Tue, Oct 24, 2023 at 3:42 PM Yong-Xuan Wang <yongxuan.wang at sifive.com> wrote:
>> This series enables Svadu extension support by configuring the menvcfg
>> CSR and, if available, displays the Svadu extension in the boot log.
>>
>> Additionally, we've made some programming improvements in
>> lib/sbi/sbi_hart.c and lib/utils/fdt/fdt_helper.c.
>>
>> ---
>> v2:
>> - Rearrange the patches to do the code refactoring first before adding
>> new features
>> - Suggested by Anup and Atish, detect extensions from DT instead of
>> menvcfg CSR
>> - Enable access to some extensions through menvcfg CSR if they are
>> present in the device tree.
>>
>> Yong-Xuan Wang (5):
>> lib: sbi: Improve the code of privilege mode and extensions detection
>> lib: sbi: Refactor the code for enable extensions in menvfg CSR
>> lib: sbi: Using one array to define the name of extensions
>> lib: sbi: Detect extensions from the ISA string in DT
>> lib: sbi: Add support for Svadu extension
> For backward compatibility with existing OSes, it is better to have
> supervisor OS explicitly enable Svadu using the upcoming SBI
> FWFT extension instead of enabling it unconditionally whenever
> Svadu extension is available.
I find this weird because maintaining backward compatibility here means
"continue ignoring svadu present in the device tree".
Why should we treat svadu differently than svpbmt? I understand FWFT
will fix this, but will that be available?
To me, enabling svadu when present in the device tree is more a fix than
an issue: if enabling it breaks something, that means svadu is broken on
your platform so just remove that from your dt or enable the support in
your kernel.
In a nutshell, if asked by the dt, that means the support is present in
the kernel and then it expects it and should be enabled.
Let me know what you think,
Thanks,
Alex
>
> Regards,
> Anup
>
>> include/sbi/riscv_encoding.h | 6 +-
>> include/sbi/sbi_hart.h | 15 +++
>> lib/sbi/sbi_hart.c | 226 +++++++++++++----------------------
>> lib/utils/fdt/fdt_helper.c | 5 +-
>> 4 files changed, 104 insertions(+), 148 deletions(-)
>>
>> --
>> 2.17.1
>>
>>
>> --
>> opensbi mailing list
>> opensbi at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/opensbi
More information about the opensbi
mailing list