博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
10th.U-boot——代码结构分析(一)
阅读量:4978 次
发布时间:2019-06-12

本文共 604 字,大约阅读时间需要 2 分钟。

简介

    U-Boot(Universal Boot Loader),通用BootLoader,一是可以引导多种操作系统,二是支持多种架构CPU。

 

    教程中是在sourcefoge网站上下载的U-boot-1.1.6源码,进行分析与移植。

 

结构分析

    U-boot-1.1.6有26个子目录,可以简单分为四类:

      1.平台相关或开发板相关

      2.通用的函数

      3.通用的设备驱动程序

      4.U-boot工具,示例程序,文档。

 

 

    

           

 

 

 

    

    目前U-boot-1.1.6支持10种架构。很容易找到与自己板子相似的配置,在上面稍作修改即可。

 

U-boot代码分析

    

    U-boot属于两个阶段的Bootloader,第一阶段的文件为cpu/arm920t/start.S和board/smdk2410/lowlevel_init.S,前者与平台相关,后者与开发板相关。

    

    第一阶段主要有以下工作:

    1. 设置为SVC模式
    2. 关闭看门狗
    3. 屏蔽所有中断
    4. 初始化SDRAM
    5. 设置栈
    6. 设置时钟
    7. 代码重定位(Flashn==>SDRAM)
    8. 清bss段
    9. 调用statr_armboot

        

 

      第二阶段主要有以下工作: 

                 

 

转载于:https://www.cnblogs.com/asam/p/6393685.html

你可能感兴趣的文章