新建节点:

i2c2: i2c@021a0000 {
    compatible = “fsl,imx6ul-i2c”;
    reg = <0x021a0000 0x4000>;
};

[label:] node-name[@unit-address] {
    [properties definitions]
    [child nodes]
}

其中lable和unit-address可以没有

修改节点(覆盖、新增):

&i2c2 {
    status = “okay”;       // 覆盖原来的status
    clock-frequency = <400000>; // 新增属性
};

&是引用节点的意思

设备树也是这样的,一个根节点,包含CPU,然后在包含一些控制器,控制器下面再挂在一些外部设备

问:为啥我吧iomuxc_snvs节点的引脚,写道iomuxc中,也能正常工作?

难道不是根据这两个节点的根地址进行计算的?

发现了一点:网络驱动的复位引脚,就算我注释了,也照样能用

大问题:一个引脚设备树中,写道iomuxc和iomuxc_snvs中一样吗?到时候试验下

  1. 设备树的lable好像全树中,只能有一个