燒寫固件
啟動模式說明
前言
AIO-3399JD4 有靈活的啟動方式。一般情況下,除非硬件損壞,AIO-3399JD4 開發(fā)板是不會變磚的。
如果在升級過程中出現(xiàn)意外,bootloader 損壞,導(dǎo)致無法重新升級,此時仍可以進入 MaskRom 模式來修復(fù)。
加載方式
AIO-3399JD4 有 32KB 的 BootRom 和 200KB 的內(nèi)部 SRAM,支持從以下設(shè)備加載系統(tǒng):
SPI 接口
eMMC 接口
SDMMC 接口
另外 AIO-3399JD4 支持從 USB OTG 接口下載系統(tǒng)代碼。
啟動次序
啟動的次序是這樣的:
主控上電初始化
BootRom 代碼在 SRAM 上運行,校驗存儲設(shè)備里的 bootloader
校驗通過,加載并運行 bootloader 引導(dǎo)代碼
bootloader 引導(dǎo)代碼負責(zé)初始化 DDR 內(nèi)存,加載 bootloader 完整代碼到 DDR 內(nèi)存中并運行
bootloader 加載存儲設(shè)備上的 Linux 內(nèi)核,并將執(zhí)行權(quán)交給 Linux 內(nèi)核
啟動模式
AIO-3399JD4 有三種啟動模式:
Normal 模式
Loader 模式
MaskRom 模式
Normal 模式
Normal 模式就是正常的啟動過程,各個組件依次加載,正常進入系統(tǒng)。
Loader 模式
在 Loader 模式下,bootloader 會進入升級狀態(tài),等待主機命令,用于固件升級等。要進入 Loader 模式,必須讓 bootloader 在啟動時檢測到 RECOVERY(恢復(fù))鍵按下,且 USB 處于連接狀態(tài)。使設(shè)備進入升級模式方法如下:
斷開電源適配器
雙公頭 USB 線連接好設(shè)備和主機。
按住設(shè)備上的 RECOVERY (恢復(fù))鍵并保持。
插上電源。
大約兩秒鐘后,松開 RECOVERY 鍵。
MaskRom 模式
MaskRom 模式用于 bootloader 損壞時的系統(tǒng)修復(fù)。
一般情況下是不用進入 MaskRom 模式的,只有在 bootloader 校驗失?。ㄗx取不了 IDB 塊,或 bootloader 損壞) 的情況下,BootRom 代碼 就會進入 MaskRom 模式。此時 BootRom 代碼等待主機通過 USB 接口傳送 bootloader 代碼,加載并運行之。
燒寫工具下載地址(根據(jù)下表下載對應(yīng)版本)
upgrade_tool
Android_tool
固件
官方固件:官方云盤提供的Ubuntu固件中,帶MBR字樣的為舊版本SDK編譯出來的MBR固件,帶GPT字樣的為新SDK編譯出來的GPT固件.
請認真閱讀下表,再進行燒寫:
升級固件
前言
本文介紹了如何將主機上的固件文件,通過公對公USB線,燒錄到開發(fā)板的閃存中。升級時,需要根據(jù)主機操作系統(tǒng)和固件類型來選擇合適的升級方式。
準(zhǔn)備工作
AIO-3399JD4 開發(fā)板
固件
主機
公對公USB線
固件文件一般有兩種:
單個統(tǒng)一固件 update.img, 將啟動加載器、參數(shù)和所有分區(qū)鏡像都打包到一起,用于固件發(fā)布。
多個分區(qū)鏡像,如 kernel.img, rootfs.img, recovery.img 等,在開發(fā)階段生成。
可以在這里找到已編譯好的統(tǒng)一[AIO-3399JD4固件(提取碼:jbmd)]https://pan.baidu.com/s/1pSJTa3EarQCBpYniZAGprQ,下載后解壓。也可以參考編譯固件的說明自行編譯。
主機操作系統(tǒng)支持:
Windows XP (32/64位)
Windows 7 (32/64位)
Windows 8 (32/64位)
Linux (32/64位)
Windows
工具: Androidtool_xxx(版本號)
注意:不同固件使用的工具版本可能不同,請根據(jù)燒寫須知下載對應(yīng)的版本
安裝 RK USB 驅(qū)動
下載 Release_DriverAssistant.zip ,解壓,然后運行里面的 DriverInstall.exe 。為了所有設(shè)備都使用更新的驅(qū)動,請先選擇”驅(qū)動卸載”,然后再選擇”驅(qū)動安裝”。
連接設(shè)備
按照以下方式可以使設(shè)備進入升級模式
先斷開電源適配器連接:
公對公USB線一端連接主機,一端連接開發(fā)板
按住設(shè)備上的 RECOVERY (恢復(fù))鍵并保持。
接上電源
大約兩秒鐘后,松開 RECOVERY 鍵。
主機應(yīng)該會提示發(fā)現(xiàn)新硬件并配置驅(qū)動。打開設(shè)備管理器,會見到新設(shè)備”Rockusb Device” 出現(xiàn),如下圖。如果沒有,則需要返回上一步重新安裝驅(qū)動。
燒寫固件
下載 AndroidTool,解壓,運行 AndroidTool_Release_xx 目錄里面的 AndroidTool.exe(注意,如果是 Windows 7/8,需要按鼠標(biāo)右鍵,選擇以管理員身份運行),如下圖:
燒寫統(tǒng)一固件 update.img
燒寫統(tǒng)一固件 update.img 的步驟如下:
切換至”升級固件”頁。
按”固件”按鈕,打開要升級的固件文件。升級工具會顯示詳細的固件信息。
按”升級”按鈕開始升級。
如果升級失敗,可以嘗試先按”擦除Flash”按鈕來擦除 Flash,然后再升級。一定要根據(jù) 燒寫須知 進行擦除燒寫
注意:如果你燒寫的固件laoder版本與原來的機器的不一致,請在升級固件前先執(zhí)行”擦除Flash”。
燒寫分區(qū)映像
每個固件的分區(qū)可能不相同,請注意以下兩點:
使用Androidtool_2.38燒寫ubuntu(MBR)和Android7.1固件時使用默認配置即可;
使用Androidtool_2.58燒寫ubuntu(GPT)使用默認配置即可,燒寫Android8.1固件請先執(zhí)行以下操作:
切換至”下載鏡像頁面”; 右鍵點擊表格,選擇”導(dǎo)入配置”; 選擇rk3399-Android81.cfg
燒寫分區(qū)映像的步驟如下:
切換至”下載鏡像”頁。
勾選需要燒錄的分區(qū),可以多選。
確保映像文件的路徑正確,需要的話,點路徑右邊的空白表格單元格來重新選擇。
點擊”執(zhí)行”按鈕開始升級,升級結(jié)束后設(shè)備會自動重啟。
Linux
Linux 下無須安裝設(shè)備驅(qū)動,參照 Windows 章節(jié)連接設(shè)備則可。
工具:upgrade_tool_xxx(版本號)
注意:不同固件使用的工具版本可能不同,請根據(jù)燒寫須知下載對應(yīng)的版本
upgrade_tool
下載 Linux_Upgrade_Tool, 并按以下方法安裝到系統(tǒng)中,方便調(diào)用:
unzip Linux_Upgrade_Tool_xxxx.zip cd Linux_UpgradeTool_xxxx sudo mv upgrade_tool /usr/local/bin sudo chown root:root /usr/local/bin/upgrade_tool sudo chmod a+x /usr/local/bin/upgrade_tool
燒寫統(tǒng)一固件 update.img:
sudo upgrade_tool uf update.img
如果升級失敗,可以嘗試先擦除后再升級。一定要根據(jù)燒寫須知的表格(upgrade_table.md)進行擦除燒寫
# 擦除flash 使用ef參數(shù)需要指定loader文件或者對應(yīng)的update.img sudo upgrade_tool ef update.img #update.img :你需要燒寫的ubuntu固件 # 重新燒寫 sudo upgrade_tool uf update.img
燒寫分區(qū)鏡像:Ubuntu(MBR)、Android7.1、Android8.1,使用以下方式:
sudo upgrade_tool di -b /path/to/boot.img sudo upgrade_tool di -k /path/to/kernel.img sudo upgrade_tool di -s /path/to/system.img sudo upgrade_tool di -r /path/to/recovery.img sudo upgrade_tool di -m /path/to/misc.img sudo upgrade_tool di resource /path/to/resource.img sudo upgrade_tool di -p paramater #燒寫 parameter sudo upgrade_tool ul bootloader.bin # 燒寫 bootloader
Ubuntu(GPT),使用以下方式
sudo upgrade_tool ul $LOADER sudo upgrade_tool di -p $PARAMETER sudo upgrade_tool di -uboot $UBOOT sudo upgrade_tool di -trust $TRUST sudo upgrade_tool di -b $BOOT sudo upgrade_tool di -r $RECOVERY sudo upgrade_tool di -m $MISC sudo upgrade_tool di -oem $OEM sudo upgrade_tool di -userdata $USERDATA sudo upgrade_tool di -rootfs $ROOTFS
如果因 flash 問題導(dǎo)致升級時出錯,可以嘗試低級格式化、擦除 nand flash:
sudo upgrade_tool lf update.img # 低級格式化 sudo upgrade_tool ef update.img # 擦除
常見問題
如何強行進入 MaskRom 模式
如果板子進入不了 Loader 模式,此時可以嘗試強行進入 MaskRom 模式。操作方法見《如何進入 MaskRom 模式》。
MaskRom模式
MaskRom 模式是設(shè)備變磚的最后一條防線。強行進入 MaskRom 涉及硬件操作,有一定風(fēng)險,因此僅在設(shè)備進入不了 Loader 模式的情況下,方可嘗試 MaskRom 模式。
請小心閱讀,并謹慎操作! 操作步驟如下:
設(shè)備斷開所有電源。
拔出 SD 卡。
用公對公USB線連接好設(shè)備和主機。
用金屬鑷子接通核心板上的如下圖所示的兩個測試點,并保持。
設(shè)備插入電源。
稍候片刻,之后松開鑷子。
這時,設(shè)備應(yīng)該就會進入 MaskRom 模式。
-
嵌入式主板
+關(guān)注
關(guān)注
7文章
6084瀏覽量
35154 -
安卓
+關(guān)注
關(guān)注
5文章
2116瀏覽量
56960 -
Firefly
+關(guān)注
關(guān)注
2文章
538瀏覽量
6963
發(fā)布評論請先 登錄
相關(guān)推薦
評論