Hi Liu Ying, > -----Original Message----- > From: dri-devel <dri-devel-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Liu Ying > Sent: 29 October 2024 07:35 > Subject: Re: [PATCH v4 08/13] dt-bindings: display: Document dual-link LVDS display common properties > > On 10/29/2024, Biju Das wrote: > > Hi Liu Ying, > > Hi Biju, > > > > >> -----Original Message----- > >> From: Liu Ying <victor.liu@xxxxxxx> > >> Sent: 29 October 2024 07:13 > >> Subject: Re: [PATCH v4 08/13] dt-bindings: display: Document > >> dual-link LVDS display common properties > >> > >> On 10/29/2024, Biju Das wrote: > >>> Hi Liu Ying, > >> > >> Hi Biju, > >> > >>> > >>>> -----Original Message----- > >>>> From: Liu Ying <victor.liu@xxxxxxx> > >>>> Sent: 29 October 2024 06:17 > >>>> Subject: Re: [PATCH v4 08/13] dt-bindings: display: Document > >>>> dual-link LVDS display common properties > >>>> > >>>> On 10/28/2024, Liu Ying wrote: > >>>>> 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.ya > >>>>> +++ ml > >>>>> @@ -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 > >>>>> + > >>>>> + oneOf: > >>>>> + - required: [dual-lvds-odd-pixels] > >>>>> + - required: [dual-lvds-even-pixels] > >>>>> + - properties: > >>>>> + dual-lvds-odd-pixels: false > >>>>> + dual-lvds-even-pixels: false > >>>>> + > >>>>> + 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 > >>>> > >>>> Hmm, I should require port@0 or port@1. > >>> > >>> For dual LVDS, you need 3 ports as common use case > >> > >> For LVDS panels, only two ports for LVDS sink are needed. > >> For display bridges with LVDS sink, one additional output port is > >> needed. However, I'm not sure if this output port should be > >> documented in this binding or not, because it doesn't look common enough considering the LVDS > panels. > >> > >>> > >>> 2 input ports and 1 outport and all are required properties. > >> > >> The output port cannot be required for LVDS panels at least. > > > > Ack. > > > >> > >> We need to require one or two input ports, because IT6263 may use one LVDS link or two. > > > > This patch is for generic dual link common cases and is not applicable for IT6263 single link case. > > Based on previous discussion(especially Dmitry's suggestion), this binding should cover display > bridges that can use one LVDS sink port or two LVDS sink ports, like IT6263. To be clear, those > bridges may have two modes(supported by one > chip) - single LVDS sink link mode and dual LVDS sink link mode. Those bridges are considered as > common dual-link LVDS displays. That's why I was asked to extract the common > properties to this schema when adding IT6263 DT binding. As per [1] and [2] both panels don’t support single LVDS link. IT6263 is bridge device that has single and dual link support. Not sure the single link case has to be taken care in ITE6263 binding itself, Leaving Dual link as it is?? [1] https://elixir.bootlin.com/linux/v6.12-rc5/source/Documentation/devicetree/bindings/display/panel/advantech,idk-2121wr.yaml [2] https://elixir.bootlin.com/linux/v6.12-rc5/source/Documentation/devicetree/bindings/display/panel/panel-simple-lvds-dual-ports.yaml Cheers, Biju