1、
(1)CFG_PHY_UBOOT_BASE 33e00000 uboot在DDR中的物理地址
(2)其实ARM CPU在复位时默认就会进入SVC模式,但是这里还是使用软件将其设置为SVC模式。整个uboot工作是CPU一直处于SVC模式。
2、设置L2、L1cache和MMU
(1)bl disable_L2cache //禁止L2 cache
(2)bl set_L2cache_auxctrl_cycle // L2 cache相关初始化
(3)bl enable_L2cache //使能L2 cache
(4)刷新L1 cache的icache和dcache
(5)关闭MMU
总结:上面这5步都是和CPU的cache和mmu有关的,不用去细看,大概知道就可以。
3、识别并暂存启动介质选择
(1)从哪里启动是SoC的OM5:OM0这6个引脚的高低电平决定的。
(2)实际上在210内部有一个寄存器(地址是0xE0000004),这个寄存器中的值是硬件根据OM引脚的设置而自动设置值的。这个值反映的就是OM引脚的接法(电平高低),也就是真正的启动介质是谁。
(3)我们代码中可以通过读取这个寄存器的值的。