Linux Audio

Check our new training course

Yocto / OpenEmbedded training

Feb 10-13, 2025
Register
Loading...
v6.13.7
  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 = "/bus@0/ethernet@2490000";
 12		i2c0 = "/bpmp/i2c";
 13		i2c1 = "/bus@0/i2c@3160000";
 14		i2c2 = "/bus@0/i2c@c240000";
 15		i2c3 = "/bus@0/i2c@3180000";
 16		i2c4 = "/bus@0/i2c@3190000";
 17		i2c5 = "/bus@0/i2c@31c0000";
 18		i2c6 = "/bus@0/i2c@c250000";
 19		i2c7 = "/bus@0/i2c@31e0000";
 20		mmc0 = "/bus@0/mmc@3460000";
 21		mmc1 = "/bus@0/mmc@3400000";
 22		serial0 = &tcu;
 
 
 
 
 
 
 
 
 23	};
 24
 25	chosen {
 26		bootargs = "console=ttyTCU0,115200n8";
 27		stdout-path = "serial0:115200n8";
 28	};
 29
 30	bus@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-id";
 37
 38			mdio {
 39				#address-cells = <1>;
 40				#size-cells = <0>;
 41
 42				phy: ethernet-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					#phy-cells = <0>;
 48				};
 49			};
 50		};
 51
 52		memory-controller@2c00000 {
 53			status = "okay";
 54		};
 55
 56		i2c@c240000 {
 57			status = "okay";
 58
 59			power-sensor@40 {
 60				compatible = "ti,ina3221";
 61				reg = <0x40>;
 62				#address-cells = <1>;
 63				#size-cells = <0>;
 64
 65				input@0 {
 66					reg = <0x0>;
 67					label = "GPU";
 68					shunt-resistor-micro-ohms = <5000>;
 69				};
 70				input@1 {
 71					reg = <0x1>;
 72					label = "CPU";
 73					shunt-resistor-micro-ohms = <5000>;
 74				};
 75				input@2 {
 76					reg = <0x2>;
 77					label = "SOC";
 78					shunt-resistor-micro-ohms = <5000>;
 79				};
 80			};
 81
 82			power-sensor@41 {
 83				compatible = "ti,ina3221";
 84				reg = <0x41>;
 85				#address-cells = <1>;
 86				#size-cells = <0>;
 87
 88				input@0 {
 89					reg = <0x0>;
 90					label = "CV";
 91					shunt-resistor-micro-ohms = <5000>;
 92				};
 93				input@1 {
 94					reg = <0x1>;
 95					label = "VDDRQ";
 96					shunt-resistor-micro-ohms = <5000>;
 97				};
 98				input@2 {
 99					reg = <0x2>;
100					label = "SYS5V";
101					shunt-resistor-micro-ohms = <5000>;
102				};
103			};
104		};
105
106		serial@3110000 {
107			status = "okay";
108		};
109
110		i2c@3160000 {
111			status = "okay";
112
113			eeprom@50 {
114				compatible = "atmel,24c02";
115				reg = <0x50>;
116
117				label = "module";
118				vcc-supply = <&vdd_1v8ls>;
119				address-width = <8>;
120				pagesize = <8>;
121				size = <256>;
122				read-only;
123			};
124		};
125
126		/* SDMMC1 (SD/MMC) */
127		mmc@3400000 {
128			cd-gpios = <&gpio TEGRA194_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>;
129		};
130
131		/* SDMMC4 (eMMC) */
132		mmc@3460000 {
133			status = "okay";
134			bus-width = <8>;
135			non-removable;
136
137			vqmmc-supply = <&vdd_1v8ls>;
138			vmmc-supply = <&vdd_emmc_3v3>;
139		};
140
141		padctl@3520000 {
142			avdd-usb-supply = <&vdd_usb_3v3>;
143			vclamp-usb-supply = <&vdd_1v8ao>;
144
145			ports {
146				usb2-0 {
147					vbus-supply = <&vdd_5v0_sys>;
148				};
149
150				usb2-1 {
151					vbus-supply = <&vdd_5v0_sys>;
152				};
153
154				usb2-3 {
155					vbus-supply = <&vdd_5v_sata>;
156				};
157
158				usb3-0 {
159					vbus-supply = <&vdd_5v0_sys>;
160				};
161
162				usb3-2 {
163					vbus-supply = <&vdd_5v0_sys>;
164				};
165
166				usb3-3 {
167					vbus-supply = <&vdd_5v0_sys>;
168				};
169			};
170		};
171
172		rtc@c2a0000 {
173			status = "okay";
174		};
175
176		pmc@c360000 {
177			nvidia,invert-interrupt;
178		};
179	};
180
181	bpmp {
182		i2c {
183			status = "okay";
184
185			pmic: pmic@3c {
186				compatible = "maxim,max20024";
187				reg = <0x3c>;
188
189				interrupt-parent = <&pmc>;
190				interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
191				#interrupt-cells = <2>;
192				interrupt-controller;
193
194				#gpio-cells = <2>;
195				gpio-controller;
196
197				pinctrl-names = "default";
198				pinctrl-0 = <&max20024_default>;
199
200				fps {
201					fps0 {
202						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
203						maxim,shutdown-fps-time-period-us = <640>;
204					};
205
206					fps1 {
207						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>;
208						maxim,shutdown-fps-time-period-us = <640>;
209						maxim,device-state-on-disabled-event = <MAX77620_FPS_INACTIVE_STATE_SLEEP>;
210					};
211
212					fps2 {
213						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
214						maxim,shutdown-fps-time-period-us = <640>;
215					};
216				};
217
218				max20024_default: pinmux {
219					gpio0 {
220						pins = "gpio0";
221						function = "gpio";
222					};
223
224					gpio1 {
225						pins = "gpio1";
226						function = "fps-out";
227						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
228					};
229
230					gpio2 {
231						pins = "gpio2";
232						function = "fps-out";
233						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
234					};
235
236					gpio3 {
237						pins = "gpio3";
238						function = "fps-out";
239						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
240					};
241
242					gpio4 {
243						pins = "gpio4";
244						function = "32k-out1";
245						drive-push-pull = <1>;
246					};
247
248					gpio6 {
249						pins = "gpio6";
250						function = "gpio";
251						drive-push-pull = <1>;
252					};
253
254					gpio7 {
255						pins = "gpio7";
256						function = "gpio";
257						drive-push-pull = <0>;
258					};
259				};
260
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
261				regulators {
262					in-sd0-supply = <&vdd_5v0_sys>;
263					in-sd1-supply = <&vdd_5v0_sys>;
264					in-sd2-supply = <&vdd_5v0_sys>;
265					in-sd3-supply = <&vdd_5v0_sys>;
266					in-sd4-supply = <&vdd_5v0_sys>;
267
268					in-ldo0-1-supply = <&vdd_5v0_sys>;
269					in-ldo2-supply = <&vdd_5v0_sys>;
270					in-ldo3-5-supply = <&vdd_5v0_sys>;
271					in-ldo4-6-supply = <&vdd_5v0_sys>;
272					in-ldo7-8-supply = <&vdd_1v8ls>;
273
274					vdd_1v0: sd0 {
275						regulator-name = "VDDIO_SYS_1V0";
276						regulator-min-microvolt = <1000000>;
277						regulator-max-microvolt = <1000000>;
278						regulator-always-on;
279						regulator-boot-on;
280					};
281
282					vdd_1v8hs: sd1 {
283						regulator-name = "VDDIO_SYS_1V8HS";
284						regulator-min-microvolt = <1800000>;
285						regulator-max-microvolt = <1800000>;
286						regulator-always-on;
287						regulator-boot-on;
288					};
289
290					vdd_1v8ls: sd2 {
291						regulator-name = "VDDIO_SYS_1V8LS";
292						regulator-min-microvolt = <1800000>;
293						regulator-max-microvolt = <1800000>;
294						regulator-always-on;
295						regulator-boot-on;
296					};
297
298					vdd_1v8ao: sd3 {
299						regulator-name = "VDDIO_AO_1V8";
300						regulator-min-microvolt = <1800000>;
301						regulator-max-microvolt = <1800000>;
302						regulator-always-on;
303						regulator-boot-on;
304					};
305
306					sd4 {
307						regulator-name = "VDD_DDR_1V1";
308						regulator-min-microvolt = <1100000>;
309						regulator-max-microvolt = <1100000>;
310						regulator-always-on;
311						regulator-boot-on;
312					};
313
314					ldo0 {
315						regulator-name = "VDD_RTC";
316						regulator-min-microvolt = <800000>;
317						regulator-max-microvolt = <800000>;
318						regulator-always-on;
319						regulator-boot-on;
320					};
321
322					ldo2 {
323						regulator-name = "VDDIO_AO_3V3";
324						regulator-min-microvolt = <3300000>;
325						regulator-max-microvolt = <3300000>;
326						regulator-always-on;
327						regulator-boot-on;
328					};
329
330					vdd_emmc_3v3: ldo3 {
331						regulator-name = "VDD_EMMC_3V3";
332						regulator-min-microvolt = <3300000>;
333						regulator-max-microvolt = <3300000>;
334					};
335
336					vdd_usb_3v3: ldo5 {
337						regulator-name = "VDD_USB_3V3";
338						regulator-min-microvolt = <3300000>;
339						regulator-max-microvolt = <3300000>;
340					};
341
342					ldo6 {
343						regulator-name = "VDD_SDIO_3V3";
344						regulator-min-microvolt = <3300000>;
345						regulator-max-microvolt = <3300000>;
346					};
347
348					ldo7 {
349						regulator-name = "AVDD_CSI_1V2";
350						regulator-min-microvolt = <1200000>;
351						regulator-max-microvolt = <1200000>;
352					};
353				};
354			};
355
356			temperature-sensor@4c {
357				compatible = "ti,tmp451";
358				reg = <0x4c>;
359
360				interrupt-parent = <&gpio>;
361				interrupts = <TEGRA194_MAIN_GPIO(H, 2)
362					      IRQ_TYPE_EDGE_FALLING>;
363				vcc-supply = <&vdd_1v8ls>;
364
365				#thermal-sensor-cells = <1>;
366			};
367		};
368	};
369
370	vdd_5v0_sys: regulator-vdd-5v0-sys {
371		compatible = "regulator-fixed";
372		regulator-name = "VIN_SYS_5V0";
373		regulator-min-microvolt = <5000000>;
374		regulator-max-microvolt = <5000000>;
375		regulator-always-on;
376		regulator-boot-on;
377	};
378
379	vdd_hdmi: regulator-vdd-hdmi {
380		compatible = "regulator-fixed";
381		regulator-name = "VDD_5V0_HDMI_CON";
382		regulator-min-microvolt = <5000000>;
383		regulator-max-microvolt = <5000000>;
384		gpio = <&gpio TEGRA194_MAIN_GPIO(A, 3) GPIO_ACTIVE_HIGH>;
385		enable-active-high;
386	};
387
388	vdd_3v3_pcie: regulator-vdd-3v3-pcie {
389		compatible = "regulator-fixed";
390		regulator-name = "PEX_3V3";
391		regulator-min-microvolt = <3300000>;
392		regulator-max-microvolt = <3300000>;
393		gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
394		regulator-boot-on;
395		enable-active-high;
396	};
397
398	vdd_12v_pcie: regulator-vdd-12v-pcie {
399		compatible = "regulator-fixed";
400		regulator-name = "VDD_12V";
401		regulator-min-microvolt = <1200000>;
402		regulator-max-microvolt = <1200000>;
403		gpio = <&gpio TEGRA194_MAIN_GPIO(A, 1) GPIO_ACTIVE_HIGH>;
404		regulator-boot-on;
405	};
406
407	vdd_5v_sata: regulator-vdd-5v0-sata {
408		compatible = "regulator-fixed";
409		regulator-name = "VDD_5V_SATA";
410		regulator-min-microvolt = <5000000>;
411		regulator-max-microvolt = <5000000>;
412		gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 1) GPIO_ACTIVE_HIGH>;
413		enable-active-high;
 
 
 
 
 
 
414	};
415};
v5.4
  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		sdhci0 = "/cbb/sdhci@3460000";
 12		sdhci1 = "/cbb/sdhci@3400000";
 
 
 
 
 
 
 
 
 
 13		serial0 = &tcu;
 14		i2c0 = "/bpmp/i2c";
 15		i2c1 = "/cbb/i2c@3160000";
 16		i2c2 = "/cbb/i2c@c240000";
 17		i2c3 = "/cbb/i2c@3180000";
 18		i2c4 = "/cbb/i2c@3190000";
 19		i2c5 = "/cbb/i2c@31c0000";
 20		i2c6 = "/cbb/i2c@c250000";
 21		i2c7 = "/cbb/i2c@31e0000";
 22	};
 23
 24	chosen {
 25		bootargs = "console=ttyS0,115200n8";
 26		stdout-path = "serial0:115200n8";
 27	};
 28
 29	cbb {
 30		ethernet@2490000 {
 31			status = "okay";
 32
 33			phy-reset-gpios = <&gpio TEGRA194_MAIN_GPIO(G, 5) GPIO_ACTIVE_LOW>;
 34			phy-handle = <&phy>;
 35			phy-mode = "rgmii";
 36
 37			mdio {
 38				#address-cells = <1>;
 39				#size-cells = <0>;
 40
 41				phy: phy@0 {
 42					compatible = "ethernet-phy-ieee802.3-c22";
 43					reg = <0x0>;
 44					interrupt-parent = <&gpio>;
 45					interrupts = <TEGRA194_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 46				};
 47			};
 48		};
 49
 50		serial@3110000 {
 51			status = "okay";
 52		};
 53
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 54		/* SDMMC1 (SD/MMC) */
 55		sdhci@3400000 {
 56			cd-gpios = <&gpio TEGRA194_MAIN_GPIO(A, 0) GPIO_ACTIVE_LOW>;
 57		};
 58
 59		/* SDMMC4 (eMMC) */
 60		sdhci@3460000 {
 61			status = "okay";
 62			bus-width = <8>;
 63			non-removable;
 64
 65			vqmmc-supply = <&vdd_1v8ls>;
 66			vmmc-supply = <&vdd_emmc_3v3>;
 67		};
 68
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 69		rtc@c2a0000 {
 70			status = "okay";
 71		};
 72
 73		pmc@c360000 {
 74			nvidia,invert-interrupt;
 75		};
 76	};
 77
 78	bpmp {
 79		i2c {
 80			status = "okay";
 81
 82			pmic: pmic@3c {
 83				compatible = "maxim,max20024";
 84				reg = <0x3c>;
 85
 86				interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
 
 87				#interrupt-cells = <2>;
 88				interrupt-controller;
 89
 90				#gpio-cells = <2>;
 91				gpio-controller;
 92
 93				pinctrl-names = "default";
 94				pinctrl-0 = <&max20024_default>;
 95
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 96				max20024_default: pinmux {
 97					gpio0 {
 98						pins = "gpio0";
 99						function = "gpio";
100					};
101
102					gpio1 {
103						pins = "gpio1";
104						function = "fps-out";
105						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
106					};
107
108					gpio2 {
109						pins = "gpio2";
110						function = "fps-out";
111						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
112					};
113
114					gpio3 {
115						pins = "gpio3";
116						function = "fps-out";
117						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
118					};
119
120					gpio4 {
121						pins = "gpio4";
122						function = "32k-out1";
123						drive-push-pull = <1>;
124					};
125
126					gpio6 {
127						pins = "gpio6";
128						function = "gpio";
129						drive-push-pull = <1>;
130					};
131
132					gpio7 {
133						pins = "gpio7";
134						function = "gpio";
135						drive-push-pull = <0>;
136					};
137				};
138
139				fps {
140					fps0 {
141						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
142						maxim,shutdown-fps-time-period-us = <640>;
143					};
144
145					fps1 {
146						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>;
147						maxim,shutdown-fps-time-period-us = <640>;
148						maxim,device-state-on-disabled-event = <MAX77620_FPS_INACTIVE_STATE_SLEEP>;
149					};
150
151					fps2 {
152						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
153						maxim,shutdown-fps-time-period-us = <640>;
154					};
155				};
156
157				regulators {
158					in-sd0-supply = <&vdd_5v0_sys>;
159					in-sd1-supply = <&vdd_5v0_sys>;
160					in-sd2-supply = <&vdd_5v0_sys>;
161					in-sd3-supply = <&vdd_5v0_sys>;
162					in-sd4-supply = <&vdd_5v0_sys>;
163
164					in-ldo0-1-supply = <&vdd_5v0_sys>;
165					in-ldo2-supply = <&vdd_5v0_sys>;
166					in-ldo3-5-supply = <&vdd_5v0_sys>;
167					in-ldo4-6-supply = <&vdd_5v0_sys>;
168					in-ldo7-8-supply = <&vdd_1v8ls>;
169
170					vdd_1v0: sd0 {
171						regulator-name = "VDD_1V0";
172						regulator-min-microvolt = <1000000>;
173						regulator-max-microvolt = <1000000>;
174						regulator-always-on;
175						regulator-boot-on;
176					};
177
178					vdd_1v8hs: sd1 {
179						regulator-name = "VDD_1V8HS";
180						regulator-min-microvolt = <1800000>;
181						regulator-max-microvolt = <1800000>;
182						regulator-always-on;
183						regulator-boot-on;
184					};
185
186					vdd_1v8ls: sd2 {
187						regulator-name = "VDD_1V8LS";
188						regulator-min-microvolt = <1800000>;
189						regulator-max-microvolt = <1800000>;
190						regulator-always-on;
191						regulator-boot-on;
192					};
193
194					vdd_1v8ao: sd3 {
195						regulator-name = "VDD_1V8AO";
196						regulator-min-microvolt = <1800000>;
197						regulator-max-microvolt = <1800000>;
198						regulator-always-on;
199						regulator-boot-on;
200					};
201
202					sd4 {
203						regulator-name = "VDD_DDR_1V1";
204						regulator-min-microvolt = <1100000>;
205						regulator-max-microvolt = <1100000>;
206						regulator-always-on;
207						regulator-boot-on;
208					};
209
210					ldo0 {
211						regulator-name = "VDD_RTC";
212						regulator-min-microvolt = <800000>;
213						regulator-max-microvolt = <800000>;
214						regulator-always-on;
215						regulator-boot-on;
216					};
217
218					ldo2 {
219						regulator-name = "VDD_AO_3V3";
220						regulator-min-microvolt = <3300000>;
221						regulator-max-microvolt = <3300000>;
222						regulator-always-on;
223						regulator-boot-on;
224					};
225
226					vdd_emmc_3v3: ldo3 {
227						regulator-name = "VDD_EMMC_3V3";
228						regulator-min-microvolt = <3300000>;
229						regulator-max-microvolt = <3300000>;
230					};
231
232					ldo5 {
233						regulator-name = "VDD_USB_3V3";
234						regulator-min-microvolt = <3300000>;
235						regulator-max-microvolt = <3300000>;
236					};
237
238					ldo6 {
239						regulator-name = "VDD_SDIO_3V3";
240						regulator-min-microvolt = <3300000>;
241						regulator-max-microvolt = <3300000>;
242					};
243
244					ldo7 {
245						regulator-name = "VDD_CSI_1V2";
246						regulator-min-microvolt = <1200000>;
247						regulator-max-microvolt = <1200000>;
248					};
249				};
250			};
251
252			temperature-sensor@4c {
253				compatible = "ti,tmp451";
254				reg = <0x4c>;
255
256				interrupt-parent = <&gpio>;
257				interrupts = <TEGRA194_MAIN_GPIO(H, 2)
258					      IRQ_TYPE_LEVEL_LOW>;
259				vcc-supply = <&vdd_1v8ls>;
260
261				#thermal-sensor-cells = <1>;
262			};
263		};
264	};
265
266	regulators {
267		compatible = "simple-bus";
268		#address-cells = <1>;
269		#size-cells = <0>;
270
271		vdd_5v0_sys: regulator@0 {
272			compatible = "regulator-fixed";
273			reg = <0>;
274
275			regulator-name = "VIN_SYS_5V0";
276			regulator-min-microvolt = <5000000>;
277			regulator-max-microvolt = <5000000>;
278			regulator-always-on;
279			regulator-boot-on;
280		};
281
282		vdd_hdmi: regulator@1 {
283			compatible = "regulator-fixed";
284			reg = <1>;
285
286			regulator-name = "VDD_5V0_HDMI_CON";
287			regulator-min-microvolt = <5000000>;
288			regulator-max-microvolt = <5000000>;
289			gpio = <&gpio TEGRA194_MAIN_GPIO(A, 3) GPIO_ACTIVE_HIGH>;
290			enable-active-high;
291		};
292
293		vdd_3v3_pcie: regulator@2 {
294			compatible = "regulator-fixed";
295			reg = <2>;
296
297			regulator-name = "PEX_3V3";
298			regulator-min-microvolt = <3300000>;
299			regulator-max-microvolt = <3300000>;
300			gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
301			regulator-boot-on;
302			enable-active-high;
303		};
304
305		vdd_12v_pcie: regulator@3 {
306			compatible = "regulator-fixed";
307			reg = <3>;
308
309			regulator-name = "VDD_12V";
310			regulator-min-microvolt = <1200000>;
311			regulator-max-microvolt = <1200000>;
312			gpio = <&gpio TEGRA194_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>;
313			regulator-boot-on;
314			enable-active-low;
315		};
316	};
317};