设备树的概念

可以理解为设备树的树干是系统总线,树枝上面是其他的不同的通信协议线。对于不同通信协议的设备挂载在对应的节点即可

在设备树出现以前,所有关于设备的具体信息都要写在驱动里,一旦外围设备变化,驱动代码就要重写。 ​ 引入了设备树之后,驱动代码只负责处理驱动的逻辑 ,而关于设备的具体信息存放到设备树文件中 , ​ 这样,如果只是硬件接口信息的变化而没有驱动逻辑的变化 ,驱动开发者只需要修改设备树文件信息,不需要改写驱动代码。 ​ 比如在ARM Linux内,一个.dts(device tree source)文件对应一个ARM的machine,一般放置在内核的"arch/arm/boot/dts/"目录内。 ​ 比如exynos4412参考板的板级设备树文件"arch/arm/boot/dts/exynos4412-origen.dts",可以通过$make dtbs命令编译成二进制的.dtb文件供内核驱动使用。

相关推荐
是小胡嘛1 天前
C++之Any类的模拟实现
linux·开发语言·c++
口袋物联1 天前
设计模式之工厂模式在 C 语言中的应用(含 Linux 内核实例)
linux·c语言·设计模式·简单工厂模式
qq_479875431 天前
X-Macros(1)
linux·服务器·windows
笨笨聊运维1 天前
CentOS官方不维护版本,配置python升级方法,无损版
linux·python·centos
HIT_Weston1 天前
39、【Ubuntu】【远程开发】拉出内网 Web 服务:构建静态网页(二)
linux·前端·ubuntu
福尔摩斯张1 天前
《C 语言指针从入门到精通:全面笔记 + 实战习题深度解析》(超详细)
linux·运维·服务器·c语言·开发语言·c++·算法
TH_11 天前
腾讯云-(3)-Linux宝塔面板使用
linux·云计算·腾讯云
虚伪的空想家1 天前
arm架构服务器使用kvm创建虚机报错,romfile “efi-virtio.rom“ is empty
linux·运维·服务器·javascript·arm开发·云原生·kvm
深藏bIue1 天前
linux服务器mysql目录下的binlog文件删除
linux·服务器·mysql
虾..1 天前
Linux 进程状态
linux·运维·服务器