我开始研究一块飞思卡尔mx5x板上的嵌入式设备,现在我正在探索板上的引导模块。根据所选择的boot-mod,需要合适的uboot镜像。对于mmc boot-mod,映像是uboot-no-padding.bin,它是从uboot.bin生成的。那么,我的问题是:为什么需要无填充的uboot,两个镜像之间的区别是什么?
请帮帮忙,谢谢
发布于 2011-12-28 17:43:51
我只是猜测,但通常uboot是放在“裸”闪存上,其中每次写入都是以擦除块大小的量程发生的。因此,填充uboot.bin图像以擦除块大小是有意义的。MMC是基于闪存的,但是闪存是由固件管理的,所以你并不知道(或关心)擦除块的大小,因此填充只是无缘无故地使映像变大。
发布于 2013-12-06 17:24:08
据我所知,闪存设备,如SD,NAND和NOR-Flash存储器,用于加载图像,不接受小于特定大小的图像(据我所知,最小大小为128K)。如果生成的u-boot映像小于该阈值,则必须添加填充才能加载它。
我正在使用dd命令删除1k的填充,最后我得到了一个大小为128k的u-boot.bin,它适合加载。我使用的是4 4GB的microSD。这是我个人的经验。请看一下这个链接。它谈到了为colibri目标构建和闪存u-boot。在第6页中,它讨论了u-boot填充。
http://antmicro.com/files/release/u-boot-colibri/U-Boot_Colibri_Manual.pdf
我希望能对你有所帮助。
https://stackoverflow.com/questions/8651684
复制相似问题