1// SPDX-License-Identifier: GPL-2.0
2#include "tegra194.dtsi"
3
4#include <dt-bindings/mfd/max77620.h>
5
6/ {
7	aliases {
8		ethernet0 = "/bus@0/ethernet@2490000";
9		i2c0 = "/bpmp/i2c";
10		i2c1 = "/bus@0/i2c@3160000";
11		i2c2 = "/bus@0/i2c@c240000";
12		i2c3 = "/bus@0/i2c@3180000";
13		i2c4 = "/bus@0/i2c@3190000";
14		i2c5 = "/bus@0/i2c@31c0000";
15		i2c6 = "/bus@0/i2c@c250000";
16		i2c7 = "/bus@0/i2c@31e0000";
17		mmc0 = "/bus@0/mmc@3460000";
18		rtc0 = "/bpmp/i2c/pmic@3c";
19		rtc1 = "/bus@0/rtc@c2a0000";
20		serial0 = &tcu;
21	};
22
23	chosen {
24		bootargs = "console=ttyS0,115200n8";
25		stdout-path = "serial0:115200n8";
26	};
27
28	bus@0 {
29		ethernet@2490000 {
30			status = "okay";
31
32			phy-reset-gpios = <&gpio TEGRA194_MAIN_GPIO(R, 1) GPIO_ACTIVE_LOW>;
33			phy-handle = <&phy>;
34			phy-mode = "rgmii-id";
35
36			mdio {
37				#address-cells = <1>;
38				#size-cells = <0>;
39
40				phy: phy@0 {
41					compatible = "ethernet-phy-ieee802.3-c22";
42					reg = <0x0>;
43					interrupt-parent = <&gpio>;
44					interrupts = <TEGRA194_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>;
45					#phy-cells = <0>;
46				};
47			};
48		};
49
50		memory-controller@2c00000 {
51			status = "okay";
52		};
53
54		serial@3100000 {
55			status = "okay";
56		};
57
58		i2c@3160000 {
59			status = "okay";
60
61			eeprom@50 {
62				compatible = "atmel,24c02";
63				reg = <0x50>;
64
65				label = "module";
66				vcc-supply = <&vdd_1v8ls>;
67				address-width = <8>;
68				pagesize = <8>;
69				size = <256>;
70				read-only;
71			};
72		};
73
74		padctl@3520000 {
75			avdd-usb-supply = <&vdd_usb_3v3>;
76			vclamp-usb-supply = <&vdd_1v8ao>;
77
78			ports {
79				usb2-1 {
80					vbus-supply = <&vdd_5v0_sys>;
81				};
82
83				usb2-3 {
84					vbus-supply = <&vdd_5v0_sys>;
85				};
86
87				usb3-0 {
88					vbus-supply = <&vdd_5v0_sys>;
89				};
90
91				usb3-3 {
92					vbus-supply = <&vdd_5v0_sys>;
93				};
94			};
95		};
96
97		rtc@c2a0000 {
98			status = "okay";
99		};
100
101		pmc@c360000 {
102			nvidia,invert-interrupt;
103		};
104	};
105
106	bpmp {
107		i2c {
108			status = "okay";
109
110			pmic: pmic@3c {
111				compatible = "maxim,max20024";
112				reg = <0x3c>;
113
114				interrupt-parent = <&pmc>;
115				interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
116				#interrupt-cells = <2>;
117				interrupt-controller;
118
119				#gpio-cells = <2>;
120				gpio-controller;
121
122				pinctrl-names = "default";
123				pinctrl-0 = <&max20024_default>;
124
125				max20024_default: pinmux {
126					gpio0 {
127						pins = "gpio0";
128						function = "gpio";
129					};
130
131					gpio1 {
132						pins = "gpio1";
133						function = "fps-out";
134						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
135					};
136
137					gpio2 {
138						pins = "gpio2";
139						function = "fps-out";
140						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
141					};
142
143					gpio3 {
144						pins = "gpio3";
145						function = "fps-out";
146						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
147					};
148
149					gpio4 {
150						pins = "gpio4";
151						function = "32k-out1";
152						drive-push-pull = <1>;
153					};
154
155					gpio6 {
156						pins = "gpio6";
157						function = "gpio";
158						drive-push-pull = <1>;
159					};
160
161					gpio7 {
162						pins = "gpio7";
163						function = "gpio";
164						drive-push-pull = <0>;
165					};
166				};
167
168				fps {
169					fps0 {
170						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
171						maxim,shutdown-fps-time-period-us = <640>;
172					};
173
174					fps1 {
175						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>;
176						maxim,shutdown-fps-time-period-us = <640>;
177						maxim,device-state-on-disabled-event = <MAX77620_FPS_INACTIVE_STATE_SLEEP>;
178					};
179
180					fps2 {
181						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
182						maxim,shutdown-fps-time-period-us = <640>;
183					};
184				};
185
186				regulators {
187					in-sd0-supply = <&vdd_5v0_sys>;
188					in-sd1-supply = <&vdd_5v0_sys>;
189					in-sd2-supply = <&vdd_5v0_sys>;
190					in-sd3-supply = <&vdd_5v0_sys>;
191					in-sd4-supply = <&vdd_5v0_sys>;
192
193					in-ldo0-1-supply = <&vdd_5v0_sys>;
194					in-ldo2-supply = <&vdd_5v0_sys>;
195					in-ldo3-5-supply = <&vdd_5v0_sys>;
196					in-ldo4-6-supply = <&vdd_5v0_sys>;
197					in-ldo7-8-supply = <&vdd_1v8ls>;
198
199					vdd_1v0: sd0 {
200						regulator-name = "VDDIO_SYS_1V0";
201						regulator-min-microvolt = <1000000>;
202						regulator-max-microvolt = <1000000>;
203						regulator-always-on;
204						regulator-boot-on;
205					};
206
207					vdd_1v8hs: sd1 {
208						regulator-name = "VDDIO_SYS_1V8HS";
209						regulator-min-microvolt = <1800000>;
210						regulator-max-microvolt = <1800000>;
211						regulator-always-on;
212						regulator-boot-on;
213					};
214
215					vdd_1v8ls: sd2 {
216						regulator-name = "VDDIO_SYS_1V8LS";
217						regulator-min-microvolt = <1800000>;
218						regulator-max-microvolt = <1800000>;
219						regulator-always-on;
220						regulator-boot-on;
221					};
222
223					vdd_1v8ao: sd3 {
224						regulator-name = "VDDIO_AO_1V8";
225						regulator-min-microvolt = <1800000>;
226						regulator-max-microvolt = <1800000>;
227						regulator-always-on;
228						regulator-boot-on;
229					};
230
231					sd4 {
232						regulator-name = "VDD_DDR_1V1";
233						regulator-min-microvolt = <1100000>;
234						regulator-max-microvolt = <1100000>;
235						regulator-always-on;
236						regulator-boot-on;
237					};
238
239					ldo0 {
240						regulator-name = "VDD_RTC";
241						regulator-min-microvolt = <800000>;
242						regulator-max-microvolt = <800000>;
243						regulator-always-on;
244						regulator-boot-on;
245					};
246
247					ldo2 {
248						regulator-name = "VDDIO_AO_3V3";
249						regulator-min-microvolt = <3300000>;
250						regulator-max-microvolt = <3300000>;
251						regulator-always-on;
252						regulator-boot-on;
253					};
254
255					vdd_emmc_3v3: ldo3 {
256						regulator-name = "VDD_EMMC_3V3";
257						regulator-min-microvolt = <3300000>;
258						regulator-max-microvolt = <3300000>;
259					};
260
261					vdd_usb_3v3: ldo5 {
262						regulator-name = "VDD_USB_3V3";
263						regulator-min-microvolt = <3300000>;
264						regulator-max-microvolt = <3300000>;
265						regulator-always-on;
266						regulator-boot-on;
267					};
268
269					ldo6 {
270						regulator-name = "VDD_SDIO_3V3";
271						regulator-min-microvolt = <3300000>;
272						regulator-max-microvolt = <3300000>;
273					};
274
275					ldo7 {
276						regulator-name = "AVDD_CSI_1V2";
277						regulator-min-microvolt = <1200000>;
278						regulator-max-microvolt = <1200000>;
279					};
280				};
281			};
282		};
283	};
284};
285