[PATCH v4 08/13] dt-bindings: display: Document dual-link LVDS display common properties
Rob Herring
robh at kernel.org
Fri Nov 1 17:18:48 UTC 2024
On Tue, Oct 29, 2024 at 04:25:52PM +0800, Liu Ying wrote:
> On 10/29/2024, Biju Das wrote:
> >
> > Hi Liu Ying,
>
> Hi Biju,
>
> >
> >> -----Original Message-----
> >> From: dri-devel <dri-devel-bounces at lists.freedesktop.org> 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 at nxp.com>
> >>>> 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 at nxp.com>
> >>>>>> 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 at linaro.org>
> >>>>>>> Signed-off-by: Liu Ying <victor.liu at nxp.com>
> >>>>>>> ---
> >>>>>>> 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 at nxp.com>
> >>>>>>> +
> >>>>>>> +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 at 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 at 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 at 0 or port at 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??
>
> There are a couple of bridges supporting dual-link LVDS like
> IT6263, see lontium,lt9211.yaml and thine,thc63lvd1024.yaml.
> So, it looks fine for this binding to cover those bridges,
> as those LVDS links are sort of common stuff.
Okay for that to be a follow-up patch.
This looks fine to me with the required addition.
Rob
More information about the dri-devel
mailing list