我在 Juno board r1 上使用 Linaro 提供的可信固件映像(LSK 和 Android 文件系统)。就我而言,我只想在 EL3 中进行一些琐碎的测试,例如,读取特定的内存。为了让事情变得更容易,在系统完全启动之前我什么都没做。然后我加载一个发送 SMC 指令的内核模块,SMC 异常将在 BL3-1 中由自定义处理程序处理。在处理程序中,我为 EL3 禁用了 MMU 并尝试直接访问物理地址。但是我发现如果物理地址大于0xffffffff(4G),我得到的内容就会全为0。小于0xffffffff的物理地址就完美了。如果我将该物理地址映射到小于 0xffffffff 的虚拟地址(Linaro 的 EL3 只支持小于 0xffffffff 的虚拟地址),它也可以工作。所以,
有没有人知道详情?非常感谢你帮助我!