微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用U-Boot从Flash上​​载固件

我有个问题。 我的系统是一个embedded式Linux平台。 我使用串口连接到我的主板,我可以访问U-Boot。

我需要通过控制台或通过以太网提取驻留在闪存中的完整固件。 看起来使用TFTP或串口(Kermit等)下载很容易,但是将其上传到主机进行备份并不明显。

有谁知道这可以做到吗?

交叉编译helloworld.c到ARM(Cortex-A5)

复制相同的BeagleBone黑色设置

使用O_DIRECT和IO内存

如何将以太网设备直接连接到Linux中的交换机?

这是什么原因在Linux读取mmc

jffs2文件系统立即破坏(Magic bitmask 0x1985找不到错误

USB_MASS_STORAGE和USB_FILE_STORAGE之间有什么区别,以及如何最好地使用它?

创build一个供其他Linux实例使用的符号链接

“NAME = …”这行代表Linux内核的顶层Makefile文件是什么?

针对时间敏感的应用程序的分析方法

假设您使用的是NAND闪存和U-Boot 2013.07或类似的:

使用nand info命令查看U-Boot检测到的每个NAND设备的NAND设备名称,大小和擦除块大小

使用nand read命令从NAND读取到RAM中。 读取到RAM中的NAND数量取决于RAM的大小

如果您有SD(MMC)驱动器,则可以使用mmc write命令从RAM写入SD

如果您有USB设备,则可以使用start usb来扫描USB以获得大容量存储或“以太网”(即OTG)设备

如果start usb检测到大容量存储设备,则可以使用usb write命令从RAM写入大容量存储设备

没有办法从RAM传输到USB或以太网网络连接

使用md命令以十六进制方式将任意大小的内存块转储到串行线,然后使用某些程序将ASCII十六进制转换回二进制

如果您愿意重新tftpput uboot并重新刷新开发板,则可以使用CONfig_CMD_TFTPPUT选项启用tftpput命令。 (假设最新版本的uboot。)

假设没有,在嵌入式Linux中,你可以通过/dev/mtd* ( cat /proc/mtd来查看分区)来访问你的flash。 您可以使用dd将分区复制到ramdisk文件,然后使用cat将这些文件合并到单个映像中,然后使用ftpput将其发送到您的主机。 (这假定你的嵌入式busyBox已经用这些命令建立了。)

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

相关推荐