mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-01 06:39:05 +00:00

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>
113 lines
2.4 KiB
YAML
113 lines
2.4 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/display/panel/advantech,idk-2121wr.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Advantech IDK-2121WR 21.5" Full-HD dual-LVDS panel
|
|
|
|
maintainers:
|
|
- Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
|
|
- Thierry Reding <thierry.reding@gmail.com>
|
|
|
|
description: |
|
|
The IDK-2121WR from Advantech is a 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.
|
|
|
|
The panel expects odd pixels on the first port, and even pixels on the
|
|
second port, therefore the ports must be marked accordingly (with either
|
|
dual-lvds-odd-pixels or dual-lvds-even-pixels).
|
|
|
|
allOf:
|
|
- $ref: /schemas/display/lvds-dual-ports.yaml#
|
|
- $ref: panel-common.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
items:
|
|
- const: advantech,idk-2121wr
|
|
- {} # panel-lvds, but not listed here to avoid false select
|
|
|
|
width-mm:
|
|
const: 476
|
|
|
|
height-mm:
|
|
const: 268
|
|
|
|
data-mapping:
|
|
const: vesa-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
|
|
|
|
additionalProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- width-mm
|
|
- height-mm
|
|
- data-mapping
|
|
- panel-timing
|
|
|
|
examples:
|
|
- |+
|
|
panel-lvds {
|
|
compatible = "advantech,idk-2121wr", "panel-lvds";
|
|
|
|
width-mm = <476>;
|
|
height-mm = <268>;
|
|
|
|
data-mapping = "vesa-24";
|
|
|
|
panel-timing {
|
|
clock-frequency = <148500000>;
|
|
hactive = <1920>;
|
|
vactive = <1080>;
|
|
hsync-len = <44>;
|
|
hfront-porch = <88>;
|
|
hback-porch = <148>;
|
|
vfront-porch = <4>;
|
|
vback-porch = <36>;
|
|
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>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
...
|