public inbox for drm-ai-reviews@public-inbox.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH v1 0/2] dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel
@ 2026-05-29 11:05 Vitor Soares
  2026-05-29 11:05 ` [PATCH v1 1/2] dt-bindings: display: panel: Add LG LP156WF1 Vitor Soares
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Vitor Soares @ 2026-05-29 11:05 UTC (permalink / raw)
  To: Neil Armstrong, Jessica Zhang, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Laurent Pinchart,
	Nishanth Menon, Vignesh Raghavendra, Tero Kristo,
	Francesco Dolcini, Lad Prabhakar, Thierry Reding
  Cc: Vitor Soares, dri-devel, devicetree, linux-kernel,
	linux-arm-kernel

From: Vitor Soares <vitor.soares@toradex.com>

Add support for the LG LP156WF1 15.6" Full-HD dual-link LVDS panel and
a Verdin AM62 overlay for using it through the Verdin Development Board
with the Verdin AM62 Mezzanine LVDS interface.

This is a follow-up to an earlier attempt [1], where panel-lvds.yaml
was incorrectly extended to describe dual-link panels. Back in 2023,
when a generic dual-channel LVDS binding was proposed, Rob Herring [2]
pointed out that dual-link panels should follow the existing
advantech,idk-2121wr pattern instead of introducing a new generic
compatible.

Following that approach, this series adds a dedicated binding for
lg,lp156wf1, with the dual-link LVDS ports described by
lvds-dual-ports.yaml, and excludes it from the generic panel-lvds
schema selection.
The second patch adds the Verdin AM62 overlay for the LG LP156WF1 panel
on the Mezzanine LVDS connector.

This series should be applied on top of [3] to avoid conflicts in the TI
device-tree Makefile with the other overlay additions.

[1] https://lore.kernel.org/all/20260521150038.103538-17-ivitro@gmail.com/
[2] https://lore.kernel.org/all/20230130170441.GA2796575-robh@kernel.org/
[3] https://lore.kernel.org/all/20260522161105.277519-13-ivitro@gmail.com/

Vitor Soares (2):
  dt-bindings: display: panel: Add LG LP156WF1
  arm64: dts: ti: k3-am62-verdin: Add Mezzanine with LG LP156WF1 LVDS
    panel

 .../bindings/display/panel/lg,lp156wf1.yaml   | 105 ++++++++++++++
 .../bindings/display/panel/panel-lvds.yaml    |   1 +
 arch/arm64/boot/dts/ti/Makefile               |   5 +
 ...verdin-dev-mezzanine-lvds-lg-lp156wf1.dtso | 131 ++++++++++++++++++
 4 files changed, 242 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/lg,lp156wf1.yaml
 create mode 100644 arch/arm64/boot/dts/ti/k3-am625-verdin-dev-mezzanine-lvds-lg-lp156wf1.dtso

-- 
2.54.0


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

* [PATCH v1 1/2] dt-bindings: display: panel: Add LG LP156WF1
  2026-05-29 11:05 [PATCH v1 0/2] dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel Vitor Soares
@ 2026-05-29 11:05 ` Vitor Soares
  2026-05-29 16:32   ` Conor Dooley
  2026-06-04  6:45   ` Claude review: " Claude Code Review Bot
  2026-05-29 16:13 ` [PATCH v1 0/2] dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel Francesco Dolcini
  2026-06-04  6:45 ` Claude review: " Claude Code Review Bot
  2 siblings, 2 replies; 6+ messages in thread
From: Vitor Soares @ 2026-05-29 11:05 UTC (permalink / raw)
  To: Neil Armstrong, Jessica Zhang, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Laurent Pinchart,
	Francesco Dolcini, Lad Prabhakar, Thierry Reding
  Cc: Vitor Soares, dri-devel, devicetree, linux-kernel, Nishanth Menon,
	Vignesh Raghavendra, Tero Kristo

From: Vitor Soares <vitor.soares@toradex.com>

Add device tree binding for the LG LP156WF1 15.6" Full-HD (1920x1080)
dual-channel LVDS panel.

Also add lg,lp156wf1 to the panel-lvds.yaml exclusion list to prevent
false schema matches.

Signed-off-by: Vitor Soares <vitor.soares@toradex.com>
---
 .../bindings/display/panel/lg,lp156wf1.yaml   | 105 ++++++++++++++++++
 .../bindings/display/panel/panel-lvds.yaml    |   1 +
 2 files changed, 106 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/lg,lp156wf1.yaml

diff --git a/Documentation/devicetree/bindings/display/panel/lg,lp156wf1.yaml b/Documentation/devicetree/bindings/display/panel/lg,lp156wf1.yaml
new file mode 100644
index 000000000000..6b91c2ea4827
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/lg,lp156wf1.yaml
@@ -0,0 +1,105 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/panel/lg,lp156wf1.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: LG LP156WF1 15.6" Full-HD dual-LVDS panel
+
+maintainers:
+  - Francesco Dolcini <francesco@dolcini.it>
+
+description: |
+  The LP156WF1 from LG is a 15.6" Full-HD dual-LVDS panel.
+  A dual-LVDS interface is a dual-link connection with even pixels traveling
+  on one link, and with odd pixels traveling on the other link.
+
+allOf:
+  - $ref: /schemas/display/lvds-dual-ports.yaml#
+  - $ref: panel-common.yaml#
+
+properties:
+  compatible:
+    items:
+      - const: lg,lp156wf1
+      - {} # panel-lvds, but not listed here to avoid false select
+
+  width-mm:
+    const: 345
+
+  height-mm:
+    const: 194
+
+  data-mapping:
+    const: jeida-24
+
+  panel-timing: true
+
+  ports:
+    $ref: /schemas/graph.yaml#/properties/ports
+
+    properties:
+      port@0:
+        required:
+          - dual-lvds-odd-pixels
+
+      port@1:
+        required:
+          - dual-lvds-even-pixels
+
+    required:
+      - port@0
+      - port@1
+
+required:
+  - compatible
+  - width-mm
+  - height-mm
+  - data-mapping
+  - panel-timing
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    panel-lvds {
+      compatible = "lg,lp156wf1", "panel-lvds";
+      width-mm = <345>;
+      height-mm = <194>;
+      data-mapping = "jeida-24";
+
+      panel-timing {
+        clock-frequency = <138500000>;
+        hactive = <1920>;
+        hback-porch = <40>;
+        hfront-porch = <24>;
+        hsync-len = <16>;
+        vactive = <1080>;
+        vback-porch = <23>;
+        vfront-porch = <3>;
+        vsync-len = <5>;
+      };
+
+      ports {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        port@0 {
+          reg = <0>;
+          dual-lvds-odd-pixels;
+          panel_in0: endpoint {
+            remote-endpoint = <&lvds0_out>;
+          };
+        };
+
+        port@1 {
+          reg = <1>;
+          dual-lvds-even-pixels;
+          panel_in1: endpoint {
+            remote-endpoint = <&lvds1_out>;
+          };
+        };
+      };
+    };
+
+...
diff --git a/Documentation/devicetree/bindings/display/panel/panel-lvds.yaml b/Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
index b89f86bc0683..fbe8c162ca59 100644
--- a/Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
+++ b/Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
@@ -28,6 +28,7 @@ select:
             - advantech,idk-1110wr
             - advantech,idk-2121wr
             - innolux,ee101ia-01d
+            - lg,lp156wf1
             - mitsubishi,aa104xd12
             - mitsubishi,aa121td01
             - sgd,gktw70sdae4se
-- 
2.54.0


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

* Re: [PATCH v1 0/2] dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel
  2026-05-29 11:05 [PATCH v1 0/2] dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel Vitor Soares
  2026-05-29 11:05 ` [PATCH v1 1/2] dt-bindings: display: panel: Add LG LP156WF1 Vitor Soares
@ 2026-05-29 16:13 ` Francesco Dolcini
  2026-06-04  6:45 ` Claude review: " Claude Code Review Bot
  2 siblings, 0 replies; 6+ messages in thread
From: Francesco Dolcini @ 2026-05-29 16:13 UTC (permalink / raw)
  To: Vitor Soares
  Cc: Neil Armstrong, Jessica Zhang, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Laurent Pinchart,
	Nishanth Menon, Vignesh Raghavendra, Tero Kristo,
	Francesco Dolcini, Lad Prabhakar, Thierry Reding, Vitor Soares,
	dri-devel, devicetree, linux-kernel, linux-arm-kernel

On Fri, May 29, 2026 at 12:05:18PM +0100, Vitor Soares wrote:
> From: Vitor Soares <vitor.soares@toradex.com>
> 
> Add support for the LG LP156WF1 15.6" Full-HD dual-link LVDS panel and
> a Verdin AM62 overlay for using it through the Verdin Development Board
> with the Verdin AM62 Mezzanine LVDS interface.
> 
> This is a follow-up to an earlier attempt [1], where panel-lvds.yaml
> was incorrectly extended to describe dual-link panels. Back in 2023,
> when a generic dual-channel LVDS binding was proposed, Rob Herring [2]
> pointed out that dual-link panels should follow the existing
> advantech,idk-2121wr pattern instead of introducing a new generic
> compatible.

Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>


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

* Re: [PATCH v1 1/2] dt-bindings: display: panel: Add LG LP156WF1
  2026-05-29 11:05 ` [PATCH v1 1/2] dt-bindings: display: panel: Add LG LP156WF1 Vitor Soares
@ 2026-05-29 16:32   ` Conor Dooley
  2026-06-04  6:45   ` Claude review: " Claude Code Review Bot
  1 sibling, 0 replies; 6+ messages in thread
From: Conor Dooley @ 2026-05-29 16:32 UTC (permalink / raw)
  To: Vitor Soares
  Cc: Neil Armstrong, Jessica Zhang, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Laurent Pinchart,
	Francesco Dolcini, Lad Prabhakar, Thierry Reding, Vitor Soares,
	dri-devel, devicetree, linux-kernel, Nishanth Menon,
	Vignesh Raghavendra, Tero Kristo

[-- Attachment #1: Type: text/plain, Size: 78 bytes --]

Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
pw-bot: not-applicable

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

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

* Claude review: dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel
  2026-05-29 11:05 [PATCH v1 0/2] dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel Vitor Soares
  2026-05-29 11:05 ` [PATCH v1 1/2] dt-bindings: display: panel: Add LG LP156WF1 Vitor Soares
  2026-05-29 16:13 ` [PATCH v1 0/2] dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel Francesco Dolcini
@ 2026-06-04  6:45 ` Claude Code Review Bot
  2 siblings, 0 replies; 6+ messages in thread
From: Claude Code Review Bot @ 2026-06-04  6:45 UTC (permalink / raw)
  To: dri-devel-reviews

Overall Series Review

Subject: dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel
Author: Vitor Soares <ivitro@gmail.com>
Patches: 4
Reviewed: 2026-06-04T16:45:20.277194

---

This is a clean, well-structured 2-patch series adding a DT binding for the LG LP156WF1 15.6" Full-HD dual-LVDS panel. Only patch 1/2 (the binding + panel-lvds exclusion) is present in the mbox; patch 2/2 (the AM62 DTS overlay) is missing.

Patch 1/2 closely follows the established `advantech,idk-2121wr` pattern for dual-LVDS panel bindings, which is the approach recommended by Rob Herring back in 2023. The cover letter provides good background explaining why this approach was chosen over extending the generic `panel-lvds` binding. The binding is well-formed and should pass dt_binding_check without issues.

One minor improvement over the existing idk-2121wr precedent is noted below. No blocking issues found in the available patch.

**Patch 2/2 is not included in the mbox and cannot be reviewed.**

---
Generated by Claude Code Patch Reviewer

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

* Claude review: dt-bindings: display: panel: Add LG LP156WF1
  2026-05-29 11:05 ` [PATCH v1 1/2] dt-bindings: display: panel: Add LG LP156WF1 Vitor Soares
  2026-05-29 16:32   ` Conor Dooley
@ 2026-06-04  6:45   ` Claude Code Review Bot
  1 sibling, 0 replies; 6+ messages in thread
From: Claude Code Review Bot @ 2026-06-04  6:45 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

**Overall:** Good patch. The binding is a near-exact structural copy of `advantech,idk-2121wr.yaml`, which is the correct template to follow for dual-link LVDS panels.

**Positive observations:**

- The `allOf` references to both `lvds-dual-ports.yaml#` and `panel-common.yaml#` are correct.
- The `compatible` uses the `{}` placeholder pattern to avoid false `select` matching in `panel-lvds.yaml`, matching the established convention.
- Port requirements correctly specify `dual-lvds-odd-pixels` on `port@0` and `dual-lvds-even-pixels` on `port@1`.
- The exclusion added to `panel-lvds.yaml` is placed in alphabetical order — correct.
- Panel dimensions (345mm x 194mm) are consistent with a 15.6" 16:9 display.

**Minor observations:**

1. **`unevaluatedProperties: false` vs `additionalProperties: false`** — The new binding uses `unevaluatedProperties: false` (line 62 of the new file) while the existing `advantech,idk-2121wr.yaml` uses `additionalProperties: false`. This is actually an *improvement*: since the binding uses `allOf` with `$ref` to compose schemas, `unevaluatedProperties` is the correct JSON Schema keyword — it accounts for properties defined in referenced schemas, whereas `additionalProperties` does not. No change needed, just noting the divergence from the template is correct.

2. **Description could mention port-to-pixel mapping** — The `advantech,idk-2121wr.yaml` description explicitly states:
   ```
   The panel expects odd pixels on the first port, and even pixels on the
   second port, therefore the ports must be marked accordingly
   ```
   The new binding's description omits this detail. It would be a nice-to-have for consistency and clarity, since the port ordering matters for correct display output. Not blocking.

3. **Example uses `- |` vs `- |+`** — The idk-2121wr example uses `- |+` (keep trailing newlines) while this uses `- |`. Functionally irrelevant for dt-schema validation, but noting the difference for consistency. Not blocking.

4. **Timing values** — The example specifies `clock-frequency = <138500000>` (138.5 MHz), which is a reasonable pixel clock for 1920x1080 at ~60 Hz with the given blanking intervals. Quick sanity check: (1920+40+24+16) * (1080+23+3+5) * 60 = 2000 * 1111 * 60 ≈ 133.3 MHz — close enough given rounding and the panel's spec. Fine.

---
Generated by Claude Code Patch Reviewer

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

end of thread, other threads:[~2026-06-04  6:45 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-29 11:05 [PATCH v1 0/2] dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel Vitor Soares
2026-05-29 11:05 ` [PATCH v1 1/2] dt-bindings: display: panel: Add LG LP156WF1 Vitor Soares
2026-05-29 16:32   ` Conor Dooley
2026-06-04  6:45   ` Claude review: " Claude Code Review Bot
2026-05-29 16:13 ` [PATCH v1 0/2] dt-bindings: display: panel: Add LG LP156WF1 dual-LVDS panel Francesco Dolcini
2026-06-04  6:45 ` Claude review: " Claude Code Review Bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox