Uboot启动流程:
https://www.cnblogs.com/heaad/archive/2010/07/17/1779829.html
IMX6ULL芯片
U-Boot启动第一阶段代码分析
可从uboot.lds文件查看文件开始:
其中lds文件中'.'赋值, 这是一个定位计数器,想了解lds文件请百度。
从 u-boot.lds 中我们已经知道了入口点是 arch/arm/lib/vectors.S 文件中的_start
复位reset阶段:失能中断FIQ 和 IRQ 让cpu运行在SVC32模式, except if in HYP mode already
start.S 代码段
cpu_init_cp15、cpu_init_crit 和_main。
cpu_init_cp15 用来设置 CP15 相关的内容,比如关闭 MMU 啥的,
cpu_init_crit 内部仅仅是调用了函数 lowlevel_init,lowlevel_init 在文件 arch/arm/cpu/armv7/lowlevel_init.S
lowlevel_init 函数后面会调用 s_init 函数,s_init 函数定义在文件
arch/arm/cpu/armv7/mx6/soc.c