全志F1C100S/F1C200S學習筆記(3)——u-boot傳遞環境變數引數
阿新 • • 發佈:2021-01-22
- 在uboot環境變數裡面需要設定核心和裝置樹的載入地址,使用
boot.scr
可以直接傳遞這些引數。boot.scr
是由boot.cmd
使用mkimage
工具生成的。mkimage
工具在uboot/tools
資料夾下boot.scr
放在TF卡第一分割槽。
boot.cmd
# 在uboot根目錄下新建
vim boot.cmd
# 寫入以下內容
setenv bootargs console=tty0 console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 rw
load mmc 0:1 0x80C00000 suniv-f1c100s-licheepi-nano.dtb
load mmc 0:1 0x80008000 zImage
bootz 0x80008000 - 0x80C00000
# 第一行setenv命令,設定了變數bootargs(啟動引數)為:通過tty0和ttyS0串列埠輸出啟動資訊;啟動失敗延遲5秒重啟,根檔案在TF卡的第二分割槽,可讀寫;
# 第二行指定了從TF中將裝置樹的dtb檔案載入到0x80C00000的位置(地址參考自官方SDK)
# 第三行指定了將壓縮後的核心zImage載入到0x80008000的位置
# 第四行為從載入地址啟動核心的命令
mkimage
# 該工具在`uboot/tools`資料夾下
# 在uboot根目錄下輸入以下命令拷貝到使用者資料夾下,方便以後可以直接使用
sudo cp ./tools/mkimage /usr/local/bin/mkimage
boot.scr
# 使用以下命令生成`boot.scr`,然後將其放入第一分割槽 mkimage -C none -A arm -T script -d boot.cmd boot.scr