参考资料: https://blog.csdn.net/weixin_45668170/article/details/130967094 https://wenku.csdn.net/column/5s90hefd57 一个常规的设备树主要由源文件 .dts 和头文件 .dtsi 以及一些 .h 文件共同编译出可以由Linux系统加载的 .dtb二进制文件,内核就会在初始化后根据 uboot 加载这个 .dtb 的二进制文件,然后根据设备树的节点把相关的硬件设备对应的驱动注册好。这个我们可以称之为 live tree。 传统的设备树一般用于硬件资源已经确定的情况,但如果要添加或者删除硬件资源,需要找出已经在设备中使用的设备树源文件然后在源文件上修改,内核为了解决这个问题,就提出了Device Tree Overlays,中文上可以理解为“设备树插件”。其核心是通过传统的设备树语法,使得各个硬件模块的信息可以独立地用新的设备树语法来描述。在系统实际使用时,根据实际应用情景,需要用到哪些硬件模块就把对应的设备树插件加入到主设备树即可。 dts overlay的安装:
- 下载源代码
sudo apt update sudo apt install device-tree-compiler git clone https://git.kernel.org/pub/scm/utils/dtc/dtc.git
- 编译源代码
cd dtc make
- 安装编译后的命令
sudo cp dtc/dtoverlay /usr/local/bin
- 验证安装