uboot引导程序开发是一个系统驱动开发者能力的最全面体现,怎样灵活的根据自己的研发板进行移置适合自己的uboot是很关键的。下面就来同大家一同分享它的启动流程 。
工具/原料
1
OK6410开发板
2
联网的电脑并搭建有开发环境
方法/步骤
1
打开Source Insight软件,创建一个工程并搜索启动程序start.S
3
跳转到uboot/board/samsung/smdk6410/lowlevel_init.S中去进行时钟,串口,关中断,关看门狗,简单的nand初始化等。
4
uboot.lds文件,在uboot/board/samsung/smdk6410目录下,是告诉编译器这些段该怎样划分,为保存start.S会第一个执行做了保障。
5
CPU在完成基本的初始化后就会进行C语言代码入口文件 _armboot_start , 在uboot/lib_arm/board.c中完成一些结构的初始化。
6
在位置uboot1.1.6\lib_arm\board.c中start_armboot函数中运行,全局为量的初始化,调用通过初始化函数,初始化基本设备,初始化环境变量,进入主循环。
7
start_armboot除了以上的工作外,在一切准备就绪之后,就进入u-boot主循环main_loop()函数。
8
main_loop代码比较长,基本就是执行用户输入的命令。此函数所在位置uboot_ok6410\common\main.c中的main_loop()函数
9
注意:在uboot1.1.6\include\configs目录中的smdk6410.h中定义了命令的定义,网络的配置等信息。
注意事项
2
有帮助,点投票。要细品,可收藏。要继续,请关注。如成功,请点赞。有疑问,请留评