Linux 设备树 : 节点与属性的删除

一、节点删除

应用条件:通常DTS中包含了多个平台的描述文件,且多个平台会共享一些通用的dtsi。这些dtsi的节点对于指定的平台来说,其节点未必全部需要,因此就需要将不需要的节点进行裁剪或者DISABLE。节点删除就是实现这个作用。

语法如下: 
/delete-node/ 节点名;

例如在dra7.dtsi里面定义了rtc的节点,但是在自己的产品中不想使用这个RTC,而使用其他的rtc:

dra7.dtsi 相关内容如下:

  1. / {

  2. ...

  3. ocp {

  4. ...

  5. rtc: rtc@48838000 {

  6. compatible = "ti,am3352-rtc";

  7. reg = <0x48838000 0x100>;

  8. interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>,

  9. <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;

  10. ti,hwmods = "rtcss";

  11. clocks = <&sys_32k_ck>;

  12. property1 = <1>;

  13. property2;

  14. };

  15. };

  16. };

在am572x-xxx.dts,中删除:

  1. #include "dra7.dtsi"

  2.  
  3. / {

  4. ...

  5. ocp {

  6. /delete-node/ rtc@48838000;

  7. };

  8. };

二、属性删除
 

  1. #include "dra7.dtsi"

  2. ...

  3.  
  4. &rtc {

  5. /delete-property/ property1;

  6. /delete-property/ property2;

  7. };

猜你喜欢

转载自blog.csdn.net/a8039974/article/details/107726317