Chinaunix首页 | 论坛 | 博客
  • 博客访问: 62903
  • 博文数量: 16
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 42
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-07 00:05
文章分类

全部博文(16)

文章存档

2016年(1)

2015年(4)

2014年(11)

我的朋友

分类: 嵌入式

2014-04-09 22:41:27

uboot的arch目录说明:
arch-- 体系结构相关目录
    |--arm  ARM结构相关通用文件
        |--cpu CPU相关文件
            |--arm1176   arm1176系列芯片相关通用代码,如start.s cpu.c等
        |--include
            |--asm
                |--arch-s3c64xx  s3c64xx系列芯片相关寄存器地址定义头文件
        |--lib 体系相关库函数,包括_mian函数(crt0.S),memset  memcpy board  interupts等
                _main函数执行流程
                  1)为调用board_init_f()(board.C)函数准备c运行环境,从可读RAM中为stack和
                        global data(GD)开辟有限空间,仅初始化的常量数据可用;
                  2)调用board_init_f()函数,为从系统RAM(DRAM, DDR...)运行准备相应硬件条件,由于此时
                        系统RAM不可用,board_init_f()必须用当前GD来保存由于下一阶段的数据,包括从定向
                        目的地址,stack, GD等的地址;
                   以下仅用于non-spl的编译

                  3)通过board_init_f()函数将stack,GD定位到系统RAM中,但此时数据段(data)和初始化的
                        非常数变量段(bss)依然不可用;
                  4)调用relocate_code()函数,使U-Boot重定位到函数board_init_f()计算的目的地址;
                  5)为调用board_init_r()函数,准备环境包括BSS段初始化为0,非常量数据段的初始化,和系统
                        RAM中的stack,GD已经在函数board_init_f()中进行了相应的赋值;
                  6)无返回跳转到nand_boot() 或board_init_r()。

        |--dts
        |--imx-comm
        |--config.mk
阅读(1947) | 评论(0) | 转发(0) |
2

上一篇:没有了

下一篇:uboot笔记之makefile分析

给主人留下些什么吧!~~