0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

fireflyAIO-3399J主板U-Boot使用介紹

firefly ? 來源:firefly ? 作者:firefly ? 2019-12-24 10:00 ? 次閱讀

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)單說明 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 rk3399_box_defconfig

linux 則為

make rk3399_linux_defconfig

如果需要修改相關(guān)選項(xiàng),也可以用:

make menuconfig

編譯:

make ARCHV=aarch64

編譯后生成:

u-boot/uboot.img u-boot/trust.img u-boot/RK3399MiniLoaderAll_Vx.xx.bin

燒錄

打開燒錄工具,板子接好 USB OTG 線,接通電源時(shí)按住 Recovery 鍵,使開發(fā)板進(jìn)入 U-Boot 的下載模式,在燒錄工具中選擇編譯好的 Loader 文件,點(diǎn)擊執(zhí)行即可,如下圖:

確認(rèn)是否正確燒寫新的 Loader

如果你已經(jīng)成功燒寫你最新編譯的 Loader,在開機(jī)的串口輸出中可以看到類似如下信息

#Boot ver: 2016-12-19#1.05

如果打印的時(shí)間及版本與你編譯的一致,說明你成功更新了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

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

U-Boot 作為二級(jí)Loader模式,那么固件支持所有的存儲(chǔ)設(shè)備,該模式下,需要MiniLoader支持,通過宏CONFIG_MERGER_MINILOADER進(jìn)行配置生成。同時(shí)引入Arm Trusted,F(xiàn)irmware后會(huì)生成trust image,這個(gè)通過宏CONFIG_MERGER_TRUSTIMAGE進(jìn)行配置生成。 RK3399使用二級(jí)Loader,編譯生成的鏡像為:

u-boot/uboot.img u-boot/trust.img u-boot/RK3399MiniLoaderAll_V1.05.bin

其中V1.05是發(fā)布的版本號(hào),rockchip 定義U-Boot loader 的版本,其中1.05是根據(jù)存儲(chǔ)版本定義的,客戶務(wù)必不要修改這個(gè)版本。 uboot.img 是U-Boot作為二級(jí)loader 的打包。 trust.img 是U-Boot作為二級(jí)loader 的打包。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11304

    瀏覽量

    209496
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6085

    瀏覽量

    35334
  • Firefly
    +關(guān)注

    關(guān)注

    2

    文章

    538

    瀏覽量

    7045
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    U-boot的基本介紹

    從本文開始,將陸續(xù)推送“手把手教你移植U-boot”系列文章,目標(biāo)是由淺入深地講解U-boot的工作流程、原理、配置方法和移植方法,手把手教你完成U-boot的移植工作,默認(rèn)硬件開發(fā)平臺(tái)為ARM,操作系統(tǒng)為L(zhǎng)inux。
    發(fā)表于 07-14 16:52 ?2905次閱讀
    <b class='flag-5'>U-boot</b>的基本<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板簡(jiǎn)介

    AIO-3399J 的標(biāo)準(zhǔn)套裝包含以下配件
    的頭像 發(fā)表于 11-05 15:52 ?1563次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>簡(jiǎn)介

    fireflyFace-RK3399主板U-Boot模式啟動(dòng)

    RK U-Boot 基于開源的 U-Boot 進(jìn)行開發(fā),工作模式有啟動(dòng)加載模式和下載模式。
    的頭像 發(fā)表于 12-04 08:52 ?4553次閱讀
    fireflyFace-RK<b class='flag-5'>3399</b><b class='flag-5'>主板</b><b class='flag-5'>U-Boot</b>模式啟動(dòng)

    fireflyAIO-3399C主板U-Boot介紹

    RK U-Boot 基于開源的 U-Boot 進(jìn)行開發(fā),工作模式有啟動(dòng)加載模式和下載模式。
    的頭像 發(fā)表于 12-04 10:31 ?1451次閱讀

    fireflyAIO-3288C主板U-Boot介紹

    RK U-Boot 基于開源的 U-Boot 進(jìn)行開發(fā),工作模式有啟動(dòng)加載模式和下載模式。
    的頭像 發(fā)表于 12-16 13:52 ?1153次閱讀
    <b class='flag-5'>fireflyAIO</b>-3288C<b class='flag-5'>主板</b><b class='flag-5'>U-Boot</b><b class='flag-5'>介紹</b>

    fireflyCORE-3399主板JD4-U-Boot介紹

    RK U-Boot 基于開源的 U-Boot 進(jìn)行開發(fā),工作模式有啟動(dòng)加載模式和下載模式。
    的頭像 發(fā)表于 12-17 16:41 ?983次閱讀
    fireflyCORE-<b class='flag-5'>3399</b><b class='flag-5'>主板</b>JD4-<b class='flag-5'>U-Boot</b><b class='flag-5'>介紹</b>

    fireflyAIO-3288J主板U-Boot使用簡(jiǎn)介

    RK U-Boot 基于開源的 U-Boot 進(jìn)行開發(fā),工作模式有啟動(dòng)加載模式和下載模式。
    的頭像 發(fā)表于 12-20 10:06 ?1572次閱讀
    <b class='flag-5'>fireflyAIO-3288J</b><b class='flag-5'>主板</b><b class='flag-5'>U-Boot</b>使用簡(jiǎn)介

    fireflyAIO-3399J主板介紹

    AIO-3399J默認(rèn)出廠固件是支持LVDS+HDMI 1080P的雙屏顯示,HDMI分辨率最高只能到1080P。
    的頭像 發(fā)表于 12-24 10:03 ?1673次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b><b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板屏幕模組介紹

    屏幕模組 7.85寸MIPI液晶屏模組 注意:默認(rèn)的AIO-3399J主板不帶mipi_dsi接口,如需要此功能需修改硬件。
    的頭像 發(fā)表于 12-24 10:14 ?1634次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>屏幕模組<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板UART使用介紹

    AIO-3399J 支持SPI橋接/擴(kuò)展4個(gè)增強(qiáng)功能串口(UART)的功能,分別為UART1,UART2,RS232,RS485。
    的頭像 發(fā)表于 12-24 10:18 ?2120次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>UART使用<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板PWM使用介紹

    AIO-3399J開發(fā)板上有 4 路 PWM 輸出,分別為 PWM0 ~ PWM3,4路 PWM 分別使用在eDP背光、MIPI背光、VDDLOG供電、紅外IR。 本章主要描述如何配置 PWM。
    的頭像 發(fā)表于 12-24 10:37 ?2261次閱讀

    fireflyAIO-3399J主板LED使用介紹

    AIO-3399J 開發(fā)板上有 2 個(gè) LED 燈
    的頭像 發(fā)表于 12-24 10:31 ?3044次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>LED使用<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板I2C使用介紹

    AIO-3399J 開發(fā)板上有 9 個(gè)片上 I2C 控制器,
    的頭像 發(fā)表于 12-24 10:34 ?1917次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>I2C使用<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板ADC使用介紹

    AIO-3399J 開發(fā)板上的 AD 接口有兩種,分別為:溫度傳感器 (Temperature Sensor)、逐次逼近ADC (Successive Approximation Register)。
    的頭像 發(fā)表于 12-24 10:47 ?1710次閱讀

    Linux U-Boot開發(fā)指南

    介紹 U-Boot 的編譯打包、基本配置、常用命令的使用、基本調(diào)試方法等, 為 U-BOOT 的移植及應(yīng)用開發(fā)提供了基礎(chǔ)。
    的頭像 發(fā)表于 03-06 10:28 ?1323次閱讀
    Linux <b class='flag-5'>U-Boot</b>開發(fā)指南