本文介紹一下RV1103 SDK的部署,以及初步修改,并編譯出一個(gè)能在設(shè)備上運(yùn)行的基礎(chǔ)版本的固件。
SDK介紹
RK公版的SDK解壓之后內(nèi)容如下。RV1103和RV1106是公用一套SDK的。這套SDK和RV1109/RV1126系列不能共用。
其中
1、.repo
整個(gè)工程的版本管理工具
2、docs
開(kāi)發(fā)文檔
3、media
多媒體開(kāi)發(fā)工具。里面包含了v4l2視頻輸入庫(kù), mpp編解碼庫(kù),alsa音頻庫(kù)等音視頻組件庫(kù)。
4、project
里面的內(nèi)容如下
其中app目錄是一些更上層的應(yīng)用示例,比如ipc的應(yīng)用demo。
cfg目錄是板級(jí)編譯配置。目前支持的配置如下
scripts目錄里面是編譯腳本和一些打包配置,比如打包內(nèi)核鏡像+設(shè)備樹(shù)的its文件。
這個(gè)cfg目錄+scripts目錄在常規(guī)的RK SDK里面一般是放在device目錄里面。
5、sysdrv
目錄里面內(nèi)容如下
cfg目錄是編譯配置
drv_ko存放部分不開(kāi)源的驅(qū)動(dòng),以及WiFi驅(qū)動(dòng)的源碼。
source是uboot和kernel源碼
tools目錄用于構(gòu)建rootfs。其中board是板端的軟件組件包源碼,比如busybox和adb等。pc是pc端的工具源碼,比如mtd-tools編譯出來(lái)的mtd工具可用于打包nand分區(qū)鏡像。
這個(gè)tools目錄類似于其它RK SDK的buildroot
6、tools
包含Windows和Linux下面的固件制作工具以及燒錄工具。此外交叉編譯工具在linux/toolchain/arm-rockchip830-linux-uclibcgnueabihf下
這個(gè)SDK跟之前RK其它系列的Linux SDK不一樣,它的目錄更少,而且沒(méi)有那么多種rootfs的支持。此外,libc庫(kù)更改為uclibc而不是其它系列使用的glibc。
新建編譯配置
首先進(jìn)入project/cfg/BoardConfig_IPC目錄,注意到里面并沒(méi)有RV1103 SPI NAND的配置,因此要新建一個(gè)??梢栽赟PI NOR的基礎(chǔ)上修改。這個(gè)開(kāi)發(fā)板名叫PICO,因此可以執(zhí)行如下操作
然后打開(kāi)這個(gè)文件,進(jìn)行如下修改
uboot里面的defconfig,默認(rèn)都是rv1106的defconfig,這個(gè)defconfig是從SPI NAND啟動(dòng)的
分區(qū)表配置,修改為這樣,適配W25N01 128MB的
文件系統(tǒng)類型
如果是讀寫分區(qū),spi nand一般用ubifs,spi nor用jffs2。只讀分區(qū)都用squashfs。建議rootfs改為只讀,以提升系統(tǒng)可靠性
另外最后還要加上如下內(nèi)容,指定SPI NAND的塊大小和頁(yè)大小
設(shè)備樹(shù)需要新建一個(gè)支持SPI NAND的。打開(kāi)sysdrv/source/kernel/arch/arm/boot/dts,找到rv1103g-evb-v10.dts,直接基于這個(gè)進(jìn)行修改。執(zhí)行
然后將默認(rèn)的spi nor改成spi nand。在復(fù)制過(guò)來(lái)的這個(gè)dts末尾增加
然后修改mk文件種的這個(gè)DTS為新建的
其余的暫時(shí)不修改,嘗試執(zhí)行構(gòu)建。在SDK根目錄下執(zhí)行
./build.sh lunch
找到新建的這個(gè)方案,輸入對(duì)應(yīng)的序號(hào),這里是3
然后執(zhí)行
./build.sh
進(jìn)行完整構(gòu)建
如果沒(méi)有出現(xiàn)錯(cuò)誤,會(huì)生成固件,放在output/image下
這個(gè)update.img就是打包后的固件
將構(gòu)建后的固件燒錄到設(shè)備上。重新上電,可以看到內(nèi)核的編譯信息
注意到編譯的時(shí)間已經(jīng)更新。說(shuō)明燒錄進(jìn)去的固件已經(jīng)能正常運(yùn)行。到這里,SDK部署就完成了。后續(xù)可以在此配置上面進(jìn)行相關(guān)功能的開(kāi)發(fā)。
構(gòu)建中出現(xiàn)的問(wèn)題
1、media部分編譯報(bào)錯(cuò)
此問(wèn)題第一次執(zhí)行構(gòu)建時(shí)必現(xiàn),再次執(zhí)行構(gòu)建消失。初步看是media有很多個(gè)模塊組成,模塊之間有依賴關(guān)系,不能并行編譯
解決方案為media部分強(qiáng)制改為單線程編譯
審核編輯 黃宇
-
嵌入式
+關(guān)注
關(guān)注
5150文章
19665瀏覽量
317427 -
開(kāi)發(fā)板
+關(guān)注
關(guān)注
25文章
5679瀏覽量
104616 -
SDK
+關(guān)注
關(guān)注
3文章
1077瀏覽量
49070 -
Rockchip
+關(guān)注
關(guān)注
0文章
80瀏覽量
19117
發(fā)布評(píng)論請(qǐng)先 登錄

Luckfox Pico RV1103點(diǎn)亮led燈#Linux開(kāi)發(fā)板
【新品體驗(yàn)】LuckFox Pico 開(kāi)發(fā)板免費(fèi)試用
【LuckFox Pico Plus開(kāi)發(fā)板免費(fèi)試用】-01-資料收集和分享
【LuckFox Pico Plus開(kāi)發(fā)板免費(fèi)試用】02_SDK和開(kāi)發(fā)環(huán)境部署
【LuckFox Pico 開(kāi)發(fā)板免費(fèi)試用】1. 開(kāi)發(fā)環(huán)境搭建
【LuckFox Pico 開(kāi)發(fā)板免費(fèi)試用】+ 系統(tǒng)燒寫
【LuckFox Pico Plus開(kāi)發(fā)板免費(fèi)試用】上手體驗(yàn)
【LuckFox Pico 開(kāi)發(fā)板免費(fèi)試用】1.初次開(kāi)箱
【LuckFox Pico Plus開(kāi)發(fā)板免費(fèi)試用】RKNN模型推理測(cè)試
【LuckFox Pico開(kāi)發(fā)板免費(fèi)試用】RKNN SDK使用教程
基于瑞芯微 RV1103 芯片,微型 Linux 開(kāi)發(fā)板LuckFox Pico Plus開(kāi)發(fā)實(shí)踐
RV1126開(kāi)發(fā)板數(shù)據(jù)手冊(cè)
【LuckFox Pico Plus開(kāi)發(fā)板免費(fèi)試用】+開(kāi)發(fā)板上手

評(píng)論