MLO/uboot-spl.bin和uboot.img/uboot.bin
前段时间使用TI的am4378芯片,发现系统在SD卡启动的时候,启动文件使用的是MLO
和uboot.img
;而Norflash和eMMC启动的时候使用的是 uboot-spl.bin
和uboot.bin
,有如下疑问:
MLO
和Uboot-spl.bin
有什么区别?uboot.img
和uboot.bin
有什么区别?为什么后者需要Norflash再配合eMMC,而不是直接eMMC?
For MLO use the spl
/u-boot-spl.bin
file. The difference between u-boot-spl.bin
and MLO
is that u-boot-spl.bin
does not contain header information. Peripheral boot needs an MLO
without header
理解:MLO
只是比uboot-spl.bin
多个Header,如果没记错的话是叫GP Header。但是问题是MLO
和uboot-spl.bin
是分开编译,分别使用不同的config文件,所以MLO只是简单的在uboot-spl.bin上加1个Header不成立,否则一次做完即可。
u-boot.bin
is the binary compiled U-Boot bootloader.
u-boot.img
contains u-boot.bin along with an additional header to be used by the boot ROM to determine how and where to load and execute U-Boot.
The way in which these files are deployed can depend upon the nature of your device, its boot ROM and where the files are loaded from.
Boot ROMs are generally provided by the SoC/CPU vendor.
These days, many boot ROMs are capable of loading u-boot.img, reading the file’s header, loading u-boot.bin into memory and finally executing it.
Some boot ROMs are complex enough to load u-boot.bin directly or even the OS kernel.
While others may load an intermediate bootloader (MLO/X-Loader) first which then takes responsibility for loading U-Boot as the secondary bootloader once external memory is initialized.
This image depicts the latter case as implemented by some TI OMAP processors:
This boot process is reduced by some devices by moving many of the X-Loader tasks into U-Boot and placing boot parameters (such as memory addresses) into the header of u-boot.img avoiding the need for an intermediate bootloader.
You will need to investigate the properties of your device to determine how you should go about deploying U-Boot.
理解:uboot.img只是比uboot.bin多了个头,而这个头包括了如何/从哪里执行这个uboot. uboot.bin一般是按照具体地址烧写,而uboot.img则包含地址等信息,无需按照地址下载,所以这个也决定了uboot.bin适用于Norflash,而uboot.img更适合SD卡。
转发文章
- [uboot]MLO和uboot-spl.bin, uboot.img和uboot.bin
MLO/uboot-spl.bin和uboot.img/uboot.bin相关推荐
- u-boot SPL是什么
什么是SPL? SPL(secondary program loader)是一个十分小的bin文件,它是用来引导主u-boot文件.对于一些SRAM很小的SOC,无法一次性加载ROM中的bootloa ...
- TI Sitara AM335x系统之AM335x uboot spl分析
本文转载自nidetech的Blog 芯片到uboot启动流程 ROM → SPL→ uboot.img 简介 在335x 中ROM code是第一级的bootlader.mpu上电后 ...
- fpga烧写bin文件_S3C2440移植uboot之编译烧写uboot
@[TOC] 移植环境 主 机:VMWare--ubuntu16.04 开发板:S3C2440 编译器:arm-linux-gcc-4.3.2.tgz u-boot:u-boot-2012.04.01 ...
- Uboot SPL的Boot模式选择(从MMC切换到SPI启动)
目前主流的Uboot启动模式分为三级启动: 上电开机后,芯片Boot Rom的代码会被加载到内部的SRam运行,由于通常SRam的内存很小(几十K左右),这就决定了Boot Rom中的代码是做不了太多 ...
- 【烧写Uboot到SD卡,打开 SD-bl1-8k.bin 失败,failed to open‘SD-bl1-8k.bin】
烧写Uboot到SD卡,打开 SD-bl1-8k.bin 失败,failed to open'SD-bl1-8k.bin 在进行X210烧入镜像时出现了一下错误,之前烧入时是正常的,不知道为什么就报错 ...
- 瑞芯微鸿蒙移植,瑞芯微Cortex-A7系列芯片u-boot补丁,引导鸿蒙内核liteos.bin
鸿蒙系统已开源不久,网上关于鸿蒙移植到第三方芯片的相关资料较少,把自己移植的步骤陆续分享给大家 . 手上的几个Rockchip系列芯片做了移植,在rv1126,rk3126c,rk3288几颗芯片跑 ...
- u-boot SPL的理解
uboot分为uboot-spl和uboot两个组成部分.SPL是Secondary Program Loader的简称,第二阶段程序加载器,这里所谓的第二阶段是相对于SOC中的BROM来说的,之前的 ...
- 移植uboot第十步:制作uboot补丁
写在前面: 我的博客已迁移至自建服务器:博客传送门,CSDN博客暂时停止,如有机器学习方面的兴趣,欢迎来看一看. 此外目前我在gitHub上准备一些李航的<统计学习方法>的实现算法,目标将 ...
- uboot移植——使用三星官方的uboot进行移植
以下内容源于朱有鹏嵌入式课程的学习,如有侵权,请告知删除. 参考资料:http://www.cnblogs.com/biaohc/p/6460902.html 总结的思维导图下载地址:https:// ...
- S5PV210 Uboot开发与移植01:Uboot概述
目录 1. uboot概述 1.1 uboot的版本 1.1.1 官方版本 1.1.2 SoC厂商版本 1.1.3 开发板厂商版本 1.2 uboot功能框架 1.3 uboot生命周期 2. ubo ...
最新文章
- leetcode--两数之和--python
- Andrid 图片被挤压
- python 调用c++ 回调函数
- kali 树莓派 android,【原】树莓派安装KALI LINUX的手记
- IT服务台的进化(3)--虚拟服务台
- GIS基础软件及操作(十)
- Sharepoint摸索之路
- 复数域上x^n ±1=0的解
- php mysql 网站_实验六:MYSQL+PHP的网站搭建
- html5 调用高德地图,高德地图在h5项目中的集成(点标记)
- 美国国家安全原因致金沙江暂停收购飞利浦LED
- listview 中内容覆盖了屏幕底部的工具栏的解决办法
- 企业使用大数据分析有什么好处
- Python爬虫周记之案例篇——基金净值Selenium动态爬虫
- 【机器学习】机器学习基石-林轩田-1-机器学习介绍
- Oracle (03)分组子句.where条件 与 having条件的区别.子查询.DDL.DML.数据的增删改.TCL
- ZOJ 2480 Simplest Task in Windows
- idea的使用教程(IntelliJ IDEA)
- 【有福利,手慢无】相册网送您免费洗50张照片
- word、excel文档内容更新技术方案