xref: /linux/arch/arm64/boot/dts/xilinx/zynqmp-zcu102-revA.dts (revision 56e54601514d51d204ef67e24b395256763a847a)
1ef797b53SMichal Simek// SPDX-License-Identifier: GPL-2.0+
2ef797b53SMichal Simek/*
3ef797b53SMichal Simek * dts file for Xilinx ZynqMP ZCU102 RevA
4ef797b53SMichal Simek *
5c821045fSMichal Simek * (C) Copyright 2015 - 2021, 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>
16c821045fSMichal Simek#include <dt-bindings/pinctrl/pinctrl-zynqmp.h>
1751733f16SMichal Simek#include <dt-bindings/phy/phy.h>
18ef797b53SMichal Simek
19ef797b53SMichal Simek/ {
20ef797b53SMichal Simek	model = "ZynqMP ZCU102 RevA";
21ef797b53SMichal Simek	compatible = "xlnx,zynqmp-zcu102-revA", "xlnx,zynqmp-zcu102", "xlnx,zynqmp";
22ef797b53SMichal Simek
23ef797b53SMichal Simek	aliases {
24ef797b53SMichal Simek		ethernet0 = &gem3;
25ef797b53SMichal Simek		i2c0 = &i2c0;
26ef797b53SMichal Simek		i2c1 = &i2c1;
27ef797b53SMichal Simek		mmc0 = &sdhci1;
28d65ec93fSMichal Simek		nvmem0 = &eeprom;
29ef797b53SMichal Simek		rtc0 = &rtc;
30ef797b53SMichal Simek		serial0 = &uart0;
31ef797b53SMichal Simek		serial1 = &uart1;
32ef797b53SMichal Simek		serial2 = &dcc;
33*56e54601SMichal Simek		spi0 = &qspi;
34ef797b53SMichal Simek	};
35ef797b53SMichal Simek
36ef797b53SMichal Simek	chosen {
37ef797b53SMichal Simek		bootargs = "earlycon";
38ef797b53SMichal Simek		stdout-path = "serial0:115200n8";
39ef797b53SMichal Simek	};
40ef797b53SMichal Simek
41ef797b53SMichal Simek	memory@0 {
42ef797b53SMichal Simek		device_type = "memory";
43ef797b53SMichal Simek		reg = <0x0 0x0 0x0 0x80000000>, <0x8 0x00000000 0x0 0x80000000>;
44ef797b53SMichal Simek	};
45ef797b53SMichal Simek
46ef797b53SMichal Simek	gpio-keys {
47ef797b53SMichal Simek		compatible = "gpio-keys";
48ef797b53SMichal Simek		autorepeat;
49ef797b53SMichal Simek		sw19 {
50ef797b53SMichal Simek			label = "sw19";
51ef797b53SMichal Simek			gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
52ef797b53SMichal Simek			linux,code = <KEY_DOWN>;
531696acf4SSudeep Holla			wakeup-source;
54ef797b53SMichal Simek			autorepeat;
55ef797b53SMichal Simek		};
56ef797b53SMichal Simek	};
57ef797b53SMichal Simek
58ef797b53SMichal Simek	leds {
59ef797b53SMichal Simek		compatible = "gpio-leds";
60d1d4445aSMichal Simek		heartbeat-led {
61ef797b53SMichal Simek			label = "heartbeat";
62ef797b53SMichal Simek			gpios = <&gpio 23 GPIO_ACTIVE_HIGH>;
63ef797b53SMichal Simek			linux,default-trigger = "heartbeat";
64ef797b53SMichal Simek		};
65ef797b53SMichal Simek	};
6686444d3eSMichal Simek
6786444d3eSMichal Simek	ina226-u76 {
6886444d3eSMichal Simek		compatible = "iio-hwmon";
6986444d3eSMichal Simek		io-channels = <&u76 0>, <&u76 1>, <&u76 2>, <&u76 3>;
7086444d3eSMichal Simek	};
7186444d3eSMichal Simek	ina226-u77 {
7286444d3eSMichal Simek		compatible = "iio-hwmon";
7386444d3eSMichal Simek		io-channels = <&u77 0>, <&u77 1>, <&u77 2>, <&u77 3>;
7486444d3eSMichal Simek	};
7586444d3eSMichal Simek	ina226-u78 {
7686444d3eSMichal Simek		compatible = "iio-hwmon";
7786444d3eSMichal Simek		io-channels = <&u78 0>, <&u78 1>, <&u78 2>, <&u78 3>;
7886444d3eSMichal Simek	};
7986444d3eSMichal Simek	ina226-u87 {
8086444d3eSMichal Simek		compatible = "iio-hwmon";
8186444d3eSMichal Simek		io-channels = <&u87 0>, <&u87 1>, <&u87 2>, <&u87 3>;
8286444d3eSMichal Simek	};
8386444d3eSMichal Simek	ina226-u85 {
8486444d3eSMichal Simek		compatible = "iio-hwmon";
8586444d3eSMichal Simek		io-channels = <&u85 0>, <&u85 1>, <&u85 2>, <&u85 3>;
8686444d3eSMichal Simek	};
8786444d3eSMichal Simek	ina226-u86 {
8886444d3eSMichal Simek		compatible = "iio-hwmon";
8986444d3eSMichal Simek		io-channels = <&u86 0>, <&u86 1>, <&u86 2>, <&u86 3>;
9086444d3eSMichal Simek	};
9186444d3eSMichal Simek	ina226-u93 {
9286444d3eSMichal Simek		compatible = "iio-hwmon";
9386444d3eSMichal Simek		io-channels = <&u93 0>, <&u93 1>, <&u93 2>, <&u93 3>;
9486444d3eSMichal Simek	};
9586444d3eSMichal Simek	ina226-u88 {
9686444d3eSMichal Simek		compatible = "iio-hwmon";
9786444d3eSMichal Simek		io-channels = <&u88 0>, <&u88 1>, <&u88 2>, <&u88 3>;
9886444d3eSMichal Simek	};
9986444d3eSMichal Simek	ina226-u15 {
10086444d3eSMichal Simek		compatible = "iio-hwmon";
10186444d3eSMichal Simek		io-channels = <&u15 0>, <&u15 1>, <&u15 2>, <&u15 3>;
10286444d3eSMichal Simek	};
10386444d3eSMichal Simek	ina226-u92 {
10486444d3eSMichal Simek		compatible = "iio-hwmon";
10586444d3eSMichal Simek		io-channels = <&u92 0>, <&u92 1>, <&u92 2>, <&u92 3>;
10686444d3eSMichal Simek	};
10786444d3eSMichal Simek	ina226-u79 {
10886444d3eSMichal Simek		compatible = "iio-hwmon";
10986444d3eSMichal Simek		io-channels = <&u79 0>, <&u79 1>, <&u79 2>, <&u79 3>;
11086444d3eSMichal Simek	};
11186444d3eSMichal Simek	ina226-u81 {
11286444d3eSMichal Simek		compatible = "iio-hwmon";
11386444d3eSMichal Simek		io-channels = <&u81 0>, <&u81 1>, <&u81 2>, <&u81 3>;
11486444d3eSMichal Simek	};
11586444d3eSMichal Simek	ina226-u80 {
11686444d3eSMichal Simek		compatible = "iio-hwmon";
11786444d3eSMichal Simek		io-channels = <&u80 0>, <&u80 1>, <&u80 2>, <&u80 3>;
11886444d3eSMichal Simek	};
11986444d3eSMichal Simek	ina226-u84 {
12086444d3eSMichal Simek		compatible = "iio-hwmon";
12186444d3eSMichal Simek		io-channels = <&u84 0>, <&u84 1>, <&u84 2>, <&u84 3>;
12286444d3eSMichal Simek	};
12386444d3eSMichal Simek	ina226-u16 {
12486444d3eSMichal Simek		compatible = "iio-hwmon";
12586444d3eSMichal Simek		io-channels = <&u16 0>, <&u16 1>, <&u16 2>, <&u16 3>;
12686444d3eSMichal Simek	};
12786444d3eSMichal Simek	ina226-u65 {
12886444d3eSMichal Simek		compatible = "iio-hwmon";
12986444d3eSMichal Simek		io-channels = <&u65 0>, <&u65 1>, <&u65 2>, <&u65 3>;
13086444d3eSMichal Simek	};
13186444d3eSMichal Simek	ina226-u74 {
13286444d3eSMichal Simek		compatible = "iio-hwmon";
13386444d3eSMichal Simek		io-channels = <&u74 0>, <&u74 1>, <&u74 2>, <&u74 3>;
13486444d3eSMichal Simek	};
13586444d3eSMichal Simek	ina226-u75 {
13686444d3eSMichal Simek		compatible = "iio-hwmon";
13786444d3eSMichal Simek		io-channels = <&u75 0>, <&u75 1>, <&u75 2>, <&u75 3>;
13886444d3eSMichal Simek	};
13982a7ebf0SMichal Simek
140928a5747SMichal Simek	/* 48MHz reference crystal */
141928a5747SMichal Simek	ref48: ref48M {
142928a5747SMichal Simek		compatible = "fixed-clock";
143928a5747SMichal Simek		#clock-cells = <0>;
144928a5747SMichal Simek		clock-frequency = <48000000>;
145928a5747SMichal Simek	};
146928a5747SMichal Simek
14782a7ebf0SMichal Simek	refhdmi: refhdmi {
14882a7ebf0SMichal Simek		compatible = "fixed-clock";
14982a7ebf0SMichal Simek		#clock-cells = <0>;
15082a7ebf0SMichal Simek		clock-frequency = <114285000>;
15182a7ebf0SMichal Simek	};
152ef797b53SMichal Simek};
153ef797b53SMichal Simek
154ef797b53SMichal Simek&can1 {
155ef797b53SMichal Simek	status = "okay";
156c821045fSMichal Simek	pinctrl-names = "default";
157c821045fSMichal Simek	pinctrl-0 = <&pinctrl_can1_default>;
158ef797b53SMichal Simek};
159ef797b53SMichal Simek
160ef797b53SMichal Simek&dcc {
161ef797b53SMichal Simek	status = "okay";
162ef797b53SMichal Simek};
163ef797b53SMichal Simek
164ef797b53SMichal Simek&fpd_dma_chan1 {
165ef797b53SMichal Simek	status = "okay";
166ef797b53SMichal Simek};
167ef797b53SMichal Simek
168ef797b53SMichal Simek&fpd_dma_chan2 {
169ef797b53SMichal Simek	status = "okay";
170ef797b53SMichal Simek};
171ef797b53SMichal Simek
172ef797b53SMichal Simek&fpd_dma_chan3 {
173ef797b53SMichal Simek	status = "okay";
174ef797b53SMichal Simek};
175ef797b53SMichal Simek
176ef797b53SMichal Simek&fpd_dma_chan4 {
177ef797b53SMichal Simek	status = "okay";
178ef797b53SMichal Simek};
179ef797b53SMichal Simek
180ef797b53SMichal Simek&fpd_dma_chan5 {
181ef797b53SMichal Simek	status = "okay";
182ef797b53SMichal Simek};
183ef797b53SMichal Simek
184ef797b53SMichal Simek&fpd_dma_chan6 {
185ef797b53SMichal Simek	status = "okay";
186ef797b53SMichal Simek};
187ef797b53SMichal Simek
188ef797b53SMichal Simek&fpd_dma_chan7 {
189ef797b53SMichal Simek	status = "okay";
190ef797b53SMichal Simek};
191ef797b53SMichal Simek
192ef797b53SMichal Simek&fpd_dma_chan8 {
193ef797b53SMichal Simek	status = "okay";
194ef797b53SMichal Simek};
195ef797b53SMichal Simek
196ef797b53SMichal Simek&gem3 {
197ef797b53SMichal Simek	status = "okay";
198ef797b53SMichal Simek	phy-handle = <&phy0>;
199ef797b53SMichal Simek	phy-mode = "rgmii-id";
200c821045fSMichal Simek	pinctrl-names = "default";
201c821045fSMichal Simek	pinctrl-0 = <&pinctrl_gem3_default>;
20213d21ebaSMichal Simek	phy0: ethernet-phy@21 {
203ef797b53SMichal Simek		reg = <21>;
204ef797b53SMichal Simek		ti,rx-internal-delay = <0x8>;
205ef797b53SMichal Simek		ti,tx-internal-delay = <0xa>;
206ef797b53SMichal Simek		ti,fifo-depth = <0x1>;
20778c484a5SHarini Katakam		ti,dp83867-rxctrl-strap-quirk;
20858ccd7e8SMichal Simek		/* reset-gpios = <&tca6416_u97 6 GPIO_ACTIVE_LOW>; */
209ef797b53SMichal Simek	};
210ef797b53SMichal Simek};
211ef797b53SMichal Simek
212ef797b53SMichal Simek&gpio {
213ef797b53SMichal Simek	status = "okay";
214c821045fSMichal Simek	pinctrl-names = "default";
215c821045fSMichal Simek	pinctrl-0 = <&pinctrl_gpio_default>;
216ef797b53SMichal Simek};
217ef797b53SMichal Simek
218ef797b53SMichal Simek&i2c0 {
219ef797b53SMichal Simek	status = "okay";
220ef797b53SMichal Simek	clock-frequency = <400000>;
221c821045fSMichal Simek	pinctrl-names = "default", "gpio";
222c821045fSMichal Simek	pinctrl-0 = <&pinctrl_i2c0_default>;
223c821045fSMichal Simek	pinctrl-1 = <&pinctrl_i2c0_gpio>;
224c821045fSMichal Simek	scl-gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
225c821045fSMichal Simek	sda-gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
226ef797b53SMichal Simek
227ef797b53SMichal Simek	tca6416_u97: gpio@20 {
228ef797b53SMichal Simek		compatible = "ti,tca6416";
229ef797b53SMichal Simek		reg = <0x20>;
2304426df7cSMichal Simek		gpio-controller; /* IRQ not connected */
231ef797b53SMichal Simek		#gpio-cells = <2>;
2324426df7cSMichal Simek		gpio-line-names = "PS_GTR_LAN_SEL0", "PS_GTR_LAN_SEL1", "PS_GTR_LAN_SEL2", "PS_GTR_LAN_SEL3",
2334426df7cSMichal Simek				"PCI_CLK_DIR_SEL", "IIC_MUX_RESET_B", "GEM3_EXP_RESET_B",
2344426df7cSMichal Simek				"", "", "", "", "", "", "", "", "";
235cbf5a878SKrzysztof Kozlowski		gtr-sel0-hog {
236ef797b53SMichal Simek			gpio-hog;
237ef797b53SMichal Simek			gpios = <0 0>;
238ef797b53SMichal Simek			output-low; /* PCIE = 0, DP = 1 */
239ef797b53SMichal Simek			line-name = "sel0";
240ef797b53SMichal Simek		};
241cbf5a878SKrzysztof Kozlowski		gtr-sel1-hog {
242ef797b53SMichal Simek			gpio-hog;
243ef797b53SMichal Simek			gpios = <1 0>;
244ef797b53SMichal Simek			output-high; /* PCIE = 0, DP = 1 */
245ef797b53SMichal Simek			line-name = "sel1";
246ef797b53SMichal Simek		};
247cbf5a878SKrzysztof Kozlowski		gtr-sel2-hog {
248ef797b53SMichal Simek			gpio-hog;
249ef797b53SMichal Simek			gpios = <2 0>;
250ef797b53SMichal Simek			output-high; /* PCIE = 0, USB0 = 1 */
251ef797b53SMichal Simek			line-name = "sel2";
252ef797b53SMichal Simek		};
253cbf5a878SKrzysztof Kozlowski		gtr-sel3-hog {
254ef797b53SMichal Simek			gpio-hog;
255ef797b53SMichal Simek			gpios = <3 0>;
256ef797b53SMichal Simek			output-high; /* PCIE = 0, SATA = 1 */
257ef797b53SMichal Simek			line-name = "sel3";
258ef797b53SMichal Simek		};
259ef797b53SMichal Simek	};
260ef797b53SMichal Simek
261ef797b53SMichal Simek	tca6416_u61: gpio@21 {
262ef797b53SMichal Simek		compatible = "ti,tca6416";
263ef797b53SMichal Simek		reg = <0x21>;
2644426df7cSMichal Simek		gpio-controller; /* IRQ not connected */
265ef797b53SMichal Simek		#gpio-cells = <2>;
2664426df7cSMichal Simek		gpio-line-names = "VCCPSPLL_EN", "MGTRAVCC_EN", "MGTRAVTT_EN", "VCCPSDDRPLL_EN", "MIO26_PMU_INPUT_LS",
2674426df7cSMichal Simek				"PL_PMBUS_ALERT", "PS_PMBUS_ALERT", "MAXIM_PMBUS_ALERT", "PL_DDR4_VTERM_EN",
2684426df7cSMichal Simek				"PL_DDR4_VPP_2V5_EN", "PS_DIMM_VDDQ_TO_PSVCCO_ON", "PS_DIMM_SUSPEND_EN",
2694426df7cSMichal Simek				"PS_DDR4_VTERM_EN", "PS_DDR4_VPP_2V5_EN", "", "";
270ef797b53SMichal Simek	};
271ef797b53SMichal Simek
272ef797b53SMichal Simek	i2c-mux@75 { /* u60 */
273ef797b53SMichal Simek		compatible = "nxp,pca9544";
274ef797b53SMichal Simek		#address-cells = <1>;
275ef797b53SMichal Simek		#size-cells = <0>;
276ef797b53SMichal Simek		reg = <0x75>;
277ef797b53SMichal Simek		i2c@0 {
278ef797b53SMichal Simek			#address-cells = <1>;
279ef797b53SMichal Simek			#size-cells = <0>;
280ef797b53SMichal Simek			reg = <0>;
281ef797b53SMichal Simek			/* PS_PMBUS */
28286444d3eSMichal Simek			u76: ina226@40 { /* u76 */
283ef797b53SMichal Simek				compatible = "ti,ina226";
28486444d3eSMichal Simek				#io-channel-cells = <1>;
285353f5eceSMichal Simek				label = "ina226-u76";
286ef797b53SMichal Simek				reg = <0x40>;
287ef797b53SMichal Simek				shunt-resistor = <5000>;
288ef797b53SMichal Simek			};
28986444d3eSMichal Simek			u77: ina226@41 { /* u77 */
290ef797b53SMichal Simek				compatible = "ti,ina226";
29186444d3eSMichal Simek				#io-channel-cells = <1>;
292353f5eceSMichal Simek				label = "ina226-u77";
293ef797b53SMichal Simek				reg = <0x41>;
294ef797b53SMichal Simek				shunt-resistor = <5000>;
295ef797b53SMichal Simek			};
29686444d3eSMichal Simek			u78: ina226@42 { /* u78 */
297ef797b53SMichal Simek				compatible = "ti,ina226";
29886444d3eSMichal Simek				#io-channel-cells = <1>;
299353f5eceSMichal Simek				label = "ina226-u78";
300ef797b53SMichal Simek				reg = <0x42>;
301ef797b53SMichal Simek				shunt-resistor = <5000>;
302ef797b53SMichal Simek			};
30386444d3eSMichal Simek			u87: ina226@43 { /* u87 */
304ef797b53SMichal Simek				compatible = "ti,ina226";
30586444d3eSMichal Simek				#io-channel-cells = <1>;
306353f5eceSMichal Simek				label = "ina226-u87";
307ef797b53SMichal Simek				reg = <0x43>;
308ef797b53SMichal Simek				shunt-resistor = <5000>;
309ef797b53SMichal Simek			};
31086444d3eSMichal Simek			u85: ina226@44 { /* u85 */
311ef797b53SMichal Simek				compatible = "ti,ina226";
31286444d3eSMichal Simek				#io-channel-cells = <1>;
313353f5eceSMichal Simek				label = "ina226-u85";
314ef797b53SMichal Simek				reg = <0x44>;
315ef797b53SMichal Simek				shunt-resistor = <5000>;
316ef797b53SMichal Simek			};
31786444d3eSMichal Simek			u86: ina226@45 { /* u86 */
318ef797b53SMichal Simek				compatible = "ti,ina226";
31986444d3eSMichal Simek				#io-channel-cells = <1>;
320353f5eceSMichal Simek				label = "ina226-u86";
321ef797b53SMichal Simek				reg = <0x45>;
322ef797b53SMichal Simek				shunt-resistor = <5000>;
323ef797b53SMichal Simek			};
32486444d3eSMichal Simek			u93: ina226@46 { /* u93 */
325ef797b53SMichal Simek				compatible = "ti,ina226";
32686444d3eSMichal Simek				#io-channel-cells = <1>;
327353f5eceSMichal Simek				label = "ina226-u93";
328ef797b53SMichal Simek				reg = <0x46>;
329ef797b53SMichal Simek				shunt-resistor = <5000>;
330ef797b53SMichal Simek			};
33186444d3eSMichal Simek			u88: ina226@47 { /* u88 */
332ef797b53SMichal Simek				compatible = "ti,ina226";
33386444d3eSMichal Simek				#io-channel-cells = <1>;
334353f5eceSMichal Simek				label = "ina226-u88";
335ef797b53SMichal Simek				reg = <0x47>;
336ef797b53SMichal Simek				shunt-resistor = <5000>;
337ef797b53SMichal Simek			};
33886444d3eSMichal Simek			u15: ina226@4a { /* u15 */
339ef797b53SMichal Simek				compatible = "ti,ina226";
34086444d3eSMichal Simek				#io-channel-cells = <1>;
341353f5eceSMichal Simek				label = "ina226-u15";
342ef797b53SMichal Simek				reg = <0x4a>;
343ef797b53SMichal Simek				shunt-resistor = <5000>;
344ef797b53SMichal Simek			};
34586444d3eSMichal Simek			u92: ina226@4b { /* u92 */
346ef797b53SMichal Simek				compatible = "ti,ina226";
34786444d3eSMichal Simek				#io-channel-cells = <1>;
348353f5eceSMichal Simek				label = "ina226-u92";
349ef797b53SMichal Simek				reg = <0x4b>;
350ef797b53SMichal Simek				shunt-resistor = <5000>;
351ef797b53SMichal Simek			};
352ef797b53SMichal Simek		};
353ef797b53SMichal Simek		i2c@1 {
354ef797b53SMichal Simek			#address-cells = <1>;
355ef797b53SMichal Simek			#size-cells = <0>;
356ef797b53SMichal Simek			reg = <1>;
357ef797b53SMichal Simek			/* PL_PMBUS */
35886444d3eSMichal Simek			u79: ina226@40 { /* u79 */
359ef797b53SMichal Simek				compatible = "ti,ina226";
36086444d3eSMichal Simek				#io-channel-cells = <1>;
361353f5eceSMichal Simek				label = "ina226-u79";
362ef797b53SMichal Simek				reg = <0x40>;
363ef797b53SMichal Simek				shunt-resistor = <2000>;
364ef797b53SMichal Simek			};
36586444d3eSMichal Simek			u81: ina226@41 { /* u81 */
366ef797b53SMichal Simek				compatible = "ti,ina226";
36786444d3eSMichal Simek				#io-channel-cells = <1>;
368353f5eceSMichal Simek				label = "ina226-u81";
369ef797b53SMichal Simek				reg = <0x41>;
370ef797b53SMichal Simek				shunt-resistor = <5000>;
371ef797b53SMichal Simek			};
37286444d3eSMichal Simek			u80: ina226@42 { /* u80 */
373ef797b53SMichal Simek				compatible = "ti,ina226";
37486444d3eSMichal Simek				#io-channel-cells = <1>;
375353f5eceSMichal Simek				label = "ina226-u80";
376ef797b53SMichal Simek				reg = <0x42>;
377ef797b53SMichal Simek				shunt-resistor = <5000>;
378ef797b53SMichal Simek			};
37986444d3eSMichal Simek			u84: ina226@43 { /* u84 */
380ef797b53SMichal Simek				compatible = "ti,ina226";
38186444d3eSMichal Simek				#io-channel-cells = <1>;
382353f5eceSMichal Simek				label = "ina226-u84";
383ef797b53SMichal Simek				reg = <0x43>;
384ef797b53SMichal Simek				shunt-resistor = <5000>;
385ef797b53SMichal Simek			};
38686444d3eSMichal Simek			u16: ina226@44 { /* u16 */
387ef797b53SMichal Simek				compatible = "ti,ina226";
38886444d3eSMichal Simek				#io-channel-cells = <1>;
389353f5eceSMichal Simek				label = "ina226-u16";
390ef797b53SMichal Simek				reg = <0x44>;
391ef797b53SMichal Simek				shunt-resistor = <5000>;
392ef797b53SMichal Simek			};
39386444d3eSMichal Simek			u65: ina226@45 { /* u65 */
394ef797b53SMichal Simek				compatible = "ti,ina226";
39586444d3eSMichal Simek				#io-channel-cells = <1>;
396353f5eceSMichal Simek				label = "ina226-u65";
397ef797b53SMichal Simek				reg = <0x45>;
398ef797b53SMichal Simek				shunt-resistor = <5000>;
399ef797b53SMichal Simek			};
40086444d3eSMichal Simek			u74: ina226@46 { /* u74 */
401ef797b53SMichal Simek				compatible = "ti,ina226";
40286444d3eSMichal Simek				#io-channel-cells = <1>;
403353f5eceSMichal Simek				label = "ina226-u74";
404ef797b53SMichal Simek				reg = <0x46>;
405ef797b53SMichal Simek				shunt-resistor = <5000>;
406ef797b53SMichal Simek			};
40786444d3eSMichal Simek			u75: ina226@47 { /* u75 */
408ef797b53SMichal Simek				compatible = "ti,ina226";
40986444d3eSMichal Simek				#io-channel-cells = <1>;
410353f5eceSMichal Simek				label = "ina226-u75";
411ef797b53SMichal Simek				reg = <0x47>;
412ef797b53SMichal Simek				shunt-resistor = <5000>;
413ef797b53SMichal Simek			};
414ef797b53SMichal Simek		};
415ef797b53SMichal Simek		i2c@2 {
416ef797b53SMichal Simek			#address-cells = <1>;
417ef797b53SMichal Simek			#size-cells = <0>;
418ef797b53SMichal Simek			reg = <2>;
419ef797b53SMichal Simek			/* MAXIM_PMBUS - 00 */
420ef797b53SMichal Simek			max15301@a { /* u46 */
421ef797b53SMichal Simek				compatible = "maxim,max15301";
422ef797b53SMichal Simek				reg = <0xa>;
423ef797b53SMichal Simek			};
424ef797b53SMichal Simek			max15303@b { /* u4 */
425ef797b53SMichal Simek				compatible = "maxim,max15303";
426ef797b53SMichal Simek				reg = <0xb>;
427ef797b53SMichal Simek			};
428ef797b53SMichal Simek			max15303@10 { /* u13 */
429ef797b53SMichal Simek				compatible = "maxim,max15303";
430ef797b53SMichal Simek				reg = <0x10>;
431ef797b53SMichal Simek			};
432ef797b53SMichal Simek			max15301@13 { /* u47 */
433ef797b53SMichal Simek				compatible = "maxim,max15301";
434ef797b53SMichal Simek				reg = <0x13>;
435ef797b53SMichal Simek			};
436ef797b53SMichal Simek			max15303@14 { /* u7 */
437ef797b53SMichal Simek				compatible = "maxim,max15303";
438ef797b53SMichal Simek				reg = <0x14>;
439ef797b53SMichal Simek			};
440ef797b53SMichal Simek			max15303@15 { /* u6 */
441ef797b53SMichal Simek				compatible = "maxim,max15303";
442ef797b53SMichal Simek				reg = <0x15>;
443ef797b53SMichal Simek			};
444ef797b53SMichal Simek			max15303@16 { /* u10 */
445ef797b53SMichal Simek				compatible = "maxim,max15303";
446ef797b53SMichal Simek				reg = <0x16>;
447ef797b53SMichal Simek			};
448ef797b53SMichal Simek			max15303@17 { /* u9 */
449ef797b53SMichal Simek				compatible = "maxim,max15303";
450ef797b53SMichal Simek				reg = <0x17>;
451ef797b53SMichal Simek			};
452ef797b53SMichal Simek			max15301@18 { /* u63 */
453ef797b53SMichal Simek				compatible = "maxim,max15301";
454ef797b53SMichal Simek				reg = <0x18>;
455ef797b53SMichal Simek			};
456ef797b53SMichal Simek			max15303@1a { /* u49 */
457ef797b53SMichal Simek				compatible = "maxim,max15303";
458ef797b53SMichal Simek				reg = <0x1a>;
459ef797b53SMichal Simek			};
460ef797b53SMichal Simek			max15303@1d { /* u18 */
461ef797b53SMichal Simek				compatible = "maxim,max15303";
462ef797b53SMichal Simek				reg = <0x1d>;
463ef797b53SMichal Simek			};
464ef797b53SMichal Simek			max15303@20 { /* u8 */
465ef797b53SMichal Simek				compatible = "maxim,max15303";
466ef797b53SMichal Simek				status = "disabled"; /* unreachable */
467ef797b53SMichal Simek				reg = <0x20>;
468ef797b53SMichal Simek			};
469ef797b53SMichal Simek			max20751@72 { /* u95 */
470ef797b53SMichal Simek				compatible = "maxim,max20751";
471ef797b53SMichal Simek				reg = <0x72>;
472ef797b53SMichal Simek			};
473ef797b53SMichal Simek			max20751@73 { /* u96 */
474ef797b53SMichal Simek				compatible = "maxim,max20751";
475ef797b53SMichal Simek				reg = <0x73>;
476ef797b53SMichal Simek			};
477ef797b53SMichal Simek		};
478ef797b53SMichal Simek		/* Bus 3 is not connected */
479ef797b53SMichal Simek	};
480ef797b53SMichal Simek};
481ef797b53SMichal Simek
482ef797b53SMichal Simek&i2c1 {
483ef797b53SMichal Simek	status = "okay";
484ef797b53SMichal Simek	clock-frequency = <400000>;
485c821045fSMichal Simek	pinctrl-names = "default", "gpio";
486c821045fSMichal Simek	pinctrl-0 = <&pinctrl_i2c1_default>;
487c821045fSMichal Simek	pinctrl-1 = <&pinctrl_i2c1_gpio>;
488c821045fSMichal Simek	scl-gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
489c821045fSMichal Simek	sda-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
490ef797b53SMichal Simek
491ef797b53SMichal Simek	/* PL i2c via PCA9306 - u45 */
492ef797b53SMichal Simek	i2c-mux@74 { /* u34 */
493ef797b53SMichal Simek		compatible = "nxp,pca9548";
494ef797b53SMichal Simek		#address-cells = <1>;
495ef797b53SMichal Simek		#size-cells = <0>;
496ef797b53SMichal Simek		reg = <0x74>;
497ef797b53SMichal Simek		i2c@0 {
498ef797b53SMichal Simek			#address-cells = <1>;
499ef797b53SMichal Simek			#size-cells = <0>;
500ef797b53SMichal Simek			reg = <0>;
501ef797b53SMichal Simek			/*
502ef797b53SMichal Simek			 * IIC_EEPROM 1kB memory which uses 256B blocks
503ef797b53SMichal Simek			 * where every block has different address.
504ef797b53SMichal Simek			 *    0 - 256B address 0x54
505ef797b53SMichal Simek			 * 256B - 512B address 0x55
506ef797b53SMichal Simek			 * 512B - 768B address 0x56
507ef797b53SMichal Simek			 * 768B - 1024B address 0x57
508ef797b53SMichal Simek			 */
509ef797b53SMichal Simek			eeprom: eeprom@54 { /* u23 */
510ef797b53SMichal Simek				compatible = "atmel,24c08";
511ef797b53SMichal Simek				reg = <0x54>;
512ef797b53SMichal Simek			};
513ef797b53SMichal Simek		};
514ef797b53SMichal Simek		i2c@1 {
515ef797b53SMichal Simek			#address-cells = <1>;
516ef797b53SMichal Simek			#size-cells = <0>;
517ef797b53SMichal Simek			reg = <1>;
518ef797b53SMichal Simek			si5341: clock-generator@36 { /* SI5341 - u69 */
519928a5747SMichal Simek				compatible = "silabs,si5341";
520ef797b53SMichal Simek				reg = <0x36>;
521928a5747SMichal Simek				#clock-cells = <2>;
522928a5747SMichal Simek				#address-cells = <1>;
523928a5747SMichal Simek				#size-cells = <0>;
524928a5747SMichal Simek				clocks = <&ref48>;
525928a5747SMichal Simek				clock-names = "xtal";
526928a5747SMichal Simek				clock-output-names = "si5341";
527ef797b53SMichal Simek
528928a5747SMichal Simek				si5341_0: out@0 {
529928a5747SMichal Simek					/* refclk0 for PS-GT, used for DP */
530928a5747SMichal Simek					reg = <0>;
531928a5747SMichal Simek					always-on;
532928a5747SMichal Simek				};
533928a5747SMichal Simek				si5341_2: out@2 {
534928a5747SMichal Simek					/* refclk2 for PS-GT, used for USB3 */
535928a5747SMichal Simek					reg = <2>;
536928a5747SMichal Simek					always-on;
537928a5747SMichal Simek				};
538928a5747SMichal Simek				si5341_3: out@3 {
539928a5747SMichal Simek					/* refclk3 for PS-GT, used for SATA */
540928a5747SMichal Simek					reg = <3>;
541928a5747SMichal Simek					always-on;
542928a5747SMichal Simek				};
543928a5747SMichal Simek				si5341_4: out@4 {
544928a5747SMichal Simek					/* refclk4 for PS-GT, used for PCIE slot */
545928a5747SMichal Simek					reg = <4>;
546928a5747SMichal Simek					always-on;
547928a5747SMichal Simek				};
548928a5747SMichal Simek				si5341_5: out@5 {
549928a5747SMichal Simek					/* refclk5 for PS-GT, used for PCIE */
550928a5747SMichal Simek					reg = <5>;
551928a5747SMichal Simek					always-on;
552928a5747SMichal Simek				};
553928a5747SMichal Simek				si5341_6: out@6 {
554928a5747SMichal Simek					/* refclk6 PL CLK125 */
555928a5747SMichal Simek					reg = <6>;
556928a5747SMichal Simek					always-on;
557928a5747SMichal Simek				};
558928a5747SMichal Simek				si5341_7: out@7 {
559928a5747SMichal Simek					/* refclk7 PL CLK74 */
560928a5747SMichal Simek					reg = <7>;
561928a5747SMichal Simek					always-on;
562928a5747SMichal Simek				};
563928a5747SMichal Simek				si5341_9: out@9 {
564928a5747SMichal Simek					/* refclk9 used for PS_REF_CLK 33.3 MHz */
565928a5747SMichal Simek					reg = <9>;
566928a5747SMichal Simek					always-on;
567928a5747SMichal Simek				};
568928a5747SMichal Simek			};
569ef797b53SMichal Simek		};
570ef797b53SMichal Simek		i2c@2 {
571ef797b53SMichal Simek			#address-cells = <1>;
572ef797b53SMichal Simek			#size-cells = <0>;
573ef797b53SMichal Simek			reg = <2>;
574ef797b53SMichal Simek			si570_1: clock-generator@5d { /* USER SI570 - u42 */
575ef797b53SMichal Simek				#clock-cells = <0>;
576ef797b53SMichal Simek				compatible = "silabs,si570";
577ef797b53SMichal Simek				reg = <0x5d>;
578ef797b53SMichal Simek				temperature-stability = <50>;
579ef797b53SMichal Simek				factory-fout = <300000000>;
580ef797b53SMichal Simek				clock-frequency = <300000000>;
58148b44b90SMichal Simek				clock-output-names = "si570_user";
582ef797b53SMichal Simek			};
583ef797b53SMichal Simek		};
584ef797b53SMichal Simek		i2c@3 {
585ef797b53SMichal Simek			#address-cells = <1>;
586ef797b53SMichal Simek			#size-cells = <0>;
587ef797b53SMichal Simek			reg = <3>;
588ef797b53SMichal Simek			si570_2: clock-generator@5d { /* USER MGT SI570 - u56 */
589ef797b53SMichal Simek				#clock-cells = <0>;
590ef797b53SMichal Simek				compatible = "silabs,si570";
591ef797b53SMichal Simek				reg = <0x5d>;
592ef797b53SMichal Simek				temperature-stability = <50>; /* copy from zc702 */
593ef797b53SMichal Simek				factory-fout = <156250000>;
594ef797b53SMichal Simek				clock-frequency = <148500000>;
59548b44b90SMichal Simek				clock-output-names = "si570_mgt";
596ef797b53SMichal Simek			};
597ef797b53SMichal Simek		};
598ef797b53SMichal Simek		i2c@4 {
599ef797b53SMichal Simek			#address-cells = <1>;
600ef797b53SMichal Simek			#size-cells = <0>;
601ef797b53SMichal Simek			reg = <4>;
60273d677e9SQuanyang Wang			/* SI5328 - u20 */
603ef797b53SMichal Simek		};
604ef797b53SMichal Simek		/* 5 - 7 unconnected */
605ef797b53SMichal Simek	};
606ef797b53SMichal Simek
607ef797b53SMichal Simek	i2c-mux@75 {
608ef797b53SMichal Simek		compatible = "nxp,pca9548"; /* u135 */
609ef797b53SMichal Simek		#address-cells = <1>;
610ef797b53SMichal Simek		#size-cells = <0>;
611ef797b53SMichal Simek		reg = <0x75>;
612ef797b53SMichal Simek
613ef797b53SMichal Simek		i2c@0 {
614ef797b53SMichal Simek			#address-cells = <1>;
615ef797b53SMichal Simek			#size-cells = <0>;
616ef797b53SMichal Simek			reg = <0>;
617ef797b53SMichal Simek			/* HPC0_IIC */
618ef797b53SMichal Simek		};
619ef797b53SMichal Simek		i2c@1 {
620ef797b53SMichal Simek			#address-cells = <1>;
621ef797b53SMichal Simek			#size-cells = <0>;
622ef797b53SMichal Simek			reg = <1>;
623ef797b53SMichal Simek			/* HPC1_IIC */
624ef797b53SMichal Simek		};
625ef797b53SMichal Simek		i2c@2 {
626ef797b53SMichal Simek			#address-cells = <1>;
627ef797b53SMichal Simek			#size-cells = <0>;
628ef797b53SMichal Simek			reg = <2>;
629ef797b53SMichal Simek			/* SYSMON */
630ef797b53SMichal Simek		};
631ef797b53SMichal Simek		i2c@3 {
632ef797b53SMichal Simek			#address-cells = <1>;
633ef797b53SMichal Simek			#size-cells = <0>;
634ef797b53SMichal Simek			reg = <3>;
635ef797b53SMichal Simek			/* DDR4 SODIMM */
636ef797b53SMichal Simek		};
637ef797b53SMichal Simek		i2c@4 {
638ef797b53SMichal Simek			#address-cells = <1>;
639ef797b53SMichal Simek			#size-cells = <0>;
640ef797b53SMichal Simek			reg = <4>;
641ef797b53SMichal Simek			/* SEP 3 */
642ef797b53SMichal Simek		};
643ef797b53SMichal Simek		i2c@5 {
644ef797b53SMichal Simek			#address-cells = <1>;
645ef797b53SMichal Simek			#size-cells = <0>;
646ef797b53SMichal Simek			reg = <5>;
647ef797b53SMichal Simek			/* SEP 2 */
648ef797b53SMichal Simek		};
649ef797b53SMichal Simek		i2c@6 {
650ef797b53SMichal Simek			#address-cells = <1>;
651ef797b53SMichal Simek			#size-cells = <0>;
652ef797b53SMichal Simek			reg = <6>;
653ef797b53SMichal Simek			/* SEP 1 */
654ef797b53SMichal Simek		};
655ef797b53SMichal Simek		i2c@7 {
656ef797b53SMichal Simek			#address-cells = <1>;
657ef797b53SMichal Simek			#size-cells = <0>;
658ef797b53SMichal Simek			reg = <7>;
659ef797b53SMichal Simek			/* SEP 0 */
660ef797b53SMichal Simek		};
661ef797b53SMichal Simek	};
662ef797b53SMichal Simek};
663ef797b53SMichal Simek
664c821045fSMichal Simek&pinctrl0 {
665c821045fSMichal Simek	status = "okay";
666c821045fSMichal Simek	pinctrl_i2c0_default: i2c0-default {
667c821045fSMichal Simek		mux {
668c821045fSMichal Simek			groups = "i2c0_3_grp";
669c821045fSMichal Simek			function = "i2c0";
670c821045fSMichal Simek		};
671c821045fSMichal Simek
672c821045fSMichal Simek		conf {
673c821045fSMichal Simek			groups = "i2c0_3_grp";
674c821045fSMichal Simek			bias-pull-up;
675c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
676c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
677c821045fSMichal Simek		};
678c821045fSMichal Simek	};
679c821045fSMichal Simek
680c821045fSMichal Simek	pinctrl_i2c0_gpio: i2c0-gpio {
681c821045fSMichal Simek		mux {
682c821045fSMichal Simek			groups = "gpio0_14_grp", "gpio0_15_grp";
683c821045fSMichal Simek			function = "gpio0";
684c821045fSMichal Simek		};
685c821045fSMichal Simek
686c821045fSMichal Simek		conf {
687c821045fSMichal Simek			groups = "gpio0_14_grp", "gpio0_15_grp";
688c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
689c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
690c821045fSMichal Simek		};
691c821045fSMichal Simek	};
692c821045fSMichal Simek
693c821045fSMichal Simek	pinctrl_i2c1_default: i2c1-default {
694c821045fSMichal Simek		mux {
695c821045fSMichal Simek			groups = "i2c1_4_grp";
696c821045fSMichal Simek			function = "i2c1";
697c821045fSMichal Simek		};
698c821045fSMichal Simek
699c821045fSMichal Simek		conf {
700c821045fSMichal Simek			groups = "i2c1_4_grp";
701c821045fSMichal Simek			bias-pull-up;
702c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
703c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
704c821045fSMichal Simek		};
705c821045fSMichal Simek	};
706c821045fSMichal Simek
707c821045fSMichal Simek	pinctrl_i2c1_gpio: i2c1-gpio {
708c821045fSMichal Simek		mux {
709c821045fSMichal Simek			groups = "gpio0_16_grp", "gpio0_17_grp";
710c821045fSMichal Simek			function = "gpio0";
711c821045fSMichal Simek		};
712c821045fSMichal Simek
713c821045fSMichal Simek		conf {
714c821045fSMichal Simek			groups = "gpio0_16_grp", "gpio0_17_grp";
715c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
716c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
717c821045fSMichal Simek		};
718c821045fSMichal Simek	};
719c821045fSMichal Simek
720c821045fSMichal Simek	pinctrl_uart0_default: uart0-default {
721c821045fSMichal Simek		mux {
722c821045fSMichal Simek			groups = "uart0_4_grp";
723c821045fSMichal Simek			function = "uart0";
724c821045fSMichal Simek		};
725c821045fSMichal Simek
726c821045fSMichal Simek		conf {
727c821045fSMichal Simek			groups = "uart0_4_grp";
728c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
729c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
730c821045fSMichal Simek		};
731c821045fSMichal Simek
732c821045fSMichal Simek		conf-rx {
733c821045fSMichal Simek			pins = "MIO18";
734c821045fSMichal Simek			bias-high-impedance;
735c821045fSMichal Simek		};
736c821045fSMichal Simek
737c821045fSMichal Simek		conf-tx {
738c821045fSMichal Simek			pins = "MIO19";
739c821045fSMichal Simek			bias-disable;
740c821045fSMichal Simek		};
741c821045fSMichal Simek	};
742c821045fSMichal Simek
743c821045fSMichal Simek	pinctrl_uart1_default: uart1-default {
744c821045fSMichal Simek		mux {
745c821045fSMichal Simek			groups = "uart1_5_grp";
746c821045fSMichal Simek			function = "uart1";
747c821045fSMichal Simek		};
748c821045fSMichal Simek
749c821045fSMichal Simek		conf {
750c821045fSMichal Simek			groups = "uart1_5_grp";
751c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
752c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
753c821045fSMichal Simek		};
754c821045fSMichal Simek
755c821045fSMichal Simek		conf-rx {
756c821045fSMichal Simek			pins = "MIO21";
757c821045fSMichal Simek			bias-high-impedance;
758c821045fSMichal Simek		};
759c821045fSMichal Simek
760c821045fSMichal Simek		conf-tx {
761c821045fSMichal Simek			pins = "MIO20";
762c821045fSMichal Simek			bias-disable;
763c821045fSMichal Simek		};
764c821045fSMichal Simek	};
765c821045fSMichal Simek
766c821045fSMichal Simek	pinctrl_usb0_default: usb0-default {
767c821045fSMichal Simek		mux {
768c821045fSMichal Simek			groups = "usb0_0_grp";
769c821045fSMichal Simek			function = "usb0";
770c821045fSMichal Simek		};
771c821045fSMichal Simek
772c821045fSMichal Simek		conf {
773c821045fSMichal Simek			groups = "usb0_0_grp";
774c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
775c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
776c821045fSMichal Simek		};
777c821045fSMichal Simek
778c821045fSMichal Simek		conf-rx {
779c821045fSMichal Simek			pins = "MIO52", "MIO53", "MIO55";
780c821045fSMichal Simek			bias-high-impedance;
781c821045fSMichal Simek		};
782c821045fSMichal Simek
783c821045fSMichal Simek		conf-tx {
784c821045fSMichal Simek			pins = "MIO54", "MIO56", "MIO57", "MIO58", "MIO59",
785c821045fSMichal Simek			       "MIO60", "MIO61", "MIO62", "MIO63";
786c821045fSMichal Simek			bias-disable;
787c821045fSMichal Simek		};
788c821045fSMichal Simek	};
789c821045fSMichal Simek
790c821045fSMichal Simek	pinctrl_gem3_default: gem3-default {
791c821045fSMichal Simek		mux {
792c821045fSMichal Simek			function = "ethernet3";
793c821045fSMichal Simek			groups = "ethernet3_0_grp";
794c821045fSMichal Simek		};
795c821045fSMichal Simek
796c821045fSMichal Simek		conf {
797c821045fSMichal Simek			groups = "ethernet3_0_grp";
798c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
799c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
800c821045fSMichal Simek		};
801c821045fSMichal Simek
802c821045fSMichal Simek		conf-rx {
803c821045fSMichal Simek			pins = "MIO70", "MIO71", "MIO72", "MIO73", "MIO74",
804c821045fSMichal Simek									"MIO75";
805c821045fSMichal Simek			bias-high-impedance;
806c821045fSMichal Simek			low-power-disable;
807c821045fSMichal Simek		};
808c821045fSMichal Simek
809c821045fSMichal Simek		conf-tx {
810c821045fSMichal Simek			pins = "MIO64", "MIO65", "MIO66", "MIO67", "MIO68",
811c821045fSMichal Simek									"MIO69";
812c821045fSMichal Simek			bias-disable;
813c821045fSMichal Simek			low-power-enable;
814c821045fSMichal Simek		};
815c821045fSMichal Simek
816c821045fSMichal Simek		mux-mdio {
817c821045fSMichal Simek			function = "mdio3";
818c821045fSMichal Simek			groups = "mdio3_0_grp";
819c821045fSMichal Simek		};
820c821045fSMichal Simek
821c821045fSMichal Simek		conf-mdio {
822c821045fSMichal Simek			groups = "mdio3_0_grp";
823c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
824c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
825c821045fSMichal Simek			bias-disable;
826c821045fSMichal Simek		};
827c821045fSMichal Simek	};
828c821045fSMichal Simek
829c821045fSMichal Simek	pinctrl_can1_default: can1-default {
830c821045fSMichal Simek		mux {
831c821045fSMichal Simek			function = "can1";
832c821045fSMichal Simek			groups = "can1_6_grp";
833c821045fSMichal Simek		};
834c821045fSMichal Simek
835c821045fSMichal Simek		conf {
836c821045fSMichal Simek			groups = "can1_6_grp";
837c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
838c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
839c821045fSMichal Simek		};
840c821045fSMichal Simek
841c821045fSMichal Simek		conf-rx {
842c821045fSMichal Simek			pins = "MIO25";
843c821045fSMichal Simek			bias-high-impedance;
844c821045fSMichal Simek		};
845c821045fSMichal Simek
846c821045fSMichal Simek		conf-tx {
847c821045fSMichal Simek			pins = "MIO24";
848c821045fSMichal Simek			bias-disable;
849c821045fSMichal Simek		};
850c821045fSMichal Simek	};
851c821045fSMichal Simek
852c821045fSMichal Simek	pinctrl_sdhci1_default: sdhci1-default {
853c821045fSMichal Simek		mux {
854c821045fSMichal Simek			groups = "sdio1_0_grp";
855c821045fSMichal Simek			function = "sdio1";
856c821045fSMichal Simek		};
857c821045fSMichal Simek
858c821045fSMichal Simek		conf {
859c821045fSMichal Simek			groups = "sdio1_0_grp";
860c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
861c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
862c821045fSMichal Simek			bias-disable;
863c821045fSMichal Simek		};
864c821045fSMichal Simek
865c821045fSMichal Simek		mux-cd {
866c821045fSMichal Simek			groups = "sdio1_cd_0_grp";
867c821045fSMichal Simek			function = "sdio1_cd";
868c821045fSMichal Simek		};
869c821045fSMichal Simek
870c821045fSMichal Simek		conf-cd {
871c821045fSMichal Simek			groups = "sdio1_cd_0_grp";
872c821045fSMichal Simek			bias-high-impedance;
873c821045fSMichal Simek			bias-pull-up;
874c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
875c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
876c821045fSMichal Simek		};
877c821045fSMichal Simek
878c821045fSMichal Simek		mux-wp {
879c821045fSMichal Simek			groups = "sdio1_wp_0_grp";
880c821045fSMichal Simek			function = "sdio1_wp";
881c821045fSMichal Simek		};
882c821045fSMichal Simek
883c821045fSMichal Simek		conf-wp {
884c821045fSMichal Simek			groups = "sdio1_wp_0_grp";
885c821045fSMichal Simek			bias-high-impedance;
886c821045fSMichal Simek			bias-pull-up;
887c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
888c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
889c821045fSMichal Simek		};
890c821045fSMichal Simek	};
891c821045fSMichal Simek
892c821045fSMichal Simek	pinctrl_gpio_default: gpio-default {
893c821045fSMichal Simek		mux-sw {
894c821045fSMichal Simek			function = "gpio0";
895c821045fSMichal Simek			groups = "gpio0_22_grp", "gpio0_23_grp";
896c821045fSMichal Simek		};
897c821045fSMichal Simek
898c821045fSMichal Simek		conf-sw {
899c821045fSMichal Simek			groups = "gpio0_22_grp", "gpio0_23_grp";
900c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
901c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
902c821045fSMichal Simek		};
903c821045fSMichal Simek
904c821045fSMichal Simek		mux-msp {
905c821045fSMichal Simek			function = "gpio0";
906c821045fSMichal Simek			groups = "gpio0_13_grp", "gpio0_38_grp";
907c821045fSMichal Simek		};
908c821045fSMichal Simek
909c821045fSMichal Simek		conf-msp {
910c821045fSMichal Simek			groups = "gpio0_13_grp", "gpio0_38_grp";
911c821045fSMichal Simek			slew-rate = <SLEW_RATE_SLOW>;
912c821045fSMichal Simek			power-source = <IO_STANDARD_LVCMOS18>;
913c821045fSMichal Simek		};
914c821045fSMichal Simek
915c821045fSMichal Simek		conf-pull-up {
916c821045fSMichal Simek			pins = "MIO22", "MIO23";
917c821045fSMichal Simek			bias-pull-up;
918c821045fSMichal Simek		};
919c821045fSMichal Simek
920c821045fSMichal Simek		conf-pull-none {
921c821045fSMichal Simek			pins = "MIO13", "MIO38";
922c821045fSMichal Simek			bias-disable;
923c821045fSMichal Simek		};
924c821045fSMichal Simek	};
925c821045fSMichal Simek};
926c821045fSMichal Simek
927ef797b53SMichal Simek&pcie {
928ef797b53SMichal Simek	status = "okay";
929ef797b53SMichal Simek};
930ef797b53SMichal Simek
93151733f16SMichal Simek&psgtr {
93251733f16SMichal Simek	status = "okay";
93351733f16SMichal Simek	/* pcie, sata, usb3, dp */
93451733f16SMichal Simek	clocks = <&si5341 0 5>, <&si5341 0 3>, <&si5341 0 2>, <&si5341 0 0>;
93551733f16SMichal Simek	clock-names = "ref0", "ref1", "ref2", "ref3";
93651733f16SMichal Simek};
93751733f16SMichal Simek
938*56e54601SMichal Simek&qspi {
939*56e54601SMichal Simek	status = "okay";
940*56e54601SMichal Simek	is-dual = <1>;
941*56e54601SMichal Simek	flash@0 {
942*56e54601SMichal Simek		compatible = "m25p80", "jedec,spi-nor"; /* 32MB */
943*56e54601SMichal Simek		#address-cells = <1>;
944*56e54601SMichal Simek		#size-cells = <1>;
945*56e54601SMichal Simek		reg = <0x0>;
946*56e54601SMichal Simek		spi-tx-bus-width = <1>;
947*56e54601SMichal Simek		spi-rx-bus-width = <4>; /* FIXME also DUAL configuration possible */
948*56e54601SMichal Simek		spi-max-frequency = <108000000>; /* Based on DC1 spec */
949*56e54601SMichal Simek	};
950*56e54601SMichal Simek};
951*56e54601SMichal Simek
952ef797b53SMichal Simek&rtc {
953ef797b53SMichal Simek	status = "okay";
954ef797b53SMichal Simek};
955ef797b53SMichal Simek
956ef797b53SMichal Simek&sata {
957ef797b53SMichal Simek	status = "okay";
958ef797b53SMichal Simek	/* SATA OOB timing settings */
959ef797b53SMichal Simek	ceva,p0-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>;
960ef797b53SMichal Simek	ceva,p0-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>;
961ef797b53SMichal Simek	ceva,p0-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
962ef797b53SMichal Simek	ceva,p0-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
963ef797b53SMichal Simek	ceva,p1-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>;
964ef797b53SMichal Simek	ceva,p1-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>;
965ef797b53SMichal Simek	ceva,p1-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
966ef797b53SMichal Simek	ceva,p1-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
96751733f16SMichal Simek	phy-names = "sata-phy";
96851733f16SMichal Simek	phys = <&psgtr 3 PHY_TYPE_SATA 1 1>;
969ef797b53SMichal Simek};
970ef797b53SMichal Simek
971ef797b53SMichal Simek/* SD1 with level shifter */
972ef797b53SMichal Simek&sdhci1 {
973ef797b53SMichal Simek	status = "okay";
9741d4bd118SMichal Simek	/*
9751d4bd118SMichal Simek	 * 1.0 revision has level shifter and this property should be
9761d4bd118SMichal Simek	 * removed for supporting UHS mode
9771d4bd118SMichal Simek	 */
978ef797b53SMichal Simek	no-1-8-v;
979c821045fSMichal Simek	pinctrl-names = "default";
980c821045fSMichal Simek	pinctrl-0 = <&pinctrl_sdhci1_default>;
98163481699SMichal Simek	xlnx,mio-bank = <1>;
982ef797b53SMichal Simek};
983ef797b53SMichal Simek
984ef797b53SMichal Simek&uart0 {
985ef797b53SMichal Simek	status = "okay";
986c821045fSMichal Simek	pinctrl-names = "default";
987c821045fSMichal Simek	pinctrl-0 = <&pinctrl_uart0_default>;
988ef797b53SMichal Simek};
989ef797b53SMichal Simek
990ef797b53SMichal Simek&uart1 {
991ef797b53SMichal Simek	status = "okay";
992c821045fSMichal Simek	pinctrl-names = "default";
993c821045fSMichal Simek	pinctrl-0 = <&pinctrl_uart1_default>;
994ef797b53SMichal Simek};
995ef797b53SMichal Simek
996ef797b53SMichal Simek/* ULPI SMSC USB3320 */
997ef797b53SMichal Simek&usb0 {
998ef797b53SMichal Simek	status = "okay";
999c821045fSMichal Simek	pinctrl-names = "default";
1000c821045fSMichal Simek	pinctrl-0 = <&pinctrl_usb0_default>;
1001df906cf5SAnurag Kumar Vulisha	dr_mode = "host";
10028b698f1bSMichal Simek	phy-names = "usb3-phy";
10038b698f1bSMichal Simek	phys = <&psgtr 2 PHY_TYPE_USB3 0 2>;
10048b698f1bSMichal Simek	maximum-speed = "super-speed";
1005ef797b53SMichal Simek};
1006ef797b53SMichal Simek
1007ef797b53SMichal Simek&watchdog0 {
1008ef797b53SMichal Simek	status = "okay";
1009ef797b53SMichal Simek};
101055563399SLaurent Pinchart
101155563399SLaurent Pinchart&zynqmp_dpdma {
101255563399SLaurent Pinchart	status = "okay";
101355563399SLaurent Pinchart};
101455563399SLaurent Pinchart
101555563399SLaurent Pinchart&zynqmp_dpsub {
101655563399SLaurent Pinchart	status = "okay";
101755563399SLaurent Pinchart	phy-names = "dp-phy0";
101855563399SLaurent Pinchart	phys = <&psgtr 1 PHY_TYPE_DP 0 3>;
101955563399SLaurent Pinchart};
1020