2016-06-01 130 views
1

我想從我的u-boot腳本中檢查設備上存在的文件,然後在該設備上運行映像。 確實,這將確保在從它啓動之前訪問所請求的設備。 如何使用u-boot控制檯命令測試文件是否存在?如何檢查u-boot腳本中是否存在文件?

以下測試做U盤上的一個ls和這裏的結果與現有的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文件的存在。我該怎麼做?

回答

4

你相當接近。由於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

相關問題