U-boot 入門

解壓縮、配置、編譯、下載 U-boot

將U-boot代碼通過smb服務器拷貝到Linux虛擬機的指定位置,通過tar命令解壓縮:
tar xvzf uboot_ok6410.tar.gz

如下圖所示:
這裏寫圖片描述

配置:輸入 make forlinx_nand_ram256_config
將U-boot配置爲燒寫到OK6410開發板。

編譯: 輸入:make ARCH=arm CROSS_COMPILE=arm-linux-
u-boot開始i編譯,大概持續2分鐘的時間。

然後將 u-boot.bin 文件下載到ARM開發板上。
注意,啓動時需要按下任意的按鍵。

U-boot 命令詳解

儘管UBOOT提供了豐富的命令集,但不同的開發板所支持的命令卻不一樣(可配置)。

1、help 命令
可用於察看當前開發板所支持的命令。
如下圖所示:
這裏寫圖片描述
上圖左側是命令的名稱,右側是命令的作用描述

2、printenv 命令
查看環境變量,也可以縮寫成“print”

如下圖所示:
這裏寫圖片描述

3、setenv 命令
添加、修改、刪除環境變量。
用法:
setenv name value 添加/修改環境變量
- add/modify environment variable ‘name’ to ‘value‘
setenv name 刪除環境變量
- delete environment variable ‘name’

4、saveenv 命令
保存環境變量,將當前定義的所有變量及其值存入flash
中。添加過的環境變量在斷電後會消失,因爲3中修改的是內存中的值,存入flash之後在斷電之後纔會繼續保存。

5、tftp 命令
通過網絡下載文件。
注意:使用tftp,需要先配置好網絡。
setenv ipaddr 192.168.0.3
setenv serverip 192.168.0.2 (tftp服務器的地址)
ping 192.168.0.2(tftp服務器的地址)

範例:
tftp 0xc0008000 uImage 下載的位置, 下載的文件名字
把tftp服務器上的uImage下載到0xc0008000處。因爲mmu已經打開,所以地址以c開頭。
在linux虛擬機上執行相應命令搭建tftp服務器,相關命令在嵌入式linux初步類別的文章中講過。

6、bootm 命令
bootm {addr} {arg} 程序的地址 執行該程序需要的參數
執行固定格式的2進製程序。bootm只能啓動uImage內核,需要加信息頭,因此稱爲固定格式。
範例:
#bootm 0xc0008000

7、內存操作命令
這裏寫圖片描述

這裏寫圖片描述

8、flash操作命令
這裏寫圖片描述

這裏寫圖片描述

9、設置自啓動

這裏寫圖片描述
設置了bootcmd環境變量,關閉電源。然後打開電源,啓動開發板,開發板可以自動從flash下載內核,然後可以自動啓動內核。

這裏寫圖片描述
打開電源之後,自動從網絡下載內核,啓動內核。

注意格式:\; 爲分隔符,前後都需要有空格。

發佈了5 篇原創文章 · 獲贊 60 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章