uboot常用命令及其使用
阿新 • • 發佈:2021-09-08
uboot常見命令機器使用
print
環境變數設定
setenv
設定一個環境變數
# 格式:setenv key vlaue
setenv bootdelay 5 # 設定uboot啟動延時5s
刪除一個環境變數
uboot對於一個沒有值的環境變數,預設不再維護,做刪除處理
# 格式:setenv key
setenv ipaddr # 刪除ipaddr,讓ipaddr不復存在
修改一個環境變數
# 格式:setenv key vlaue
setenv bootdelay 5 # 原來的bootdleay值被覆蓋,採用新值5
saveenv
uboot啟動時,從非易失性儲存器中讀取環境變數的值,在記憶體中維護一份拷貝,當採用setenv命令建立、修改、或者刪除後,記憶體中被相應地建立、修改或者刪除,非易失儲存器中的那一份並沒有改變。直到執行saveenv,寫入非易失性儲存器。
列印所有環境變數及其值。
print # 列印所有
列印某一個。如果要檢視某個你知道名字的環境變數,可以使用該命令。例如,列印bootcmd命令:
print bootcmd # 只打印bootcmd
系統啟動相關的命令
bootz
bootz命令根據給定的kernel、dtb在ddr中的地址,去啟動核心。可以通過多種方式(tftp命令、fatload命令等方式將zImage、dtb載入到ddr指定位置)
輸入引數1:zImage_addr
輸入引數2:dtb_addr
# if zimage_addr=80800000 dtb_addr=83000000 tftp 80800000 zImage tftp 83000000 xxxx.dtb bootz 80800000 - 83000000
bootm
bootm用於啟動uImage
boot
boot命令執行uboot環境變數bootcmd中定義好的一組命令來啟動系統。這一組命令一般包含
1)將kerneldtb拷貝到ddr指定位置的命令
2)bootz或者bootm命令
# 執行boot命令則執行環境變數bootcmd中定義好的命令 # 測試該命令,可以自定定義bootcmd命令,如下所示: # 下面使用雙引號包含多個命令,命令之間用分號隔開,單引號也可以 setenv bootcmd "tftp 80800000 zImage;tftp 83000000 xxxx.dtb;bootz 80800000 - 83000000" saveenv # 做測試可以不儲存,如果儲存了,聚會寫入環境變數區 boot
run
run命令可以執行一個自定義命令,這個自定義命令的名字以一個環境變數形式出現,環境變數的內容就是使用者要執行的一系列命令集合。
setenv usercmd "tftp 80800000 zImage;tftp 83000000 xxxx.dtb;bootz 80800000 - 83000000"
run usercmd
run命令和boot命令很相似,知識boot命令預設會執行bootcmd中定義好的一系列操作,不需要制定這個環境變數,但是run命令需要明確指定這個變數的名字。
reset
復位系統。這裡值得注意,uboot的復位不是reboot,reboot一般指作業系統重啟。