一:刪除節點
通常DTS中包含了多個平台的描述文件,且多個平台會共享一些通用的dtsi。這些dtsi的節點對於指定的平台來說,其節點未必全部需要,因此就需要將不需要的節點進行裁剪或者DISABLE。節點刪除就是實現這個作用。
語法如下:
/delete-node/ 節點名;
例如在draz7.dtsi里面定義了rtc的節點,但是在自己的產品中不想使用這個RTC,而使用其他的rtc:
draz7.dtsi 相關內容如下:
1 / { 2 ... 3 ocp { 4 ... 5 rtc { 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 };
在am452x-xxx.dts,中刪除:
#include "draz7.dtsi" / { ... ocp { /delete-node/ rtc; }; };
二:刪除屬性
1 #include "draz7.dtsi" 2 ... 3 4 &rtc { 5 /delete-property/ property1; 6 /delete-property/ property2; 7 };