如何检查u-boot脚本中是否存在文件?

时间:2016-06-01 10:07:34

标签: android linux usb u-boot

我想从我的u-boot脚本中检查设备上是否存在文件,然后再在此设备上运行图像。 实际上,这将确保在从其启动之前访问所请求的设备。 如何使用u-boot控制台命令测试文件是否存在?

以下测试对USB记忆棒执行了操作,以下是USB记忆棒的结果:

> if ext2ls usb 0; then echo "USB ON"; else echo "USB KO"; fi
    <DIR>       4096 .
    <DIR>       4096 ..
    <DIR>      16384 lost+found
    <DIR>       4096 boot
                4096 boot.scr
USB ON

没有USB记忆棒的相同测试:

> if ext2ls usb 0; then echo "USB ON"; else echo "USB KO"; fi
** Bad device usb 0 **
USB KO

我希望实际上是测试boot.scr文件的存在。我怎么能这样做?

1 个答案:

答案 0 :(得分:5)

你相当接近。由于ext2ls(或通用ls)仅适用于您需要执行的目录:

=> if load mmc 0:1 ${loadaddr} notfound; then echo found; else echo notfound;fi
** File not found notfound **
=> if load mmc 0:1 ${loadaddr} boot.scr; then echo found; else echo notfound;fi
27980 bytes read in 26 ms (1 MiB/s)
found

您可以看到更多此类测试的示例,并回溯到include / config_distro_bootcmd.h