aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeil Armstrong <narmstrong@baylibre.com>2017-03-21 11:25:46 -0400
committerKevin Hilman <khilman@baylibre.com>2017-04-04 14:04:17 -0400
commit6939db7e0dbfb94a4fea47a67f1fcf6234c407a0 (patch)
tree7cbe5b9cf04a202c5e5ac04d9a908a7a619b75ab
parente9da72821f4d3bcb90dcda6aed5a1bf2ca39e753 (diff)
ARM64: dts: meson-gx: Add support for HDMI output
Add HDMI output and connector nodes. Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com>
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi39
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gx.dtsi32
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts23
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi23
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi12
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts23
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxl.dtsi13
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts23
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxm.dtsi3
9 files changed, 191 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
index 7a078bef04cd..a84e27622639 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
@@ -98,6 +98,27 @@
98 clocks = <&wifi32k>; 98 clocks = <&wifi32k>;
99 clock-names = "ext_clock"; 99 clock-names = "ext_clock";
100 }; 100 };
101
102 cvbs-connector {
103 compatible = "composite-video-connector";
104
105 port {
106 cvbs_connector_in: endpoint {
107 remote-endpoint = <&cvbs_vdac_out>;
108 };
109 };
110 };
111
112 hdmi-connector {
113 compatible = "hdmi-connector";
114 type = "a";
115
116 port {
117 hdmi_connector_in: endpoint {
118 remote-endpoint = <&hdmi_tx_tmds_out>;
119 };
120 };
121 };
101}; 122};
102 123
103/* This UART is brought out to the DB9 connector */ 124/* This UART is brought out to the DB9 connector */
@@ -188,3 +209,21 @@
188&ethmac { 209&ethmac {
189 status = "okay"; 210 status = "okay";
190}; 211};
212
213&cvbs_vdac_port {
214 cvbs_vdac_out: endpoint {
215 remote-endpoint = <&cvbs_connector_in>;
216 };
217};
218
219&hdmi_tx {
220 status = "okay";
221 pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
222 pinctrl-names = "default";
223};
224
225&hdmi_tx_tmds_port {
226 hdmi_tx_tmds_out: endpoint {
227 remote-endpoint = <&hdmi_connector_in>;
228 };
229};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
index 8d797e8b7658..358eef97ec95 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
@@ -487,6 +487,38 @@
487 cvbs_vdac_port: port@0 { 487 cvbs_vdac_port: port@0 {
488 reg = <0>; 488 reg = <0>;
489 }; 489 };
490
491 /* HDMI-TX output port */
492 hdmi_tx_port: port@1 {
493 reg = <1>;
494
495 hdmi_tx_out: endpoint {
496 remote-endpoint = <&hdmi_tx_in>;
497 };
498 };
499 };
500
501 hdmi_tx: hdmi-tx@c883a000 {
502 compatible = "amlogic,meson-gx-dw-hdmi";
503 reg = <0x0 0xc883a000 0x0 0x1c>;
504 interrupts = <GIC_SPI 57 IRQ_TYPE_EDGE_RISING>;
505 #address-cells = <1>;
506 #size-cells = <0>;
507 status = "disabled";
508
509 /* VPU VENC Input */
510 hdmi_tx_venc_port: port@0 {
511 reg = <0>;
512
513 hdmi_tx_in: endpoint {
514 remote-endpoint = <&hdmi_tx_out>;
515 };
516 };
517
518 /* TMDS Output */
519 hdmi_tx_tmds_port: port@1 {
520 reg = <1>;
521 };
490 }; 522 };
491 }; 523 };
492}; 524};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
index dbfa441f479e..87198eafb04b 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
@@ -152,6 +152,17 @@
152 }; 152 };
153 }; 153 };
154 }; 154 };
155
156 hdmi-connector {
157 compatible = "hdmi-connector";
158 type = "a";
159
160 port {
161 hdmi_connector_in: endpoint {
162 remote-endpoint = <&hdmi_tx_tmds_out>;
163 };
164 };
165 };
155}; 166};
156 167
157&uart_AO { 168&uart_AO {
@@ -262,3 +273,15 @@
262 remote-endpoint = <&cvbs_connector_in>; 273 remote-endpoint = <&cvbs_connector_in>;
263 }; 274 };
264}; 275};
276
277&hdmi_tx {
278 status = "okay";
279 pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
280 pinctrl-names = "default";
281};
282
283&hdmi_tx_tmds_port {
284 hdmi_tx_tmds_out: endpoint {
285 remote-endpoint = <&hdmi_connector_in>;
286 };
287};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
index 17ebe46e48d4..3c6c0b7f4187 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
@@ -135,6 +135,17 @@
135 }; 135 };
136 }; 136 };
137 }; 137 };
138
139 hdmi-connector {
140 compatible = "hdmi-connector";
141 type = "a";
142
143 port {
144 hdmi_connector_in: endpoint {
145 remote-endpoint = <&hdmi_tx_tmds_out>;
146 };
147 };
148 };
138}; 149};
139 150
140/* This UART is brought out to the DB9 connector */ 151/* This UART is brought out to the DB9 connector */
@@ -244,3 +255,15 @@
244 remote-endpoint = <&cvbs_connector_in>; 255 remote-endpoint = <&cvbs_connector_in>;
245 }; 256 };
246}; 257};
258
259&hdmi_tx {
260 status = "okay";
261 pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
262 pinctrl-names = "default";
263};
264
265&hdmi_tx_tmds_port {
266 hdmi_tx_tmds_out: endpoint {
267 remote-endpoint = <&hdmi_connector_in>;
268 };
269};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
index b56732f4defb..4afe1c46ec11 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
@@ -620,3 +620,15 @@
620&vpu { 620&vpu {
621 compatible = "amlogic,meson-gxbb-vpu", "amlogic,meson-gx-vpu"; 621 compatible = "amlogic,meson-gxbb-vpu", "amlogic,meson-gx-vpu";
622}; 622};
623
624&hdmi_tx {
625 compatible = "amlogic,meson-gxbb-dw-hdmi", "amlogic,meson-gx-dw-hdmi";
626 resets = <&reset RESET_HDMITX_CAPB3>,
627 <&reset RESET_HDMI_SYSTEM_RESET>,
628 <&reset RESET_HDMI_TX>;
629 reset-names = "hdmitx_apb", "hdmitx", "hdmitx_phy";
630 clocks = <&clkc CLKID_HDMI_PCLK>,
631 <&clkc CLKID_CLK81>,
632 <&clkc CLKID_GCLK_VENCI_INT0>;
633 clock-names = "isfr", "iahb", "venci";
634};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts
index cea4a3eded9b..8873c058fad2 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts
@@ -127,6 +127,17 @@
127 }; 127 };
128 }; 128 };
129 }; 129 };
130
131 hdmi-connector {
132 compatible = "hdmi-connector";
133 type = "a";
134
135 port {
136 hdmi_connector_in: endpoint {
137 remote-endpoint = <&hdmi_tx_tmds_out>;
138 };
139 };
140 };
130}; 141};
131 142
132&uart_AO { 143&uart_AO {
@@ -219,3 +230,15 @@
219 remote-endpoint = <&cvbs_connector_in>; 230 remote-endpoint = <&cvbs_connector_in>;
220 }; 231 };
221}; 232};
233
234&hdmi_tx {
235 status = "okay";
236 pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
237 pinctrl-names = "default";
238};
239
240&hdmi_tx_tmds_port {
241 hdmi_tx_tmds_out: endpoint {
242 remote-endpoint = <&hdmi_connector_in>;
243 };
244};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
index f24981a90e87..d8e096dff10a 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
@@ -44,6 +44,7 @@
44#include "meson-gx.dtsi" 44#include "meson-gx.dtsi"
45#include <dt-bindings/clock/gxbb-clkc.h> 45#include <dt-bindings/clock/gxbb-clkc.h>
46#include <dt-bindings/gpio/meson-gxl-gpio.h> 46#include <dt-bindings/gpio/meson-gxl-gpio.h>
47#include <dt-bindings/reset/amlogic,meson-gxbb-reset.h>
47 48
48/ { 49/ {
49 compatible = "amlogic,meson-gxl"; 50 compatible = "amlogic,meson-gxl";
@@ -562,3 +563,15 @@
562&vpu { 563&vpu {
563 compatible = "amlogic,meson-gxl-vpu", "amlogic,meson-gx-vpu"; 564 compatible = "amlogic,meson-gxl-vpu", "amlogic,meson-gx-vpu";
564}; 565};
566
567&hdmi_tx {
568 compatible = "amlogic,meson-gxl-dw-hdmi", "amlogic,meson-gx-dw-hdmi";
569 resets = <&reset RESET_HDMITX_CAPB3>,
570 <&reset RESET_HDMI_SYSTEM_RESET>,
571 <&reset RESET_HDMI_TX>;
572 reset-names = "hdmitx_apb", "hdmitx", "hdmitx_phy";
573 clocks = <&clkc CLKID_HDMI_PCLK>,
574 <&clkc CLKID_CLK81>,
575 <&clkc CLKID_GCLK_VENCI_INT0>;
576 clock-names = "isfr", "iahb", "venci";
577};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
index a0bc746adb42..11b0bf46a95c 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
@@ -100,6 +100,17 @@
100 }; 100 };
101 }; 101 };
102 }; 102 };
103
104 hdmi-connector {
105 compatible = "hdmi-connector";
106 type = "a";
107
108 port {
109 hdmi_connector_in: endpoint {
110 remote-endpoint = <&hdmi_tx_tmds_out>;
111 };
112 };
113 };
103}; 114};
104 115
105/* This UART is brought out to the DB9 connector */ 116/* This UART is brought out to the DB9 connector */
@@ -185,3 +196,15 @@
185 remote-endpoint = <&cvbs_connector_in>; 196 remote-endpoint = <&cvbs_connector_in>;
186 }; 197 };
187}; 198};
199
200&hdmi_tx {
201 status = "okay";
202 pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
203 pinctrl-names = "default";
204};
205
206&hdmi_tx_tmds_port {
207 hdmi_tx_tmds_out: endpoint {
208 remote-endpoint = <&hdmi_connector_in>;
209 };
210};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxm.dtsi
index ddea7305c644..fe451cce93e7 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxm.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxm.dtsi
@@ -130,3 +130,6 @@
130 compatible = "amlogic,meson-gxm-vpu", "amlogic,meson-gx-vpu"; 130 compatible = "amlogic,meson-gxm-vpu", "amlogic,meson-gx-vpu";
131}; 131};
132 132
133&hdmi_tx {
134 compatible = "amlogic,meson-gxm-dw-hdmi", "amlogic,meson-gx-dw-hdmi";
135};