0bac2efd0e
Currently RISC-V NuttX supports 32-bit MMU Flags inside a Page Table Entry. This PR extends the MMU Flags to 64-bit, to support T-Head C906 Core and the new RISC-V Svpbmt Extension. T-Head C906 uses Bits 59 to 63 in a Leaf Page Table Entry to configure the Memory Type: Cacheable / Bufferable / Strongly-Ordered. For the upcoming port of NuttX to PINE64 Ox64 BL808 SBC, we need to set the Memory Type to Strongly-Ordered for I/O Memory, which requires 64-bit MMU Flags. Details of C906 MMU: https://lupyuen.github.io/articles/plic3#t-head-errata Newer RISC-V Cores will use the Svpbmt Extension to configure the Memory Type (Cacheable / Strongly-Ordered). Svpbmt uses Bits 61 to 62 in a Leaf Page Table Entry to define the Memory Type. This also requires 64-bit MMU Flags. Details of Svpbmt: https://github.com/riscv/riscv-isa-manual/blob/main/src/supervisor.adoc#svpbmt |
||
---|---|---|
.. | ||
arm | ||
arm64 | ||
avr | ||
ceva | ||
dummy | ||
hc | ||
mips | ||
misoc | ||
or1k | ||
renesas | ||
risc-v | ||
sim | ||
sparc | ||
x86 | ||
x86_64 | ||
xtensa | ||
z16 | ||
z80 | ||
CMakeLists.txt | ||
Kconfig |