blob: 69db584253dae88b5d0d80f6530ad2fc9897e2ad [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0
2/dts-v1/;
3
4#include <dt-bindings/input/linux-event-codes.h>
5#include <dt-bindings/input/gpio-keys.h>
6
7#include "tegra234-p3701-0000.dtsi"
8#include "tegra234-p3737-0000.dtsi"
9
10/ {
11 model = "NVIDIA Jetson AGX Orin Developer Kit";
12 compatible = "nvidia,p3737-0000+p3701-0000", "nvidia,p3701-0000", "nvidia,tegra234";
13
14 aliases {
Tom Rini53633a82024-02-29 12:33:36 -050015 serial0 = &tcu;
16 serial1 = &uarta;
17 };
18
19 chosen {
20 bootargs = "console=ttyTCU0,115200n8";
21 stdout-path = "serial0:115200n8";
22 };
23
24 bus@0 {
25 serial@3100000 {
26 compatible = "nvidia,tegra194-hsuart";
27 reset-names = "serial";
28 status = "okay";
29 };
30
31 serial@31d0000 {
32 current-speed = <115200>;
33 status = "okay";
34 };
35
36 pwm@32a0000 {
37 assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>;
38 assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>;
39 status = "okay";
40 };
41
42 hda@3510000 {
43 nvidia,model = "NVIDIA Jetson AGX Orin HDA";
44 status = "okay";
45 };
46
47 padctl@3520000 {
48 status = "okay";
49
50 pads {
51 usb2 {
52 lanes {
53 usb2-0 {
54 status = "okay";
55 };
56
57 usb2-1 {
58 status = "okay";
59 };
60
61 usb2-2 {
62 status = "okay";
63 };
64
65 usb2-3 {
66 status = "okay";
67 };
68 };
69 };
70
71 usb3 {
72 lanes {
73 usb3-0 {
74 status = "okay";
75 };
76
77 usb3-1 {
78 status = "okay";
79 };
80
81 usb3-2 {
82 status = "okay";
83 };
84 };
85 };
86 };
87
88 ports {
89 usb2-0 {
90 mode = "otg";
91 usb-role-switch;
92 status = "okay";
93
94 port {
95 hs_typec_p1: endpoint {
96 remote-endpoint = <&hs_ucsi_ccg_p1>;
97 };
98 };
99 };
100
101 usb2-1 {
102 mode = "host";
103 status = "okay";
104
105 port {
106 hs_typec_p0: endpoint {
107 remote-endpoint = <&hs_ucsi_ccg_p0>;
108 };
109 };
110 };
111
112 usb2-2 {
113 mode = "host";
114 status = "okay";
115 };
116
117 usb2-3 {
118 mode = "host";
119 status = "okay";
120 };
121
122 usb3-0 {
123 nvidia,usb2-companion = <1>;
124 status = "okay";
125
126 port {
127 ss_typec_p0: endpoint {
128 remote-endpoint = <&ss_ucsi_ccg_p0>;
129 };
130 };
131 };
132
133 usb3-1 {
134 nvidia,usb2-companion = <0>;
135 status = "okay";
136
137 port {
138 ss_typec_p1: endpoint {
139 remote-endpoint = <&ss_ucsi_ccg_p1>;
140 };
141 };
142 };
143
144 usb3-2 {
145 nvidia,usb2-companion = <3>;
146 status = "okay";
147 };
148 };
149 };
150
151 usb@3550000 {
152 status = "okay";
153
154 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
155 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>;
156 phy-names = "usb2-0", "usb3-0";
157 };
158
159 usb@3610000 {
160 status = "okay";
161
162 phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
163 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>,
164 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>,
165 <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>,
166 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>,
167 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>,
168 <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>;
169 phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3",
170 "usb3-0", "usb3-1", "usb3-2";
171 };
172
173 ethernet@6800000 {
174 status = "okay";
175
176 phy-handle = <&mgbe0_phy>;
Tom Rini93743d22024-04-01 09:08:13 -0400177 phy-mode = "10gbase-r";
Tom Rini53633a82024-02-29 12:33:36 -0500178
179 mdio {
180 #address-cells = <1>;
181 #size-cells = <0>;
182
183 mgbe0_phy: phy@0 {
184 compatible = "ethernet-phy-ieee802.3-c45";
185 reg = <0x0>;
186
187 #phy-cells = <0>;
188 };
189 };
190 };
191
192 i2c@c240000 {
193 status = "okay";
194
195 typec@8 {
196 compatible = "cypress,cypd4226";
197 reg = <0x08>;
198 interrupt-parent = <&gpio>;
199 interrupts = <TEGRA234_MAIN_GPIO(Y, 4) IRQ_TYPE_LEVEL_LOW>;
200 firmware-name = "nvidia,jetson-agx-xavier";
201 status = "okay";
202
203 #address-cells = <1>;
204 #size-cells = <0>;
205
206 ccg_typec_con0: connector@0 {
207 compatible = "usb-c-connector";
208 reg = <0>;
209 label = "USB-C";
210 data-role = "host";
211
212 ports {
213 #address-cells = <1>;
214 #size-cells = <0>;
215
216 port@0 {
217 reg = <0>;
218
219 hs_ucsi_ccg_p0: endpoint {
220 remote-endpoint = <&hs_typec_p0>;
221 };
222 };
223
224 port@1 {
225 reg = <1>;
226
227 ss_ucsi_ccg_p0: endpoint {
228 remote-endpoint = <&ss_typec_p0>;
229 };
230 };
231 };
232 };
233
234 ccg_typec_con1: connector@1 {
235 compatible = "usb-c-connector";
236 reg = <1>;
237 label = "USB-C";
238 data-role = "dual";
239
240 ports {
241 #address-cells = <1>;
242 #size-cells = <0>;
243
244 port@0 {
245 reg = <0>;
246
247 hs_ucsi_ccg_p1: endpoint {
248 remote-endpoint = <&hs_typec_p1>;
249 };
250 };
251
252 port@1 {
253 reg = <1>;
254
255 ss_ucsi_ccg_p1: endpoint {
256 remote-endpoint = <&ss_typec_p1>;
257 };
258 };
259 };
260 };
261 };
262 };
263
264 pcie@14100000 {
265 status = "okay";
266
267 vddio-pex-ctl-supply = <&vdd_1v8_ao>;
268
269 phys = <&p2u_hsio_3>;
270 phy-names = "p2u-0";
271 };
272
273 pcie@14160000 {
274 status = "okay";
275
276 vddio-pex-ctl-supply = <&vdd_1v8_ao>;
277
278 phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
279 <&p2u_hsio_7>;
280 phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
281 };
282
283 pcie@141a0000 {
284 status = "okay";
285
286 vddio-pex-ctl-supply = <&vdd_1v8_ls>;
287 vpcie3v3-supply = <&vdd_3v3_pcie>;
288 vpcie12v-supply = <&vdd_12v_pcie>;
289
290 phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
291 <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
292 <&p2u_nvhs_6>, <&p2u_nvhs_7>;
293 phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
294 "p2u-5", "p2u-6", "p2u-7";
295 };
296
297 pcie-ep@141a0000 {
298 status = "disabled";
299
300 vddio-pex-ctl-supply = <&vdd_1v8_ls>;
301
302 reset-gpios = <&gpio TEGRA234_MAIN_GPIO(AF, 1) GPIO_ACTIVE_LOW>;
303
304 nvidia,refclk-select-gpios = <&gpio_aon
305 TEGRA234_AON_GPIO(AA, 4)
306 GPIO_ACTIVE_HIGH>;
307
308 phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
309 <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
310 <&p2u_nvhs_6>, <&p2u_nvhs_7>;
311 phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
312 "p2u-5", "p2u-6", "p2u-7";
313 };
314 };
315
316 gpio-keys {
317 compatible = "gpio-keys";
318 status = "okay";
319
320 key-force-recovery {
321 label = "Force Recovery";
322 gpios = <&gpio TEGRA234_MAIN_GPIO(G, 0) GPIO_ACTIVE_LOW>;
323 linux,input-type = <EV_KEY>;
324 linux,code = <BTN_1>;
325 };
326
327 key-power {
328 label = "Power";
329 gpios = <&gpio_aon TEGRA234_AON_GPIO(EE, 4) GPIO_ACTIVE_LOW>;
330 linux,input-type = <EV_KEY>;
331 linux,code = <KEY_POWER>;
332 wakeup-event-action = <EV_ACT_ASSERTED>;
333 wakeup-source;
334 };
335
336 key-suspend {
337 label = "Suspend";
338 gpios = <&gpio TEGRA234_MAIN_GPIO(G, 2) GPIO_ACTIVE_LOW>;
339 linux,input-type = <EV_KEY>;
340 linux,code = <KEY_SLEEP>;
341 };
342 };
343
344 pwm-fan {
345 cooling-levels = <66 215 255>;
346 };
347
348 serial {
349 status = "okay";
350 };
351
352 sound {
353 compatible = "nvidia,tegra186-audio-graph-card";
354 status = "okay";
355
356 dais = /* ADMAIF (FE) Ports */
357 <&admaif0_port>, <&admaif1_port>, <&admaif2_port>, <&admaif3_port>,
358 <&admaif4_port>, <&admaif5_port>, <&admaif6_port>, <&admaif7_port>,
359 <&admaif8_port>, <&admaif9_port>, <&admaif10_port>, <&admaif11_port>,
360 <&admaif12_port>, <&admaif13_port>, <&admaif14_port>, <&admaif15_port>,
361 <&admaif16_port>, <&admaif17_port>, <&admaif18_port>, <&admaif19_port>,
362 /* XBAR Ports */
363 <&xbar_i2s1_port>, <&xbar_i2s2_port>, <&xbar_i2s4_port>,
364 <&xbar_i2s6_port>, <&xbar_dmic3_port>,
365 <&xbar_sfc1_in_port>, <&xbar_sfc2_in_port>,
366 <&xbar_sfc3_in_port>, <&xbar_sfc4_in_port>,
367 <&xbar_mvc1_in_port>, <&xbar_mvc2_in_port>,
368 <&xbar_amx1_in1_port>, <&xbar_amx1_in2_port>,
369 <&xbar_amx1_in3_port>, <&xbar_amx1_in4_port>,
370 <&xbar_amx2_in1_port>, <&xbar_amx2_in2_port>,
371 <&xbar_amx2_in3_port>, <&xbar_amx2_in4_port>,
372 <&xbar_amx3_in1_port>, <&xbar_amx3_in2_port>,
373 <&xbar_amx3_in3_port>, <&xbar_amx3_in4_port>,
374 <&xbar_amx4_in1_port>, <&xbar_amx4_in2_port>,
375 <&xbar_amx4_in3_port>, <&xbar_amx4_in4_port>,
376 <&xbar_adx1_in_port>, <&xbar_adx2_in_port>,
377 <&xbar_adx3_in_port>, <&xbar_adx4_in_port>,
378 <&xbar_mix_in1_port>, <&xbar_mix_in2_port>,
379 <&xbar_mix_in3_port>, <&xbar_mix_in4_port>,
380 <&xbar_mix_in5_port>, <&xbar_mix_in6_port>,
381 <&xbar_mix_in7_port>, <&xbar_mix_in8_port>,
382 <&xbar_mix_in9_port>, <&xbar_mix_in10_port>,
383 <&xbar_asrc_in1_port>, <&xbar_asrc_in2_port>,
384 <&xbar_asrc_in3_port>, <&xbar_asrc_in4_port>,
385 <&xbar_asrc_in5_port>, <&xbar_asrc_in6_port>,
386 <&xbar_asrc_in7_port>,
387 <&xbar_ope1_in_port>,
388 /* HW accelerators */
389 <&sfc1_out_port>, <&sfc2_out_port>,
390 <&sfc3_out_port>, <&sfc4_out_port>,
391 <&mvc1_out_port>, <&mvc2_out_port>,
392 <&amx1_out_port>, <&amx2_out_port>,
393 <&amx3_out_port>, <&amx4_out_port>,
394 <&adx1_out1_port>, <&adx1_out2_port>,
395 <&adx1_out3_port>, <&adx1_out4_port>,
396 <&adx2_out1_port>, <&adx2_out2_port>,
397 <&adx2_out3_port>, <&adx2_out4_port>,
398 <&adx3_out1_port>, <&adx3_out2_port>,
399 <&adx3_out3_port>, <&adx3_out4_port>,
400 <&adx4_out1_port>, <&adx4_out2_port>,
401 <&adx4_out3_port>, <&adx4_out4_port>,
402 <&mix_out1_port>, <&mix_out2_port>, <&mix_out3_port>,
403 <&mix_out4_port>, <&mix_out5_port>,
404 <&asrc_out1_port>, <&asrc_out2_port>, <&asrc_out3_port>,
405 <&asrc_out4_port>, <&asrc_out5_port>, <&asrc_out6_port>,
406 <&ope1_out_port>,
407 /* BE I/O Ports */
408 <&i2s1_port>, <&i2s2_port>, <&i2s4_port>, <&i2s6_port>,
409 <&dmic3_port>;
410
411 label = "NVIDIA Jetson AGX Orin APE";
412
413 widgets = "Microphone", "CVB-RT MIC Jack",
414 "Microphone", "CVB-RT MIC",
415 "Headphone", "CVB-RT HP Jack",
416 "Speaker", "CVB-RT SPK";
417
418 routing = /* I2S1 <-> RT5640 */
419 "CVB-RT AIF1 Playback", "I2S1 DAP-Playback",
420 "I2S1 DAP-Capture", "CVB-RT AIF1 Capture",
421 /* RT5640 codec controls */
422 "CVB-RT HP Jack", "CVB-RT HPOL",
423 "CVB-RT HP Jack", "CVB-RT HPOR",
424 "CVB-RT IN1P", "CVB-RT MIC Jack",
425 "CVB-RT IN2P", "CVB-RT MIC Jack",
426 "CVB-RT SPK", "CVB-RT SPOLP",
427 "CVB-RT SPK", "CVB-RT SPORP",
428 "CVB-RT DMIC1", "CVB-RT MIC",
429 "CVB-RT DMIC2", "CVB-RT MIC";
430 };
431
432 thermal-zones {
433 tj-thermal {
434 cooling-maps {
435 map-active-0 {
436 cooling-device = <&fan 0 1>;
437 trip = <&tj_trip_active0>;
438 };
439
440 map-active-1 {
441 cooling-device = <&fan 1 2>;
442 trip = <&tj_trip_active1>;
443 };
444 };
445 };
446 };
447};