1b8656c67SMikko Perttunen// SPDX-License-Identifier: GPL-2.0
2b8656c67SMikko Perttunen/dts-v1/;
3b8656c67SMikko Perttunen
4e47ac508SThierry Reding#include <dt-bindings/input/linux-event-codes.h>
5e47ac508SThierry Reding#include <dt-bindings/input/gpio-keys.h>
6e47ac508SThierry Reding
7b8656c67SMikko Perttunen#include "tegra194-p2888.dtsi"
8b8656c67SMikko Perttunen
9b8656c67SMikko Perttunen/ {
109c536ccdSThierry Reding	model = "NVIDIA Jetson AGX Xavier Developer Kit";
11b8656c67SMikko Perttunen	compatible = "nvidia,p2972-0000", "nvidia,tegra194";
12b8656c67SMikko Perttunen
13eef97c2aSThierry Reding	cbb@0 {
141aaa7698SThierry Reding		aconnect@2900000 {
159a182db4SSameer Pujar			status = "okay";
169a182db4SSameer Pujar
179a182db4SSameer Pujar			dma-controller@2930000 {
189a182db4SSameer Pujar				status = "okay";
199a182db4SSameer Pujar			};
209a182db4SSameer Pujar
219a182db4SSameer Pujar			interrupt-controller@2a40000 {
229a182db4SSameer Pujar				status = "okay";
239a182db4SSameer Pujar			};
249a182db4SSameer Pujar		};
259a182db4SSameer Pujar
265eef17eeSThierry Reding		ddc: i2c@31c0000 {
275eef17eeSThierry Reding			status = "okay";
285eef17eeSThierry Reding		};
295eef17eeSThierry Reding
30b8656c67SMikko Perttunen		/* SDMMC1 (SD/MMC) */
31b8656c67SMikko Perttunen		sdhci@3400000 {
32b8656c67SMikko Perttunen			status = "okay";
33b8656c67SMikko Perttunen		};
3458542353SThierry Reding
355eef17eeSThierry Reding		hda@3510000 {
36da2577feSLinus Torvalds			nvidia,model = "jetson-xavier-hda";
3733c038e4SThierry Reding			status = "okay";
3833c038e4SThierry Reding		};
3933c038e4SThierry Reding
4058542353SThierry Reding		pwm@c340000 {
4158542353SThierry Reding			status = "okay";
4258542353SThierry Reding		};
4333c038e4SThierry Reding
4433c038e4SThierry Reding		host1x@13e00000 {
4533c038e4SThierry Reding			display-hub@15200000 {
4633c038e4SThierry Reding				status = "okay";
4733c038e4SThierry Reding			};
4833c038e4SThierry Reding
49614d063fSThierry Reding			dpaux@155c0000 {
50614d063fSThierry Reding				status = "okay";
51614d063fSThierry Reding			};
52614d063fSThierry Reding
53614d063fSThierry Reding			dpaux@155d0000 {
54614d063fSThierry Reding				status = "okay";
55614d063fSThierry Reding			};
56614d063fSThierry Reding
5733c038e4SThierry Reding			dpaux@155e0000 {
5833c038e4SThierry Reding				status = "okay";
5933c038e4SThierry Reding			};
6033c038e4SThierry Reding
61614d063fSThierry Reding			/* DP0 */
62614d063fSThierry Reding			sor@15b00000 {
63614d063fSThierry Reding				status = "okay";
64614d063fSThierry Reding
65614d063fSThierry Reding				avdd-io-hdmi-dp-supply = <&vdd_1v0>;
66614d063fSThierry Reding				vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;
67614d063fSThierry Reding
68614d063fSThierry Reding				nvidia,dpaux = <&dpaux0>;
69614d063fSThierry Reding			};
70614d063fSThierry Reding
71614d063fSThierry Reding			/* DP1 */
72614d063fSThierry Reding			sor@15b40000 {
73614d063fSThierry Reding				status = "okay";
74614d063fSThierry Reding
75614d063fSThierry Reding				avdd-io-hdmi-dp-supply = <&vdd_1v0>;
76614d063fSThierry Reding				vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;
77614d063fSThierry Reding
78614d063fSThierry Reding				nvidia,dpaux = <&dpaux1>;
79614d063fSThierry Reding			};
80614d063fSThierry Reding
81614d063fSThierry Reding			/* HDMI */
8233c038e4SThierry Reding			sor@15b80000 {
8333c038e4SThierry Reding				status = "okay";
8433c038e4SThierry Reding
8533c038e4SThierry Reding				avdd-io-supply = <&vdd_1v0>;
8633c038e4SThierry Reding				vdd-pll-supply = <&vdd_1v8hs>;
8733c038e4SThierry Reding				hdmi-supply = <&vdd_hdmi>;
8833c038e4SThierry Reding
8933c038e4SThierry Reding				nvidia,ddc-i2c-bus = <&ddc>;
9033c038e4SThierry Reding				nvidia,hpd-gpio = <&gpio TEGRA194_MAIN_GPIO(M, 2)
9133c038e4SThierry Reding							 GPIO_ACTIVE_LOW>;
9233c038e4SThierry Reding			};
9333c038e4SThierry Reding		};
9458542353SThierry Reding	};
9558542353SThierry Reding
96a586c88eSVidya Sagar	pcie@14100000 {
97a586c88eSVidya Sagar		status = "okay";
98a586c88eSVidya Sagar
99a586c88eSVidya Sagar		vddio-pex-ctl-supply = <&vdd_1v8ao>;
100a586c88eSVidya Sagar
101a586c88eSVidya Sagar		phys = <&p2u_hsio_0>;
102a586c88eSVidya Sagar		phy-names = "p2u-0";
103a586c88eSVidya Sagar	};
104a586c88eSVidya Sagar
105a586c88eSVidya Sagar	pcie@14140000 {
106a586c88eSVidya Sagar		status = "okay";
107a586c88eSVidya Sagar
108a586c88eSVidya Sagar		vddio-pex-ctl-supply = <&vdd_1v8ao>;
109a586c88eSVidya Sagar
110a586c88eSVidya Sagar		phys = <&p2u_hsio_7>;
111a586c88eSVidya Sagar		phy-names = "p2u-0";
112a586c88eSVidya Sagar	};
113a586c88eSVidya Sagar
114a586c88eSVidya Sagar	pcie@14180000 {
115a586c88eSVidya Sagar		status = "okay";
116a586c88eSVidya Sagar
117a586c88eSVidya Sagar		vddio-pex-ctl-supply = <&vdd_1v8ao>;
118a586c88eSVidya Sagar
119a586c88eSVidya Sagar		phys = <&p2u_hsio_2>, <&p2u_hsio_3>, <&p2u_hsio_4>,
120a586c88eSVidya Sagar		       <&p2u_hsio_5>;
121a586c88eSVidya Sagar		phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
122a586c88eSVidya Sagar	};
123a586c88eSVidya Sagar
124a586c88eSVidya Sagar	pcie@141a0000 {
12509a0774aSVidya Sagar		status = "okay";
126a586c88eSVidya Sagar
127a586c88eSVidya Sagar		vddio-pex-ctl-supply = <&vdd_1v8ao>;
12809a0774aSVidya Sagar		vpcie3v3-supply = <&vdd_3v3_pcie>;
12909a0774aSVidya Sagar		vpcie12v-supply = <&vdd_12v_pcie>;
130a586c88eSVidya Sagar
131a586c88eSVidya Sagar		phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
132a586c88eSVidya Sagar		       <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
133a586c88eSVidya Sagar		       <&p2u_nvhs_6>, <&p2u_nvhs_7>;
134a586c88eSVidya Sagar
135a586c88eSVidya Sagar		phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
136a586c88eSVidya Sagar			    "p2u-5", "p2u-6", "p2u-7";
137a586c88eSVidya Sagar	};
138a586c88eSVidya Sagar
139cfe3af19SThierry Reding	fan: fan {
14058542353SThierry Reding		compatible = "pwm-fan";
14158542353SThierry Reding		pwms = <&pwm4 0 45334>;
142cfe3af19SThierry Reding
143cfe3af19SThierry Reding		cooling-levels = <0 64 128 255>;
144cfe3af19SThierry Reding		#cooling-cells = <2>;
145cfe3af19SThierry Reding	};
146cfe3af19SThierry Reding
147e47ac508SThierry Reding	gpio-keys {
148e47ac508SThierry Reding		compatible = "gpio-keys";
149e47ac508SThierry Reding
150e47ac508SThierry Reding		force-recovery {
151e47ac508SThierry Reding			label = "Force Recovery";
152e47ac508SThierry Reding			gpios = <&gpio TEGRA194_MAIN_GPIO(G, 0)
153e47ac508SThierry Reding				       GPIO_ACTIVE_LOW>;
154e47ac508SThierry Reding			linux,input-type = <EV_KEY>;
155cd8f843cSThierry Reding			linux,code = <KEY_SLEEP>;
156e47ac508SThierry Reding			debounce-interval = <10>;
157e47ac508SThierry Reding		};
158e47ac508SThierry Reding
159e47ac508SThierry Reding		power {
160e47ac508SThierry Reding			label = "Power";
161e47ac508SThierry Reding			gpios = <&gpio_aon TEGRA194_AON_GPIO(EE, 4)
162e47ac508SThierry Reding					   GPIO_ACTIVE_LOW>;
163e47ac508SThierry Reding			linux,input-type = <EV_KEY>;
164e47ac508SThierry Reding			linux,code = <KEY_POWER>;
165e47ac508SThierry Reding			debounce-interval = <10>;
166e47ac508SThierry Reding			wakeup-event-action = <EV_ACT_ASSERTED>;
167e47ac508SThierry Reding			wakeup-source;
168e47ac508SThierry Reding		};
169e47ac508SThierry Reding	};
170e47ac508SThierry Reding
171cfe3af19SThierry Reding	thermal-zones {
172cfe3af19SThierry Reding		cpu {
173cfe3af19SThierry Reding			polling-delay = <0>;
174cfe3af19SThierry Reding			polling-delay-passive = <500>;
175cfe3af19SThierry Reding			status = "okay";
176cfe3af19SThierry Reding
177cfe3af19SThierry Reding			trips {
178cfe3af19SThierry Reding				cpu_trip_critical: critical {
179cfe3af19SThierry Reding					temperature = <96500>;
180cfe3af19SThierry Reding					hysteresis = <0>;
181cfe3af19SThierry Reding					type = "critical";
182cfe3af19SThierry Reding				};
183cfe3af19SThierry Reding
184cfe3af19SThierry Reding				cpu_trip_hot: hot {
185cfe3af19SThierry Reding					temperature = <70000>;
186cfe3af19SThierry Reding					hysteresis = <2000>;
187cfe3af19SThierry Reding					type = "hot";
188cfe3af19SThierry Reding				};
189cfe3af19SThierry Reding
190cfe3af19SThierry Reding				cpu_trip_active: active {
191cfe3af19SThierry Reding					temperature = <50000>;
192cfe3af19SThierry Reding					hysteresis = <2000>;
193cfe3af19SThierry Reding					type = "active";
194cfe3af19SThierry Reding				};
195cfe3af19SThierry Reding
196cfe3af19SThierry Reding				cpu_trip_passive: passive {
197cfe3af19SThierry Reding					temperature = <30000>;
198cfe3af19SThierry Reding					hysteresis = <2000>;
199cfe3af19SThierry Reding					type = "passive";
200cfe3af19SThierry Reding				};
201cfe3af19SThierry Reding			};
202cfe3af19SThierry Reding
203cfe3af19SThierry Reding			cooling-maps {
204cfe3af19SThierry Reding				cpu-critical {
205cfe3af19SThierry Reding					cooling-device = <&fan 3 3>;
206cfe3af19SThierry Reding					trip = <&cpu_trip_critical>;
207cfe3af19SThierry Reding				};
208cfe3af19SThierry Reding
209cfe3af19SThierry Reding				cpu-hot {
210cfe3af19SThierry Reding					cooling-device = <&fan 2 2>;
211cfe3af19SThierry Reding					trip = <&cpu_trip_hot>;
212cfe3af19SThierry Reding				};
213cfe3af19SThierry Reding
214cfe3af19SThierry Reding				cpu-active {
215cfe3af19SThierry Reding					cooling-device = <&fan 1 1>;
216cfe3af19SThierry Reding					trip = <&cpu_trip_active>;
217cfe3af19SThierry Reding				};
218cfe3af19SThierry Reding
219cfe3af19SThierry Reding				cpu-passive {
220cfe3af19SThierry Reding					cooling-device = <&fan 0 0>;
221cfe3af19SThierry Reding					trip = <&cpu_trip_passive>;
222cfe3af19SThierry Reding				};
223cfe3af19SThierry Reding			};
224cfe3af19SThierry Reding		};
225cfe3af19SThierry Reding
226cfe3af19SThierry Reding		gpu {
227cfe3af19SThierry Reding			polling-delay = <0>;
228cfe3af19SThierry Reding			polling-delay-passive = <500>;
229cfe3af19SThierry Reding			status = "okay";
230cfe3af19SThierry Reding
231cfe3af19SThierry Reding			trips {
232cfe3af19SThierry Reding				gpu_alert0: critical {
233cfe3af19SThierry Reding					temperature = <99000>;
234cfe3af19SThierry Reding					hysteresis = <0>;
235cfe3af19SThierry Reding					type = "critical";
236cfe3af19SThierry Reding				};
237cfe3af19SThierry Reding			};
238cfe3af19SThierry Reding		};
239cfe3af19SThierry Reding
240cfe3af19SThierry Reding		aux {
241cfe3af19SThierry Reding			polling-delay = <0>;
242cfe3af19SThierry Reding			polling-delay-passive = <500>;
243cfe3af19SThierry Reding			status = "okay";
244cfe3af19SThierry Reding
245cfe3af19SThierry Reding			trips {
246cfe3af19SThierry Reding				aux_alert0: critical {
247cfe3af19SThierry Reding					temperature = <90000>;
248cfe3af19SThierry Reding					hysteresis = <0>;
249cfe3af19SThierry Reding					type = "critical";
250cfe3af19SThierry Reding				};
251cfe3af19SThierry Reding			};
252cfe3af19SThierry Reding		};
253b8656c67SMikko Perttunen	};
254b8656c67SMikko Perttunen};
255