U-Boot使用
前言
RK U-Boot 基于開源的 U-Boot 進(jìn)行開發(fā),工作模式有啟動(dòng)加載模式和下載模式。啟動(dòng)加載模式是 U-Boot 的正常工作模式,嵌入式產(chǎn)品發(fā)布時(shí),U-Boot 都工作在此模式下,主要用于開機(jī)時(shí)把內(nèi)存中的內(nèi)核加載到內(nèi)存中,啟動(dòng)操作系統(tǒng);下載模式主要用于將固件下載到閃存,開機(jī)時(shí)長(zhǎng)按 Recovery 鍵可進(jìn)入下載模式。本文簡(jiǎn)單說(shuō)明 U-Boot 的使用,更多相關(guān)文檔請(qǐng)看 SDK 下面的 RKDocs/common/uboot/RockChip_Uboot開發(fā)文檔V3.0.pdf。
編譯
編譯 U-Boot 與編譯內(nèi)核類似,編譯前把默認(rèn)配置寫入 .config,執(zhí)行:
make evb-px30_defconfig
linux 則為
make xxx_defconfig
如果需要修改相關(guān)選項(xiàng),也可以用:
make menuconfig
編譯:
make ARCH=arch64
編譯后生成:
u-boot/uboot.img u-boot/trust.img u-boot/px30_loader_v1.10.115.bin
燒錄
打開燒錄工具,板子接好 USB OTG 線,接通電源時(shí)按住 Recovery 鍵,使開發(fā)板進(jìn)入 U-Boot 的下載模式,在燒錄工具中選擇編譯好的 Loader 文件,點(diǎn)擊執(zhí)行即可,如下圖:
確認(rèn)是否正確燒寫新的 Loader
如果你已經(jīng)成功燒寫你最新編譯的 Loader,在開機(jī)的串口輸出中可以看到類似如下信息:
#Boot ver: 2019-05-08#1.09
如果打印的時(shí)間及版本與你編譯的一致,說(shuō)明你成功更新了Loader。
進(jìn)入 U-Boot 命令行模式
由于Firefly產(chǎn)品主要用于開發(fā),所以我們默認(rèn)設(shè)置開機(jī)時(shí)有1秒的倒計(jì)時(shí),如果這時(shí)候在串口輸入任意鍵即可進(jìn)入u-boot命令行模式。 發(fā)布的產(chǎn)品是不需要進(jìn)入u-boot命令行模式的,如果需要設(shè)置u-boot默認(rèn)不進(jìn)入命令行模式的,可以做如下修改: 在文件 u-boot/include/configs/rk33plat.h
/* mod it to enable console commands. */ #define CONFIG_BOOTDELAY 0
把宏CONFIG_BOOTDELAY改為 0 即默認(rèn)不進(jìn)入命令行模式。
一級(jí)Loader(RK3288)
U-BOOT 作為一級(jí)Loader模式,那么僅支持EMMC存儲(chǔ)設(shè)備,編譯完成后生成的鏡像:
RK3288LoaderU-BOOT_V2.17.01.bin
其中V2.17.01是發(fā)布的版本號(hào),rockchip 定義U-Boot loader 的版本,其中2.17是根據(jù)存儲(chǔ)版本定義的,客戶務(wù)必不要修改這個(gè)版本,01是U-Boot定義的小版本,用戶根據(jù)實(shí)際需求在 Makefile中修改。
二級(jí)Loader(PX30)
U-Boot 作為二級(jí)Loader模式,那么固件支持所有的存儲(chǔ)設(shè)備,該模式下,需要MiniLoader支持,通過(guò)宏CONFIG_MERGER_MINILOADER進(jìn)行配置生成。同時(shí)引入Arm Trusted,F(xiàn)irmware后會(huì)生成trust image,這個(gè)通過(guò)宏CONFIG_MERGER_TRUSTIMAGE進(jìn)行配置生成。 PX30使用二級(jí)Loader,編譯生成的鏡像為:
u-boot/uboot.img u-boot/trust.img u-boot/px30_loader_v1.10.115.bin
其中V1.10是發(fā)布的版本號(hào),rockchip 定義U-Boot loader 的版本,其中1.10是根據(jù)存儲(chǔ)版本定義的,客戶務(wù)必不要修改這個(gè)版本。 uboot.img 是U-Boot作為二級(jí)loader 的打包。 trust.img 是U-Boot作為二級(jí)loader 的打包。
-
Linux
+關(guān)注
關(guān)注
87文章
11419瀏覽量
212270 -
嵌入式主板
+關(guān)注
關(guān)注
7文章
6094瀏覽量
36079 -
Firefly
+關(guān)注
關(guān)注
2文章
541瀏覽量
7320
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
AIO-PX30-JD4核心板上手教程
fireflyCORE-PX30-JD4接口定義介紹

fireflyCORE-PX30-JD4燒寫固件簡(jiǎn)介
fireflyCORE-PX30-JD4產(chǎn)品簡(jiǎn)介
Core PX30 JD4 AndroidTools燒寫工具

Core PX30JD4工具Linux upgrade tool文件分享

Core PX30 JD4工具DriverAssitant驅(qū)動(dòng)助手

Core PX30 JD4 Android 8.1 SDK源碼分享

Core PX30 JD4源代碼Linux SDK分享

Core PX30 JD4固件Android 8.1固件分享

Core PX30 JD4固件Buildroot(GPT)文件分享

Core PX30 JD4固件Ubuntu(GPT)文件分享

Core PX30 JD4核心板產(chǎn)品規(guī)格書

Core PX30 JD4資源linux headers文件分享

評(píng)論