11th.U-boot——代码结构分析

Posted Asam学习笔记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11th.U-boot——代码结构分析相关的知识,希望对你有一定的参考价值。

  U-boot的目的是为了启动内核。

  整个工作流程具体如下:

  1. 读出内核
  2. 启动内核
    1. 设置启动参数
    2. 跳到入口地址    

 

    

     环境变量bootcmd中有两个指令:

   nand read.jffs2 0x30007FC0 kernel; bootm 0x30007FC0 

 

     1.

  其中 nand read.jffs2 0x30007FC0 kernel; 一句,就是读出内核

 

     2.

  此后执行命令 bootm 0x30007FC0 ,即启动内核。

  在do_bootm命令中,会将内核放到正确的加载地址(通过Uimage)。之后再调用do_bootm_linux命令。

  在do_bootm命令中,主要做两个事情。

  一是设置启动参数,二是跳到入口地址。

  启动参数主要有四个:setup_start_tag,setup_memory_tags,setup_commandline_tag,setup_end_tag。当然中间还有其他启动参数。

 

  至此。U-BOOT完毕。

  

  

  

  

以上是关于11th.U-boot——代码结构分析的主要内容,如果未能解决你的问题,请参考以下文章

u-boot分析与使用

u-boot分析与使用

u-boot分析与使用

U-boot主Makefile详尽分析

buildroot构建项目--- u-boot 2017.11 适配开发板修改 1

u-boot命令实现