Skip to contentSkip to conversation

ARM: dts: duovero-parlor: Add HDMI output

PATCH New Florian Vaussard 4 participants 8 messages May 20, 2014 – May 21, 2014 Device tree bindings

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ARM: dts: duovero-parlor: Add HDMI output

Add the necessary DTS nodes to enable the micro-HDMI output on Parlor board.

---
 arch/arm/boot/dts/omap4-duovero-parlor.dts | 42 ++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
arch/arm/boot/dts/omap4-duovero-parlor.dts +42 -0
index 96f51d8..3b234b8 100644
@@ -15,6 +15,10 @@
 	model = "OMAP4430 Gumstix Duovero on Parlor";
 	compatible = "gumstix,omap4-duovero-parlor", "gumstix,omap4-duovero", "ti,omap4430", "ti,omap4";
 
+	aliases {
+		display0 = &hdmi0;
+	};
+
 	leds {
 		compatible = "gpio-leds";
 		led0 {
@@ -35,6 +39,19 @@
 			gpio-key,wakeup;
 		};
 	};
+
+	hdmi0: connector at 0 {
+		compatible = "hdmi-connector";
+		label = "hdmi";
+
+		type = "d";
+
+		port {
+			hdmi_connector_in: endpoint {
+				remote-endpoint = <&hdmi_out>;
+			};
+		};
+	};
 };
 
 &omap4_pmx_core {
@@ -77,6 +94,15 @@
 			0x30 (PIN_INPUT_PULLUP | MUX_MODE3)	/* gpmc_a24.gpio_48: amdix enabled */
 		>;
 	};
+
+	dss_hdmi_pins: pinmux_dss_hdmi_pins {
+		pinctrl-single,pins = <
+			0x58 (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_hpd.hdmi_hpd */
+			0x5a (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_cec.hdmi_cec */
+			0x5c (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_ddc_scl.hdmi_ddc_scl */
+			0x5e (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_ddc_sda.hdmi_ddc_sda */
+		>;
+	};
 };
 
 &i2c2 {
@@ -143,4 +169,20 @@
 	};
 };
 
+&dss {
+	status = "ok";
+};
+
+&hdmi {
+	status = "ok";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&dss_hdmi_pins>;
+
+	port {
+		hdmi_out: endpoint {
+			remote-endpoint = <&hdmi_connector_in>;
+		};
+	};
+};
 
Signature · 1 line
1.8.3.2
#1 lore raw

PATCH 1/1 ARM: dts: duovero-parlor: Add HDMI output

Quoted 6 lines · Florian Vaussard
arch/arm/boot/dts/omap4-duovero-parlor.dts +2 -0
@@ -77,6 +94,15 @@
 			0x30 (PIN_INPUT_PULLUP | MUX_MODE3)	/* gpmc_a24.gpio_48: amdix enabled */
 		>;
 	};
+
+	dss_hdmi_pins: pinmux_dss_hdmi_pins {

arch/arm/boot/dts/omap4-duovero-parlor.dts line 108

Quoted 10 lines
arch/arm/boot/dts/omap4-duovero-parlor.dts +7 -0
+		pinctrl-single,pins = <
+			0x58 (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_hpd.hdmi_hpd */
+			0x5a (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_cec.hdmi_cec */
+			0x5c (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_ddc_scl.hdmi_ddc_scl */
+			0x5e (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_ddc_sda.hdmi_ddc_sda */
+		>;
+	};
 };
 
 &i2c2 {

This seems to apply with fuzz against omap-for-v3.16/dt-v2, but should be updated against omap-for-v3.16/dt-v2 to use OMAP4_IOPAD as omap4-duovero-parlor.dts is now using it. That makes checking the muxing easier against the TRM. See commit 5efa994b0d49 for the script Joachim used.

Regards,

Tony

#2 lore raw

PATCH 1/1 ARM: dts: duovero-parlor: Add HDMI output

Quoted 16 lines · Tony Lindgren
Quoted 15 lines · Florian Vaussard
arch/arm/boot/dts/omap4-duovero-parlor.dts +9 -0
@@ -77,6 +94,15 @@
 			0x30 (PIN_INPUT_PULLUP | MUX_MODE3)	/* gpmc_a24.gpio_48: amdix enabled */
 		>;
 	};
+
+	dss_hdmi_pins: pinmux_dss_hdmi_pins {
+		pinctrl-single,pins = <
+			0x58 (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_hpd.hdmi_hpd */
+			0x5a (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_cec.hdmi_cec */
+			0x5c (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_ddc_scl.hdmi_ddc_scl */
+			0x5e (PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_ddc_sda.hdmi_ddc_sda */
+		>;
+	};
 };
 
Quoted 8 lines

Review line 108

Quoted 1 line
(quoted diff) +0 -0
 &i2c2 {

This seems to apply with fuzz against omap-for-v3.16/dt-v2, but should be updated against omap-for-v3.16/dt-v2 to use OMAP4_IOPAD as omap4-duovero-parlor.dts is now using it. That makes checking the muxing easier against the TRM. See commit 5efa994b0d49 for the script Joachim used.

It is based on Tomi's for-next, which is based on 3.15-rc4, so the fuzz is not surprising. I will update against omap-for-v3.16/dt-v2.

Regards,
Florian

#3 lore raw

PATCH 1/1 ARM: dts: duovero-parlor: Add HDMI output

In reply to Florian Vaussard
Quoted 31 lines · Florian Vaussard

Add the necessary DTS nodes to enable the micro-HDMI output on Parlor board.

---
 arch/arm/boot/dts/omap4-duovero-parlor.dts | 42 ++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
arch/arm/boot/dts/omap4-duovero-parlor.dts +8 -0
index 96f51d8..3b234b8 100644
@@ -15,6 +15,10 @@
        model = "OMAP4430 Gumstix Duovero on Parlor";
        compatible = "gumstix,omap4-duovero-parlor", "gumstix,omap4-duovero", "ti,omap4430", "ti,omap4";
 
+       aliases {
+               display0 = &hdmi0;
+       };
+
        leds {
                compatible = "gpio-leds";
                led0 {
@@ -35,6 +39,19 @@
                        gpio-key,wakeup;
                };
        };
+
+       hdmi0: connector at 0 {
+               compatible = "hdmi-connector";
+               label = "hdmi";

arch/arm/boot/dts/omap4-duovero-parlor.dts line 55

Quoted 10 lines
arch/arm/boot/dts/omap4-duovero-parlor.dts +9 -0
+
+               type = "d";
+
+               port {
+                       hdmi_connector_in: endpoint {
+                               remote-endpoint = <&hdmi_out>;
+                       };
+               };
+       };
 };

No, HPD (hotplug) pin?

I think Parlor has one and the "hdmi-connector" binding now supports it. See Tomi's 3.16/fbdev-omap branch.

regards
Joachim Eastwood

#4 lore raw

PATCH 1/1 ARM: dts: duovero-parlor: Add HDMI output

Hi Joachim,

Quoted 45 lines · Joachim Eastwood
Quoted 31 lines · Florian Vaussard

Add the necessary DTS nodes to enable the micro-HDMI output on Parlor board.

---
 arch/arm/boot/dts/omap4-duovero-parlor.dts | 42 ++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
arch/arm/boot/dts/omap4-duovero-parlor.dts +8 -0
index 96f51d8..3b234b8 100644
@@ -15,6 +15,10 @@
        model = "OMAP4430 Gumstix Duovero on Parlor";
        compatible = "gumstix,omap4-duovero-parlor", "gumstix,omap4-duovero", "ti,omap4430", "ti,omap4";
 
+       aliases {
+               display0 = &hdmi0;
+       };
+
        leds {
                compatible = "gpio-leds";
                led0 {
@@ -35,6 +39,19 @@
                        gpio-key,wakeup;
                };
        };
+
+       hdmi0: connector at 0 {
+               compatible = "hdmi-connector";
+               label = "hdmi";

arch/arm/boot/dts/omap4-duovero-parlor.dts line 55

Quoted 10 lines
arch/arm/boot/dts/omap4-duovero-parlor.dts +9 -0
+
+               type = "d";
+
+               port {
+                       hdmi_connector_in: endpoint {
+                               remote-endpoint = <&hdmi_out>;
+                       };
+               };
+       };
 };

No, HPD (hotplug) pin?

Quoted 3 lines

I think Parlor has one and the "hdmi-connector" binding now supports it. See Tomi's 3.16/fbdev-omap branch.

I will check. Thank you for the heads up.

Regards,
Florian

#5 lore raw

PATCH 1/1 ARM: dts: duovero-parlor: Add HDMI output

In reply to Joachim Eastwood
Quoted 45 lines · Joachim Eastwood
Quoted 31 lines · Florian Vaussard

Add the necessary DTS nodes to enable the micro-HDMI output on Parlor board.

---
 arch/arm/boot/dts/omap4-duovero-parlor.dts | 42 ++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
arch/arm/boot/dts/omap4-duovero-parlor.dts +8 -0
index 96f51d8..3b234b8 100644
@@ -15,6 +15,10 @@
        model = "OMAP4430 Gumstix Duovero on Parlor";
        compatible = "gumstix,omap4-duovero-parlor", "gumstix,omap4-duovero", "ti,omap4430", "ti,omap4";
 
+       aliases {
+               display0 = &hdmi0;
+       };
+
        leds {
                compatible = "gpio-leds";
                led0 {
@@ -35,6 +39,19 @@
                        gpio-key,wakeup;
                };
        };
+
+       hdmi0: connector at 0 {
+               compatible = "hdmi-connector";
+               label = "hdmi";

arch/arm/boot/dts/omap4-duovero-parlor.dts line 55

Quoted 10 lines
arch/arm/boot/dts/omap4-duovero-parlor.dts +9 -0
+
+               type = "d";
+
+               port {
+                       hdmi_connector_in: endpoint {
+                               remote-endpoint = <&hdmi_out>;
+                       };
+               };
+       };
 };

No, HPD (hotplug) pin?

Quoted 3 lines

I think Parlor has one and the "hdmi-connector" binding now supports it. See Tomi's 3.16/fbdev-omap branch.

Looking into the details, the HPD pin of the parlor board is connected to the OMAP4 HDMI IP. The LINK_CONNECT and LINK_DISCONNECT events are managed by hdmi_irq_handler() in hdmi4.c to turn on/off the PHY's power. So there is no need to use the hgp-gpios binding of "hdmi-connector" IMHO. Correct me if I am wrong, as the public TRM is pretty thin regarding the OMAP4 HDMI IP.

Regards,
Florian

#6 lore raw

PATCH 1/1 ARM: dts: duovero-parlor: Add HDMI output

Quoted 10 lines · Florian Vaussard
Quoted 3 lines

I think Parlor has one and the "hdmi-connector" binding now supports it. See Tomi's 3.16/fbdev-omap branch.

Looking into the details, the HPD pin of the parlor board is connected to the OMAP4 HDMI IP. The LINK_CONNECT and LINK_DISCONNECT events are managed by hdmi_irq_handler() in hdmi4.c to turn on/off the PHY's power. So there is no need to use the hgp-gpios binding of "hdmi-connector" IMHO. Correct me if I am wrong, as the public TRM is pretty thin regarding the OMAP4 HDMI IP.

The PHY's link-connect and disconnect are a separate thing, not really related to the HPD.

The hdmi_hpd pin on OMAP should be configured to GPIO mode, and the GPIO should be handled by the hdmi-connector.

The HDMI driver doesn't have support for the HDMI IP's HPD, and if I recall right, the HDMI IP's HPD was not without problems. And afaik it doesn't really bring anything, a normal GPIO does the job just fine.

Tomi

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140521/24220845/attachment-0001.sig>

#7 lore raw

PATCH 1/1 ARM: dts: duovero-parlor: Add HDMI output

Quoted 17 lines · Tomi Valkeinen
Quoted 11 lines · Florian Vaussard
Quoted 3 lines

I think Parlor has one and the "hdmi-connector" binding now supports it. See Tomi's 3.16/fbdev-omap branch.

Looking into the details, the HPD pin of the parlor board is connected to the OMAP4 HDMI IP. The LINK_CONNECT and LINK_DISCONNECT events are managed by hdmi_irq_handler() in hdmi4.c to turn on/off the PHY's power. So there is no need to use the hgp-gpios binding of "hdmi-connector" IMHO. Correct me if I am wrong, as the public TRM is pretty thin regarding the OMAP4 HDMI IP.

The PHY's link-connect and disconnect are a separate thing, not really related to the HPD.

Quoted 8 lines

The hdmi_hpd pin on OMAP should be configured to GPIO mode, and the GPIO should be handled by the hdmi-connector.

The HDMI driver doesn't have support for the HDMI IP's HPD, and if I recall right, the HDMI IP's HPD was not without problems. And afaik it doesn't really bring anything, a normal GPIO does the job just fine.

I see. I will use the pin as a GPIO, and post a v2.

Regards,
Florian