devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/4] dt-bindings: Introduce dual-link panels & panel-vendors
@ 2023-01-03  6:46 Aradhya Bhatia
  2023-01-03  6:46 ` [RFC PATCH 1/4] dt-bindings: vendor-prefixes: Add microtips Aradhya Bhatia
                   ` (4 more replies)
  0 siblings, 5 replies; 21+ messages in thread
From: Aradhya Bhatia @ 2023-01-03  6:46 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Tomi Valkeinen, Jyri Sarha,
	David Airlie, Daniel Vetter, Laurent Pinchart, Thierry Reding,
	Sam Ravnborg, Maxime Ripard, Liam Girdwood, Mark Brown,
	Lad Prabhakar, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Matthias Brugger, Guo Ren
  Cc: DRI Development List, Devicetree List, Linux Kernel List,
	Linux RISC-V List, Linux ARM Kernel List, Linux Mediatek List,
	Linux C-SKY Arch List, Nishanth Menon, Vignesh Raghavendra,
	Rahul T R, Devarsh Thakkar, Jai Luthra, Jayesh Choudhary,
	Aradhya Bhatia

Hi all,

Microtips Technology Solutions USA, and Lincoln Technology Solutions are
2 display panel vendors, and the first 2 patches add their vendor
prefixes.

The fourth patch, simply introduces the new compatible for the generic
dual-link panels in the panel-lvds driver. This new compatible is based
from a new DT binding added in the third patch explained below.

The third patch introduces a dt-binding for generic dual-link LVDS
panels. These panels do not have any documented constraints, except for
their timing characteristics. Further, these panels have 2 pixel-sinks.
In a dual-link connection between an LVDS encoder and the panel, one
sink accepts the odd set of LVDS pixels and the other, the even set.

A lot of this has been based from the Advantech,idk-2121wr dual-link
panel[1] and Maxime's patches for generic LVDS panels[2] (which are
single-link by default.) and the discussions that happened before they
were finally merged.

Below are some notes and points that I want to bring forward.

  - The advantech,idk-2121wr panel binding uses 2 boolean properties
    dual-link-odd/even-pixels, to signify which port sink is being used
    for which set of LVDS pixels. I too have added similar support and
    introduced constraints around those properties, so as to not break
    the ABI... but I believe there is a better way to achieve this.

    A "pixel-type" enum property could be introduced in their stead,
    which can accept one of the 2 options <dual-lvds-odd-pixels> or
    <dual-lvds-even-pixels>.

    This method, in my opinion, is more accurate and cleaner to
    implement in the bindings as well.

    If this does sound a better I can push out a new revision where the
    driver supports both these methods (to not break the ABI) and the
    advantech,2121wr panel can remain as an exception.


  - As an alternative to the previous point, if that method is not
    preferred for some reason, the advantech,2121wtr panel binding
    could then be merged in the panel-dual-lvds binding as part of
    future work.


  - Another tweak, I am looking forward to do as part of future work and
    would like all your comments is to introduce driver-based
    implementation of the panel timing parameters, like it is with
    "panel-simple". The driver can then support both the panel-timing
    sources (DT node or hard-coded driver structure) and the binding
    can remove this from the "required" section.

Thank you!

[1]: https://patchwork.freedesktop.org/patch/357122/
[2]: https://patchwork.freedesktop.org/patch/471228/

Aradhya Bhatia (4):
  dt-bindings: vendor-prefixes: Add microtips
  dt-bindings: vendor-prefixes: Add lincolntech
  dt-bindings: panel: Introduce dual-link LVDS panel
  drm: panel-lvds: Introduce dual-link panels

 .../display/panel/panel-dual-lvds.yaml        | 157 ++++++++++++++++++
 .../devicetree/bindings/vendor-prefixes.yaml  |   4 +
 MAINTAINERS                                   |   1 +
 drivers/gpu/drm/panel/panel-lvds.c            |   1 +
 4 files changed, 163 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/panel-dual-lvds.yaml

-- 
2.39.0


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2023-01-20  5:12 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-03  6:46 [RFC PATCH 0/4] dt-bindings: Introduce dual-link panels & panel-vendors Aradhya Bhatia
2023-01-03  6:46 ` [RFC PATCH 1/4] dt-bindings: vendor-prefixes: Add microtips Aradhya Bhatia
2023-01-03  8:21   ` Krzysztof Kozlowski
2023-01-08  7:02   ` Laurent Pinchart
2023-01-03  6:46 ` [RFC PATCH 2/4] dt-bindings: vendor-prefixes: Add lincolntech Aradhya Bhatia
2023-01-03  8:22   ` Krzysztof Kozlowski
2023-01-08  7:03   ` Laurent Pinchart
2023-01-03  6:46 ` [RFC PATCH 3/4] dt-bindings: panel: Introduce dual-link LVDS panel Aradhya Bhatia
2023-01-03  8:32   ` Krzysztof Kozlowski
2023-01-03 11:02     ` Aradhya Bhatia
2023-01-03 11:28       ` Krzysztof Kozlowski
2023-01-09 15:49         ` Aradhya Bhatia
2023-01-03 11:51   ` AngeloGioacchino Del Regno
2023-01-09 16:21     ` Aradhya Bhatia
2023-01-17 12:38       ` Tomi Valkeinen
2023-01-20  4:58         ` Aradhya Bhatia
2023-01-08  6:56   ` Laurent Pinchart
2023-01-09 16:44     ` Aradhya Bhatia
2023-01-03  6:46 ` [RFC PATCH 4/4] drm: panel-lvds: Introduce dual-link panels Aradhya Bhatia
2023-01-16  9:30 ` [RFC PATCH 0/4] dt-bindings: Introduce dual-link panels & panel-vendors Laurent Pinchart
2023-01-17 10:26   ` Aradhya Bhatia

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).