【发布时间】:2015-06-06 20:15:28
【问题描述】:
我正在通过第一阶段引导加载程序。我对此有一些疑问。首先reset后的开机顺序如下:
- 将 CPU 设置为超级用户模式
- 使 L1 指令、数据缓存和转换无效 缓冲区(如果有紧耦合内存)
- 禁用 MMU 和缓存
- 设置堆栈大小
- 启用指令和数据缓存以及 MMU
遵循 Nand Flash 控制器的初始时钟配置和设置时钟。
我的问题是
- 我们已经使 L1 指令/数据缓存和 TLB(它是 MMU 的一部分)失效,但为什么我们需要再次禁用 MMU 和缓存。
请帮助理解它。还请提供任何可以更好地理解引导顺序的链接。
非常感谢您的支持。
【问题讨论】:
-
第 1 阶段引导加载程序? CPU 本身在 MMU 和缓存关闭的情况下启动。
标签: arm bootloader u-boot