From: Rob Herring <robh@kernel.org>
To: Aradhya Bhatia <a-bhatia1@ti.com>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Tomi Valkeinen <tomba@kernel.org>, Jyri Sarha <jyri.sarha@iki.fi>,
David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Thierry Reding <thierry.reding@gmail.com>,
Sam Ravnborg <sam@ravnborg.org>,
Maxime Ripard <maxime@cerno.tech>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>,
Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Matthias Brugger <matthias.bgg@gmail.com>,
Guo Ren <guoren@kernel.org>,
DRI Development List <dri-devel@lists.freedesktop.org>,
Devicetree List <devicetree@vger.kernel.org>,
Linux Kernel List <linux-kernel@vger.kernel.org>,
Linux RISC-V List <linux-riscv@lists.infradead.org>,
Linux ARM Kernel List <linux-arm-kernel@lists.infradead.org>,
Linux Mediatek List <linux-mediatek@lists.infradead.org>,
Linux C-SKY Arch List <linux-csky@vger.kernel.org>,
Nishanth Menon <nm@ti.com>, Vignesh Raghavendra <vigneshr@ti.com>,
Rahul T R <r-ravikumar@ti.com>, Devarsh Thakkar <devarsht@ti.com>,
Jai Luthra <j-luthra@ti.com>,
Jayesh Choudhary <j-choudhary@ti.com>
Subject: Re: [PATCH v2 3/4] dt-bindings: panel: Introduce dual-link LVDS panel
Date: Mon, 30 Jan 2023 11:04:41 -0600 [thread overview]
Message-ID: <20230130170441.GA2796575-robh@kernel.org> (raw)
In-Reply-To: <20230124101238.4542-4-a-bhatia1@ti.com>
On Tue, Jan 24, 2023 at 03:42:37PM +0530, Aradhya Bhatia wrote:
> Dual-link LVDS interfaces have 2 links, with even pixels traveling on
> one link, and odd pixels on the other. These panels are also generic in
> nature, with no documented constraints, much like their single-link
> counterparts, "panel-lvds".
>
> Add a new compatible, "panel-dual-lvds", and a dt-binding document for
> these panels.
>
> Signed-off-by: Aradhya Bhatia <a-bhatia1@ti.com>
> ---
> .../display/panel/panel-dual-lvds.yaml | 149 ++++++++++++++++++
> MAINTAINERS | 1 +
> 2 files changed, 150 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml b/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> new file mode 100644
> index 000000000000..e2ce1768e9a3
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> @@ -0,0 +1,149 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/panel/panel-dual-lvds.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Generic Dual-Link LVDS Display Panel
> +
> +maintainers:
> + - Aradhya Bhatia <a-bhatia1@ti.com>
> + - Thierry Reding <thierry.reding@gmail.com>
> +
> +description: |
> + A dual-LVDS interface is a dual-link connection with the even pixels
> + traveling on one link, and the odd pixels traveling on the other.
> +
> +allOf:
> + - $ref: panel-common.yaml#
> + - $ref: /schemas/display/lvds.yaml#
> +
> +properties:
> + compatible:
> + items:
> + - enum:
> + - lincolntech,lcd185-101ct
> + - microtips,mf-101hiebcaf0
> + - const: panel-dual-lvds
Why do we need a new compatible? You have ports and properties to see if
the panel is dual link.
We already have dual link LVDS supported in advantech,idk-2121wr.yaml
which says is compatible with 'panel-lvds', so that decision has already
been made. The hint was you added the compatible match to the driver
with 0 other changes needed.
That schema is missing type definitions and constraints for
dual-lvds-odd-pixels/dual-lvds-even-pixels so there does need to be some
changes to add those.
> +
> + ports:
> + $ref: /schemas/graph.yaml#/properties/ports
> +
> + properties:
> + port@0:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description: The sink for first set of LVDS pixels.
> +
> + properties:
> + dual-lvds-odd-pixels:
> + type: boolean
> +
> + dual-lvds-even-pixels:
> + type: boolean
> +
> + oneOf:
> + - required: [dual-lvds-odd-pixels]
> + - required: [dual-lvds-even-pixels]
> +
> + port@1:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description: The sink for second set of LVDS pixels.
> +
> + properties:
> + dual-lvds-even-pixels:
> + type: boolean
> +
> + dual-lvds-odd-pixels:
> + type: boolean
> +
> + oneOf:
> + - required: [dual-lvds-even-pixels]
> + - required: [dual-lvds-odd-pixels]
> +
> + allOf:
> + - if:
> + properties:
> + port@0:
> + required:
> + - dual-lvds-odd-pixels
> + then:
> + properties:
> + port@1:
> + properties:
> + dual-lvds-odd-pixels: false
> +
> + - if:
> + properties:
> + port@0:
> + required:
> + - dual-lvds-even-pixels
> + then:
> + properties:
> + port@1:
> + properties:
> + dual-lvds-even-pixels: false
> +
> + required:
> + - port@0
> + - port@1
> +
> + port: false
> +
> +unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - width-mm
> + - height-mm
> + - data-mapping
> + - panel-timing
> + - ports
> +
> +examples:
> + - |
> + panel {
> + compatible = "microtips,mf-101hiebcaf0", "panel-dual-lvds";
> +
> + width-mm = <217>;
> + height-mm = <136>;
> +
> + data-mapping = "vesa-24";
> +
> + panel-timing {
> + clock-frequency = <150275000>;
> + hactive = <1920>;
> + vactive = <1200>;
> + hfront-porch = <32>;
> + hsync-len = <52>;
> + hback-porch = <24>;
> + vfront-porch = <24>;
> + vsync-len = <8>;
> + vback-porch = <3>;
> + de-active = <1>;
> + };
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> + dual-lvds-odd-pixels;
> + lcd_in0: endpoint {
> + remote-endpoint = <&oldi_out0>;
> + };
> + };
> +
> + port@1 {
> + reg = <1>;
> + dual-lvds-even-pixels;
> + lcd_in1: endpoint {
> + remote-endpoint = <&oldi_out1>;
> + };
> + };
> + };
> + };
> +
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 5e18388b4579..6025bb024586 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -6461,6 +6461,7 @@ T: git git://anongit.freedesktop.org/drm/drm-misc
> S: Maintained
> F: drivers/gpu/drm/panel/panel-lvds.c
> F: Documentation/devicetree/bindings/display/lvds.yaml
> +F: Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> F: Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
>
> DRM DRIVER FOR MANTIX MLAF057WE51 PANELS
> --
> 2.39.0
>
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org>
To: Aradhya Bhatia <a-bhatia1@ti.com>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Tomi Valkeinen <tomba@kernel.org>,
Jyri Sarha <jyri.sarha@iki.fi>, David Airlie <airlied@gmail.com>,
Daniel Vetter <daniel@ffwll.ch>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Thierry Reding <thierry.reding@gmail.com>,
Sam Ravnborg <sam@ravnborg.org>,
Maxime Ripard <maxime@cerno.tech>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>,
Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Matthias Brugger <matthias.bgg@gmail.com>,
Guo Ren <guoren@kernel.org>,
DRI Development List <dri-devel@lists.freedesktop.org>,
Devicetree List <devicetree@vger.kernel.org>,
Linux Kernel List <linux-kernel@vger.kernel.org>,
Linux RISC-V List <linux-riscv@lists.infradead.org>,
Linux ARM Kernel List <linux-arm-kernel@lists.infradead.org>,
Linux Mediatek List <linux-mediatek@lists.infradead.org>,
Linux C-SKY Arch List <linux-csky@vger.kernel.org>,
Nishanth Menon <nm@ti.com>,
Vignesh Raghavendra <vigneshr@ti.com>,
Rahul T R <r-ravikumar@ti.com>, Devarsh Thakkar <devarsht@ti.com>,
Jai Luthra <j-luthra@ti.com>,
Jayesh Choudhary <j-choudhary@ti.com>
Subject: Re: [PATCH v2 3/4] dt-bindings: panel: Introduce dual-link LVDS panel
Date: Mon, 30 Jan 2023 11:04:41 -0600 [thread overview]
Message-ID: <20230130170441.GA2796575-robh@kernel.org> (raw)
In-Reply-To: <20230124101238.4542-4-a-bhatia1@ti.com>
On Tue, Jan 24, 2023 at 03:42:37PM +0530, Aradhya Bhatia wrote:
> Dual-link LVDS interfaces have 2 links, with even pixels traveling on
> one link, and odd pixels on the other. These panels are also generic in
> nature, with no documented constraints, much like their single-link
> counterparts, "panel-lvds".
>
> Add a new compatible, "panel-dual-lvds", and a dt-binding document for
> these panels.
>
> Signed-off-by: Aradhya Bhatia <a-bhatia1@ti.com>
> ---
> .../display/panel/panel-dual-lvds.yaml | 149 ++++++++++++++++++
> MAINTAINERS | 1 +
> 2 files changed, 150 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml b/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> new file mode 100644
> index 000000000000..e2ce1768e9a3
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> @@ -0,0 +1,149 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/panel/panel-dual-lvds.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Generic Dual-Link LVDS Display Panel
> +
> +maintainers:
> + - Aradhya Bhatia <a-bhatia1@ti.com>
> + - Thierry Reding <thierry.reding@gmail.com>
> +
> +description: |
> + A dual-LVDS interface is a dual-link connection with the even pixels
> + traveling on one link, and the odd pixels traveling on the other.
> +
> +allOf:
> + - $ref: panel-common.yaml#
> + - $ref: /schemas/display/lvds.yaml#
> +
> +properties:
> + compatible:
> + items:
> + - enum:
> + - lincolntech,lcd185-101ct
> + - microtips,mf-101hiebcaf0
> + - const: panel-dual-lvds
Why do we need a new compatible? You have ports and properties to see if
the panel is dual link.
We already have dual link LVDS supported in advantech,idk-2121wr.yaml
which says is compatible with 'panel-lvds', so that decision has already
been made. The hint was you added the compatible match to the driver
with 0 other changes needed.
That schema is missing type definitions and constraints for
dual-lvds-odd-pixels/dual-lvds-even-pixels so there does need to be some
changes to add those.
> +
> + ports:
> + $ref: /schemas/graph.yaml#/properties/ports
> +
> + properties:
> + port@0:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description: The sink for first set of LVDS pixels.
> +
> + properties:
> + dual-lvds-odd-pixels:
> + type: boolean
> +
> + dual-lvds-even-pixels:
> + type: boolean
> +
> + oneOf:
> + - required: [dual-lvds-odd-pixels]
> + - required: [dual-lvds-even-pixels]
> +
> + port@1:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description: The sink for second set of LVDS pixels.
> +
> + properties:
> + dual-lvds-even-pixels:
> + type: boolean
> +
> + dual-lvds-odd-pixels:
> + type: boolean
> +
> + oneOf:
> + - required: [dual-lvds-even-pixels]
> + - required: [dual-lvds-odd-pixels]
> +
> + allOf:
> + - if:
> + properties:
> + port@0:
> + required:
> + - dual-lvds-odd-pixels
> + then:
> + properties:
> + port@1:
> + properties:
> + dual-lvds-odd-pixels: false
> +
> + - if:
> + properties:
> + port@0:
> + required:
> + - dual-lvds-even-pixels
> + then:
> + properties:
> + port@1:
> + properties:
> + dual-lvds-even-pixels: false
> +
> + required:
> + - port@0
> + - port@1
> +
> + port: false
> +
> +unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - width-mm
> + - height-mm
> + - data-mapping
> + - panel-timing
> + - ports
> +
> +examples:
> + - |
> + panel {
> + compatible = "microtips,mf-101hiebcaf0", "panel-dual-lvds";
> +
> + width-mm = <217>;
> + height-mm = <136>;
> +
> + data-mapping = "vesa-24";
> +
> + panel-timing {
> + clock-frequency = <150275000>;
> + hactive = <1920>;
> + vactive = <1200>;
> + hfront-porch = <32>;
> + hsync-len = <52>;
> + hback-porch = <24>;
> + vfront-porch = <24>;
> + vsync-len = <8>;
> + vback-porch = <3>;
> + de-active = <1>;
> + };
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> + dual-lvds-odd-pixels;
> + lcd_in0: endpoint {
> + remote-endpoint = <&oldi_out0>;
> + };
> + };
> +
> + port@1 {
> + reg = <1>;
> + dual-lvds-even-pixels;
> + lcd_in1: endpoint {
> + remote-endpoint = <&oldi_out1>;
> + };
> + };
> + };
> + };
> +
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 5e18388b4579..6025bb024586 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -6461,6 +6461,7 @@ T: git git://anongit.freedesktop.org/drm/drm-misc
> S: Maintained
> F: drivers/gpu/drm/panel/panel-lvds.c
> F: Documentation/devicetree/bindings/display/lvds.yaml
> +F: Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> F: Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
>
> DRM DRIVER FOR MANTIX MLAF057WE51 PANELS
> --
> 2.39.0
>
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org>
To: Aradhya Bhatia <a-bhatia1@ti.com>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Tomi Valkeinen <tomba@kernel.org>,
Jyri Sarha <jyri.sarha@iki.fi>, David Airlie <airlied@gmail.com>,
Daniel Vetter <daniel@ffwll.ch>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Thierry Reding <thierry.reding@gmail.com>,
Sam Ravnborg <sam@ravnborg.org>,
Maxime Ripard <maxime@cerno.tech>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>,
Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Matthias Brugger <matthias.bgg@gmail.com>,
Guo Ren <guoren@kernel.org>,
DRI Development List <dri-devel@lists.freedesktop.org>,
Devicetree List <devicetree@vger.kernel.org>,
Linux Kernel List <linux-kernel@vger.kernel.org>,
Linux RISC-V List <linux-riscv@lists.infradead.org>,
Linux ARM Kernel List <linux-arm-kernel@lists.infradead.org>,
Linux Mediatek List <linux-mediatek@lists.infradead.org>,
Linux C-SKY Arch List <linux-csky@vger.kernel.org>,
Nishanth Menon <nm@ti.com>,
Vignesh Raghavendra <vigneshr@ti.com>,
Rahul T R <r-ravikumar@ti.com>, Devarsh Thakkar <devarsht@ti.com>,
Jai Luthra <j-luthra@ti.com>,
Jayesh Choudhary <j-choudhary@ti.com>
Subject: Re: [PATCH v2 3/4] dt-bindings: panel: Introduce dual-link LVDS panel
Date: Mon, 30 Jan 2023 11:04:41 -0600 [thread overview]
Message-ID: <20230130170441.GA2796575-robh@kernel.org> (raw)
In-Reply-To: <20230124101238.4542-4-a-bhatia1@ti.com>
On Tue, Jan 24, 2023 at 03:42:37PM +0530, Aradhya Bhatia wrote:
> Dual-link LVDS interfaces have 2 links, with even pixels traveling on
> one link, and odd pixels on the other. These panels are also generic in
> nature, with no documented constraints, much like their single-link
> counterparts, "panel-lvds".
>
> Add a new compatible, "panel-dual-lvds", and a dt-binding document for
> these panels.
>
> Signed-off-by: Aradhya Bhatia <a-bhatia1@ti.com>
> ---
> .../display/panel/panel-dual-lvds.yaml | 149 ++++++++++++++++++
> MAINTAINERS | 1 +
> 2 files changed, 150 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml b/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> new file mode 100644
> index 000000000000..e2ce1768e9a3
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> @@ -0,0 +1,149 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/panel/panel-dual-lvds.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Generic Dual-Link LVDS Display Panel
> +
> +maintainers:
> + - Aradhya Bhatia <a-bhatia1@ti.com>
> + - Thierry Reding <thierry.reding@gmail.com>
> +
> +description: |
> + A dual-LVDS interface is a dual-link connection with the even pixels
> + traveling on one link, and the odd pixels traveling on the other.
> +
> +allOf:
> + - $ref: panel-common.yaml#
> + - $ref: /schemas/display/lvds.yaml#
> +
> +properties:
> + compatible:
> + items:
> + - enum:
> + - lincolntech,lcd185-101ct
> + - microtips,mf-101hiebcaf0
> + - const: panel-dual-lvds
Why do we need a new compatible? You have ports and properties to see if
the panel is dual link.
We already have dual link LVDS supported in advantech,idk-2121wr.yaml
which says is compatible with 'panel-lvds', so that decision has already
been made. The hint was you added the compatible match to the driver
with 0 other changes needed.
That schema is missing type definitions and constraints for
dual-lvds-odd-pixels/dual-lvds-even-pixels so there does need to be some
changes to add those.
> +
> + ports:
> + $ref: /schemas/graph.yaml#/properties/ports
> +
> + properties:
> + port@0:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description: The sink for first set of LVDS pixels.
> +
> + properties:
> + dual-lvds-odd-pixels:
> + type: boolean
> +
> + dual-lvds-even-pixels:
> + type: boolean
> +
> + oneOf:
> + - required: [dual-lvds-odd-pixels]
> + - required: [dual-lvds-even-pixels]
> +
> + port@1:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description: The sink for second set of LVDS pixels.
> +
> + properties:
> + dual-lvds-even-pixels:
> + type: boolean
> +
> + dual-lvds-odd-pixels:
> + type: boolean
> +
> + oneOf:
> + - required: [dual-lvds-even-pixels]
> + - required: [dual-lvds-odd-pixels]
> +
> + allOf:
> + - if:
> + properties:
> + port@0:
> + required:
> + - dual-lvds-odd-pixels
> + then:
> + properties:
> + port@1:
> + properties:
> + dual-lvds-odd-pixels: false
> +
> + - if:
> + properties:
> + port@0:
> + required:
> + - dual-lvds-even-pixels
> + then:
> + properties:
> + port@1:
> + properties:
> + dual-lvds-even-pixels: false
> +
> + required:
> + - port@0
> + - port@1
> +
> + port: false
> +
> +unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - width-mm
> + - height-mm
> + - data-mapping
> + - panel-timing
> + - ports
> +
> +examples:
> + - |
> + panel {
> + compatible = "microtips,mf-101hiebcaf0", "panel-dual-lvds";
> +
> + width-mm = <217>;
> + height-mm = <136>;
> +
> + data-mapping = "vesa-24";
> +
> + panel-timing {
> + clock-frequency = <150275000>;
> + hactive = <1920>;
> + vactive = <1200>;
> + hfront-porch = <32>;
> + hsync-len = <52>;
> + hback-porch = <24>;
> + vfront-porch = <24>;
> + vsync-len = <8>;
> + vback-porch = <3>;
> + de-active = <1>;
> + };
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> + dual-lvds-odd-pixels;
> + lcd_in0: endpoint {
> + remote-endpoint = <&oldi_out0>;
> + };
> + };
> +
> + port@1 {
> + reg = <1>;
> + dual-lvds-even-pixels;
> + lcd_in1: endpoint {
> + remote-endpoint = <&oldi_out1>;
> + };
> + };
> + };
> + };
> +
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 5e18388b4579..6025bb024586 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -6461,6 +6461,7 @@ T: git git://anongit.freedesktop.org/drm/drm-misc
> S: Maintained
> F: drivers/gpu/drm/panel/panel-lvds.c
> F: Documentation/devicetree/bindings/display/lvds.yaml
> +F: Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> F: Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
>
> DRM DRIVER FOR MANTIX MLAF057WE51 PANELS
> --
> 2.39.0
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org>
To: Aradhya Bhatia <a-bhatia1@ti.com>
Cc: Nishanth Menon <nm@ti.com>, Vignesh Raghavendra <vigneshr@ti.com>,
Devarsh Thakkar <devarsht@ti.com>,
DRI Development List <dri-devel@lists.freedesktop.org>,
Linux Kernel List <linux-kernel@vger.kernel.org>,
Thierry Reding <thierry.reding@gmail.com>,
Guo Ren <guoren@kernel.org>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Linux RISC-V List <linux-riscv@lists.infradead.org>,
Sam Ravnborg <sam@ravnborg.org>,
Linux C-SKY Arch List <linux-csky@vger.kernel.org>,
Devicetree List <devicetree@vger.kernel.org>,
Albert Ou <aou@eecs.berkeley.edu>, Jai Luthra <j-luthra@ti.com>,
Rahul T R <r-ravikumar@ti.com>,
Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>,
Mark Brown <broonie@kernel.org>,
Linux Mediatek List <linux-mediatek@lists.infradead.org>,
Maxime Ripard <maxime@cerno.tech>,
Paul Walmsley <paul.walmsley@sifive.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
Linux ARM Kernel List <linux-arm-kernel@lists.infradead.org>,
Jayesh Choudhary <j-choudhary@ti.com>,
Tomi Valkeinen <tomba@kernel.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Jyri Sarha <jyri.sarha@iki.fi>
Subject: Re: [PATCH v2 3/4] dt-bindings: panel: Introduce dual-link LVDS panel
Date: Mon, 30 Jan 2023 11:04:41 -0600 [thread overview]
Message-ID: <20230130170441.GA2796575-robh@kernel.org> (raw)
In-Reply-To: <20230124101238.4542-4-a-bhatia1@ti.com>
On Tue, Jan 24, 2023 at 03:42:37PM +0530, Aradhya Bhatia wrote:
> Dual-link LVDS interfaces have 2 links, with even pixels traveling on
> one link, and odd pixels on the other. These panels are also generic in
> nature, with no documented constraints, much like their single-link
> counterparts, "panel-lvds".
>
> Add a new compatible, "panel-dual-lvds", and a dt-binding document for
> these panels.
>
> Signed-off-by: Aradhya Bhatia <a-bhatia1@ti.com>
> ---
> .../display/panel/panel-dual-lvds.yaml | 149 ++++++++++++++++++
> MAINTAINERS | 1 +
> 2 files changed, 150 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml b/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> new file mode 100644
> index 000000000000..e2ce1768e9a3
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> @@ -0,0 +1,149 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/panel/panel-dual-lvds.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Generic Dual-Link LVDS Display Panel
> +
> +maintainers:
> + - Aradhya Bhatia <a-bhatia1@ti.com>
> + - Thierry Reding <thierry.reding@gmail.com>
> +
> +description: |
> + A dual-LVDS interface is a dual-link connection with the even pixels
> + traveling on one link, and the odd pixels traveling on the other.
> +
> +allOf:
> + - $ref: panel-common.yaml#
> + - $ref: /schemas/display/lvds.yaml#
> +
> +properties:
> + compatible:
> + items:
> + - enum:
> + - lincolntech,lcd185-101ct
> + - microtips,mf-101hiebcaf0
> + - const: panel-dual-lvds
Why do we need a new compatible? You have ports and properties to see if
the panel is dual link.
We already have dual link LVDS supported in advantech,idk-2121wr.yaml
which says is compatible with 'panel-lvds', so that decision has already
been made. The hint was you added the compatible match to the driver
with 0 other changes needed.
That schema is missing type definitions and constraints for
dual-lvds-odd-pixels/dual-lvds-even-pixels so there does need to be some
changes to add those.
> +
> + ports:
> + $ref: /schemas/graph.yaml#/properties/ports
> +
> + properties:
> + port@0:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description: The sink for first set of LVDS pixels.
> +
> + properties:
> + dual-lvds-odd-pixels:
> + type: boolean
> +
> + dual-lvds-even-pixels:
> + type: boolean
> +
> + oneOf:
> + - required: [dual-lvds-odd-pixels]
> + - required: [dual-lvds-even-pixels]
> +
> + port@1:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description: The sink for second set of LVDS pixels.
> +
> + properties:
> + dual-lvds-even-pixels:
> + type: boolean
> +
> + dual-lvds-odd-pixels:
> + type: boolean
> +
> + oneOf:
> + - required: [dual-lvds-even-pixels]
> + - required: [dual-lvds-odd-pixels]
> +
> + allOf:
> + - if:
> + properties:
> + port@0:
> + required:
> + - dual-lvds-odd-pixels
> + then:
> + properties:
> + port@1:
> + properties:
> + dual-lvds-odd-pixels: false
> +
> + - if:
> + properties:
> + port@0:
> + required:
> + - dual-lvds-even-pixels
> + then:
> + properties:
> + port@1:
> + properties:
> + dual-lvds-even-pixels: false
> +
> + required:
> + - port@0
> + - port@1
> +
> + port: false
> +
> +unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - width-mm
> + - height-mm
> + - data-mapping
> + - panel-timing
> + - ports
> +
> +examples:
> + - |
> + panel {
> + compatible = "microtips,mf-101hiebcaf0", "panel-dual-lvds";
> +
> + width-mm = <217>;
> + height-mm = <136>;
> +
> + data-mapping = "vesa-24";
> +
> + panel-timing {
> + clock-frequency = <150275000>;
> + hactive = <1920>;
> + vactive = <1200>;
> + hfront-porch = <32>;
> + hsync-len = <52>;
> + hback-porch = <24>;
> + vfront-porch = <24>;
> + vsync-len = <8>;
> + vback-porch = <3>;
> + de-active = <1>;
> + };
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> + dual-lvds-odd-pixels;
> + lcd_in0: endpoint {
> + remote-endpoint = <&oldi_out0>;
> + };
> + };
> +
> + port@1 {
> + reg = <1>;
> + dual-lvds-even-pixels;
> + lcd_in1: endpoint {
> + remote-endpoint = <&oldi_out1>;
> + };
> + };
> + };
> + };
> +
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 5e18388b4579..6025bb024586 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -6461,6 +6461,7 @@ T: git git://anongit.freedesktop.org/drm/drm-misc
> S: Maintained
> F: drivers/gpu/drm/panel/panel-lvds.c
> F: Documentation/devicetree/bindings/display/lvds.yaml
> +F: Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml
> F: Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
>
> DRM DRIVER FOR MANTIX MLAF057WE51 PANELS
> --
> 2.39.0
>
next prev parent reply other threads:[~2023-01-30 17:05 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-24 10:12 [PATCH v2 0/4] dt-bindings: Introduce dual-link panels & panel-vendors Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` [PATCH v2 1/4] dt-bindings: vendor-prefixes: Add microtips Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` [PATCH v2 2/4] dt-bindings: vendor-prefixes: Add lincolntech Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` [PATCH v2 3/4] dt-bindings: panel: Introduce dual-link LVDS panel Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-30 17:04 ` Rob Herring [this message]
2023-01-30 17:04 ` Rob Herring
2023-01-30 17:04 ` Rob Herring
2023-01-30 17:04 ` Rob Herring
2023-02-03 6:21 ` Aradhya Bhatia
2023-02-03 6:21 ` Aradhya Bhatia
2023-02-03 6:21 ` Aradhya Bhatia
2023-02-03 6:21 ` Aradhya Bhatia
2023-01-24 10:12 ` [PATCH v2 4/4] drm: panel-lvds: Introduce dual-link panels Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
2023-01-24 10:12 ` Aradhya Bhatia
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230130170441.GA2796575-robh@kernel.org \
--to=robh@kernel.org \
--cc=a-bhatia1@ti.com \
--cc=airlied@gmail.com \
--cc=aou@eecs.berkeley.edu \
--cc=broonie@kernel.org \
--cc=daniel@ffwll.ch \
--cc=devarsht@ti.com \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=guoren@kernel.org \
--cc=j-choudhary@ti.com \
--cc=j-luthra@ti.com \
--cc=jyri.sarha@iki.fi \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=laurent.pinchart@ideasonboard.com \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-csky@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-riscv@lists.infradead.org \
--cc=matthias.bgg@gmail.com \
--cc=maxime@cerno.tech \
--cc=nm@ti.com \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=prabhakar.mahadev-lad.rj@bp.renesas.com \
--cc=r-ravikumar@ti.com \
--cc=sam@ravnborg.org \
--cc=thierry.reding@gmail.com \
--cc=tomba@kernel.org \
--cc=vigneshr@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.