xref: /linux/arch/arm64/boot/dts/xilinx/zynqmp-zcu102-revA.dts (revision 82a7ebf00224d411148062fac6e8a088419f222b)
1ef797b53SMichal Simek// SPDX-License-Identifier: GPL-2.0+
2ef797b53SMichal Simek/*
3ef797b53SMichal Simek * dts file for Xilinx ZynqMP ZCU102 RevA
4ef797b53SMichal Simek *
59c8a47b4SRajan Vaja * (C) Copyright 2015 - 2019, Xilinx, Inc.
6ef797b53SMichal Simek *
7ef797b53SMichal Simek * Michal Simek <michal.simek@xilinx.com>
8ef797b53SMichal Simek */
9ef797b53SMichal Simek
10ef797b53SMichal Simek/dts-v1/;
11ef797b53SMichal Simek
12ef797b53SMichal Simek#include "zynqmp.dtsi"
139c8a47b4SRajan Vaja#include "zynqmp-clk-ccf.dtsi"
14ef797b53SMichal Simek#include <dt-bindings/input/input.h>
15ef797b53SMichal Simek#include <dt-bindings/gpio/gpio.h>
16ef797b53SMichal Simek
17ef797b53SMichal Simek/ {
18ef797b53SMichal Simek	model = "ZynqMP ZCU102 RevA";
19ef797b53SMichal Simek	compatible = "xlnx,zynqmp-zcu102-revA", "xlnx,zynqmp-zcu102", "xlnx,zynqmp";
20ef797b53SMichal Simek
21ef797b53SMichal Simek	aliases {
22ef797b53SMichal Simek		ethernet0 = &gem3;
23ef797b53SMichal Simek		i2c0 = &i2c0;
24ef797b53SMichal Simek		i2c1 = &i2c1;
25ef797b53SMichal Simek		mmc0 = &sdhci1;
26ef797b53SMichal Simek		rtc0 = &rtc;
27ef797b53SMichal Simek		serial0 = &uart0;
28ef797b53SMichal Simek		serial1 = &uart1;
29ef797b53SMichal Simek		serial2 = &dcc;
30ef797b53SMichal Simek	};
31ef797b53SMichal Simek
32ef797b53SMichal Simek	chosen {
33ef797b53SMichal Simek		bootargs = "earlycon";
34ef797b53SMichal Simek		stdout-path = "serial0:115200n8";
35ef797b53SMichal Simek	};
36ef797b53SMichal Simek
37ef797b53SMichal Simek	memory@0 {
38ef797b53SMichal Simek		device_type = "memory";
39ef797b53SMichal Simek		reg = <0x0 0x0 0x0 0x80000000>, <0x8 0x00000000 0x0 0x80000000>;
40ef797b53SMichal Simek	};
41ef797b53SMichal Simek
42ef797b53SMichal Simek	gpio-keys {
43ef797b53SMichal Simek		compatible = "gpio-keys";
44ef797b53SMichal Simek		autorepeat;
45ef797b53SMichal Simek		sw19 {
46ef797b53SMichal Simek			label = "sw19";
47ef797b53SMichal Simek			gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
48ef797b53SMichal Simek			linux,code = <KEY_DOWN>;
491696acf4SSudeep Holla			wakeup-source;
50ef797b53SMichal Simek			autorepeat;
51ef797b53SMichal Simek		};
52ef797b53SMichal Simek	};
53ef797b53SMichal Simek
54ef797b53SMichal Simek	leds {
55ef797b53SMichal Simek		compatible = "gpio-leds";
56d1d4445aSMichal Simek		heartbeat-led {
57ef797b53SMichal Simek			label = "heartbeat";
58ef797b53SMichal Simek			gpios = <&gpio 23 GPIO_ACTIVE_HIGH>;
59ef797b53SMichal Simek			linux,default-trigger = "heartbeat";
60ef797b53SMichal Simek		};
61ef797b53SMichal Simek	};
6286444d3eSMichal Simek
6386444d3eSMichal Simek	ina226-u76 {
6486444d3eSMichal Simek		compatible = "iio-hwmon";
6586444d3eSMichal Simek		io-channels = <&u76 0>, <&u76 1>, <&u76 2>, <&u76 3>;
6686444d3eSMichal Simek	};
6786444d3eSMichal Simek	ina226-u77 {
6886444d3eSMichal Simek		compatible = "iio-hwmon";
6986444d3eSMichal Simek		io-channels = <&u77 0>, <&u77 1>, <&u77 2>, <&u77 3>;
7086444d3eSMichal Simek	};
7186444d3eSMichal Simek	ina226-u78 {
7286444d3eSMichal Simek		compatible = "iio-hwmon";
7386444d3eSMichal Simek		io-channels = <&u78 0>, <&u78 1>, <&u78 2>, <&u78 3>;
7486444d3eSMichal Simek	};
7586444d3eSMichal Simek	ina226-u87 {
7686444d3eSMichal Simek		compatible = "iio-hwmon";
7786444d3eSMichal Simek		io-channels = <&u87 0>, <&u87 1>, <&u87 2>, <&u87 3>;
7886444d3eSMichal Simek	};
7986444d3eSMichal Simek	ina226-u85 {
8086444d3eSMichal Simek		compatible = "iio-hwmon";
8186444d3eSMichal Simek		io-channels = <&u85 0>, <&u85 1>, <&u85 2>, <&u85 3>;
8286444d3eSMichal Simek	};
8386444d3eSMichal Simek	ina226-u86 {
8486444d3eSMichal Simek		compatible = "iio-hwmon";
8586444d3eSMichal Simek		io-channels = <&u86 0>, <&u86 1>, <&u86 2>, <&u86 3>;
8686444d3eSMichal Simek	};
8786444d3eSMichal Simek	ina226-u93 {
8886444d3eSMichal Simek		compatible = "iio-hwmon";
8986444d3eSMichal Simek		io-channels = <&u93 0>, <&u93 1>, <&u93 2>, <&u93 3>;
9086444d3eSMichal Simek	};
9186444d3eSMichal Simek	ina226-u88 {
9286444d3eSMichal Simek		compatible = "iio-hwmon";
9386444d3eSMichal Simek		io-channels = <&u88 0>, <&u88 1>, <&u88 2>, <&u88 3>;
9486444d3eSMichal Simek	};
9586444d3eSMichal Simek	ina226-u15 {
9686444d3eSMichal Simek		compatible = "iio-hwmon";
9786444d3eSMichal Simek		io-channels = <&u15 0>, <&u15 1>, <&u15 2>, <&u15 3>;
9886444d3eSMichal Simek	};
9986444d3eSMichal Simek	ina226-u92 {
10086444d3eSMichal Simek		compatible = "iio-hwmon";
10186444d3eSMichal Simek		io-channels = <&u92 0>, <&u92 1>, <&u92 2>, <&u92 3>;
10286444d3eSMichal Simek	};
10386444d3eSMichal Simek	ina226-u79 {
10486444d3eSMichal Simek		compatible = "iio-hwmon";
10586444d3eSMichal Simek		io-channels = <&u79 0>, <&u79 1>, <&u79 2>, <&u79 3>;
10686444d3eSMichal Simek	};
10786444d3eSMichal Simek	ina226-u81 {
10886444d3eSMichal Simek		compatible = "iio-hwmon";
10986444d3eSMichal Simek		io-channels = <&u81 0>, <&u81 1>, <&u81 2>, <&u81 3>;
11086444d3eSMichal Simek	};
11186444d3eSMichal Simek	ina226-u80 {
11286444d3eSMichal Simek		compatible = "iio-hwmon";
11386444d3eSMichal Simek		io-channels = <&u80 0>, <&u80 1>, <&u80 2>, <&u80 3>;
11486444d3eSMichal Simek	};
11586444d3eSMichal Simek	ina226-u84 {
11686444d3eSMichal Simek		compatible = "iio-hwmon";
11786444d3eSMichal Simek		io-channels = <&u84 0>, <&u84 1>, <&u84 2>, <&u84 3>;
11886444d3eSMichal Simek	};
11986444d3eSMichal Simek	ina226-u16 {
12086444d3eSMichal Simek		compatible = "iio-hwmon";
12186444d3eSMichal Simek		io-channels = <&u16 0>, <&u16 1>, <&u16 2>, <&u16 3>;
12286444d3eSMichal Simek	};
12386444d3eSMichal Simek	ina226-u65 {
12486444d3eSMichal Simek		compatible = "iio-hwmon";
12586444d3eSMichal Simek		io-channels = <&u65 0>, <&u65 1>, <&u65 2>, <&u65 3>;
12686444d3eSMichal Simek	};
12786444d3eSMichal Simek	ina226-u74 {
12886444d3eSMichal Simek		compatible = "iio-hwmon";
12986444d3eSMichal Simek		io-channels = <&u74 0>, <&u74 1>, <&u74 2>, <&u74 3>;
13086444d3eSMichal Simek	};
13186444d3eSMichal Simek	ina226-u75 {
13286444d3eSMichal Simek		compatible = "iio-hwmon";
13386444d3eSMichal Simek		io-channels = <&u75 0>, <&u75 1>, <&u75 2>, <&u75 3>;
13486444d3eSMichal Simek	};
135*82a7ebf0SMichal Simek
136*82a7ebf0SMichal Simek	refhdmi: refhdmi {
137*82a7ebf0SMichal Simek		compatible = "fixed-clock";
138*82a7ebf0SMichal Simek		#clock-cells = <0>;
139*82a7ebf0SMichal Simek		clock-frequency = <114285000>;
140*82a7ebf0SMichal Simek	};
141ef797b53SMichal Simek};
142ef797b53SMichal Simek
143ef797b53SMichal Simek&can1 {
144ef797b53SMichal Simek	status = "okay";
145ef797b53SMichal Simek};
146ef797b53SMichal Simek
147ef797b53SMichal Simek&dcc {
148ef797b53SMichal Simek	status = "okay";
149ef797b53SMichal Simek};
150ef797b53SMichal Simek
151ef797b53SMichal Simek&fpd_dma_chan1 {
152ef797b53SMichal Simek	status = "okay";
153ef797b53SMichal Simek};
154ef797b53SMichal Simek
155ef797b53SMichal Simek&fpd_dma_chan2 {
156ef797b53SMichal Simek	status = "okay";
157ef797b53SMichal Simek};
158ef797b53SMichal Simek
159ef797b53SMichal Simek&fpd_dma_chan3 {
160ef797b53SMichal Simek	status = "okay";
161ef797b53SMichal Simek};
162ef797b53SMichal Simek
163ef797b53SMichal Simek&fpd_dma_chan4 {
164ef797b53SMichal Simek	status = "okay";
165ef797b53SMichal Simek};
166ef797b53SMichal Simek
167ef797b53SMichal Simek&fpd_dma_chan5 {
168ef797b53SMichal Simek	status = "okay";
169ef797b53SMichal Simek};
170ef797b53SMichal Simek
171ef797b53SMichal Simek&fpd_dma_chan6 {
172ef797b53SMichal Simek	status = "okay";
173ef797b53SMichal Simek};
174ef797b53SMichal Simek
175ef797b53SMichal Simek&fpd_dma_chan7 {
176ef797b53SMichal Simek	status = "okay";
177ef797b53SMichal Simek};
178ef797b53SMichal Simek
179ef797b53SMichal Simek&fpd_dma_chan8 {
180ef797b53SMichal Simek	status = "okay";
181ef797b53SMichal Simek};
182ef797b53SMichal Simek
183ef797b53SMichal Simek&gem3 {
184ef797b53SMichal Simek	status = "okay";
185ef797b53SMichal Simek	phy-handle = <&phy0>;
186ef797b53SMichal Simek	phy-mode = "rgmii-id";
18713d21ebaSMichal Simek	phy0: ethernet-phy@21 {
188ef797b53SMichal Simek		reg = <21>;
189ef797b53SMichal Simek		ti,rx-internal-delay = <0x8>;
190ef797b53SMichal Simek		ti,tx-internal-delay = <0xa>;
191ef797b53SMichal Simek		ti,fifo-depth = <0x1>;
19278c484a5SHarini Katakam		ti,dp83867-rxctrl-strap-quirk;
193ef797b53SMichal Simek	};
194ef797b53SMichal Simek};
195ef797b53SMichal Simek
196ef797b53SMichal Simek&gpio {
197ef797b53SMichal Simek	status = "okay";
198ef797b53SMichal Simek};
199ef797b53SMichal Simek
200ef797b53SMichal Simek&i2c0 {
201ef797b53SMichal Simek	status = "okay";
202ef797b53SMichal Simek	clock-frequency = <400000>;
203ef797b53SMichal Simek
204ef797b53SMichal Simek	tca6416_u97: gpio@20 {
205ef797b53SMichal Simek		compatible = "ti,tca6416";
206ef797b53SMichal Simek		reg = <0x20>;
2074426df7cSMichal Simek		gpio-controller; /* IRQ not connected */
208ef797b53SMichal Simek		#gpio-cells = <2>;
2094426df7cSMichal Simek		gpio-line-names = "PS_GTR_LAN_SEL0", "PS_GTR_LAN_SEL1", "PS_GTR_LAN_SEL2", "PS_GTR_LAN_SEL3",
2104426df7cSMichal Simek				"PCI_CLK_DIR_SEL", "IIC_MUX_RESET_B", "GEM3_EXP_RESET_B",
2114426df7cSMichal Simek				"", "", "", "", "", "", "", "", "";
212cbf5a878SKrzysztof Kozlowski		gtr-sel0-hog {
213ef797b53SMichal Simek			gpio-hog;
214ef797b53SMichal Simek			gpios = <0 0>;
215ef797b53SMichal Simek			output-low; /* PCIE = 0, DP = 1 */
216ef797b53SMichal Simek			line-name = "sel0";
217ef797b53SMichal Simek		};
218cbf5a878SKrzysztof Kozlowski		gtr-sel1-hog {
219ef797b53SMichal Simek			gpio-hog;
220ef797b53SMichal Simek			gpios = <1 0>;
221ef797b53SMichal Simek			output-high; /* PCIE = 0, DP = 1 */
222ef797b53SMichal Simek			line-name = "sel1";
223ef797b53SMichal Simek		};
224cbf5a878SKrzysztof Kozlowski		gtr-sel2-hog {
225ef797b53SMichal Simek			gpio-hog;
226ef797b53SMichal Simek			gpios = <2 0>;
227ef797b53SMichal Simek			output-high; /* PCIE = 0, USB0 = 1 */
228ef797b53SMichal Simek			line-name = "sel2";
229ef797b53SMichal Simek		};
230cbf5a878SKrzysztof Kozlowski		gtr-sel3-hog {
231ef797b53SMichal Simek			gpio-hog;
232ef797b53SMichal Simek			gpios = <3 0>;
233ef797b53SMichal Simek			output-high; /* PCIE = 0, SATA = 1 */
234ef797b53SMichal Simek			line-name = "sel3";
235ef797b53SMichal Simek		};
236ef797b53SMichal Simek	};
237ef797b53SMichal Simek
238ef797b53SMichal Simek	tca6416_u61: gpio@21 {
239ef797b53SMichal Simek		compatible = "ti,tca6416";
240ef797b53SMichal Simek		reg = <0x21>;
2414426df7cSMichal Simek		gpio-controller; /* IRQ not connected */
242ef797b53SMichal Simek		#gpio-cells = <2>;
2434426df7cSMichal Simek		gpio-line-names = "VCCPSPLL_EN", "MGTRAVCC_EN", "MGTRAVTT_EN", "VCCPSDDRPLL_EN", "MIO26_PMU_INPUT_LS",
2444426df7cSMichal Simek				"PL_PMBUS_ALERT", "PS_PMBUS_ALERT", "MAXIM_PMBUS_ALERT", "PL_DDR4_VTERM_EN",
2454426df7cSMichal Simek				"PL_DDR4_VPP_2V5_EN", "PS_DIMM_VDDQ_TO_PSVCCO_ON", "PS_DIMM_SUSPEND_EN",
2464426df7cSMichal Simek				"PS_DDR4_VTERM_EN", "PS_DDR4_VPP_2V5_EN", "", "";
247ef797b53SMichal Simek	};
248ef797b53SMichal Simek
249ef797b53SMichal Simek	i2c-mux@75 { /* u60 */
250ef797b53SMichal Simek		compatible = "nxp,pca9544";
251ef797b53SMichal Simek		#address-cells = <1>;
252ef797b53SMichal Simek		#size-cells = <0>;
253ef797b53SMichal Simek		reg = <0x75>;
254ef797b53SMichal Simek		i2c@0 {
255ef797b53SMichal Simek			#address-cells = <1>;
256ef797b53SMichal Simek			#size-cells = <0>;
257ef797b53SMichal Simek			reg = <0>;
258ef797b53SMichal Simek			/* PS_PMBUS */
25986444d3eSMichal Simek			u76: ina226@40 { /* u76 */
260ef797b53SMichal Simek				compatible = "ti,ina226";
26186444d3eSMichal Simek				#io-channel-cells = <1>;
262353f5eceSMichal Simek				label = "ina226-u76";
263ef797b53SMichal Simek				reg = <0x40>;
264ef797b53SMichal Simek				shunt-resistor = <5000>;
265ef797b53SMichal Simek			};
26686444d3eSMichal Simek			u77: ina226@41 { /* u77 */
267ef797b53SMichal Simek				compatible = "ti,ina226";
26886444d3eSMichal Simek				#io-channel-cells = <1>;
269353f5eceSMichal Simek				label = "ina226-u77";
270ef797b53SMichal Simek				reg = <0x41>;
271ef797b53SMichal Simek				shunt-resistor = <5000>;
272ef797b53SMichal Simek			};
27386444d3eSMichal Simek			u78: ina226@42 { /* u78 */
274ef797b53SMichal Simek				compatible = "ti,ina226";
27586444d3eSMichal Simek				#io-channel-cells = <1>;
276353f5eceSMichal Simek				label = "ina226-u78";
277ef797b53SMichal Simek				reg = <0x42>;
278ef797b53SMichal Simek				shunt-resistor = <5000>;
279ef797b53SMichal Simek			};
28086444d3eSMichal Simek			u87: ina226@43 { /* u87 */
281ef797b53SMichal Simek				compatible = "ti,ina226";
28286444d3eSMichal Simek				#io-channel-cells = <1>;
283353f5eceSMichal Simek				label = "ina226-u87";
284ef797b53SMichal Simek				reg = <0x43>;
285ef797b53SMichal Simek				shunt-resistor = <5000>;
286ef797b53SMichal Simek			};
28786444d3eSMichal Simek			u85: ina226@44 { /* u85 */
288ef797b53SMichal Simek				compatible = "ti,ina226";
28986444d3eSMichal Simek				#io-channel-cells = <1>;
290353f5eceSMichal Simek				label = "ina226-u85";
291ef797b53SMichal Simek				reg = <0x44>;
292ef797b53SMichal Simek				shunt-resistor = <5000>;
293ef797b53SMichal Simek			};
29486444d3eSMichal Simek			u86: ina226@45 { /* u86 */
295ef797b53SMichal Simek				compatible = "ti,ina226";
29686444d3eSMichal Simek				#io-channel-cells = <1>;
297353f5eceSMichal Simek				label = "ina226-u86";
298ef797b53SMichal Simek				reg = <0x45>;
299ef797b53SMichal Simek				shunt-resistor = <5000>;
300ef797b53SMichal Simek			};
30186444d3eSMichal Simek			u93: ina226@46 { /* u93 */
302ef797b53SMichal Simek				compatible = "ti,ina226";
30386444d3eSMichal Simek				#io-channel-cells = <1>;
304353f5eceSMichal Simek				label = "ina226-u93";
305ef797b53SMichal Simek				reg = <0x46>;
306ef797b53SMichal Simek				shunt-resistor = <5000>;
307ef797b53SMichal Simek			};
30886444d3eSMichal Simek			u88: ina226@47 { /* u88 */
309ef797b53SMichal Simek				compatible = "ti,ina226";
31086444d3eSMichal Simek				#io-channel-cells = <1>;
311353f5eceSMichal Simek				label = "ina226-u88";
312ef797b53SMichal Simek				reg = <0x47>;
313ef797b53SMichal Simek				shunt-resistor = <5000>;
314ef797b53SMichal Simek			};
31586444d3eSMichal Simek			u15: ina226@4a { /* u15 */
316ef797b53SMichal Simek				compatible = "ti,ina226";
31786444d3eSMichal Simek				#io-channel-cells = <1>;
318353f5eceSMichal Simek				label = "ina226-u15";
319ef797b53SMichal Simek				reg = <0x4a>;
320ef797b53SMichal Simek				shunt-resistor = <5000>;
321ef797b53SMichal Simek			};
32286444d3eSMichal Simek			u92: ina226@4b { /* u92 */
323ef797b53SMichal Simek				compatible = "ti,ina226";
32486444d3eSMichal Simek				#io-channel-cells = <1>;
325353f5eceSMichal Simek				label = "ina226-u92";
326ef797b53SMichal Simek				reg = <0x4b>;
327ef797b53SMichal Simek				shunt-resistor = <5000>;
328ef797b53SMichal Simek			};
329ef797b53SMichal Simek		};
330ef797b53SMichal Simek		i2c@1 {
331ef797b53SMichal Simek			#address-cells = <1>;
332ef797b53SMichal Simek			#size-cells = <0>;
333ef797b53SMichal Simek			reg = <1>;
334ef797b53SMichal Simek			/* PL_PMBUS */
33586444d3eSMichal Simek			u79: ina226@40 { /* u79 */
336ef797b53SMichal Simek				compatible = "ti,ina226";
33786444d3eSMichal Simek				#io-channel-cells = <1>;
338353f5eceSMichal Simek				label = "ina226-u79";
339ef797b53SMichal Simek				reg = <0x40>;
340ef797b53SMichal Simek				shunt-resistor = <2000>;
341ef797b53SMichal Simek			};
34286444d3eSMichal Simek			u81: ina226@41 { /* u81 */
343ef797b53SMichal Simek				compatible = "ti,ina226";
34486444d3eSMichal Simek				#io-channel-cells = <1>;
345353f5eceSMichal Simek				label = "ina226-u81";
346ef797b53SMichal Simek				reg = <0x41>;
347ef797b53SMichal Simek				shunt-resistor = <5000>;
348ef797b53SMichal Simek			};
34986444d3eSMichal Simek			u80: ina226@42 { /* u80 */
350ef797b53SMichal Simek				compatible = "ti,ina226";
35186444d3eSMichal Simek				#io-channel-cells = <1>;
352353f5eceSMichal Simek				label = "ina226-u80";
353ef797b53SMichal Simek				reg = <0x42>;
354ef797b53SMichal Simek				shunt-resistor = <5000>;
355ef797b53SMichal Simek			};
35686444d3eSMichal Simek			u84: ina226@43 { /* u84 */
357ef797b53SMichal Simek				compatible = "ti,ina226";
35886444d3eSMichal Simek				#io-channel-cells = <1>;
359353f5eceSMichal Simek				label = "ina226-u84";
360ef797b53SMichal Simek				reg = <0x43>;
361ef797b53SMichal Simek				shunt-resistor = <5000>;
362ef797b53SMichal Simek			};
36386444d3eSMichal Simek			u16: ina226@44 { /* u16 */
364ef797b53SMichal Simek				compatible = "ti,ina226";
36586444d3eSMichal Simek				#io-channel-cells = <1>;
366353f5eceSMichal Simek				label = "ina226-u16";
367ef797b53SMichal Simek				reg = <0x44>;
368ef797b53SMichal Simek				shunt-resistor = <5000>;
369ef797b53SMichal Simek			};
37086444d3eSMichal Simek			u65: ina226@45 { /* u65 */
371ef797b53SMichal Simek				compatible = "ti,ina226";
37286444d3eSMichal Simek				#io-channel-cells = <1>;
373353f5eceSMichal Simek				label = "ina226-u65";
374ef797b53SMichal Simek				reg = <0x45>;
375ef797b53SMichal Simek				shunt-resistor = <5000>;
376ef797b53SMichal Simek			};
37786444d3eSMichal Simek			u74: ina226@46 { /* u74 */
378ef797b53SMichal Simek				compatible = "ti,ina226";
37986444d3eSMichal Simek				#io-channel-cells = <1>;
380353f5eceSMichal Simek				label = "ina226-u74";
381ef797b53SMichal Simek				reg = <0x46>;
382ef797b53SMichal Simek				shunt-resistor = <5000>;
383ef797b53SMichal Simek			};
38486444d3eSMichal Simek			u75: ina226@47 { /* u75 */
385ef797b53SMichal Simek				compatible = "ti,ina226";
38686444d3eSMichal Simek				#io-channel-cells = <1>;
387353f5eceSMichal Simek				label = "ina226-u75";
388ef797b53SMichal Simek				reg = <0x47>;
389ef797b53SMichal Simek				shunt-resistor = <5000>;
390ef797b53SMichal Simek			};
391ef797b53SMichal Simek		};
392ef797b53SMichal Simek		i2c@2 {
393ef797b53SMichal Simek			#address-cells = <1>;
394ef797b53SMichal Simek			#size-cells = <0>;
395ef797b53SMichal Simek			reg = <2>;
396ef797b53SMichal Simek			/* MAXIM_PMBUS - 00 */
397ef797b53SMichal Simek			max15301@a { /* u46 */
398ef797b53SMichal Simek				compatible = "maxim,max15301";
399ef797b53SMichal Simek				reg = <0xa>;
400ef797b53SMichal Simek			};
401ef797b53SMichal Simek			max15303@b { /* u4 */
402ef797b53SMichal Simek				compatible = "maxim,max15303";
403ef797b53SMichal Simek				reg = <0xb>;
404ef797b53SMichal Simek			};
405ef797b53SMichal Simek			max15303@10 { /* u13 */
406ef797b53SMichal Simek				compatible = "maxim,max15303";
407ef797b53SMichal Simek				reg = <0x10>;
408ef797b53SMichal Simek			};
409ef797b53SMichal Simek			max15301@13 { /* u47 */
410ef797b53SMichal Simek				compatible = "maxim,max15301";
411ef797b53SMichal Simek				reg = <0x13>;
412ef797b53SMichal Simek			};
413ef797b53SMichal Simek			max15303@14 { /* u7 */
414ef797b53SMichal Simek				compatible = "maxim,max15303";
415ef797b53SMichal Simek				reg = <0x14>;
416ef797b53SMichal Simek			};
417ef797b53SMichal Simek			max15303@15 { /* u6 */
418ef797b53SMichal Simek				compatible = "maxim,max15303";
419ef797b53SMichal Simek				reg = <0x15>;
420ef797b53SMichal Simek			};
421ef797b53SMichal Simek			max15303@16 { /* u10 */
422ef797b53SMichal Simek				compatible = "maxim,max15303";
423ef797b53SMichal Simek				reg = <0x16>;
424ef797b53SMichal Simek			};
425ef797b53SMichal Simek			max15303@17 { /* u9 */
426ef797b53SMichal Simek				compatible = "maxim,max15303";
427ef797b53SMichal Simek				reg = <0x17>;
428ef797b53SMichal Simek			};
429ef797b53SMichal Simek			max15301@18 { /* u63 */
430ef797b53SMichal Simek				compatible = "maxim,max15301";
431ef797b53SMichal Simek				reg = <0x18>;
432ef797b53SMichal Simek			};
433ef797b53SMichal Simek			max15303@1a { /* u49 */
434ef797b53SMichal Simek				compatible = "maxim,max15303";
435ef797b53SMichal Simek				reg = <0x1a>;
436ef797b53SMichal Simek			};
437ef797b53SMichal Simek			max15303@1d { /* u18 */
438ef797b53SMichal Simek				compatible = "maxim,max15303";
439ef797b53SMichal Simek				reg = <0x1d>;
440ef797b53SMichal Simek			};
441ef797b53SMichal Simek			max15303@20 { /* u8 */
442ef797b53SMichal Simek				compatible = "maxim,max15303";
443ef797b53SMichal Simek				status = "disabled"; /* unreachable */
444ef797b53SMichal Simek				reg = <0x20>;
445ef797b53SMichal Simek			};
446ef797b53SMichal Simek
447ef797b53SMichal Simek			max20751@72 { /* u95 */
448ef797b53SMichal Simek				compatible = "maxim,max20751";
449ef797b53SMichal Simek				reg = <0x72>;
450ef797b53SMichal Simek			};
451ef797b53SMichal Simek			max20751@73 { /* u96 */
452ef797b53SMichal Simek				compatible = "maxim,max20751";
453ef797b53SMichal Simek				reg = <0x73>;
454ef797b53SMichal Simek			};
455ef797b53SMichal Simek		};
456ef797b53SMichal Simek		/* Bus 3 is not connected */
457ef797b53SMichal Simek	};
458ef797b53SMichal Simek};
459ef797b53SMichal Simek
460ef797b53SMichal Simek&i2c1 {
461ef797b53SMichal Simek	status = "okay";
462ef797b53SMichal Simek	clock-frequency = <400000>;
463ef797b53SMichal Simek
464ef797b53SMichal Simek	/* PL i2c via PCA9306 - u45 */
465ef797b53SMichal Simek	i2c-mux@74 { /* u34 */
466ef797b53SMichal Simek		compatible = "nxp,pca9548";
467ef797b53SMichal Simek		#address-cells = <1>;
468ef797b53SMichal Simek		#size-cells = <0>;
469ef797b53SMichal Simek		reg = <0x74>;
470ef797b53SMichal Simek		i2c@0 {
471ef797b53SMichal Simek			#address-cells = <1>;
472ef797b53SMichal Simek			#size-cells = <0>;
473ef797b53SMichal Simek			reg = <0>;
474ef797b53SMichal Simek			/*
475ef797b53SMichal Simek			 * IIC_EEPROM 1kB memory which uses 256B blocks
476ef797b53SMichal Simek			 * where every block has different address.
477ef797b53SMichal Simek			 *    0 - 256B address 0x54
478ef797b53SMichal Simek			 * 256B - 512B address 0x55
479ef797b53SMichal Simek			 * 512B - 768B address 0x56
480ef797b53SMichal Simek			 * 768B - 1024B address 0x57
481ef797b53SMichal Simek			 */
482ef797b53SMichal Simek			eeprom: eeprom@54 { /* u23 */
483ef797b53SMichal Simek				compatible = "atmel,24c08";
484ef797b53SMichal Simek				reg = <0x54>;
485ef797b53SMichal Simek			};
486ef797b53SMichal Simek		};
487ef797b53SMichal Simek		i2c@1 {
488ef797b53SMichal Simek			#address-cells = <1>;
489ef797b53SMichal Simek			#size-cells = <0>;
490ef797b53SMichal Simek			reg = <1>;
491ef797b53SMichal Simek			si5341: clock-generator@36 { /* SI5341 - u69 */
492ef797b53SMichal Simek				reg = <0x36>;
493ef797b53SMichal Simek			};
494ef797b53SMichal Simek
495ef797b53SMichal Simek		};
496ef797b53SMichal Simek		i2c@2 {
497ef797b53SMichal Simek			#address-cells = <1>;
498ef797b53SMichal Simek			#size-cells = <0>;
499ef797b53SMichal Simek			reg = <2>;
500ef797b53SMichal Simek			si570_1: clock-generator@5d { /* USER SI570 - u42 */
501ef797b53SMichal Simek				#clock-cells = <0>;
502ef797b53SMichal Simek				compatible = "silabs,si570";
503ef797b53SMichal Simek				reg = <0x5d>;
504ef797b53SMichal Simek				temperature-stability = <50>;
505ef797b53SMichal Simek				factory-fout = <300000000>;
506ef797b53SMichal Simek				clock-frequency = <300000000>;
50748b44b90SMichal Simek				clock-output-names = "si570_user";
508ef797b53SMichal Simek			};
509ef797b53SMichal Simek		};
510ef797b53SMichal Simek		i2c@3 {
511ef797b53SMichal Simek			#address-cells = <1>;
512ef797b53SMichal Simek			#size-cells = <0>;
513ef797b53SMichal Simek			reg = <3>;
514ef797b53SMichal Simek			si570_2: clock-generator@5d { /* USER MGT SI570 - u56 */
515ef797b53SMichal Simek				#clock-cells = <0>;
516ef797b53SMichal Simek				compatible = "silabs,si570";
517ef797b53SMichal Simek				reg = <0x5d>;
518ef797b53SMichal Simek				temperature-stability = <50>; /* copy from zc702 */
519ef797b53SMichal Simek				factory-fout = <156250000>;
520ef797b53SMichal Simek				clock-frequency = <148500000>;
52148b44b90SMichal Simek				clock-output-names = "si570_mgt";
522ef797b53SMichal Simek			};
523ef797b53SMichal Simek		};
524ef797b53SMichal Simek		i2c@4 {
525ef797b53SMichal Simek			#address-cells = <1>;
526ef797b53SMichal Simek			#size-cells = <0>;
527ef797b53SMichal Simek			reg = <4>;
528ef797b53SMichal Simek			si5328: clock-generator@69 {/* SI5328 - u20 */
529ef797b53SMichal Simek				reg = <0x69>;
530ef797b53SMichal Simek				/*
531ef797b53SMichal Simek				 * Chip has interrupt present connected to PL
532ef797b53SMichal Simek				 * interrupt-parent = <&>;
533ef797b53SMichal Simek				 * interrupts = <>;
534ef797b53SMichal Simek				 */
535*82a7ebf0SMichal Simek				#address-cells = <1>;
536*82a7ebf0SMichal Simek				#size-cells = <0>;
537*82a7ebf0SMichal Simek				#clock-cells = <1>;
538*82a7ebf0SMichal Simek				clocks = <&refhdmi>;
539*82a7ebf0SMichal Simek				clock-names = "xtal";
540*82a7ebf0SMichal Simek				clock-output-names = "si5328";
541*82a7ebf0SMichal Simek
542*82a7ebf0SMichal Simek				si5328_clk: clk0@0 {
543*82a7ebf0SMichal Simek					reg = <0>;
544*82a7ebf0SMichal Simek					clock-frequency = <27000000>;
545*82a7ebf0SMichal Simek				};
546ef797b53SMichal Simek			};
547ef797b53SMichal Simek		};
548ef797b53SMichal Simek		/* 5 - 7 unconnected */
549ef797b53SMichal Simek	};
550ef797b53SMichal Simek
551ef797b53SMichal Simek	i2c-mux@75 {
552ef797b53SMichal Simek		compatible = "nxp,pca9548"; /* u135 */
553ef797b53SMichal Simek		#address-cells = <1>;
554ef797b53SMichal Simek		#size-cells = <0>;
555ef797b53SMichal Simek		reg = <0x75>;
556ef797b53SMichal Simek
557ef797b53SMichal Simek		i2c@0 {
558ef797b53SMichal Simek			#address-cells = <1>;
559ef797b53SMichal Simek			#size-cells = <0>;
560ef797b53SMichal Simek			reg = <0>;
561ef797b53SMichal Simek			/* HPC0_IIC */
562ef797b53SMichal Simek		};
563ef797b53SMichal Simek		i2c@1 {
564ef797b53SMichal Simek			#address-cells = <1>;
565ef797b53SMichal Simek			#size-cells = <0>;
566ef797b53SMichal Simek			reg = <1>;
567ef797b53SMichal Simek			/* HPC1_IIC */
568ef797b53SMichal Simek		};
569ef797b53SMichal Simek		i2c@2 {
570ef797b53SMichal Simek			#address-cells = <1>;
571ef797b53SMichal Simek			#size-cells = <0>;
572ef797b53SMichal Simek			reg = <2>;
573ef797b53SMichal Simek			/* SYSMON */
574ef797b53SMichal Simek		};
575ef797b53SMichal Simek		i2c@3 {
576ef797b53SMichal Simek			#address-cells = <1>;
577ef797b53SMichal Simek			#size-cells = <0>;
578ef797b53SMichal Simek			reg = <3>;
579ef797b53SMichal Simek			/* DDR4 SODIMM */
580ef797b53SMichal Simek		};
581ef797b53SMichal Simek		i2c@4 {
582ef797b53SMichal Simek			#address-cells = <1>;
583ef797b53SMichal Simek			#size-cells = <0>;
584ef797b53SMichal Simek			reg = <4>;
585ef797b53SMichal Simek			/* SEP 3 */
586ef797b53SMichal Simek		};
587ef797b53SMichal Simek		i2c@5 {
588ef797b53SMichal Simek			#address-cells = <1>;
589ef797b53SMichal Simek			#size-cells = <0>;
590ef797b53SMichal Simek			reg = <5>;
591ef797b53SMichal Simek			/* SEP 2 */
592ef797b53SMichal Simek		};
593ef797b53SMichal Simek		i2c@6 {
594ef797b53SMichal Simek			#address-cells = <1>;
595ef797b53SMichal Simek			#size-cells = <0>;
596ef797b53SMichal Simek			reg = <6>;
597ef797b53SMichal Simek			/* SEP 1 */
598ef797b53SMichal Simek		};
599ef797b53SMichal Simek		i2c@7 {
600ef797b53SMichal Simek			#address-cells = <1>;
601ef797b53SMichal Simek			#size-cells = <0>;
602ef797b53SMichal Simek			reg = <7>;
603ef797b53SMichal Simek			/* SEP 0 */
604ef797b53SMichal Simek		};
605ef797b53SMichal Simek	};
606ef797b53SMichal Simek};
607ef797b53SMichal Simek
608ef797b53SMichal Simek&pcie {
609ef797b53SMichal Simek	status = "okay";
610ef797b53SMichal Simek};
611ef797b53SMichal Simek
612ef797b53SMichal Simek&rtc {
613ef797b53SMichal Simek	status = "okay";
614ef797b53SMichal Simek};
615ef797b53SMichal Simek
616ef797b53SMichal Simek&sata {
617ef797b53SMichal Simek	status = "okay";
618ef797b53SMichal Simek	/* SATA OOB timing settings */
619ef797b53SMichal Simek	ceva,p0-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>;
620ef797b53SMichal Simek	ceva,p0-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>;
621ef797b53SMichal Simek	ceva,p0-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
622ef797b53SMichal Simek	ceva,p0-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
623ef797b53SMichal Simek	ceva,p1-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>;
624ef797b53SMichal Simek	ceva,p1-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>;
625ef797b53SMichal Simek	ceva,p1-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
626ef797b53SMichal Simek	ceva,p1-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
627ef797b53SMichal Simek};
628ef797b53SMichal Simek
629ef797b53SMichal Simek/* SD1 with level shifter */
630ef797b53SMichal Simek&sdhci1 {
631ef797b53SMichal Simek	status = "okay";
632ef797b53SMichal Simek	no-1-8-v;
633ef797b53SMichal Simek};
634ef797b53SMichal Simek
635ef797b53SMichal Simek&uart0 {
636ef797b53SMichal Simek	status = "okay";
637ef797b53SMichal Simek};
638ef797b53SMichal Simek
639ef797b53SMichal Simek&uart1 {
640ef797b53SMichal Simek	status = "okay";
641ef797b53SMichal Simek};
642ef797b53SMichal Simek
643ef797b53SMichal Simek/* ULPI SMSC USB3320 */
644ef797b53SMichal Simek&usb0 {
645ef797b53SMichal Simek	status = "okay";
646df906cf5SAnurag Kumar Vulisha	dr_mode = "host";
647ef797b53SMichal Simek};
648ef797b53SMichal Simek
649ef797b53SMichal Simek&watchdog0 {
650ef797b53SMichal Simek	status = "okay";
651ef797b53SMichal Simek};
652