zoukankan      html  css  js  c++  java
  • 设备树常用的属性

    ① #address-cells、#size-cells 。cell 指一个 32 位的数值, address-cells:address 要用多少个 32 位数来表示;size-cells:size 要用多少个 32 位数来表示。
    ② compatible                               表示可以“兼容”什么
    ③ model                                      准确地定义这个硬件是什么
    ④ status                                      明确此设备的状态 
    ⑤ reg                                         用来表示寄存器地址   也可以用来描述一段空间
    ⑥ name                                     表示节点的名字 在跟 platform_driver 匹配时,优先级最低。
    ⑦ device_type                           表示节点的类型跟 platform_driver 匹配时,优先级为中。

    示例1:(涉及①address-cells和⑤ reg)

    下例中,address-cells 为 1,所以 reg 中用 1 个数来表示地址,即用 0x80000000 来表
    示地址;size-cells 为 1,所以 reg 中用 1 个数来表示大小,即用 0x20000000 表示大小:
    / {
    #address-cells = <1>;
    #size-cells = <1>;
    memory {
    reg = <0x80000000 0x20000000>;
    };
    };
    

    示例2 :涉及② compatible       ③ model                  

    / {
    compatible = "samsung,smdk2440", "samsung,mini2440";
    model = "jz2440_v3";
    };
    

    它表示这个单板,可以兼容内核中的“smdk2440”,也兼容“mini2440”。从 compatible 属性中可以知道它兼容哪些板,但是它到底是什么板?用 model 属性来明确。

    示例3:涉及④ status

    &uart1 {
    status = "disabled";
    };
    

    dtsi 文件中定义了很多设备,但是在你的板子上某些设备是没有的。这时你可以给这个设备节点添加一个 status 属性,设置为“disabled”.

    Value Description
    "okay" 设备正常运行
    "disabled" 设备不可操作,但是后面可能恢复工作
    "fail" 发生了严重错误,需修复
    "fail-sss" 发生了严重错误,需要修复;sss表示错误信息

      



    懒惰不会让你一下子跌到 但会在不知不觉中减少你的收获; 勤奋也不会让你一夜成功 但会在不知不觉中积累你的成果 越努力,越幸运。
  • 相关阅读:
    《社会动物》笔记
    对长城汽车品牌多样化的一点思考
    LightGBM简单例子
    mysql拆分字符串为多行(逗号等分割)
    vue中$refs、$emit、$on的使用场景
    js中的call()和apply()和bind()方法
    Vue.js中this.$nextTick()的使用
    Vue中ref和$refs的介绍及使用
    ES6(异步操作和Async函数&await)
    vue项目在git commit时,使用eslint检测
  • 原文地址:https://www.cnblogs.com/Rainingday/p/12517656.html
Copyright © 2011-2022 走看看