U-boot發(fā)展到現(xiàn)在,他的命令行模式已經(jīng)非常接近Linux下的shell了,在我編譯的U-boot-2009.11中的命令行模式模式下支持“Tab”鍵的命令補全和命令的歷史記錄功能。而且如果你輸入的命令的前幾個字符和別的命令不重復(fù),那么你就只需要打這幾個字符即可,比如我想看這個U-boot的版本號,命令就是“ version”,但是在所有的命令中沒有其他任何一個的命令是由“v”開頭的,所以只需要輸入“v”即可。
由于U-boot支持的命令實在太多,由于開發(fā)過程的需要,有必要先把U-Boot命令的用法弄清楚。接下來,根據(jù)每一條命令的幫助信息,解釋一下這些命令的功能和參數(shù)。
進(jìn)入uboot的命令行提示后,通過help指令,可以得知當(dāng)前的uboot支持的所有命令
help 指令名稱,可以得知對應(yīng)指令的相關(guān)幫助, 如help setenv
? u-boot的環(huán)境變量
u-boot的環(huán)境變量用來存儲一些經(jīng)常使用的參數(shù)變量,uboot希望將環(huán)境變量存儲在靜態(tài)存儲器中(如nand nor eeprom mmc)。
其中有一些也是大家經(jīng)常使用,有一些是使用人員自己定義的,更改這些名字會出現(xiàn)錯誤,下面的表中我們列出了一些常用的環(huán)境變量:
bootdelay 執(zhí)行自動啟動的等候秒數(shù)
baudrate 串口控制臺的波特率
ethaddr 以太網(wǎng)卡的網(wǎng)卡物理地址
bootfile 缺省的下載文件
bootargs 傳遞給內(nèi)核的啟動參數(shù)
bootcmd 自動啟動時執(zhí)行的命令
serverip 服務(wù)器端的ip地址
ipaddr 本地ip 地址
stdin 標(biāo)準(zhǔn)輸入設(shè)備
stdout 標(biāo)準(zhǔn)輸出設(shè)備
stderr 標(biāo)準(zhǔn)出錯設(shè)備
上面這些是uboot默認(rèn)存在的環(huán)境變量,uboot本身會使用這些環(huán)境變量來進(jìn)行配置。我們可以自己定義一些環(huán)境變量來供我們自己uboot驅(qū)動來使用。
Uboot環(huán)境變量的設(shè)計邏輯是在啟動過程中將env從靜態(tài)存儲器中讀出放到RAM中,之后在uboot下對env的操作(如printenv editenv setenv)都是對RAM中env的操作,只有在執(zhí)行saveenv時才會將RAM中的env重新寫入靜態(tài)存儲器中。
這種設(shè)計邏輯可以加快對env的讀寫速度。
評論
查看更多