zephyr/scripts/dts/test-bindings
Ulf Magnusson d834b69bd9 scripts: dts: Improve syntax and code for including binding files
Have

    include: foo.dts
    include: [foo.dts, bar.dts]

instead of

    inherits:
        !include foo.dts

    inherits:
        !include [foo.dts, bar.dts]

This is a nicer and shorter and less cryptic syntax, and will make it
possible to get rid of the custom PyYAML constructor for '!include'
later.

'inherits: !include ...' is still supported for backwards compatibility
for now. Later on, I'm planning to mass-replace it, add a deprecation
warning if it's used, and document 'include:'. Then the '!include'
implementation can be removed a bit later.

'!include' has caused issues in the past (see the comment above the
add_constructor() call), gets iffy with multiple EDT instances, and
makes the code harder to follow.

I'm guessing '!include' might've been intended to be useful outside of
'inherits:' originally, but that's the only place where it's used. It's
undocumented that it's possible to put it elsewhere.

To implement the backwards compatibility, the code just transforms

    inherits:
        !include foo.dts

into

    inherits:
        - foo.dts

and treats 'inherits:' similarly to 'include:'. Previously, !include
inserted the contents of the included file instead.

Some more sanity checks for 'include:'/'inherits:' are included as well.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2019-09-07 10:25:02 -05:00
..
child.yaml scripts: dts: Improve syntax and code for including binding files 2019-09-07 10:25:02 -05:00
clock-1-cell.yaml
clock-2-cell.yaml
false-positive.yaml dts: edtlib: Improve how we get the compatible string from bindings 2019-09-07 10:25:02 -05:00
fixed-clock.yaml
gpio-1-cell.yaml
gpio-2-cell.yaml
grandchild-1.yaml scripts: dts: Improve syntax and code for including binding files 2019-09-07 10:25:02 -05:00
grandchild-2.yaml scripts: dts: Improve syntax and code for including binding files 2019-09-07 10:25:02 -05:00
interrupt-1-cell.yaml
interrupt-2-cell.yaml
interrupt-3-cell.yaml
io-channel.yaml scripts/dts: add basic test for IO channel property 2019-08-09 13:16:09 -05:00
multidir.yaml
parent.yaml scripts: dts: Improve syntax and code for including binding files 2019-09-07 10:25:02 -05:00
props.yaml dts: dtlib/edtlib: Add phandle and phandle+nums array types 2019-09-07 10:25:02 -05:00
pwm-1-cell.yaml
pwm-0-cell.yaml
sub-node-parent.yaml dts: bindings: Have 'required: true/false' instead of 'category: ...' 2019-09-07 10:25:02 -05:00