u-Boot-无法更新iMX8M Mini SMARC卡上的u-boot 解决方案

问题描述

我在他们的here上有一个Embedian的iMX8M Mini SoM。我想使用最新的Yocto Zeus构建,内核5.4.24,它需要更新u-boot。我遵循Embedian的carrier board,但仍然遇到问题。当我打开开发板电源时,串行连接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/sdblsblk中正确的设备,并尝试为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文件。