Hi Liu Ying, > -----Original Message----- > From: Liu Ying <victor.liu@xxxxxxx> > Sent: 28 October 2024 02:38 > Subject: [PATCH v4 08/13] dt-bindings: display: Document dual-link LVDS display common properties > > Dual-link LVDS displays receive odd pixels and even pixels separately from dual LVDS links. One link > receives odd pixels and the other receives even pixels. Some of those displays may also use only one > LVDS link to receive all pixels, being odd and even agnostic. Document common properties for those > displays by extending LVDS display common properties defined in lvds.yaml. > > Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> > Signed-off-by: Liu Ying <victor.liu@xxxxxxx> > --- > v4: > * Squash change for advantech,idk-2121wr.yaml and > panel-simple-lvds-dual-ports.yaml with lvds-dual-ports.yaml. (Rob) > * Improve description in lvds-dual-ports.yaml. (Krzysztof) > > v3: > * New patch. (Dmitry) > > .../bindings/display/lvds-dual-ports.yaml | 76 +++++++++++++++++++ > .../display/panel/advantech,idk-2121wr.yaml | 14 +--- > .../panel/panel-simple-lvds-dual-ports.yaml | 20 +---- > 3 files changed, 78 insertions(+), 32 deletions(-) create mode 100644 > Documentation/devicetree/bindings/display/lvds-dual-ports.yaml > > diff --git a/Documentation/devicetree/bindings/display/lvds-dual-ports.yaml > b/Documentation/devicetree/bindings/display/lvds-dual-ports.yaml > new file mode 100644 > index 000000000000..5f7a30640404 > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/lvds-dual-ports.yaml > @@ -0,0 +1,76 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/lvds-dual-ports.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Dual-link LVDS Display Common Properties > + > +maintainers: > + - Liu Ying <victor.liu@xxxxxxx> > + > +description: | > + Common properties for LVDS displays with dual LVDS links. Extend LVDS > +display > + common properties defined in lvds.yaml. > + > + Dual-link LVDS displays receive odd pixels and even pixels separately > + from the dual LVDS links. One link receives odd pixels and the other > + receives even pixels. Some of those displays may also use only one > + LVDS link to receive all pixels, being odd and even agnostic. > + > +allOf: > + - $ref: lvds.yaml# > + > +properties: > + ports: > + $ref: /schemas/graph.yaml#/properties/ports > + > + properties: > + port@0: > + $ref: /schemas/graph.yaml#/$defs/port-base > + unevaluatedProperties: false > + description: the first LVDS input link > + > + properties: > + dual-lvds-odd-pixels: > + type: boolean > + description: the first LVDS input link for odd pixels > + > + dual-lvds-even-pixels: > + type: boolean > + description: the first LVDS input link for even pixels port@0 we know it is first link port@1 we know it is second link. dual-lvds-odd-pixels: We know it is for odd pixels. dual-lvds-even-pixels: We know it is for odd pixels. Not sure, whether we can give common description and avoid the duplicate from port@1 ?? > + > + oneOf: > + - required: [dual-lvds-odd-pixels] > + - required: [dual-lvds-even-pixels] > + - properties: > + dual-lvds-odd-pixels: false > + dual-lvds-even-pixels: false Why this is false here? oneOf is not sufficient? > + > + port@1: > + $ref: /schemas/graph.yaml#/$defs/port-base > + unevaluatedProperties: false > + description: the second LVDS input link > + > + properties: > + dual-lvds-odd-pixels: > + type: boolean > + description: the second LVDS input link for odd pixels > + > + dual-lvds-even-pixels: > + type: boolean > + description: the second LVDS input link for even pixels > + > + oneOf: > + - required: [dual-lvds-odd-pixels] > + - required: [dual-lvds-even-pixels] > + - properties: > + dual-lvds-odd-pixels: false > + dual-lvds-even-pixels: false Same as above?? Cheers, Biju > + > +required: > + - ports > + > +additionalProperties: true > + > +... > diff --git a/Documentation/devicetree/bindings/display/panel/advantech,idk-2121wr.yaml > b/Documentation/devicetree/bindings/display/panel/advantech,idk-2121wr.yaml > index 2e8dbdb5a3d5..05ca3b2385f8 100644 > --- a/Documentation/devicetree/bindings/display/panel/advantech,idk-2121wr.yaml > +++ b/Documentation/devicetree/bindings/display/panel/advantech,idk-2121 > +++ wr.yaml > @@ -20,6 +20,7 @@ description: | > dual-lvds-odd-pixels or dual-lvds-even-pixels). > > allOf: > + - $ref: /schemas/display/lvds-dual-ports.yaml# > - $ref: panel-common.yaml# > > properties: > @@ -44,22 +45,10 @@ properties: > > properties: > port@0: > - $ref: /schemas/graph.yaml#/$defs/port-base > - unevaluatedProperties: false > - description: The sink for odd pixels. > - properties: > - dual-lvds-odd-pixels: true > - > required: > - dual-lvds-odd-pixels > > port@1: > - $ref: /schemas/graph.yaml#/$defs/port-base > - unevaluatedProperties: false > - description: The sink for even pixels. > - properties: > - dual-lvds-even-pixels: true > - > required: > - dual-lvds-even-pixels > > @@ -75,7 +64,6 @@ required: > - height-mm > - data-mapping > - panel-timing > - - ports > > examples: > - |+ > diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple-lvds-dual-ports.yaml > b/Documentation/devicetree/bindings/display/panel/panel-simple-lvds-dual-ports.yaml > index 10ed4b57232b..e80fc7006984 100644 > --- a/Documentation/devicetree/bindings/display/panel/panel-simple-lvds-dual-ports.yaml > +++ b/Documentation/devicetree/bindings/display/panel/panel-simple-lvds- > +++ dual-ports.yaml > @@ -22,6 +22,7 @@ description: | > If the panel is more advanced a dedicated binding file is required. > > allOf: > + - $ref: /schemas/display/lvds-dual-ports.yaml# > - $ref: panel-common.yaml# > > properties: > @@ -55,28 +56,10 @@ properties: > > properties: > port@0: > - $ref: /schemas/graph.yaml#/$defs/port-base > - unevaluatedProperties: false > - description: The first sink port. > - > - properties: > - dual-lvds-odd-pixels: > - type: boolean > - description: The first sink port for odd pixels. > - > required: > - dual-lvds-odd-pixels > > port@1: > - $ref: /schemas/graph.yaml#/$defs/port-base > - unevaluatedProperties: false > - description: The second sink port. > - > - properties: > - dual-lvds-even-pixels: > - type: boolean > - description: The second sink port for even pixels. > - > required: > - dual-lvds-even-pixels > > @@ -88,7 +71,6 @@ unevaluatedProperties: false > > required: > - compatible > - - ports > - power-supply > > examples: > -- > 2.34.1