[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <17b6858e-1afc-4fec-9044-2d17395ec6a5@nxp.com>
Date: Tue, 29 Oct 2024 17:07:16 +0800
From: Liu Ying <victor.liu@....com>
To: Biju Das <biju.das.jz@...renesas.com>,
"dri-devel@...ts.freedesktop.org" <dri-devel@...ts.freedesktop.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-media@...r.kernel.org" <linux-media@...r.kernel.org>,
"imx@...ts.linux.dev" <imx@...ts.linux.dev>,
"linux-arm-kernel@...ts.infradead.org" <linux-arm-kernel@...ts.infradead.org>
Cc: "andrzej.hajda@...el.com" <andrzej.hajda@...el.com>,
"neil.armstrong@...aro.org" <neil.armstrong@...aro.org>,
"rfoss@...nel.org" <rfoss@...nel.org>,
"laurent.pinchart" <laurent.pinchart@...asonboard.com>,
"jonas@...boo.se" <jonas@...boo.se>,
"jernej.skrabec@...il.com" <jernej.skrabec@...il.com>,
"maarten.lankhorst@...ux.intel.com" <maarten.lankhorst@...ux.intel.com>,
"mripard@...nel.org" <mripard@...nel.org>,
"tzimmermann@...e.de" <tzimmermann@...e.de>,
"airlied@...il.com" <airlied@...il.com>, "simona@...ll.ch"
<simona@...ll.ch>, "robh@...nel.org" <robh@...nel.org>,
"krzk+dt@...nel.org" <krzk+dt@...nel.org>,
"conor+dt@...nel.org" <conor+dt@...nel.org>,
"quic_jesszhan@...cinc.com" <quic_jesszhan@...cinc.com>,
"mchehab@...nel.org" <mchehab@...nel.org>,
"shawnguo@...nel.org" <shawnguo@...nel.org>,
"s.hauer@...gutronix.de" <s.hauer@...gutronix.de>,
"kernel@...gutronix.de" <kernel@...gutronix.de>,
"festevam@...il.com" <festevam@...il.com>,
"catalin.marinas@....com" <catalin.marinas@....com>,
"will@...nel.org" <will@...nel.org>,
"sakari.ailus@...ux.intel.com" <sakari.ailus@...ux.intel.com>,
"hverkuil@...all.nl" <hverkuil@...all.nl>,
"tomi.valkeinen@...asonboard.com" <tomi.valkeinen@...asonboard.com>,
"quic_bjorande@...cinc.com" <quic_bjorande@...cinc.com>,
"geert+renesas@...der.be" <geert+renesas@...der.be>,
"dmitry.baryshkov@...aro.org" <dmitry.baryshkov@...aro.org>,
"arnd@...db.de" <arnd@...db.de>,
"nfraprado@...labora.com" <nfraprado@...labora.com>,
"thierry.reding@...il.com" <thierry.reding@...il.com>,
Prabhakar Mahadev Lad <prabhakar.mahadev-lad.rj@...renesas.com>,
"sam@...nborg.org" <sam@...nborg.org>, "marex@...x.de" <marex@...x.de>
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: dri-devel <dri-devel-bounces@...ts.freedesktop.org> On Behalf Of Liu Ying
>> Sent: 29 October 2024 08:02
>> 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@....com>
>>>> 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@...aro.org>
>>>> Signed-off-by: Liu Ying <victor.liu@....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.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@....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@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 ??
>>
>> Yes, it'd better to use patternProperties. Thanks.
>>
>> --8<--
>> patternProperties:
>> '^port@[01]$':
>> $ref: /schemas/graph.yaml#/$defs/port-base
>> unevaluatedProperties: false
>> description: |
>> port@0 is for the first LVDS input link.
>> port@1 is for the second LVDS input link.
>>
>> properties:
>> dual-lvds-odd-pixels:
>> type: boolean
>> description: LVDS input link for odd pixels
>>
>> dual-lvds-even-pixels:
>> type: boolean
>> description: 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
>>
>> anyOf:
>> - required:
>> - port@0
>> - required:
>> - port@1
>> --8<--
>>
>>>
>>>
>>>> +
>>>> + 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?
>>
>> The 'false' is used when this LVDS link works alone as a single LVDS link, being odd and even
>> agnostic.
>>
>> The 'oneOf' allows a LVDS link to be defined as a single LVDS link or one link of dual LVDS links.
>
> Ok, it makes sense for single LVDS link. Maybe rename the file to lvds-dual-ports.yaml->lvds-ports.yaml
> to make it clear, it is for all LVDS ports, if it is going to address single link case aswell??
Single-link LVDS displays are supposed to be documented
without referencing this schema, i.e., they may reference
lvds.yaml and define the single LVDS sink link with port
property(for panels) or port@0 property(for bridges).
port@1 would be defined as output port for bridges, not
input port. Maybe, we'll have something like
lvds-single-port.yaml in the future.
>
> Cheers,
> Biju
>
--
Regards,
Liu Ying
Powered by blists - more mailing lists