On Fri, Oct 13, 2023 at 02:24:24PM +0530, Aradhya Bhatia wrote: > Exempt 'ports' from the rule which asserts that nodes with single child > node having reg = 0, should not have the '#size-cells' and > '#address-cells' properties. > > Ports of certain hardware do need to be described as only having a > single child node 'port@0', especially when hardware has multiple ports, > and the other ports 'port@x' are planned to be added subsequently. In > such cases, just using 'port', would be an inaccurate hardware > description. > > For example, Texas Instruments' DSS (display-subsystem), which has 2 or > 4 video ports depending on the SoC. Describing the first video port with > just 'port' under ports would be inaccurate and even slightly > misleading. Simply using port@0 (when other ports are not added) > produces the following warning, while making dtbs with W=1 flag set[0]. There's a reason this is behind W=1. In general, if you only have a single 'port' it should be just 'port' which is equivalent to port 0. There's exceptions to that, so the warning is off by default. > code-block :: > > Warning (graph_child_address): /bus@100000/dss@4a00000/ports: > graph node has single child node 'port@0', > #address-cells/#size-cells are not necessary > > Signed-off-by: Aradhya Bhatia <a-bhatia1@xxxxxx> > > [0]: https://lore.kernel.org/all/570903b6-8239-d44a-5fac-71700804cb5d@xxxxxx/ > --- > scripts/dtc/checks.c | 11 ++++++++++- > 1 file changed, 10 insertions(+), 1 deletion(-) This is a copy of upstream dtc. We don't take patches for it (except in emergency). Look at the commit history. Rob