RK3568驱动指南|第八篇 设备树插件-第73章 设备树插件使用实验

瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工艺,搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码,支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU,可用于轻量级人工智能应用。RK3568 支持安卓 11 和 linux 系统,主要面向物联网网关、NVR 存储、工控平板、工业检测、工控盒、卡拉 OK、云终端、车载中控等行业。


【公众号】迅为电子

【粉丝群】824412014(加群获取驱动文档+例程)

【视频观看】嵌入式学习之Linux驱动(第八期_设备树插件_全新升级)_基于RK3568

【购买链接】迅为RK3568开发板瑞芯微Linux安卓鸿蒙ARM核心板人工智能AI主板


第73章 设备树插件使用实验

在上一章节中,我们详细介绍了设备树插件的语法和编译过程,为了更好地理解和应用这些知识,本章节将重点关注设备树插件在实际实验操作中的使用方法。让我们开始实际使用设备树插件吧!

73.1 准备实验环境

我们首先烧写网盘资料“iTOP-RK3568开发板【底板V1.7版本】\03_【iTOP-RK3568开发板】指南教程\02_Linux驱动配套资料\04_Linux驱动例程\65_dtbocfg”目录下的Linux系统镜像,然后将设备树插件dtbocfg.ko拷贝到系统中,最后使用“insmod dtbocfg.ko”命令加载驱动,如下(图 73-1)所示:

图 73-1

然后输入命令cat proc/filesystems检查configfs是否挂载成功。挂载成功如下(图 73-2)所示:

图 73-2

73.2设备树插件的使用

在上一个小节中,我们烧写了支持设备树插件的内核镜像,并且加载了dtbocfg.ko。在此基础上,本小节来讲述如何使用设备树插件。

在上一章节中,我们编写了overlay.dts。 在overlay.dts中,rk-485-ctl节点下添加新的节点overlay_node节点,如下(图 73-3)所示:

图 73-3

  使用dtc编译器编译得到dtbo文件,并将dtbo拷贝到开发板上。

/home/topeet/Linux/linux_sdk/kernel/scripts/dtc/dtc -I dts -O dtb overlay.dts -o overlay.dtbo

 

图 73-4

我们将编译好的dtbo文件拷贝到开发板上,如下图(图 73-5)所示:

图 73-5

我们进到系统/sys/kernel/config/device-tree/overlays/(这个目录需要加载设备树插件才会生成)目录下。如下图(图 73-6)所示:

 

图 73-6

在这个目录下使用以下命令创建一个内核对象,如下图(图 73-7)所示:

mkdir test

 

图 73-7

使用命令cd test进到test文件夹,如下图(图 73-8)所示:

 

图 73-8

使用以下命令写入dtbo中,如下图(图 73-9)所示:

cat /overlay.dtbo > dtbo

 

图 73-9

使用以下命令使能dtbo,如下图(图 73-10)所示:

echo 1 > status

图 73-10

此时我们可以使用以下命令看到加载的节点。

ls /proc/device-tree/rk-485-ctl/overlay_node/

图 73-11

如果我们想删掉使用dtbo修改的节点,在/sys/kernel/config/device-tree/overlays下使用“rmdir test”即可。如下图(图 73-12)所示:

图 73-12

此时我们可以使用命令“ls /proc/device-tree/rk-485-ctl/”查看,已经看不到添加的overlay_node节点了。

 图 73-13

73.3加载多个dtbo

我们准备第二个dtbo文件,修改overlay_node节点中的status属性。如下(图 73-14)所示:

图 73-14

在这个目录下使用命令mkdir test1创建一个内核对象。如下图(图 73-15)所示:

图 73-15

使用命令“cd test”进到test1文件夹,如下图(图 73-16)所示:

图 73-16

使用命令“cat /overlay2.dtbo > dtbo”写进dtbo中,如下图(图 73-17)所示:

图 73-17

使用命令“echo 1 > status”使用dtbo,如下图(图 73-18)所示:

图 73-18

此时我们可以使用命令“cat /proc/device-tree/rk-485-ctl/overlay_node/status”看到属性值已经被修改了过来,如下图(图 73-19)所示:

图 73-19

删除test1文件夹,如下图(图 73-20)所示:

图 73-20

可以看到status的属性值已经被修改了回来,如下图(图 73-21)所示:

图 73-21


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要适配RK3568和RTL8111HS的设备树,你可以按照以下步骤进行操作: 1. 打开设备树文件:找到你使用设备树文件,通常位于Linux内核源码中的arch目录下的相应架构文件夹中。 2. 添加网络设备节点:在设备树文件中,找到与网络设备相关的节点。如果没有现成的节点,你可以在设备树中添加一个新节点。 3. 设置RTL8111HS属性:在网络设备节点中,添加或修改与RTL8111HS相关的属性。这些属性可能包括设备型号、物理地址、中断号、时钟源等信息。具体的属性名称和取值需要参考RTL8111HS的文档或相关驱动程序。 4. 连接到RK3568:确保网络设备节点与RK3568的相应接口正确连接。这可能涉及到设置引脚、电源和信号线等连接。 5. 保存并编译设备树:保存修改后的设备树文件,并将其编译成二进制格式,以供内核加载使用。具体的编译方法和命令因不同的平台和工具链而有所不同。 6. 更新内核镜像:将编译好的设备树二进制文件与内核镜像一起打包,并更新到目标设备上。这个过程可能涉及到刷写固件或者更新系统软件的操作。 请注意,以上步骤仅提供了一个大致的指导,具体的适配过程可能因不同的硬件平台和Linux内核版本而有所不同。建议在进行任何修改之前,仔细阅读相关的文档和参考资料,并备份好原始的设备树文件,以防出现问题。另外,可能还需要针对RTL8111HS编写相应的驱动程序或进行其他配置,以确保其正常工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值