Skip to content

Commit

Permalink
dt-bindings: display: Document dual-link LVDS display common properties
Browse files Browse the repository at this point in the history
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@linaro.org>
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20241104032806.611890-9-victor.liu@nxp.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
  • Loading branch information
Liu Ying authored and Dmitry Baryshkov committed Nov 5, 2024
1 parent e316074 commit 8cd4937
Show file tree
Hide file tree
Showing 3 changed files with 65 additions and 32 deletions.
63 changes: 63 additions & 0 deletions Documentation/devicetree/bindings/display/lvds-dual-ports.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# 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@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

patternProperties:
'^port@[01]$':
$ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: |
port@0 represents the first LVDS input link.
port@1 represents 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

required:
- ports

additionalProperties: true

...
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ description: |
dual-lvds-odd-pixels or dual-lvds-even-pixels).
allOf:
- $ref: /schemas/display/lvds-dual-ports.yaml#
- $ref: panel-common.yaml#

properties:
Expand All @@ -44,22 +45,10 @@ properties:

properties:
port@0:
$ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: The sink for odd pixels.
properties:
dual-lvds-odd-pixels: true

required:
- dual-lvds-odd-pixels

port@1:
$ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: The sink for even pixels.
properties:
dual-lvds-even-pixels: true

required:
- dual-lvds-even-pixels

Expand All @@ -75,7 +64,6 @@ required:
- height-mm
- data-mapping
- panel-timing
- ports

examples:
- |+
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ description: |
If the panel is more advanced a dedicated binding file is required.
allOf:
- $ref: /schemas/display/lvds-dual-ports.yaml#
- $ref: panel-common.yaml#

properties:
Expand Down Expand Up @@ -55,28 +56,10 @@ properties:

properties:
port@0:
$ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: The first sink port.

properties:
dual-lvds-odd-pixels:
type: boolean
description: The first sink port for odd pixels.

required:
- dual-lvds-odd-pixels

port@1:
$ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: The second sink port.

properties:
dual-lvds-even-pixels:
type: boolean
description: The second sink port for even pixels.

required:
- dual-lvds-even-pixels

Expand All @@ -88,7 +71,6 @@ unevaluatedProperties: false

required:
- compatible
- ports
- power-supply

examples:
Expand Down

0 comments on commit 8cd4937

Please sign in to comment.