dts语法记录

这篇博客详细介绍了Linux内核配置中节点的结构,包括节点名的限制和命名规范。文中提到了节点名应遵循的ASCII字符串规则,并举例说明了如何表示设备节点,如rtc@6f节点的配置。此外,还特别提到了几个特殊的内核节点,如chosen、aliases和memory,这些节点在系统中起到关键作用,如存储运行时参数、定义别名和描述内存布局。
摘要由CSDN通过智能技术生成

/{                                  //根节点
    node1{                          //node1是节点名,是/的子节点
        key=value;                  //node1的属性
        ...
        node2{                      //node2是node1的子节点
            key=value;              //node2的属性
            ...
        }
    }                               //node1的描述到此为止
    node3{
        key=value;
        ...
    }
}
 
 
节点名:
理论上节点名只要是长度不超过31个字符的ASCII字符串即可(一般按照C语言变量命令的方式就行),此外Linux内核还约定节点名应写成形如<name>[@<unit_address>]的形式,其中name就是节点名,最长可以是31个字符长度。unit_address一般是节点地址,用来唯一标识一个节点,下面就是典型节点名的写法:
rtc@6f {
        compatible = "rtc,rtc-isl1208";
        reg = <0x6f>;
        interrupt-parent = <&gpio5>;
        interrupts = <30 3>;
    };
注:Linux设备数存在一些特殊节点,如:
    chosen:主要用来描述由系统指定的运行时的参数
    aliases:定义别名
    memory:描述内存。该节点里面的device_type 属性必须为 "memory"
    memory {
device_type = "memory";
reg = <0x10000000 0x40000000>;
};

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

monkey_llll

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

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

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

打赏作者

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

抵扣说明:

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

余额充值