6200 uboot测试版分析(四)

6200 uboot测试版分析(四)

include/autoconf.mk中COFIG_LOAD_ADDR=0x40008000

common/do_boom.c 中潜入了U_BOOT_CMD(bootm,CONFIG_SYS_MAXARGS,1,do_bootm)因此在default_environment中将会找到的bootm最终将执行do_bootm函数,do_bootm调用同文件下的bootm_start函数,在bootm_start函数中将会通过boot_get_kernel获得uImage的头部并且录入images(bootm_headers_t结构体类型)中(此处会将头部搬移,以使得头部信息原地址空间在解压时可以被覆盖),在函数bootm_start中对image.ep进行复制,回去kernel的入口地址,在do_bootm函数中继续执行bootm_load_os,在该函数中会执行重定位.在do_bootm中的boot_fn=boot_os[image.os.so]获取相应系统的启动函数,例如是linux则被赋值为do_bootm_linux,而后执行boot_fn(0, argc, argv, &images);arch/unicore/lib/bootm.c下的函数do_bootm_linux中将images->ep强制转换成函数地址kernel_entry = (void (*)(int, int, uint))images->ep;而后开始启动kernel_entry(0, machid, bd->bi_boot_params);   6200 的板子时(0,0x9fc,0x40000100    0x9fc是板子硬件设计代号,40000100是传递参数的地址)

 

uboot最终的配置会录入include/configs/SEP0611.h中

在该文件中又含有了include/asm/arch/hardware.h(地址分布)

board/seuic/SEP0611/include/board.h中含有板级配置

include/config_cmd_default.h配置命令

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110422.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • AndroidStudio新建一个flutter工程连接不上设备

    AndroidStudio新建一个flutter工程连接不上设备

    2021年10月1日
    74
  • Java 并发:volatile 关键字解析「建议收藏」

    Java 并发:volatile 关键字解析「建议收藏」在Java并发编程中,要想使并发程序能够正确地执行必须要保证三条原则:原子性、可见性和有序性。只要有一条原则没有被保证,就有可能导致线程安全性问题。volatile关键字被用来保证可见性,即保证共享变量的内存可见性以解决缓存一致性问题,同时其还会禁止进行指令重排序。volatile关键字主要用于使其他线程及时感知共享变量的修改并保证使用变量最新值,例如,用于修饰状态标记量和Double-Check(双重检查)中。

    2022年7月11日
    20
  • 如何在线将XPS转换成Word文档?

    如何在线将XPS转换成Word文档?怎么将XPS转成Word?这个比较难,xps是通过虚拟打印机生成的电子文件,与PDF文件类似,但是却不支持直接编辑,要转换只能借助工具。那么什么工具可以转换,不下载软件有没有在线转换的方法?目前XPS转换的工具比较难找,但是小编仍然给大家找到了,不仅可以转换,还有免费试用的呢,下面一起来看看怎么转吧。搜索speedpdf在线转换工具就能进入转换首页,选择最后一排右下的XPStoWord进入转换页面;可以不用登录,直接根据页面提示点击上传需要转换的XPS文件,可以一次性上传多个,或者直接将文件拖到

    2022年6月3日
    60
  • JAVA 中 labeled break 语句

    JAVA 中 labeled break 语句

    2021年9月29日
    42
  • sql语句查询中双引号怎么办_sql引号中加单引号

    sql语句查询中双引号怎么办_sql引号中加单引号

    以及SQL语句中日期格式的表示(#)、(”)
    在Delphi中进行字符变量连接相加时单引号用(”’),又引号用(””)表示
    首先定义变量
    var
    AnInt:integer=123;//为了方便在此都给它们赋初值。虽然可能在引赋初值在某
     
    些情况下不对
    AnIntStr:string=’456′;
    AStr:string=’abc’;
    AFieldName:string=’字符型编号

    2022年10月10日
    2
  • MySQL 中<=>用法(长知识)

    MySQL 中<=>用法(长知识)

    2021年11月10日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号