u-Boot - 无法更新 iMX8M Mini SMARC 卡上的 u-boot

u-Boot - Cannot update u-boot on iMX8M Mini SMARC card

我有一个来自 Embedian on their carrier board. I want to use the latest Yocto Zeus build, kernel 5.4.24, which requires u-boot to be updated. I followed Embedian's instructions 的 iMX8M Mini SoM,但我仍然遇到问题。当我打开电路板电源时,串行连接 SER3 上没有任何输出,并且使用板载 u-boot 版本确认此连接有效。以下是我采取的步骤:

  1. 运行 bitbake virtual/bootloader
  2. 运行 sudo dd if=u-boot.bin of=/dev/sdb bs=1024 seek=33
  3. 短路 TEST#,载板 MISC 跳线上的引脚 9 和 10
  4. 插入SD卡并开机

我验证了 /dev/sdb 是来自 lsblk 的正确设备,并尝试为 if=<file name> 编写其他文件。 instructions 在他们的网站上说引导加载程序文件应该被称为 imx-boot-<machine name>-sd.bin-flash_evk 但这个文件不存在于“.../deploy/images/” 目录下。通过短接 TEST#,载板应该从 SD 卡启动,但我没有从串行连接获得任何输出。

解决方案

感谢用户@elcfd 提供的解决方案。对于其他用户,如果 imx-boot-<machine name>-sd.bin-flash_evk 在 运行 宁 bitbake imx-boot 之后没有出现,则 运行 bitbake -c cleanall virtual/bootlaoderbitbake -c cleanall imx-boot。之后 运行 bitbake imx-boot 命令和文件将出现。

在 NXP 板上 u-boot 可以被描述为一个“容器”,其中包含几个不同的二进制文件。您的 Yocto 命令仅构建 u-boot 而不是 u-boot “容器”。您要 运行 的命令是 bitbake imx-boot,这将生成您要查找的 boot-<machine name>-sd.bin-flash_evk 文件。