Hi Allen, On Tue, Oct 25, 2022 at 12:37 AM Rob Herring <robh@xxxxxxxxxx> wrote: > > On Wed, Oct 19, 2022 at 05:32:13PM +0800, allen wrote: > > From: allen chen <allen.chen@xxxxxxxxxx> > > > > Add properties to restrict dp output data-lanes and clock. > > > > Signed-off-by: Pin-Yen Lin <treapking@xxxxxxxxxxxx> > > Signed-off-by: Allen Chen <allen.chen@xxxxxxxxxx> > > --- > > .../bindings/display/bridge/ite,it6505.yaml | 89 +++++++++++++++++-- > > 1 file changed, 83 insertions(+), 6 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/display/bridge/ite,it6505.yaml b/Documentation/devicetree/bindings/display/bridge/ite,it6505.yaml > > index 833d11b2303a7..8e607b6929fc9 100644 > > --- a/Documentation/devicetree/bindings/display/bridge/ite,it6505.yaml > > +++ b/Documentation/devicetree/bindings/display/bridge/ite,it6505.yaml > > @@ -52,9 +52,70 @@ properties: > > maxItems: 1 > > description: extcon specifier for the Power Delivery > > > > - port: > > - $ref: /schemas/graph.yaml#/properties/port > > - description: A port node pointing to DPI host port node > > No existing users you are breaking? The commit msg should explain. > > > + ports: > > + $ref: /schemas/graph.yaml#/properties/ports > > + > > + properties: > > + port@0: > > + $ref: /schemas/graph.yaml#/$defs/port-base > > + unevaluatedProperties: false > > + description: A port node pointing to DPI host port node > > + > > + properties: > > + endpoint: > > + $ref: /schemas/graph.yaml#/$defs/endpoint-base > > + unevaluatedProperties: false > > + > > + properties: > > + link-frequencies: > > + minItems: 1 > > + maxItems: 1 > > + description: Allowed max link frequencies in Hz > > + > > + port@1: > > + $ref: /schemas/graph.yaml#/$defs/port-base > > + unevaluatedProperties: false > > + description: Video port for DP output > > + > > + properties: > > + endpoint: > > + $ref: /schemas/graph.yaml#/$defs/endpoint-base > > + unevaluatedProperties: false > > + > > + properties: > > + data-lanes: > > + oneOf: > > + - minItems: 1 > > + maxItems: 1 > > + uniqueItems: true > > + items: > > + enum: > > + - 0 > > + - 1 > > + description: For one lane operation. > > + > > + - minItems: 2 > > + maxItems: 2 > > + uniqueItems: true > > + items: > > + enum: > > + - 0 > > + - 1 > > + description: For two lanes operation. > > + > > + - minItems: 4 > > + maxItems: 4 > > + uniqueItems: true > > + items: > > + enum: > > + - 0 > > + - 1 > > + - 2 > > + - 3 > > + description: For four lanes operation. > > I would do just: > > data-lanes: > minItems: 1 > items: > - enum: [ 0, 1 ] > - const: 1 > - const: 2 > - const: 3 I believe we also want a `uniqueItems: true` to prevent duplicate items like `<1 1>`. Regards, Pin-yen > > It does allow 3 lanes, but I don't think that's a big deal. What it does > doesn't allow is any order and yours does. > > Rob