u-boot/arch/riscv/cpu
Conor Dooley f39b1b77d8 riscv: support extension probing using riscv, isa-extensions
A new property has been added, with an extensive rationale at [1], that
can be used in place of "riscv,isa" to indicate what extensions are
supported by a given platform that is a list of strings rather than a
single string. There are some differences between the new property,
"riscv,isa-extensions" and the incumbent "riscv,isa" - chief among them
for the sake of parsing being the list of strings, as opposed to a
string. Another advantage is strictly defined meanings for each string
in a dt-binding, rather than deriving meaning from RVI standards. This
will likely to some divergence over time, but U-Boot's current use of
extension detection is very limited - there are just four callsites of
supports_extension() in mainline U-Boot.

These checks are limited to two checks for FPU support and two checks
for "s" and "u". "s" and "u" are not supported by the new property, but
they were also not permitted in "riscv,isa". These checks are only
meaningful (or run) in M-Mode, in which case supports_extension() does
not parse the devicetree anyway.

Add support for the new property in U-Boot, prioritising it, before
falling back to the, now deprecated, "riscv,isa" property if it is not
present.

Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2024-04-09 11:30:17 +08:00
..
andesv5 andes: cpu: Enable cache and TLB ECC support 2023-12-27 17:29:07 +08:00
cv1800b riscv: cache: Implement dcache for cv1800b 2024-04-09 11:30:02 +08:00
fu540 riscv: Remove common.h usage 2023-10-24 16:34:45 -04:00
fu740 riscv: Remove common.h usage 2023-10-24 16:34:45 -04:00
generic riscv: Remove common.h usage 2023-10-24 16:34:45 -04:00
jh7110 riscv: Remove common.h usage 2023-10-24 16:34:45 -04:00
cpu.c riscv: support extension probing using riscv, isa-extensions 2024-04-09 11:30:17 +08:00
Makefile riscv: Move trap handler codes to mtrap.S 2018-12-18 09:56:27 +08:00
mtrap.S riscv: Align the trap handler to 64 bytes 2023-11-02 15:15:46 +08:00
start.S riscv: add backtrace support 2024-04-09 11:29:38 +08:00
u-boot-spl.lds riscv: Update alignment for some sections in linker scripts 2023-04-20 20:45:08 +08:00
u-boot.lds riscv: Fix alignment of RELA sections in the linker scripts 2023-06-27 10:09:51 +08:00