欢迎光临
我们一直在努力

【Zephyr开发系列-10】设备树绑定机制

1 设备树Binding

在Zephyr的Devicetree中,binding(绑定文件) 用于定义某一类设备树节点应具备的属性、属性类型以及约束规则。 从作用上看,binding是连接 设备树节点与构建系统/驱动代码的桥梁。Zephyr的设备树绑定采用自定义格式的YAML文件形式来表示(Zephyr并不使用Linux内核所使用的dt-schema工具)。

1.1 Binding与compatible的关系

设备树中的节点,通常是通过其compatible属性与binding进行匹配的。在配置阶段,构建系统会遍历设备树中的各个节点,并尝试为每个节点找到对应的binding文件。 一旦匹配成功,构建系统就会利用该binding完成两项工作:

  • 校验节点内容是否法
  • 为该节点生成可供C 代码使用的宏
  • 1.2 最简单的示例

    下面先看一个简单的设备树节点:

    /* Node in a DTS file */
    bar-device {
    compatible = \”foo-company,bar-device\”;
    num-foos = <3>;
    };

    这个节点包含两个关键信息:<

    赞(0)
    未经允许不得转载:171主机测评 » 【Zephyr开发系列-10】设备树绑定机制
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址