我在Ubuntu16.04.6上使用Yocto (使用bitbake fsl- t1042d4rdb -full命令)为恩智浦映像板创建了linux和U-boot镜像。在我的"yocto sdk directory"/"build directory"/tmp/deploy/images/t1042d4rdb目录中,我有linux镜像和许多用于u-boot的二进制文件(比如u-boot.bin、u-boot-sdcard.bin、u-boot-nor.bin、u-boot-spi.bin ...)。you can see my /tmp/deploy/images/t1042d4rdb file here
我使用minicom将我的UART串行转换器附加到/dev/ttyUSB0,并编写了此命令(在恩智浦论坛上找到)
"sudo dd if=u-boot.bin of=/dev/ttyUSB0 obs=4066 seek=1; sync"什么都没发生。来自"dmesg"命令的控制台消息
[ 4103.366033] ftdi_sio 3-4:1.0: FTDI USB Serial Device converter detected
[ 4103.366053] usb 3-4: Detected FT232RL
[ 4103.370147] usb 3-4: FTDI USB Serial Device converter now attached to ttyUSB我是Yocto和U-boot的新手。我的问题是,如何将U-boot linux二进制文件加载到我的主板上。感谢您的回答和任何其他建议。
发布于 2019-08-01 17:07:35
首先,你不能直接用dd写串口设备( ttyUSB0 ),尽管它没有显示任何错误你写的数据可能会消失,因为ttyUSB0设备只是一个通信设备。
在Yocto build目录(tmp/deploy/ images )上,你可能会找到一个.sdcard镜像文件或者一个.wic镜像文件,其中包含了Linux内核、U-Boot和Rootfs镜像。因此您需要将此映像写入将用作引导设备相关块设备。在这种情况下,你可以这样写这个镜像:"dd if= of=/dev/your-sd-card-device bs=1M sync“。
我希望它能帮助你解决问题。
https://stackoverflow.com/questions/57303322
复制相似问题