我有问题。我的系统是嵌入式Linux平台。我使用串口连接到我的主板,我可以访问U-Boot。
我需要通过控制台或以太网提取驻留在闪存中的完整固件。看起来使用TFTP或串口(Kermit等)很容易下载,但将其上传到主机PC进行备份并不明显。
有谁知道如何做到这一点?
答案 0 :(得分:5)
假设您正在使用NAND闪存和U-Boot 2013.07或类似产品:
nand info
命令查看U-Boot检测到的每个NAND设备的NAND设备名称,大小和擦除块大小nand read
命令从NAND读入RAM。读入RAM的NAND数量取决于RAM大小mmc write
命令从RAM写入SD start usb
扫描USB以进行大容量存储或“以太网”(即OTG)设备start usb
检测到大容量存储设备,您可以使用usb write
命令从RAM写入大容量存储设备md
命令将任意大小的内存块十六进制转储到串行线,然后使用某个程序将ASCII十六进制转换回二进制文件答案 1 :(得分:2)
如果您愿意重建uboot并重新刷新电路板,可以使用tftpput
选项启用CONFIG_CMD_TFTPPUT
命令。 (假设最新版本的uboot。)
假设没有,在嵌入式Linux中,您可以通过/dev/mtd*
(cat /proc/mtd
访问闪存来查看分区)。您可以使用dd
将分区复制到ramdisk文件,然后使用cat
将文件合并为单个图像,并使用ftpput
将其发送到主机。 (这假设您的嵌入式busybox已使用这些命令构建。)