0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

瑞芯微(EASY EAI)RV1126B kernel

广州灵眸科技有限公司 2026-05-25 10:26 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1. 环境准备和源码获取

1.1 烧录工具下载与部署

首先到【百度网盘】上下载相关的资源:

链接:https://pan.baidu.com/s/1XJsIMHJ51LG9_V3pok2vpA?pwd=1234

提取码:1234

v2-1d6a169901fe109049566f6182007d18_720w.webp

把烧录工具放进虚拟机任意位置(以~/rv1126b_sdk为例)。如下图所示。

v2-7ea58d82a845ef34ef10829a2c91b917_720w.webp

然后定位到工具的位置(以~/rv1126b_sdk为例),并修改可执行权限:

cd ~/rv1126b_sdk/ chmod 777 upgrade_tool

再把工具放到虚拟机的/usr/bin目录中:

sudo mv upgrade_tool /usr/bin

v2-bbdc55323669c5ad20f4f4d43cefe05e_720w.webp

最后,需要重启终端。工具即可生效。(注:此工具仅需要在虚拟机环境中部署一次,后续使用过程中均无须重复此步骤)

1.2 开发环境准备

通过阅读《入门指南/开发环境准备/Easy-Eai编译环境准备与更新》,并按照其相关的操作,进行编译环境的部署

在PC端Ubuntu系统中执行run脚本,进入EASY-EAI编译环境,具体如下所示。

cd ~/develop_environment ./run.sh

v2-e1127efd76bcca3331922be6d17e546f_720w.webp

1.3 源码获取

通过阅读《嵌入式底层开发/ubuntu系统SDK/编译说明》,并按照其相关的操作,进行内核源码的获取以及进行初次编译

1.4 创建内核开发目录

完成SDK初次编译以后,执行下方命令,拷贝一份kernel仓库

cp kernel -r kernel_dev

v2-7272c6d16f16e76f394e240ee66adb4d_720w.webp

进到kernel_dev目录,然后创建一个分支,用于管理用户的自定义代码

cd kernel_dev/ git checkout -b dev

v2-e94500b956accccc8058707dc51403cb_720w.webp

2. 内核使用说明

2.1 编译配置说明

回到sdk根目录,修改板卡编译配置文件:

cd /opt/rv1126b_sdk/ubuntu vim configs/easy-eai-nano-tb-cfg.sh

v2-39aabd47ff365078da1e96c8eea48fc6_720w.webp

内核驱动配置文件在此目下:/opt/rv1126b_sdk/ubuntu/kernel_dev/arch/arm64/configs/

设备树文件在此目录下:/opt/rv1126b_sdk/ubuntu/kernel_dev/arch/arm64/boot/dts/rockchip/

2.2 内核编译

在sdk根目(/opt/rv1126b_sdk/ubuntu/)录,执行下列命令,把需要编译内核的目录,从“kernel”切换成“kernel_dev”

export KERNEL_DEVELOP=kernel_dev

* 此环境变量仅在【当前环境】的【当前终端窗口】生效,若重新打开一个终端窗口,则又会默认去编译“kernel”目录。

* 也可以把这条命令添加到.config文件里,使其一直生效。但在不需要它时,记得要对其进行注释。

再次执行build kernel命令

./build.sh kernel

v2-acec3f0159fe195913815ae06909f98b_720w.webp

先按下【回车键】确认编译的是内核源码。一旦需要编译“非kernel目录”的内核源码,则会出现如上提示:需要编译的内核目录是否/opt/xxx/xxx/kernel_dev?按下【回车键】再次确认后,执行编译动作。

编译完成如下所示:

v2-1bd98712bd923181b402ad38364a7817_720w.webp

* 注意:在编译【到内核】时,会有一步检查磁盘文件时间戳的操作,如果此时/mnt已经断开,则会因为nfs无限超时一直卡着不动。解决方法是:先用Ctrl+C退出编译,然后再用sudo umount -f /mnt去卸载这个目录,最后再重新编译。

2.3 编译wifi驱动

一旦内核【驱动配置】或者【设备树配置】修改过多,则会出现内核驱动符号表变更的情况,如果需要在rootfs上加载的wifi驱动符号表未变更。就会因为符号冲突而导致wifi驱动失败。解决方法是:在编译完内核源码以后,再一次编译wifi驱动。

在ubuntu目录,执行下方命令,实行wifi驱动的编译:

./hooks/hook-none-install-wifibt-db37.sh

注:此命令依赖rootfs,因此在执行它之前,必须要执行过./build.sh all或者./build.sh rootfs

v2-8f2c9552c645accbd85457a5dfff0f9c_720w.webp

编译完成会出现如下输出:

v2-6619b77229276948ef4704aaf65be66a_720w.webp

2.4 编译结果说明

编译完毕后,会在output目录中更新以下3个文件:

v2-c02adfff23e0e2d0ee8cf79f09176f9b_720w.webp

boot.img:内核镜像文件(rk的uboot镜像叫uboot.img)。

db37-ko.tar.gz:wifi蓝牙驱动及相关配置(wifi驱动编译比较特殊,它需要单独生成)。

lib_modules.tar.gz:需要在rootfs阶段加载的驱动(比如那些CONFIG配置成"=m"的驱动)。

*若修改dts或驱动配置的内容比较多,驱动符号表变更,则需要把lib_modules.tar.gz和db37-ko.tar.gz解压到rootfs中。

3. 更新内核

kernel编译完成后,通过组合键【Ctrl+Shift+T】打开一个新的终端窗口,如下所示:

v2-f3c6449d1ebe9435909436a35f44e4cb_720w.webp

然后定位到刚刚内核编译的输出目录中:

cd ~/rv1126b_sdk/ubuntu/output

v2-87e8929f21c5a292c57066e5fa59c1b0_720w.webp

再打开第三个终端窗口,通过adb shell进入到【开发板】后台(adb使用可参考《入门指南/开发板调试方式介绍/adb调试》一文)。

v2-6ce19bc8c41fa75a40b930d581147305_720w.webp

3.1 更新db37-ko.tar.gz

回到【第二个窗口】,采用adb命令,把db37-ko.tar.gz推送到板卡上:

adb push db37-ko.tar.gz /userdata

v2-36af024eb54c3b7d9c62eb07589379a3_720w.webp

去到【第三个窗口】,解压db37-ko.tar.gz

tar -xvf /userdata/db37-ko.tar.gz -C / && sync

v2-d630a5c72c80a8e42b2ba8a3dca32f77_720w.webp

3.2 更新lib_modules.tar.gz

回到【第二个窗口】,采用adb命令,把lib_modules.tar.gz推送到板卡上:

adb push lib_modules.tar.gz /userdata

v2-ac87865d322666e5e3e90b14fe724e18_720w.webp

去到【第三个窗口】,把lib_modules.tar.gz解压到/usr,命令如下:

cd /userdata tar -xvf lib_modules.tar.gz -C /usr && sync

v2-9f69aed832b5048dbd1b8522b6c50e49_720w.webp

3.3 更新boot.img

在【开发板上(第三个窗口)】执行【重启到loader模式】命令:

reboot loader

v2-af5a686383a7d54fd5a6a8f3548d1898_720w.webp

* 如果这种方式进入loader模式失败,还可以通过硬件按键进入(参考《固件烧录与更新》==2.1-手动进入 Loader模式==);

再回到【第二个窗口】,执行下方命令,把kernel.img更新到开发板上

sudo upgrade_tool di -boot boot.img

v2-98badc20d184b91714e80064730e1ca9_720w.webp

出现Download image ok.则说明内核已经成功烧录。此时用下方命令,或者【RST按键】重启设备即可。

sudo upgrade_tool rd

若出现下方报错,则有可能是板卡进入了MASKROM模式,需要用网盘固件把MiniLoaderall.bin烧录一遍。

v2-3a475656104053e65b4e4262428d9bdf_720w.webp

除了上述方法可以更新内核镜像以外,还可以通过【固件烧录工具】去更新boot.img,具体操作就是:把编译生成出来的boot.img拷贝出来,拿去替换掉【固件】中的boot.img,最后采用烧录工具把boot.img烧录进开发板。

4. 修改内核配置

在ubuntu目录执行过./build.sh all或者./build.sh kernel以后。在对应的内核目录(kernel或kernel_dev)中就会出现.config文件。

v2-51818af47dabc7607be67d22b4097e06_720w.webp

通过下方命令,把平台环境变量指定为arm64:

export ARCH=arm64

* 打开新的终端或者重新进入编译环境,此环境变量会丢失,需特别注意。

再执行make menuconfig打开内核配置菜单:

make menuconfig

v2-c7eba01224943153361d9eca5c173aed_720w.webp

* 此处的menuconfig仅用于查找内核配置,若不熟悉内核编译相关操作,不建议直接使用menuconfig。

按下键盘中【/】按键,就会出现搜索菜单,并输入想要查找的驱动配置(以CH343为例):

v2-5ee24c177d48ddcb252307d2a8e4fc9a_720w.webp

通过按下【回车键】,选择,就会出现以下菜单:

v2-971a66537aa55ec9d977ca1c61768648_720w.webp

【Symbol】就是当前所需的驱动:USB_SERIAL_CH343,【Depends on】就是这个USB_SERIAL_CH343所依赖的驱动:USB_SUPPORT、USB、USB_SERIAL。

给它们加上“CONFIG_”前缀,然后 添加到rv1126b_eai.config中即可,如下所示:

v2-2cfd18e8d3943b6d248d51f8e80b5745_720w.webp

===>>> 至此,已经说明了完整的内核开发流程。若没有其它需要,下文则可不用继续浏览。

5. ====补充描述====

5.1 关于menuconfig

如果要直接使用menuconfig进行内核配置,则不允许使用ubuntu目录下的./build.sh kernel去编译内核。而是直接进入到内核源码目录,去手动编译。操作如下:

cd kernel_dev #进入内核源码目录 export ARCH=arm64 #把平台定成arm64,打开新的终端或者重新进入编译环境,此环境变量会丢失,需特别注意 make rockchip_linux_defconfig rv1126b.config rv1126b_eai.config #用这堆配置文件,生成.config make savedefconfig #把.config备份为defconfig cp defconfig mydefconfig #把defconfig备份好,以防弄丢

此时,就可以通过make menuconfig去修改.config了。

make menuconfig

最后,就是手动编译内核的命令:

make rv1126b-nano.img -j8 #以rv1126b-nano.dts为根设备树去编译内核驱动 # 编译那些需要在rootfs上加载的驱动,并打包成lib_modules.tar.gz make modules -j8 make modules_install INSTALL_MOD_PATH=/tmp cd /tmp/ tar czvf /tmp/lib_modules.tar.gz lib cd - # 把lib_modules.tar.gz拷回来--当然,不拷也行 mv /tmp/lib_modules.tar.gz ./ # 最后,把带有emmc分区修复功能的ramdisk打包进boot.img内 ./mk-fitimage.sh boot.img boot4recovery.its arch/$ARCH/boot/Image $DTB_PATH resource.img rootfs.cpio.gz

手动执行完以上操作后,则参考本文的==2.3编译wifi驱动==去更新:db37-ko.tar.gz

在调试完所有功能以后,有【归档发布】的需求,可以执行make savedefconfig把.config变成defconfig,用于与mydefconfig对比。手动把差异项补充到rv1126b_eai.config内。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人工智能
    +关注

    关注

    1821

    文章

    50523

    浏览量

    267777
  • 开发板
    +关注

    关注

    26

    文章

    6513

    浏览量

    121368
  • 瑞芯微
    +关注

    关注

    27

    文章

    906

    浏览量

    54738
  • EASY-EAI灵眸科技

    关注

    4

    文章

    140

    浏览量

    3753
  • RV1126B
    +关注

    关注

    0

    文章

    134

    浏览量

    283
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    (EASY EAI)RV1126B 音频输入

    1.声卡资源介绍EASY-EAI-Nano-TB仅有一块由RV1126B主控输出的声卡。通过串口调试或ssh调试,可以进入开发板终端。执行aplay命令查看声卡相关的详细信息,如下所示
    的头像 发表于 12-18 13:41 2702次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> 音频输入

    (EASY EAI)RV1126B PWM使用

    1.PWM简介1.1开发板PWM资源1.2查找PWM节点rv1126b的pwm资源表如下:【PWM1CH0】对应的是pwm1_4ch_0,寄存地址为20700000。【PWM1CH1】对应
    的头像 发表于 01-06 10:49 8968次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> PWM使用

    (EASY EAI)RV1126B 音频输出

    1.声卡资源介绍EASY-EAI-Nano-TB仅有一块由RV1126B主控输出的声卡。通过串口调试或ssh调试,可以进入开发板终端。执行aplay命令查看声卡相关的详细信息,如下所示
    的头像 发表于 04-01 17:13 8725次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> 音频输出

    (EASY EAI)RV1126B RV1126B最小系统

    1.RV1126B最小系统1.1最小系统核心板已经将电源管理芯片、DDR、EMMC集成于一个小巧的模块上,所需的外部电路非常简洁。如下图所示,构成一个最小系统只需要5V电源和基础外设。在系统上电
    的头像 发表于 05-15 17:27 6099次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> <b class='flag-5'>RV1126B</b>最小系统

    EASY EAI Nano-TB(RV1126B)开发板试用】+初识篇

    Nano-TB是灵眸科技研发的一款应用于AIoT领域的开发板,它基于RV1126B处理器,集成了4个Cortex-A53及独立的NEON协处理器,它支持4K@30fps的H.
    发表于 10-25 22:06

    EASY EAI Nano-TB(RV1126B)开发板试用】介绍、系统安装

    ,并介绍了系统镜像安装部署的相关流程。 介绍 EASY-EAI-Nano-TB是灵眸科技研发的一款应用于AIoT领域的AIOT主板。 核心板基于
    发表于 12-23 18:05

    RV1126系列选型指南:从RV1126RV1126B,一文看懂升级差异

    2025年7月,正式发布新一代AI视觉芯片RV1126B。作为其金牌方案商,EASYEAI灵眸科技同步推出搭载该芯片的AIoT核心板EAI11
    的头像 发表于 09-04 10:50 5474次阅读
    <b class='flag-5'>RV1126</b>系列选型指南:从<b class='flag-5'>RV1126</b>到<b class='flag-5'>RV1126B</b>,一文看懂升级差异

    【免费试用】EASY EAI Nano-TB(RV1126B)开发套件评测

    EASY-EAI-Nano-TB是灵眸科技研发的一款应用于AIoT领域的AIOT主板。核心板基于RV1126B处理器设计,并引入了新
    的头像 发表于 09-23 08:09 1401次阅读
    【免费试用】<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b> Nano-TB(<b class='flag-5'>RV1126B</b>)开发套件评测

    RV1126B特性概述

    RV1126BRockchip在2025年第二季度全新推出的Arm架构AI视觉芯片,搭载4核Cortex-A53与自研3Tops算力NPU。全面替代上一代的
    的头像 发表于 10-09 11:22 2400次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RV1126B</b>特性概述

    替代升级实锤!实测RV1126B,CPU性能吊打RV1126

    AI智能芯片迭代提速,推出了全新的Arm架构AI视觉芯片RV1126B,是否替换RV1126,CPU性能是挤牙膏还是大突破。带着这些核
    的头像 发表于 12-11 17:13 2741次阅读
    替代升级实锤!实测<b class='flag-5'>RV1126B</b>,CPU性能吊打<b class='flag-5'>RV1126</b>

    (EASY EAI)RV1126B 人体关键点识别

    的特点。本人员检测算法在数据集表现如下所示:基于EASY-EAI-Nano-TB(RV1126B)硬件主板的运行效率:17个人体关键点索引定义:2.快速上手2.1开发
    的头像 发表于 01-23 10:13 4198次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> 人体关键点识别

    (EASY EAI)RV1126B rknn-toolkit-lite2使用方法

    1.rknn-toolkit-lite2介绍RKNN-Toolkit-Lite2是(Rockchip)专为旗下RK系列芯片(如RV1126B、RK3576、RK3588等)打造的
    的头像 发表于 04-22 17:38 1052次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> rknn-toolkit-lite2使用方法

    (EASY EAI)RV1126B yolov11训练部署教程

    、使用最广泛的YOLO变体。YOLO11将延续YOLO系列的传奇。本教程针对目标检测算法yolo11的训练和部署到EASY-EAI-Nano-TB(RV1126B)进行
    的头像 发表于 05-09 16:59 895次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> yolov11训练部署教程

    RV1126B 方案特性

    RV1126B是面向边缘视觉场景的专用处理芯片,凭借低功耗、内置AI-ISP、双路MIPI-CSI接口以及端侧AI算力,可支撑常规监控、双光谱、多目视觉等多类相机产品开发,配合定
    的头像 发表于 05-11 14:27 1447次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RV1126B</b> 方案特性

    (EASY EAI)RV1126B ubuntu系统SDK源码获取

    1.源代码获取RV1126B的ubuntu系统SDK基于ubuntu22.04进行适配移植,所以建议同样在ubuntu22.04的环境(如EASY-EAI编译环境)下编译开发,并且源码部署在服务器
    的头像 发表于 05-23 16:32 46次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> ubuntu系统SDK源码获取