FS0:> dtreg /soc/rtc@101000 0
Dumping 1 bytes at offset 0x0 of reg via CPU 0x101000(1000):
!!!! RISCV64 Exception Type - 000000000000000D(EXCEPT_RISCV_LOAD_ACCESS_PAGE_FAULT) !!!!
E.g, for EFI_DT_REG that translate to a CPU address, the code should ensure
the range is registered with the gDS (e.g. AddMemorySpace + SetMemorySpaceAttributes)
Doing this in ParseProp/GetReg/GetRegByName is better then forcing callers to use yet another call (e.g. SetRegAttrs). And doing this for every (functional) device enumerated by FdtBusDxe is not a good idea because of overhead. GetReg seems like an okay compromise - it's rarely called, for one (once per driver per device, ideally).
FS0:> dtreg /soc/rtc@101000 0 Dumping 1 bytes at offset 0x0 of reg via CPU 0x101000(1000): !!!! RISCV64 Exception Type - 000000000000000D(EXCEPT_RISCV_LOAD_ACCESS_PAGE_FAULT) !!!!
E.g, for EFI_DT_REG that translate to a CPU address, the code should ensure the range is registered with the gDS (e.g. AddMemorySpace + SetMemorySpaceAttributes)
Doing this in ParseProp/GetReg/GetRegByName is better then forcing callers to use yet another call (e.g. SetRegAttrs). And doing this for every (functional) device enumerated by FdtBusDxe is not a good idea because of overhead. GetReg seems like an okay compromise - it's rarely called, for one (once per driver per device, ideally).