u-boot don';如果tftp失败,则无法继续

u-boot don';如果tftp失败,则无法继续,u-boot,U Boot,我将u-boot配置为加载两个映像:首先,它使用tftp加载FPGA位文件(top.bit),然后使用“netboot”加载linux映像,后者使用tftp获取image.ub。这是我的bootcmd: run uenvboot; tftpboot 0x4000000 192.168.0.55:top.bit; fpga loadb 0 0x4000000 0x1fcbff; run cp_kernel2ram && bootm 0x10000000; run netboot

我将u-boot配置为加载两个映像:首先,它使用tftp加载FPGA位文件(top.bit),然后使用“netboot”加载linux映像,后者使用tftp获取image.ub。这是我的bootcmd:

run uenvboot; tftpboot 0x4000000 192.168.0.55:top.bit; fpga loadb 0 0x4000000 0x1fcbff; run cp_kernel2ram && bootm 0x10000000; run netboot
当两个文件都存在且服务器已准备就绪时,此操作有效。但是,如果top.bit不存在,我会得到:

TFTP error: 'File not found' (1)
Not retrying...
如果第一个top.bit加载失败,是否有让u-boot不继续的选项


作为记录,我确实将netretry设置为yes。

使用布尔运算符,例如

true && echo true
false || echo false

没有让U-Boot忽略/重试这种致命错误情况的选项。重试后,此类错误不会自行修复。但是,您可以编写一个脚本来处理/忽略错误。我的目标不是在错误“自行修复”之前重试,而是安全退出并不再继续引导系统。我不知道您可以在u-boot中创建脚本。你有例子吗?我想出来了。我可以使用带有简单if/then/else结构的“itest”命令。谢谢