Re: [PATCH 1/2] dt-bindings: arm: Convert CoreSight bindings to DT schema

Rob Herring
2022-05-23T12:54:10Z

On Sat, May 21, 2022 at 04:54:48PM +0200, Krzysztof Kozlowski wrote:
> On 20/05/2022 23:44, Rob Herring wrote:
> > Each CoreSight component has slightly different requirements and
> > nothing applies to every component, so each CoreSight component has its
> > own schema document.
> >
>
> (...)
>
> > + const: arm,coresight-dynamic-funnel
> > + required:
> > + - compatible
> > +
> > +allOf:
> > + - $ref: /schemas/arm/primecell.yaml#
> > +
> > +properties:
> > + compatible:
> > + items:
> > + - const: arm,coresight-dynamic-funnel
> > + - const: arm,primecell
> > +
> > + reg:
> > + maxItems: 1
> > +
> > + clocks:
> > + minItems: 1
> > + maxItems: 2
> > +
> > + clock-names:
> > + minItems: 1
> > + items:
> > + - const: apb_pclk
> > + - const: atclk
> > +
> > + in-ports:
> > + $ref: /schemas/graph.yaml#/properties/ports
>
> Shouldn't this be with unevaluatedProperties:false?

No, because the ports definition has 'additionalProperties: false'. That
does mean port nodes aren't actually restricted to 0-7 in any way. Not
really any way to fix that other than listing #address-cells/#size-cells
here or a pattern matching disallowed ports. But I think the limit to 8
is just current implementations and perhaps practical limit of how many
streams of trace data can be combined.

> > +
> > + patternProperties:
> > + '^port(@[0-7])?$':
> > + description: Input connections from CoreSight Trace bus
> > + $ref: /schemas/graph.yaml#/properties/port