如何让U-boot自动从FAT分区加载

How to get U-boot to automatically load from FAT partition

我有一个带 U-boot 的 NXP 开发板,上面有 Linux。启动时,如果我不输入任何内容,U-boot 将使用 linux 映像自动启动 Linux。一切都在我的 SD 卡上,该卡已插入电路板。

SD 卡上有一个 FAT 分区,其中包含带有 FreeRTOS 程序的二进制文件。我可以通过执行以下操作 运行 它: 1.打开开发板并立即在键盘上键入任何内容以进入U-boot 2. 输入 fatload mmc 0:1 0x7F8000 hello_world.bin 3. 输入 dcache flush 然后输入 bootaux 0x7F8000

我需要 U-boot 来自动启动 FreeRTOS 二进制文件,而不是 Linux 映像。我怎样才能做到这一点?我可以制作某种在启动时执行这些命令的启动 U-boot 脚本吗?谢谢

要了解更多关于 u-boot 环境变量的信息,我建议你这样做:

u-boot> printenv 

此命令在屏幕上打印所有环境变量。并查看 U-Boot Environment Variables

中提到的变量描述

变量 bootcmd 对理解最重要。没有什么是真正困难的,信息就在那里。

您可能会做出的改变是

u-boot> setenv load_firmware 'fatload mmc 0:1 0x7F8000 hello_world.bin; dcache flush; bootaux 0x7F8000'
u-boot> setenv bootcmd load_firmware

然后

u-boot> saveenv; reboot

保存更改并重新启动。

希望对您有所帮助。