RK3568驱动指南|第八篇 设备树插件-第72章 设备树插件语法和编译实验

瑞芯微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主板


第72章 设备树插件语法和编译实验

在上一章节中,我们介绍了设备树插件和概念和作用,本章节将继续深入探讨设备树插件,重点关注其语法和编译过程。无论是在嵌入式系统开发还是设备驱动开发中,掌握设备树插件的语法和编译过程都是非常重要的。接下来,让我们一起深入了解这些内容,为更好地应用设备树插件打下坚实的基础。

72.1 设备树插件语法

设备树插件的语法格式基于设备树源文件的语法,但是有一些特定的语法和指令用于描述插件的行为。下面是设备树插件语法格式的一般结构和示例。我们新建overlay.dts,如下(图72- 1)所示:

图72- 1

我们编写overlay.dts,如下所示:

1 首先添加插件头部声明,它指定了插件的名称和版本等信息,并指定了要修改的设备树的路径,如下所示:

/dts-v1/;

/plugin/;

2 插件节点名称用于定义要添加,修改或删除的设备节点及其属性。它使用与设备树源文件相同的语法,但在节点名称前面使用特定的修饰符来指示插件的操作。比如设备树中rs485节点为如下所示,rs485节点位于(图72- 2)根节点下。

图72- 2

那么我们如果在设备树插件中要为这个节点添加overlay_node节点,可以有如下几种表达方式:

图72- 4

这四种方式是等效的,大家了解即可。

72.2 设备树插件编译

我们将上个小节编写的overlay.dts的方法二 三四注释掉,保留方法一,然后编译设备树插件overlay.dts,输入以下命令:

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

图72- 5

反编译设备树,输入以下命令:

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

图72- 6

反编译成功之后,查看1.dts,可以比较下overlay.dts 和1.dts的区别。通过反编译设备树有助于理解和修改设备树配置,帮助开发者更好地进行系统开发,调试和故障排除。


相关推荐
cxr8281 小时前
SPARC方法论在Claude Code基于规则驱动开发中的应用
人工智能·驱动开发·claude·智能体
Ronin3052 小时前
【Linux系统】日志与策略模式
linux·策略模式·日志
ZzzK,2 小时前
JAVA虚拟机(JVM)
java·linux·jvm
Aspiresky3 小时前
浅析Linux进程信号处理机制:基本原理及应用
linux·运维·信号处理
ajassi20004 小时前
linux C 语言开发 (八) 进程基础
linux·运维·服务器
..过云雨4 小时前
05.【Linux系统编程】进程(冯诺依曼体系结构、进程概念、进程状态(注意僵尸和孤儿)、进程优先级、进程切换和调度)
linux·笔记·学习
matlab的学徒5 小时前
Web与Nginx网站服务(改)
linux·运维·前端·nginx·tomcat
Insist7535 小时前
prometheus安装部署与alertmanager邮箱告警
linux·运维·grafana·prometheus
BAGAE5 小时前
MODBUS 通信协议详细介绍
linux·嵌入式硬件·物联网·硬件架构·iot·嵌入式实时数据库·rtdbs
灿烂阳光g5 小时前
SELinux 策略文件编写
android·linux