设备树


kernel/msm-3.18/arch/arm64/boot/dts/qcom/sdm450-qrd-yd-evt.dtsi

DTS、DTB、DTC是什么

  • .dts文件是一种ASCII文本格式的设备树描述文件,一般一个dts文件对应一个设备。
  • .dtsi文件可以被.dts文件包含,靠后的dts文件可以覆盖dtsi文件中的配置;一个dtsi文件可以被多个dts或dtsi文件包含(就像头文件),这样就可以把一些soc的公用配置放到这里。
  • .dtb文件是编译之后的二进制文件,可以被内核或BootLoader识别。
  • .dtc是将dts编译成dtb的工具,其源码在内核的script/dtc目录中,在内核使能设备树的情况下,编译内核的时候dtc会被编译出来。
  • 绑定txt,讲解节点和属性是如何描述设备树的硬件细节,如兼容性、必须或可选的属性。位于Document、devicetree/bingings目录下。

DTS文件内容

表征了一个设备树的结构:一个root节点下包含了n个子节点,其下又有子节点,每个节点都有一系列属性,这些属性可能为空、字符串、字符串数组、u32的cell、二进制数。

在一系列属性中,比较重要的是

  • cpmpitable = "","";这条属性可以有多个,表明兼容什么设备,如果是根节点则代表启动的设备soc、chip是什么。
  • reg<,> 表示设备地址和其cell长度。
  • pinctrl 如果有suspend、resume则需要之前编写了对应的结构,然后在此处匹配

![企业微信截图_1626061312701.png][1]
[1]: https://lxy98.cn/usr/uploads/2021/07/1681139460.png

dts文件编写

posted @ 2021-12-23 15:26  月的光景  阅读(102)  评论(0编辑  收藏  举报