Update to bmake-20200710
[freebsd.git] / sys / gnu / dts / arm64 / nvidia / tegra194-p2888.dtsi
1 // SPDX-License-Identifier: GPL-2.0
2 #include "tegra194.dtsi"
3
4 #include <dt-bindings/mfd/max77620.h>
5
6 / {
7         model = "NVIDIA Jetson AGX Xavier";
8         compatible = "nvidia,p2888", "nvidia,tegra194";
9
10         aliases {
11                 ethernet0 = "/cbb@0/ethernet@2490000";
12                 sdhci0 = "/cbb@0/sdhci@3460000";
13                 sdhci1 = "/cbb@0/sdhci@3400000";
14                 serial0 = &tcu;
15                 i2c0 = "/bpmp/i2c";
16                 i2c1 = "/cbb@0/i2c@3160000";
17                 i2c2 = "/cbb@0/i2c@c240000";
18                 i2c3 = "/cbb@0/i2c@3180000";
19                 i2c4 = "/cbb@0/i2c@3190000";
20                 i2c5 = "/cbb@0/i2c@31c0000";
21                 i2c6 = "/cbb@0/i2c@c250000";
22                 i2c7 = "/cbb@0/i2c@31e0000";
23         };
24
25         chosen {
26                 bootargs = "console=ttyS0,115200n8";
27                 stdout-path = "serial0:115200n8";
28         };
29
30         cbb@0 {
31                 ethernet@2490000 {
32                         status = "okay";
33
34                         phy-reset-gpios = <&gpio TEGRA194_MAIN_GPIO(G, 5) GPIO_ACTIVE_LOW>;
35                         phy-handle = <&phy>;
36                         phy-mode = "rgmii";
37
38                         mdio {
39                                 #address-cells = <1>;
40                                 #size-cells = <0>;
41
42                                 phy: phy@0 {
43                                         compatible = "ethernet-phy-ieee802.3-c22";
44                                         reg = <0x0>;
45                                         interrupt-parent = <&gpio>;
46                                         interrupts = <TEGRA194_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>;
47                                 };
48                         };
49                 };
50
51                 memory-controller@2c00000 {
52                         status = "okay";
53                 };
54
55                 serial@3110000 {
56                         status = "okay";
57                 };
58
59                 /* SDMMC1 (SD/MMC) */
60                 sdhci@3400000 {
61                         cd-gpios = <&gpio TEGRA194_MAIN_GPIO(A, 0) GPIO_ACTIVE_LOW>;
62                 };
63
64                 /* SDMMC4 (eMMC) */
65                 sdhci@3460000 {
66                         status = "okay";
67                         bus-width = <8>;
68                         non-removable;
69
70                         vqmmc-supply = <&vdd_1v8ls>;
71                         vmmc-supply = <&vdd_emmc_3v3>;
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_5v_sata>;
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                                 interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
115                                 #interrupt-cells = <2>;
116                                 interrupt-controller;
117
118                                 #gpio-cells = <2>;
119                                 gpio-controller;
120
121                                 pinctrl-names = "default";
122                                 pinctrl-0 = <&max20024_default>;
123
124                                 max20024_default: pinmux {
125                                         gpio0 {
126                                                 pins = "gpio0";
127                                                 function = "gpio";
128                                         };
129
130                                         gpio1 {
131                                                 pins = "gpio1";
132                                                 function = "fps-out";
133                                                 maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
134                                         };
135
136                                         gpio2 {
137                                                 pins = "gpio2";
138                                                 function = "fps-out";
139                                                 maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
140                                         };
141
142                                         gpio3 {
143                                                 pins = "gpio3";
144                                                 function = "fps-out";
145                                                 maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
146                                         };
147
148                                         gpio4 {
149                                                 pins = "gpio4";
150                                                 function = "32k-out1";
151                                                 drive-push-pull = <1>;
152                                         };
153
154                                         gpio6 {
155                                                 pins = "gpio6";
156                                                 function = "gpio";
157                                                 drive-push-pull = <1>;
158                                         };
159
160                                         gpio7 {
161                                                 pins = "gpio7";
162                                                 function = "gpio";
163                                                 drive-push-pull = <0>;
164                                         };
165                                 };
166
167                                 fps {
168                                         fps0 {
169                                                 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
170                                                 maxim,shutdown-fps-time-period-us = <640>;
171                                         };
172
173                                         fps1 {
174                                                 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>;
175                                                 maxim,shutdown-fps-time-period-us = <640>;
176                                                 maxim,device-state-on-disabled-event = <MAX77620_FPS_INACTIVE_STATE_SLEEP>;
177                                         };
178
179                                         fps2 {
180                                                 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
181                                                 maxim,shutdown-fps-time-period-us = <640>;
182                                         };
183                                 };
184
185                                 regulators {
186                                         in-sd0-supply = <&vdd_5v0_sys>;
187                                         in-sd1-supply = <&vdd_5v0_sys>;
188                                         in-sd2-supply = <&vdd_5v0_sys>;
189                                         in-sd3-supply = <&vdd_5v0_sys>;
190                                         in-sd4-supply = <&vdd_5v0_sys>;
191
192                                         in-ldo0-1-supply = <&vdd_5v0_sys>;
193                                         in-ldo2-supply = <&vdd_5v0_sys>;
194                                         in-ldo3-5-supply = <&vdd_5v0_sys>;
195                                         in-ldo4-6-supply = <&vdd_5v0_sys>;
196                                         in-ldo7-8-supply = <&vdd_1v8ls>;
197
198                                         vdd_1v0: sd0 {
199                                                 regulator-name = "VDDIO_SYS_1V0";
200                                                 regulator-min-microvolt = <1000000>;
201                                                 regulator-max-microvolt = <1000000>;
202                                                 regulator-always-on;
203                                                 regulator-boot-on;
204                                         };
205
206                                         vdd_1v8hs: sd1 {
207                                                 regulator-name = "VDDIO_SYS_1V8HS";
208                                                 regulator-min-microvolt = <1800000>;
209                                                 regulator-max-microvolt = <1800000>;
210                                                 regulator-always-on;
211                                                 regulator-boot-on;
212                                         };
213
214                                         vdd_1v8ls: sd2 {
215                                                 regulator-name = "VDDIO_SYS_1V8LS";
216                                                 regulator-min-microvolt = <1800000>;
217                                                 regulator-max-microvolt = <1800000>;
218                                                 regulator-always-on;
219                                                 regulator-boot-on;
220                                         };
221
222                                         vdd_1v8ao: sd3 {
223                                                 regulator-name = "VDDIO_AO_1V8";
224                                                 regulator-min-microvolt = <1800000>;
225                                                 regulator-max-microvolt = <1800000>;
226                                                 regulator-always-on;
227                                                 regulator-boot-on;
228                                         };
229
230                                         sd4 {
231                                                 regulator-name = "VDD_DDR_1V1";
232                                                 regulator-min-microvolt = <1100000>;
233                                                 regulator-max-microvolt = <1100000>;
234                                                 regulator-always-on;
235                                                 regulator-boot-on;
236                                         };
237
238                                         ldo0 {
239                                                 regulator-name = "VDD_RTC";
240                                                 regulator-min-microvolt = <800000>;
241                                                 regulator-max-microvolt = <800000>;
242                                                 regulator-always-on;
243                                                 regulator-boot-on;
244                                         };
245
246                                         ldo2 {
247                                                 regulator-name = "VDDIO_AO_3V3";
248                                                 regulator-min-microvolt = <3300000>;
249                                                 regulator-max-microvolt = <3300000>;
250                                                 regulator-always-on;
251                                                 regulator-boot-on;
252                                         };
253
254                                         vdd_emmc_3v3: ldo3 {
255                                                 regulator-name = "VDD_EMMC_3V3";
256                                                 regulator-min-microvolt = <3300000>;
257                                                 regulator-max-microvolt = <3300000>;
258                                         };
259
260                                         vdd_usb_3v3: ldo5 {
261                                                 regulator-name = "VDD_USB_3V3";
262                                                 regulator-min-microvolt = <3300000>;
263                                                 regulator-max-microvolt = <3300000>;
264                                         };
265
266                                         ldo6 {
267                                                 regulator-name = "VDD_SDIO_3V3";
268                                                 regulator-min-microvolt = <3300000>;
269                                                 regulator-max-microvolt = <3300000>;
270                                         };
271
272                                         ldo7 {
273                                                 regulator-name = "AVDD_CSI_1V2";
274                                                 regulator-min-microvolt = <1200000>;
275                                                 regulator-max-microvolt = <1200000>;
276                                         };
277                                 };
278                         };
279
280                         temperature-sensor@4c {
281                                 compatible = "ti,tmp451";
282                                 reg = <0x4c>;
283
284                                 interrupt-parent = <&gpio>;
285                                 interrupts = <TEGRA194_MAIN_GPIO(H, 2)
286                                               IRQ_TYPE_LEVEL_LOW>;
287                                 vcc-supply = <&vdd_1v8ls>;
288
289                                 #thermal-sensor-cells = <1>;
290                         };
291                 };
292         };
293
294         regulators {
295                 compatible = "simple-bus";
296                 #address-cells = <1>;
297                 #size-cells = <0>;
298
299                 vdd_5v0_sys: regulator@0 {
300                         compatible = "regulator-fixed";
301                         reg = <0>;
302
303                         regulator-name = "VIN_SYS_5V0";
304                         regulator-min-microvolt = <5000000>;
305                         regulator-max-microvolt = <5000000>;
306                         regulator-always-on;
307                         regulator-boot-on;
308                 };
309
310                 vdd_hdmi: regulator@1 {
311                         compatible = "regulator-fixed";
312                         reg = <1>;
313
314                         regulator-name = "VDD_5V0_HDMI_CON";
315                         regulator-min-microvolt = <5000000>;
316                         regulator-max-microvolt = <5000000>;
317                         gpio = <&gpio TEGRA194_MAIN_GPIO(A, 3) GPIO_ACTIVE_HIGH>;
318                         enable-active-high;
319                 };
320
321                 vdd_3v3_pcie: regulator@2 {
322                         compatible = "regulator-fixed";
323                         reg = <2>;
324
325                         regulator-name = "PEX_3V3";
326                         regulator-min-microvolt = <3300000>;
327                         regulator-max-microvolt = <3300000>;
328                         gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
329                         regulator-boot-on;
330                         enable-active-high;
331                 };
332
333                 vdd_12v_pcie: regulator@3 {
334                         compatible = "regulator-fixed";
335                         reg = <3>;
336
337                         regulator-name = "VDD_12V";
338                         regulator-min-microvolt = <1200000>;
339                         regulator-max-microvolt = <1200000>;
340                         gpio = <&gpio TEGRA194_MAIN_GPIO(A, 1) GPIO_ACTIVE_HIGH>;
341                         regulator-boot-on;
342                 };
343
344                 vdd_5v_sata: regulator@4 {
345                         compatible = "regulator-fixed";
346                         reg = <4>;
347
348                         regulator-name = "VDD_5V_SATA";
349                         regulator-min-microvolt = <5000000>;
350                         regulator-max-microvolt = <5000000>;
351                         gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 1) GPIO_ACTIVE_HIGH>;
352                         enable-active-high;
353                 };
354         };
355 };