设备树绑定
一个设备本身只是描述硬件故事的一半,因为它是一种相对非结构化的格式。设计人员的绑定提供了另一半。
设备树绑定声明对节点内容的要求,并提供有关有效节点内容的语义信息。Zephyr设备树绑定是自定义格式的YAML文件(Zephyr不使用Linux内核所使用的dt模式工具)。
本页面介绍绑定,描述它们做什么,记录它们的位置,并解释它们的数据格式。
注意:
有关内置到Zephyr的绑定的参考信息,请参阅绑定索引。
介绍
设备树节点使用它们的兼容属性来匹配绑定。
在配置阶段,构建系统会尝试将设备树中的每个节点与绑定文件进行匹配。当此操作成功时,构建系统在验证节点的内容和为节点生成宏时都会使用绑定文件中的信息。
一个简单的例子
下面是一个设备树节点的示例:
/* Node in a DTS file */
bar-device {
compatible = "foo-company,bar-device";
num-foos = <3>;
};
下面是一个与节点相匹配的最小绑定文件:
# A YAML binding matching the node
compatible: "foo-company,bar-device"
properties:
num
设备树绑定在Zephyr系统中起着关键作用,它提供了关于硬件节点内容的结构化信息。绑定文件是YAML格式,用于验证设备树节点内容并生成宏。构建系统依据节点的兼容属性匹配绑定,通过验证属性并根据节点内容生成头文件。绑定文件包含Description、Compatible、Properties等部分,描述节点需求和属性规则。设备树节点与兼容的绑定匹配,构建系统会使用绑定信息来检查和转换设备树内容。
订阅专栏 解锁全文
725

被折叠的 条评论
为什么被折叠?



