Re: [PATCH 3/9] Doc/DT: Add DT binding documentation for DVI Connector

5 messages, 4 authors, 2014-03-11 · open the first message on its own page

Re: [PATCH 3/9] Doc/DT: Add DT binding documentation for DVI Connector

From: Rob Herring <hidden>
Date: 2014-03-10 21:45:58

On Fri, Feb 28, 2014 at 10:25 AM, Philipp Zabel [off-list ref] wrote:
Am Freitag, den 28.02.2014, 15:59 +0000 schrieb Russell King - ARM
Linux:
quoted
On Fri, Feb 28, 2014 at 02:20:10PM +0200, Tomi Valkeinen wrote:
quoted
Add DT binding documentation for DVI Connector.

Signed-off-by: Tomi Valkeinen <redacted>
Reviewed-by: Archit Taneja <redacted>
---
 .../devicetree/bindings/video/dvi-connector.txt    | 26 ++++++++++++++++++++++
 1 file changed, 26 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/video/dvi-connector.txt
diff --git a/Documentation/devicetree/bindings/video/dvi-connector.txt b/Documentation/devicetree/bindings/video/dvi-connector.txt
new file mode 100644
index 000000000000..6a0aff866c78
--- /dev/null
+++ b/Documentation/devicetree/bindings/video/dvi-connector.txt
@@ -0,0 +1,26 @@
+DVI Connector
+=======
+
+Required properties:
+- compatible: "dvi-connector"
+
+Optional properties:
+- label: a symbolic name for the connector
+- i2c-bus: phandle to the i2c bus that is connected to DVI DDC
+
+Required nodes:
+- Video port for DVI input
+
+Example
+-------
+
+dvi0: connector@0 {
+   compatible = "dvi-connector";
+   label = "dvi";
+
+   i2c-bus = <&i2c3>;
+
+   dvi_connector_in: endpoint {
+           remote-endpoint = <&tfp410_out>;
+   };
+};
This looks far too simplistic.  There are different classes of DVI
connector - there is:

DVI A - analogue only
DVI D - digital only (single and dual link)
DVI I - both (single and dual digital link)

DRM at least makes a distinction between these three classes, and this
disctinction is part of the user API.  How would a display system know
which kind of DVI connector is wired up on the board from this DT
description?
Maybe this could be inferred from the sources connected to it. For
example a i.MX5 board with the SoC internal TV Encoder and an external
SiI902x HDMI encoder connected to the same DVI I connector:

ipu {
        port@2 {
                ipu_di0_disp0: endpoint {
                        remote-endpoint = <&sii902x_in>;
                };
        };
        port@3 {
                ipu_di1_tve: endpoint {
                        remote-endpoint = <&tve_in>;
                };
        };
};

&sii902x {
        compatible = "si,sii9022";

        port@0 {
                sii902x_in: endpoint {
                        remote-endpoint = <&ipu_di0>;
                };
        };
        port@1 {
                sii902x_out: endpoint {
                        remote-endpoint = <&dvi_d_in>;
                };
        };
};

&tve {
        compatible = "fsl,imx53-tve";
        port@0 {
                tve_in: endpoint {
                        remote-endpoint = <&ipu_di1>;
                };
        };
        port@1 {
                tve_out: endpoint {
                        remote-endpoint = <&dvi_a_in>;
                };
        };
};

dvi-connector {
        compatible = "dvi-connector";
        ddc-i2c-bus = <&i2c3>;

        port {
                dvi_d_in: endpoint@0 {
                        remote-endpoint = <&sii902x_out>;
                };
                dvi_a_in: endpoint@1 {
                        remote-endpoint = <&tve_out>;
                };
        };
};

It should be possible to let the connector know that those two endpoints
are connected to a TMDS source and to a VGA source, respectively.
I like this proposal over the others. Although, would dual link be a
single endpoint or 2 endpoints? How would you differentiate that?

The port node seems a bit pointless.

Rob

Re: [PATCH 3/9] Doc/DT: Add DT binding documentation for DVI Connector

From: Tomi Valkeinen <hidden>
Date: 2014-03-11 06:39:11

On 10/03/14 23:45, Rob Herring wrote:
I like this proposal over the others. Although, would dual link be a
I don't like inferring the information. With the above, you can't find
out that the DVI connector has digital and analog support before all the
drivers are loaded.
single endpoint or 2 endpoints? How would you differentiate that?
Hmm, well endpoints for a single port are exclusive. So it's either a
single port and a single endpoint, or two ports and two endpoints. I
think dual link has to be single port & endpoint, as the TMDS links need
to be driven together as a single bus.

And dual-link is not really "two links". DVI dual-link means 1 clock
lane and 6 data lanes, compared to 1 clock lane and 3 data lanes for
single-link.
The port node seems a bit pointless.
There's another thread discussing the ports and endpoints.

The port node represents, for example, the pins for the connection for
that device. And an endpoint-endpoint link represents wires between two
ports.

 Tomi

Re: [PATCH 3/9] Doc/DT: Add DT binding documentation for DVI Connector

From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2014-03-11 08:00:12

On Tue, Mar 11, 2014 at 7:39 AM, Tomi Valkeinen [off-list ref] wrote:
On 10/03/14 23:45, Rob Herring wrote:
quoted
I like this proposal over the others. Although, would dual link be a
I don't like inferring the information. With the above, you can't find
out that the DVI connector has digital and analog support before all the
drivers are loaded.
quoted
single endpoint or 2 endpoints? How would you differentiate that?
Hmm, well endpoints for a single port are exclusive. So it's either a
single port and a single endpoint, or two ports and two endpoints. I
think dual link has to be single port & endpoint, as the TMDS links need
to be driven together as a single bus.

And dual-link is not really "two links". DVI dual-link means 1 clock
lane and 6 data lanes, compared to 1 clock lane and 3 data lanes for
single-link.
What about having a property for the number of data lanes?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

Re: [PATCH 3/9] Doc/DT: Add DT binding documentation for DVI Connector

From: Tomi Valkeinen <hidden>
Date: 2014-03-11 08:04:21

On 11/03/14 10:00, Geert Uytterhoeven wrote:
On Tue, Mar 11, 2014 at 7:39 AM, Tomi Valkeinen [off-list ref] wrote:
quoted
On 10/03/14 23:45, Rob Herring wrote:
quoted
I like this proposal over the others. Although, would dual link be a
I don't like inferring the information. With the above, you can't find
out that the DVI connector has digital and analog support before all the
drivers are loaded.
quoted
single endpoint or 2 endpoints? How would you differentiate that?
Hmm, well endpoints for a single port are exclusive. So it's either a
single port and a single endpoint, or two ports and two endpoints. I
think dual link has to be single port & endpoint, as the TMDS links need
to be driven together as a single bus.

And dual-link is not really "two links". DVI dual-link means 1 clock
lane and 6 data lanes, compared to 1 clock lane and 3 data lanes for
single-link.
What about having a property for the number of data lanes?
That was already suggested by Philipp in this thread. I don't see
anything wrong with that, but I don't really see benefit either.
"dual-link" is a standard term for 6 data lanes for the DVI connector.
And the choices are 3 or 6 data lanes, nothing else.

 Tomi

Re: [PATCH 3/9] Doc/DT: Add DT binding documentation for DVI Connector

From: Philipp Zabel <p.zabel@pengutronix.de>
Date: 2014-03-11 11:19:00

Am Dienstag, den 11.03.2014, 10:04 +0200 schrieb Tomi Valkeinen:
On 11/03/14 10:00, Geert Uytterhoeven wrote:
quoted
On Tue, Mar 11, 2014 at 7:39 AM, Tomi Valkeinen [off-list ref] wrote:
quoted
On 10/03/14 23:45, Rob Herring wrote:
quoted
I like this proposal over the others. Although, would dual link be a
I don't like inferring the information. With the above, you can't find
out that the DVI connector has digital and analog support before all the
drivers are loaded.
quoted
single endpoint or 2 endpoints? How would you differentiate that?
Hmm, well endpoints for a single port are exclusive. So it's either a
single port and a single endpoint, or two ports and two endpoints. I
think dual link has to be single port & endpoint, as the TMDS links need
to be driven together as a single bus.

And dual-link is not really "two links". DVI dual-link means 1 clock
lane and 6 data lanes, compared to 1 clock lane and 3 data lanes for
single-link.
What about having a property for the number of data lanes?
That was already suggested by Philipp in this thread. I don't see
anything wrong with that, but I don't really see benefit either.
"dual-link" is a standard term for 6 data lanes for the DVI connector.
And the choices are 3 or 6 data lanes, nothing else.
The number of lanes of a DisplayPort connector could be 1 to 4. Also,
there's dual-mode DP which can use four lanes to drive
somewhat-like-HDMI single link TMDS signals.

regards
Philipp
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help