uboot启动第一阶段

匿名 (未验证) 提交于 2019-12-03 00:17:01

  s5pv210的irom代码读取sd(mmc通道3)中的16kB(uboot第一阶段代码)到iram的0xd0020010中校验通过后开始执行

第一条指令位于cpu/s5pc11x/start.S

2  第149行设置CPU位svc模式禁止irq和fiq

3  200~204设置cache

4  209~211设置TLB和icache

5  216~221设置cp15的c1禁止mmu和cache

6  225~227读启动信息(CORTEXA8将启动信息保留在0xE0000004中)

7  243~278将我们设置的启动标志保存在寄存器中

8  284~286设置栈

9  288 bl lowlevel_init (位于board/samsung/x210)

10  46~52(lowlevel_init) 根据复位状态跳转,冷启动则顺序执行

11  61~64(lowlevel_init)关看门狗

12  100~104(lowlevel_init)锁存上电信号

13  110~115(lowlevel_init)判断当前uboot在sram还是DDR中

17  151~156 打印‘K’ 返回start.s中

19  297~299 设置栈0x33e00000

22  361~371设置域访问和TTB(页表基地址)

   该一级页表为兆式映射有效映射为c0000000-d0000000 30000000-40000000 256MB 3G-3.25G

23  374~381  开mmu

24  387~396 再次设置栈

25  400~411 清bss 长跳转到start_armboot函数

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!