码迷,mamicode.com
首页 > 其他好文 > 详细

u-boot

时间:2016-11-26 17:29:35      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:bsp   注意   时钟   配置文件   .net   模式   lan   start   $()   

1.  配置文件,配置内核时生成。所有的Makefile文件(包括顶层目录和各级子目录)都是根据.config来决定使用哪些文件的

2.  $(@:_config=) 的结果是mini2440。它来源于$(var:xx=yy)此句表示将变量var中以xx结尾的部分替换成yy。$@代表目标文件mini2440_config.注意在$()的括号                    中的变量是不需要再加$的。

3.  可以说uboot的源代码在很大程度来说是拼凑起来的,同一个代码包含了各种不同开发板的适用代码,用条件编译进行区别。

4.  inlcude/configs/xxx.h头文件。(X210开发板中为include/configs/x210_sd.h)。这个h头文件里面全都是宏定义,这些宏定义就是我们对当前开发板的移植。每一          个开发板的移植都对应这个目录下的一个头文件,这个头文件里每一个宏定义都很重要,这些配置的宏定义就是我们移植uboot的关键所在。

5.  291行出现了整个主Makefile中第一个目标all(也就是默认目标,我们直接在uboot根目录下make其实就等于make all,就等于make这个目标)

6.  unconfig字面意思来理解就是未配置。这个符号用来做为我们各个开发板配置目标的依赖。目标是当我们已经配置过一个开发板后再次去配置时还可以配置。

7. 第一阶段的文件:

  arch/arm/cpu/armv7 /start.S                       平台相关,CPU工作模式设为SVC模式,关MMU,关icahce(CPU相关)

  board/samsung/fs4412/lowlevel_init.S     开发板相关:关看门狗,内存初始化,时钟初始化,串口初始化(board相关,初始化最基本设备)

  第二阶段的文件:

  arch/arm/lib/crt0.S                     _main 函数所在处,初始化SP,为C语言准备,代码重定位,清BSS,设置R0 R1 R2 R8相应寄存器

  arch/arm/lib/board.c                   board_init_f 函数 ,填充GD结构体,初始化外设, main_loop()函数超循环

  arch/arm/cpu/armv7 /start.S     代码自搬移时会用到

 

u-boot

标签:bsp   注意   时钟   配置文件   .net   模式   lan   start   $()   

原文地址:http://www.cnblogs.com/oyjngz101/p/6104283.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!