Re: How delete node or property in overlayd dts?

From: Rob Herring
Date: Fri Aug 17 2018 - 13:48:03 EST


On Tue, Aug 14, 2018 at 7:26 PM Frank Rowand <frowand.list@xxxxxxxxx> wrote:
>
> On 08/14/18 07:46, åæ wrote:
> > /delete-node/ /delete-prop/ could be used in dtsi files without device
> > tree overlay.
> >
> > but with device tree overlay, /delete-node/ and /delete-prop/ are not work.
> > How to delete property and node in overlay dts?
> >
> > for example,
> > in basel.dts have following node
> > node1 {
> > property1;
> > property3;
> > node2 {
> > property2;
> > }
> > }
> >
> > in overlay.dts as following
> > node1 {
> > /delete-property/ property1;
> > /delete-node/ node2;
> > }
> >
> > after overlay, property1 and node2 is not deleted.
> >
>
> The /delete-node/ and /delete-prop/ directives are only used by the
> dtc compiler within a single compilation.
>
> There is nothing in the format of a devicetree blob to represent the
> notion of deleting a property or a node.
>
> You can not delete a property or a node in an overlay dtb.

Though you can add/override 'status' with 'status = "disabled";' which
should be treated very similar to a node not being present. I say
similar because it's a source of bugs for the OS to fail to pay
attention to status property.

Rob