精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Firefly-RK3128主板編譯內核介紹

firefly ? 來源:firefly ? 作者:firefly ? 2019-11-29 08:40 ? 次閱讀
編譯內核
準備工作
安裝開發包

安裝開發包:

sudo apt-get install build-essential lzop libncurses5-dev libssl-dev # 如果使用的是 64 位的 Ubuntu,還需要安裝: sudo apt-get install libc6:i386
安裝 mkbootimg 工具
git clone https://github.com/neo-technologies/rockchip-mkbootimg.git cd rockchip-mkbootimg make && sudo make install
獲取內核源碼和安裝交叉編譯工具鏈

如果已經下載 Firefly-RK3128 Android SDK,內核源碼和交叉編譯工具鏈分別在 SDK/kernel 和 SDK/prebuilts 目錄里,無需額外下載,請跳到下一步。如果沒有下載 SDK,則需要下載內核源碼及 Android 的 arm-eabi-4.6 交叉編譯工具鏈。

下載內核源碼:

git clone https://bitbucket.org/T-Firefly/fireprime-kernel.git
編譯內核
編譯內核映像

如果不是在 SDK 里編譯內核,則需要先指定 ARCH 和 CROSS_COMPILE:

export ARCH=arm export CROSS_COMPILE=/path/to/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-

在內核源碼目錄里執行:

make fireprime-linux_defconfig make -j8 rk3128-fireprime.img
編譯內核模塊

在內核源碼目錄里執行:

make modules mkdir modules_install make INSTALL_MOD_PATH=./modules_install modules_install

內核模塊是需要拷到根文件系統中即可:

rsync -av ./modules_install/ /path/to/your/rfs/

也可以遠程拷貝到開發板的根文件系統中,這需要開發板可以通過 ssh 遠程連接:

rsync -av ./modules_install/ root@開發板IP:/

最后清理一下模塊安裝目錄(該目錄含有鏈接,會影響 SDK 的編譯):

rm -rf ./modules_install
創建 linux-boot.img
創建內存盤

內核啟動時會加載內存盤作為初始的根文件系統,再加載實際的根存儲設備,最后切換過去。

git clone -b fireprime https://github.com/TeeFirefly/initrd.git make -C initrd
打包內核和內存盤

將 kernel 和 initrd 打包成 linux-boot.img:

truncate -s "%4" initrd.img mkbootimg --kernel arch/arm/boot/zImage --ramdisk initrd.img -o linux-boot.img
修改 parameter 文件

Linux 的根文件系統(RFS)可能在不同的分區或存儲設備上(eMMC、TF 卡或 U 盤),所以需要在內核的參數中指定。修改 parameter 文件中的 CMDLINE 行,根據實際情況加入以下之一(# 后是注釋,不需要加入):

root=/dev/block/mtd/by-name/linuxroot # 名為 "linuxroot" 的 nand 分區 root=/dev/mmcblk0p1 # TF 卡的第一個分區 root=/dev/sda1 # U 盤或 USB 硬盤的第一個分區 root=LABEL=linuxroot # 卷標為 "linuxroot" 的分區,可以是任一存儲設備

以下是官方雙啟動固件所使用的 parameter 文件,供參考:

FIRMWARE_VER:5.1 MACHINE_MODEL:rk312x MACHINE_ID:007 MANUFACTURER:RK30SDK MAGIC: 0x5041524B ATAG: 0x60000800 MACHINE: 312x CHECK_MASK: 0x80 KERNEL_IMG: 0x60408000 #RECOVER_KEY: 1,1,0,20,0 CMDLINE:console=ttyFIQ0,115200 earlyprintk androidboot.hardware=rk30board androidboot.console=ttyFIQ0 board.ap_has_alsa=0 init=/init initrd=0x62000000,0x00800000 mtdparts=rk29xxnand:0x00002000@0x00002000(uboot),0x00002000@0x00004000(misc),0x00008000@0x00006000(resource),0x00008000@0x0000e000(kernel),0x00010000@0x00016000(boot),0x00010000@0x00026000(recovery),0x0001a000@0x00036000(backup),0x00040000@0x00050000(cache),0x00002000@0x00090000(kpanic),0x00180000@0x00092000(system),0x00002000@0x00212000(metadata),0x00200000@0x00214000(userdata),0x00020000@0x00414000(radical_update),-@0x00434000(user)
燒寫到設備

參考《升級固件》燒寫 parameter 和相應的分區映像。如果是在官方固件的基礎上更新,則需要根據固件的類型,將 linux-boot.img 燒寫至對應的分區:

如果還沒有燒寫根文件系統的,可以下載預先做好的鏡像,或定制自己的根文件系統,并燒寫到 parameter 文件指定的根分區中。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6085

    瀏覽量

    35225
  • 安卓
    +關注

    關注

    5

    文章

    2122

    瀏覽量

    57039
  • Firefly
    +關注

    關注

    2

    文章

    538

    瀏覽量

    6992
收藏 人收藏

    評論

    相關推薦

    如何解決firefly rk3128 linux內核適配問題?

    如何解決firefly rk3128 linux內核適配問題?
    發表于 03-04 06:17

    Firefly-RK3128開發板上手教程(上)

    1、Firefly-RK3128開發板入手指南配件Firefly-RK3128 的標準套裝包含以下配件:Core-3128J 核心板一塊Firefly-RK3128 基板一塊WiFi
    發表于 08-12 17:32

    Firefly-RK3128開發板上手教程(下)

    1、如何將主機上的固件文件通過雙公頭USB數據線燒錄到開發板的閃存中準備工作Firefly-RK3128 開發板固件主機良好的 Micro USB OTG 線固件文件一般有兩種:單個統一固件
    發表于 08-12 17:51

    Firefly-RK3128 MIPI DSI使用步驟說明

    screen-type屬性:顯示屏類型,Firefly-RK3128只支持單通道MIPI屏,配置成SCREEN_MIPI即可。lvds-format屬性:無關選項。out-face屬性:配置顏色,可為OUT_P888
    發表于 08-22 17:12

    firefly RK3128開發板介紹

    Firefly-RK3128 采用Cortex-A7架構四核1.3GHz處理器,集成Mali-400MP2 GPU, 擁有優秀的運算與圖形處理能力;板載千兆以太網口、2.4GHz Wi-Fi和藍牙4.0
    的頭像 發表于 11-14 11:27 ?4485次閱讀
    <b class='flag-5'>firefly</b> <b class='flag-5'>RK3128</b>開發板<b class='flag-5'>介紹</b>

    Firefly-RK3128主板PWM輸出介紹

    Firefly-RK3128 開發板上有 4 路 PWM 輸出,分別為 PWM0 ~ PWM3
    的頭像 發表于 11-28 16:56 ?2340次閱讀
    <b class='flag-5'>Firefly-RK3128</b><b class='flag-5'>主板</b>PWM輸出<b class='flag-5'>介紹</b>

    Firefly-RK3128主板LED子系統介紹

    Firefly-RK3128 開發板上有 2 個 LED 燈
    的頭像 發表于 11-28 17:01 ?2706次閱讀
    <b class='flag-5'>Firefly-RK3128</b><b class='flag-5'>主板</b>LED子系統<b class='flag-5'>介紹</b>

    Firefly-RK3128主板I2C控制器

    Firefly-RK3128 開發板上有 4 個片上 I2C 控制器。本文主要描述如何在該開發板上配置 I2C。
    的頭像 發表于 11-29 08:47 ?1443次閱讀
    <b class='flag-5'>Firefly-RK3128</b><b class='flag-5'>主板</b>I2C控制器

    Firefly-RK3128開發板攝像頭的介紹

    Firefly-RK3128 開發板上有 CIF 接口,支持 CIF 攝像頭。
    的頭像 發表于 11-28 16:48 ?3722次閱讀
    <b class='flag-5'>Firefly-RK3128</b>開發板攝像頭的<b class='flag-5'>介紹</b>

    Firefly-RK3128主板ADC簡介

    Firefly-RK3128 開發板有一個 3 通道(0/1/2)、10 比特精度的 SAR ADC (Successive Approximation Register,逐次逼近寄存器),
    的頭像 發表于 11-28 17:17 ?3474次閱讀
    <b class='flag-5'>Firefly-RK3128</b><b class='flag-5'>主板</b>ADC簡介

    Firefly-RK3128主板接口定義介紹

    Firefly-RK3128 開發板提供了豐富的接口,主要包括:HDMI、音頻數字光纖、以太網、電源接口、復位按鍵、電源鍵、音頻輸入輸出、硅麥、串口調試接口、紅外接收、OTG接口、TF卡槽、USB Host1~4、
    的頭像 發表于 11-29 08:45 ?3435次閱讀
    <b class='flag-5'>Firefly-RK3128</b><b class='flag-5'>主板</b>接口定義<b class='flag-5'>介紹</b>

    FireflyRK3128主板外殼介紹

    外殼 Firefly-RK3128 CAD圖 核心板 底板 Firefly-RK3128 外殼亞克力CAD圖
    的頭像 發表于 11-29 09:19 ?1227次閱讀
    FireflyRK<b class='flag-5'>3128</b><b class='flag-5'>主板</b>外殼<b class='flag-5'>介紹</b>

    Firefly-RK3128主板編譯固件介紹

    編譯 Android 對機器的配置要求較高
    的頭像 發表于 11-29 09:13 ?2506次閱讀
    <b class='flag-5'>Firefly-RK3128</b><b class='flag-5'>主板</b><b class='flag-5'>編譯</b>固件<b class='flag-5'>介紹</b>

    Firefly-RK3128主板啟動模式簡介

    Firefly-RK3128 有靈活的啟動方式。
    的頭像 發表于 11-29 09:27 ?5178次閱讀

    Firefly-RK3128主板串口調試

    Firefly-RK3128 開發板的調試串口與 TF 卡接口有信號引腳復用,因此無法同時使用
    的頭像 發表于 11-29 09:47 ?3481次閱讀
    <b class='flag-5'>Firefly-RK3128</b><b class='flag-5'>主板</b>串口調試