aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2017-03-05 23:11:59 -0500
committerTony Lindgren <tony@atomide.com>2017-03-22 12:07:28 -0400
commit50cdcc0b01e500eaef02d4298694548f25dd60cb (patch)
treeebc4455793bee6162ecfc46db6d20b5aa7101283
parentfdec8edbbee5a9a85ac1aeae48c4d3ae43a6ad27 (diff)
ARM: dts: omap4-droid4: Add HDMI support
We can get HDMI working as long as the 5V regulator is on. There is probably an encoder chip there too, but so far no idea what it might be. Let's keep the 5V HDMI regulator always enabled for now as otherwise we cannot detect the monitor properly. Cc: devicetree@vger.kernel.org Cc: Marcel Partap <mpartap@gmx.net> Cc: Michael Scott <michael.scott@linaro.org> Cc: Tomi Valkeinen <tomi.valkeinen@ti.com> Tested-By: Sebastian Reichel <sre@kernel.org> Signed-off-by: Tony Lindgren <tony@atomide.com>
-rw-r--r--arch/arm/boot/dts/omap4-droid4-xt894.dts65
1 files changed, 65 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/omap4-droid4-xt894.dts b/arch/arm/boot/dts/omap4-droid4-xt894.dts
index 05046edefee7..6b91eb812ea7 100644
--- a/arch/arm/boot/dts/omap4-droid4-xt894.dts
+++ b/arch/arm/boot/dts/omap4-droid4-xt894.dts
@@ -35,6 +35,37 @@
35 gpios = <&gpio2 18 GPIO_ACTIVE_LOW>; /* gpio50 */ 35 gpios = <&gpio2 18 GPIO_ACTIVE_LOW>; /* gpio50 */
36 }; 36 };
37 37
38 hdmi0: connector {
39 compatible = "hdmi-connector";
40 pinctrl-0 = <&hdmi_hpd_gpio>;
41 pinctrl-names = "default";
42 label = "hdmi";
43 type = "d";
44
45 hpd-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>; /* gpio63 */
46
47 port {
48 hdmi_connector_in: endpoint {
49 remote-endpoint = <&hdmi_out>;
50 };
51 };
52 };
53
54 /*
55 * HDMI 5V regulator probably sourced from battery. Let's keep
56 * keep this as always enabled for HDMI to work until we've
57 * figured what the encoder chip is.
58 */
59 hdmi_regulator: regulator-hdmi {
60 compatible = "regulator-fixed";
61 regulator-name = "hdmi";
62 regulator-min-microvolt = <5000000>;
63 regulator-max-microvolt = <5000000>;
64 gpio = <&gpio2 27 GPIO_ACTIVE_HIGH>; /* gpio59 */
65 enable-active-high;
66 regulator-always-on;
67 };
68
38 /* This is probably coming straight from the battery.. */ 69 /* This is probably coming straight from the battery.. */
39 wl12xx_vmmc: regulator-wl12xx { 70 wl12xx_vmmc: regulator-wl12xx {
40 compatible = "regulator-fixed"; 71 compatible = "regulator-fixed";
@@ -67,6 +98,10 @@
67 }; 98 };
68}; 99};
69 100
101&dss {
102 status = "okay";
103};
104
70&gpio6 { 105&gpio6 {
71 touchscreen_reset { 106 touchscreen_reset {
72 gpio-hog; 107 gpio-hog;
@@ -81,6 +116,20 @@
81 status = "disabled"; 116 status = "disabled";
82}; 117};
83 118
119&hdmi {
120 status = "okay";
121 pinctrl-0 = <&dss_hdmi_pins>;
122 pinctrl-names = "default";
123 vdda-supply = <&vdac>;
124
125 port {
126 hdmi_out: endpoint {
127 remote-endpoint = <&hdmi_connector_in>;
128 lanes = <1 0 3 2 5 4 7 6>;
129 };
130 };
131};
132
84&i2c1 { 133&i2c1 {
85 tmp105@48 { 134 tmp105@48 {
86 compatible = "ti,tmp105"; 135 compatible = "ti,tmp105";
@@ -249,6 +298,22 @@
249 298
250&omap4_pmx_core { 299&omap4_pmx_core {
251 300
301 /* hdmi_hpd.gpio_63 */
302 hdmi_hpd_gpio: pinmux_hdmi_hpd_pins {
303 pinctrl-single,pins = <
304 OMAP4_IOPAD(0x098, PIN_INPUT | MUX_MODE3)
305 >;
306 };
307
308 /* hdmi_cec.hdmi_cec, hdmi_scl.hdmi_scl, hdmi_sda.hdmi_sda */
309 dss_hdmi_pins: pinmux_dss_hdmi_pins {
310 pinctrl-single,pins = <
311 OMAP4_IOPAD(0x09a, PIN_INPUT_PULLUP | MUX_MODE0)
312 OMAP4_IOPAD(0x09c, PIN_INPUT | MUX_MODE0)
313 OMAP4_IOPAD(0x09e, PIN_INPUT | MUX_MODE0)
314 >;
315 };
316
252 /* gpmc_ncs0.gpio_50 */ 317 /* gpmc_ncs0.gpio_50 */
253 poweroff_gpio: pinmux_poweroff_pins { 318 poweroff_gpio: pinmux_poweroff_pins {
254 pinctrl-single,pins = < 319 pinctrl-single,pins = <