Linux DTS(Device Tree Source)设备树详解之二(dts匹配及发挥作用的流程篇)

目录
Linux DTS(Device Tree Source)设备树详解之二(dts匹配及发挥作用的流程篇)
Dts中相关符号的含义
DTS中几个难理解的属性的解释
地址
中断
其他
DTS设备树描述文件中什么代表总线,什么代表设备
由DTS到device_register的过程
arch/arm/mach-xxx/xxx.c :
drivers/of/platform.c :
drivers/of/platform.c : of_platform_bus_create(bus, …)
3-2. drivers/of/platform.c :
查看挂载上的所有设备
请尊重原创版权,转载注明出处。
Linux DTS(Device Tree Source)设备树详解之二(dts匹配及发挥作用的流程篇)
    一个dts文件确定一个项目,多个项目可以包含同一个dtsi文件。找到该项目对应的dts文件即找到了该设备树的根节点

kernel\arch\arm\boot\dts\qcom\sdm630-mtp.dts

/* Copyright © 2017, The Linux Foundation. All rights reserved.
*

  • This program is free software; you can redistribute it and/or modify
  • it under the terms of the GNU General Public License version 2 and
  • only version 2 as published by the Free Software Foundation.
  • This program is distributed in the hope that it will be useful,
  • but WITHOUT ANY WARRANTY; without even the implied warranty of
  • MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  • GNU General Public License for more details.
    */

/dts-v1/;

#include “sdm630.dtsi”
#include “sdm630-mtp.dtsi”
//#include “sdm660-external-codec.dtsi”
#include “sdm660-internal-codec.dtsi”
#include “synaptics-dsx-i2c.dtsi”

/ {
model = “Qualcomm Technologies, Inc. SDM 630 PM660 + PM660L MTP”;
compatible = “qcom,sdm630-mtp”, “qcom,sdm630”, “qcom,mtp”;
qcom,board-id = <8 0>;
qcom,pmic-id = <0x0001001b 0x0101011a 0x0 0x0>,
<0x0001001b 0x0201011a 0x0 0x0>;
};

&tavil_snd {
qcom,msm-mbhc-moist-cfg = <0>, <0>, <3>;

};
当然devicetree的根节点也是需要和板子进行匹配的,这个匹配信息存放在sbl(second boot loader)中, 对应dts文件中描述的board-id(上面代码中的qcom,board-id属性),通过共享内存传递给bootloader, 由bootloader将此board-id匹配dts文件(devicetree的根节点文件),将由dtc编译后的dts文件(dtb文件)加载到内存, 然后在kernel中展开dts树,并且挂载dts树上的所有设备。

(ps:cat /proc/cmdline 查看cmdline)

Dts中相关符号的含义
/ - 根节点

@ - 如果设备有地址,则由此符号指定

& - 引用节点
  • 冒号前的label是为了方便引用给节点起的别名,此label一般使用为&label

, - 属性名称中可以包含逗号。如compatible属性的名字 组成方式为”[manufacturer], [mode

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

踏马潜行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值