xref: /freebsd/sys/contrib/device-tree/src/arm64/nvidia/tegra234-p3767.dtsi (revision fe75646a0234a261c0013bf1840fdac4acaf0cec)
1// SPDX-License-Identifier: GPL-2.0
2
3#include "tegra234.dtsi"
4
5/ {
6	compatible = "nvidia,p3767", "nvidia,tegra234";
7
8	bus@0 {
9		i2c@3160000 {
10			status = "okay";
11
12			eeprom@50 {
13				compatible = "atmel,24c02";
14				reg = <0x50>;
15
16				label = "module";
17				vcc-supply = <&vdd_1v8_hs>;
18				address-width = <8>;
19				pagesize = <8>;
20				size = <256>;
21				read-only;
22			};
23		};
24
25		spi@3270000 {
26			status = "okay";
27
28			flash@0 {
29				compatible = "jedec,spi-nor";
30				reg = <0>;
31				spi-max-frequency = <136000000>;
32				spi-tx-bus-width = <4>;
33				spi-rx-bus-width = <4>;
34			};
35		};
36
37		/*
38		 * This only exists on Jetson Orin Nano Developer Kit (SKU 5)
39		 * but UEFI needs this and will remove it on devices where it
40		 * doesn't exist.
41		 */
42		mmc@3400000 {
43			status = "okay";
44			bus-width = <4>;
45			cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_HIGH>;
46			disable-wp;
47		};
48
49		hda@3510000 {
50			status = "okay";
51		};
52
53		padctl@3520000 {
54			vclamp-usb-supply = <&vdd_1v8_ao>;
55			avdd-usb-supply = <&vdd_3v3_ao>;
56		};
57
58		rtc@c2a0000 {
59			status = "okay";
60		};
61
62		pmc@c360000 {
63			nvidia,invert-interrupt;
64		};
65	};
66
67	vdd_5v0_sys: regulator-vdd-5v0-sys {
68		compatible = "regulator-fixed";
69		regulator-name = "VDD_5V0_SYS";
70		regulator-min-microvolt = <5000000>;
71		regulator-max-microvolt = <5000000>;
72		regulator-always-on;
73	};
74
75	vdd_1v8_hs: regulator-vdd-1v8-hs {
76		compatible = "regulator-fixed";
77		regulator-name = "VDD_1V8_HS";
78		regulator-min-microvolt = <1800000>;
79		regulator-max-microvolt = <1800000>;
80		regulator-always-on;
81	};
82
83	vdd_1v8_ao: regulator-vdd-1v8-ao {
84		compatible = "regulator-fixed";
85		regulator-name = "VDD_1V8_AO";
86		regulator-min-microvolt = <1800000>;
87		regulator-max-microvolt = <1800000>;
88		regulator-always-on;
89		vin-supply = <&vdd_5v0_sys>;
90	};
91
92	vdd_3v3_ao: regulator-vdd-3v3-ao {
93		compatible = "regulator-fixed";
94		regulator-name = "VDD_3V3_AO";
95		regulator-min-microvolt = <33000000>;
96		regulator-max-microvolt = <33000000>;
97		regulator-always-on;
98		vin-supply = <&vdd_5v0_sys>;
99	};
100
101	thermal-zones {
102		/*
103		 * This monitoring is far from optimal, but it's good enough
104		 * at this stage.
105		 */
106		cpu-thermal {
107			polling-delay = <1000>;
108			polling-delay-passive = <1000>;
109			status = "okay";
110
111			trips {
112				critical {
113					temperature = <104500>;
114					hysteresis = <0>;
115					type = "critical";
116				};
117
118				hot {
119					temperature = <99000>;
120					hysteresis = <1000>;
121					type = "hot";
122				};
123
124				board_trip_passive: passive {
125					temperature = <95000>;
126					hysteresis = <2000>;
127					type = "passive";
128				};
129
130				board_trip_active2: active-2 {
131					temperature = <80000>;
132					hysteresis = <4000>;
133					type = "active";
134				};
135
136				board_trip_active1: active-1 {
137					temperature = <65000>;
138					hysteresis = <4000>;
139					type = "active";
140				};
141
142				board_trip_active0: active-0 {
143					temperature = <50000>;
144					hysteresis = <4000>;
145					type = "active";
146				};
147			};
148
149			cooling-maps {
150				passive {
151					cooling-device = <&fan 3 3>;
152					trip = <&board_trip_passive>;
153				};
154
155				active2 {
156					cooling-device = <&fan 2 3>;
157					trip = <&board_trip_active2>;
158				};
159
160				active1 {
161					cooling-device = <&fan 1 2>;
162					trip = <&board_trip_active1>;
163				};
164
165				active0 {
166					cooling-device = <&fan 0 1>;
167					trip = <&board_trip_active0>;
168				};
169			};
170		};
171	};
172};
173