Message ID | 20221019093215.8204-2-allen.chen@ite.com.tw |
---|---|
State | New |
Headers | show |
Series | [v5,1/2] dt-bindings: it6505: add properties to restrict output bandwidth | expand |
Hi Allen, On Tue, Oct 25, 2022 at 12:37 AM Rob Herring <robh@kernel.org> wrote: > > On Wed, Oct 19, 2022 at 05:32:13PM +0800, allen wrote: > > From: allen chen <allen.chen@ite.com.tw> > > > > Add properties to restrict dp output data-lanes and clock. > > > > Signed-off-by: Pin-Yen Lin <treapking@chromium.org> > > Signed-off-by: Allen Chen <allen.chen@ite.com.tw> > > --- > > .../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
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 + 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. + required: + - port@0 + - port@1 required: - compatible @@ -63,6 +124,7 @@ required: - interrupts - reset-gpios - extcon + - ports additionalProperties: false @@ -85,9 +147,24 @@ examples: reset-gpios = <&pio 179 1>; extcon = <&usbc_extcon>; - port { - it6505_in: endpoint { - remote-endpoint = <&dpi_out>; + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + it6505_in: endpoint { + remote-endpoint = <&dpi_out>; + link-frequencies = /bits/ 64 <150000000>; + }; + }; + + port@1 { + reg = <1>; + it6505_out: endpoint { + remote-endpoint = <&dp_in>; + data-lanes = <0 1>; + }; }; }; };