[PATCH v3 3/7] dt-bindings: display: bridge: Repurpose lvds-encoder
Fabrizio Castro
fabrizio.castro at bp.renesas.com
Thu Nov 7 20:10:59 UTC 2019
In an effort to repurpose lvds-encoder.c to also serve the
function of LVDS decoders, we ended up defining a new "generic"
compatible string, therefore adapt the dt-bindings to fit the
new purpose.
Signed-off-by: Fabrizio Castro <fabrizio.castro at bp.renesas.com>
---
v2->v3:
* Extracted conversion to lvds-codec as per Rob's comment
v1->v2:
* Converted to dt-schema as per Neil's comment
---
.../bindings/display/bridge/lvds-codec.yaml | 120 +++++++++++++++++++++
.../bindings/display/bridge/lvds-transmitter.yaml | 91 ----------------
2 files changed, 120 insertions(+), 91 deletions(-)
create mode 100644 Documentation/devicetree/bindings/display/bridge/lvds-codec.yaml
delete mode 100644 Documentation/devicetree/bindings/display/bridge/lvds-transmitter.yaml
diff --git a/Documentation/devicetree/bindings/display/bridge/lvds-codec.yaml b/Documentation/devicetree/bindings/display/bridge/lvds-codec.yaml
new file mode 100644
index 0000000..3ebdf96
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/lvds-codec.yaml
@@ -0,0 +1,120 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/bridge/lvds-codec.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Transparent LVDS encoders and LVDS decoders
+
+maintainers:
+ - Laurent Pinchart <laurent.pinchart+renesas at ideasonboard.com>
+
+description: |
+ This binding supports transparent LVDS encoders and LVDS decoders that don't
+ require any configuration.
+
+ LVDS is a physical layer specification defined in ANSI/TIA/EIA-644-A. Multiple
+ incompatible data link layers have been used over time to transmit image data
+ to LVDS panels. This binding targets devices compatible with the following
+ specifications only.
+
+ [JEIDA] "Digital Interface Standards for Monitor", JEIDA-59-1999, February
+ 1999 (Version 1.0), Japan Electronic Industry Development Association (JEIDA)
+ [LDI] "Open LVDS Display Interface", May 1999 (Version 0.95), National
+ Semiconductor
+ [VESA] "VESA Notebook Panel Standard", October 2007 (Version 1.0), Video
+ Electronics Standards Association (VESA)
+
+ Those devices have been marketed under the FPD-Link and FlatLink brand names
+ among others.
+
+properties:
+ compatible:
+ description: |
+ Any encoder or decoder compatible with this generic binding, but with
+ additional properties not listed here, must define its own binding and
+ list a device specific compatible first followed by the generic compatible
+ enum:
+ - lvds-encoder # for LVDS encoders
+ - lvds-decoder # for LVDS decoders
+
+ ports:
+ type: object
+ description: |
+ This device has two video ports. Their connections are modeled using the
+ OF graph bindings specified in Documentation/devicetree/bindings/graph.txt
+ properties:
+ port at 0:
+ type: object
+ description: |
+ With LVDS encoders port 0 is for parallel input
+ With LVDS decoders port 0 is for LVDS input
+
+ port at 1:
+ type: object
+ description: |
+ With LVDS encoders port 1 is for LVDS output
+ With LVDS decoders port 1 is for parallel output
+
+ required:
+ - port at 0
+ - port at 1
+
+required:
+ - compatible
+ - ports
+
+examples:
+ - |
+ lvds-encoder {
+ compatible = "lvds-encoder";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port at 0 {
+ reg = <0>;
+
+ lvds_enc_in: endpoint {
+ remote-endpoint = <&display_out_rgb>;
+ };
+ };
+
+ port at 1 {
+ reg = <1>;
+
+ lvds_enc_out: endpoint {
+ remote-endpoint = <&lvds_panel_in>;
+ };
+ };
+ };
+ };
+
+ - |
+ lvds-decoder {
+ compatible = "lvds-decoder";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port at 0 {
+ reg = <0>;
+
+ lvds_dec_in: endpoint {
+ remote-endpoint = <&display_out_lvds>;
+ };
+ };
+
+ port at 1 {
+ reg = <1>;
+
+ lvds_dec_out: endpoint {
+ remote-endpoint = <&rgb_panel_in>;
+ };
+ };
+ };
+ };
+
+...
diff --git a/Documentation/devicetree/bindings/display/bridge/lvds-transmitter.yaml b/Documentation/devicetree/bindings/display/bridge/lvds-transmitter.yaml
deleted file mode 100644
index 5be163a..0000000
--- a/Documentation/devicetree/bindings/display/bridge/lvds-transmitter.yaml
+++ /dev/null
@@ -1,91 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0
-%YAML 1.2
----
-$id: http://devicetree.org/schemas/display/bridge/lvds-transmitter.yaml#
-$schema: http://devicetree.org/meta-schemas/core.yaml#
-
-title: Parallel to LVDS Encoder
-
-maintainers:
- - Laurent Pinchart <laurent.pinchart+renesas at ideasonboard.com>
-
-description: |
- This binding supports the parallel to LVDS encoders that don't require any
- configuration.
-
- LVDS is a physical layer specification defined in ANSI/TIA/EIA-644-A. Multiple
- incompatible data link layers have been used over time to transmit image data
- to LVDS panels. This binding targets devices compatible with the following
- specifications only.
-
- [JEIDA] "Digital Interface Standards for Monitor", JEIDA-59-1999, February
- 1999 (Version 1.0), Japan Electronic Industry Development Association (JEIDA)
- [LDI] "Open LVDS Display Interface", May 1999 (Version 0.95), National
- Semiconductor
- [VESA] "VESA Notebook Panel Standard", October 2007 (Version 1.0), Video
- Electronics Standards Association (VESA)
-
- Those devices have been marketed under the FPD-Link and FlatLink brand names
- among others.
-
-properties:
- compatible:
- description: |
- Any encoder or decoder compatible with this generic binding, but with
- additional properties not listed here, must define its own binding and
- list a device specific compatible first followed by the generic compatible
- enum:
- - lvds-encoder
-
- ports:
- type: object
- description: |
- This device has two video ports. Their connections are modeled using the
- OF graph bindings specified in Documentation/devicetree/bindings/graph.txt
- properties:
- port at 0:
- type: object
- description: |
- Port 0 is for parallel input
-
- port at 1:
- type: object
- description: |
- Port 1 is for LVDS output
-
- required:
- - port at 0
- - port at 1
-
-required:
- - compatible
- - ports
-
-examples:
- - |
- lvds-encoder {
- compatible = "lvds-encoder";
-
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port at 0 {
- reg = <0>;
-
- lvds_enc_in: endpoint {
- remote-endpoint = <&display_out_rgb>;
- };
- };
-
- port at 1 {
- reg = <1>;
-
- lvds_enc_out: endpoint {
- remote-endpoint = <&lvds_panel_in>;
- };
- };
- };
- };
-
-...
--
2.7.4
More information about the dri-devel
mailing list