162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * dts file for Xilinx ZynqMP ZCU100 revC
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * (C) Copyright 2016 - 2022, Xilinx, Inc.
662306a36Sopenharmony_ci * (C) Copyright 2022 - 2023, Advanced Micro Devices, Inc.
762306a36Sopenharmony_ci *
862306a36Sopenharmony_ci * Michal Simek <michal.simek@amd.com>
962306a36Sopenharmony_ci * Nathalie Chan King Choy
1062306a36Sopenharmony_ci */
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ci/dts-v1/;
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci#include "zynqmp.dtsi"
1562306a36Sopenharmony_ci#include "zynqmp-clk-ccf.dtsi"
1662306a36Sopenharmony_ci#include <dt-bindings/input/input.h>
1762306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h>
1862306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h>
1962306a36Sopenharmony_ci#include <dt-bindings/pinctrl/pinctrl-zynqmp.h>
2062306a36Sopenharmony_ci#include <dt-bindings/phy/phy.h>
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ci/ {
2362306a36Sopenharmony_ci	model = "ZynqMP ZCU100 RevC";
2462306a36Sopenharmony_ci	compatible = "xlnx,zynqmp-zcu100-revC", "xlnx,zynqmp-zcu100", "xlnx,zynqmp";
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ci	aliases {
2762306a36Sopenharmony_ci		i2c0 = &i2c1;
2862306a36Sopenharmony_ci		rtc0 = &rtc;
2962306a36Sopenharmony_ci		serial0 = &uart1;
3062306a36Sopenharmony_ci		serial1 = &uart0;
3162306a36Sopenharmony_ci		serial2 = &dcc;
3262306a36Sopenharmony_ci		spi0 = &spi0;
3362306a36Sopenharmony_ci		spi1 = &spi1;
3462306a36Sopenharmony_ci		usb0 = &usb0;
3562306a36Sopenharmony_ci		usb1 = &usb1;
3662306a36Sopenharmony_ci		mmc0 = &sdhci0;
3762306a36Sopenharmony_ci		mmc1 = &sdhci1;
3862306a36Sopenharmony_ci	};
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci	chosen {
4162306a36Sopenharmony_ci		bootargs = "earlycon";
4262306a36Sopenharmony_ci		stdout-path = "serial0:115200n8";
4362306a36Sopenharmony_ci	};
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci	memory@0 {
4662306a36Sopenharmony_ci		device_type = "memory";
4762306a36Sopenharmony_ci		reg = <0x0 0x0 0x0 0x80000000>;
4862306a36Sopenharmony_ci	};
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ci	gpio-keys {
5162306a36Sopenharmony_ci		compatible = "gpio-keys";
5262306a36Sopenharmony_ci		autorepeat;
5362306a36Sopenharmony_ci		switch-4 {
5462306a36Sopenharmony_ci			label = "sw4";
5562306a36Sopenharmony_ci			gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
5662306a36Sopenharmony_ci			linux,code = <KEY_POWER>;
5762306a36Sopenharmony_ci			wakeup-source;
5862306a36Sopenharmony_ci			autorepeat;
5962306a36Sopenharmony_ci		};
6062306a36Sopenharmony_ci	};
6162306a36Sopenharmony_ci
6262306a36Sopenharmony_ci	iio-hwmon {
6362306a36Sopenharmony_ci		compatible = "iio-hwmon";
6462306a36Sopenharmony_ci		io-channels = <&xilinx_ams 0>, <&xilinx_ams 1>, <&xilinx_ams 2>,
6562306a36Sopenharmony_ci			      <&xilinx_ams 3>, <&xilinx_ams 4>, <&xilinx_ams 5>,
6662306a36Sopenharmony_ci			      <&xilinx_ams 6>, <&xilinx_ams 7>, <&xilinx_ams 8>,
6762306a36Sopenharmony_ci			      <&xilinx_ams 9>, <&xilinx_ams 10>,
6862306a36Sopenharmony_ci			      <&xilinx_ams 11>, <&xilinx_ams 12>;
6962306a36Sopenharmony_ci	};
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci	leds {
7262306a36Sopenharmony_ci		compatible = "gpio-leds";
7362306a36Sopenharmony_ci		led-ds2 {
7462306a36Sopenharmony_ci			label = "ds2";
7562306a36Sopenharmony_ci			gpios = <&gpio 20 GPIO_ACTIVE_HIGH>;
7662306a36Sopenharmony_ci			linux,default-trigger = "heartbeat";
7762306a36Sopenharmony_ci		};
7862306a36Sopenharmony_ci
7962306a36Sopenharmony_ci		led-ds3 {
8062306a36Sopenharmony_ci			label = "ds3";
8162306a36Sopenharmony_ci			gpios = <&gpio 19 GPIO_ACTIVE_HIGH>;
8262306a36Sopenharmony_ci			linux,default-trigger = "phy0tx"; /* WLAN tx */
8362306a36Sopenharmony_ci			default-state = "off";
8462306a36Sopenharmony_ci		};
8562306a36Sopenharmony_ci
8662306a36Sopenharmony_ci		led-ds4 {
8762306a36Sopenharmony_ci			label = "ds4";
8862306a36Sopenharmony_ci			gpios = <&gpio 18 GPIO_ACTIVE_HIGH>;
8962306a36Sopenharmony_ci			linux,default-trigger = "phy0rx"; /* WLAN rx */
9062306a36Sopenharmony_ci			default-state = "off";
9162306a36Sopenharmony_ci		};
9262306a36Sopenharmony_ci
9362306a36Sopenharmony_ci		led-ds5 {
9462306a36Sopenharmony_ci			label = "ds5";
9562306a36Sopenharmony_ci			gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
9662306a36Sopenharmony_ci			linux,default-trigger = "bluetooth-power";
9762306a36Sopenharmony_ci		};
9862306a36Sopenharmony_ci
9962306a36Sopenharmony_ci		led-vbus-det { /* U5 USB5744 VBUS detection via MIO25 */
10062306a36Sopenharmony_ci			label = "vbus_det";
10162306a36Sopenharmony_ci			gpios = <&gpio 25 GPIO_ACTIVE_HIGH>;
10262306a36Sopenharmony_ci			default-state = "on";
10362306a36Sopenharmony_ci		};
10462306a36Sopenharmony_ci	};
10562306a36Sopenharmony_ci
10662306a36Sopenharmony_ci	wmmcsdio_fixed: fixedregulator-mmcsdio {
10762306a36Sopenharmony_ci		compatible = "regulator-fixed";
10862306a36Sopenharmony_ci		regulator-name = "wmmcsdio_fixed";
10962306a36Sopenharmony_ci		regulator-min-microvolt = <3300000>;
11062306a36Sopenharmony_ci		regulator-max-microvolt = <3300000>;
11162306a36Sopenharmony_ci		regulator-always-on;
11262306a36Sopenharmony_ci		regulator-boot-on;
11362306a36Sopenharmony_ci	};
11462306a36Sopenharmony_ci
11562306a36Sopenharmony_ci	sdio_pwrseq: sdio-pwrseq {
11662306a36Sopenharmony_ci		compatible = "mmc-pwrseq-simple";
11762306a36Sopenharmony_ci		reset-gpios = <&gpio 7 GPIO_ACTIVE_LOW>; /* WIFI_EN */
11862306a36Sopenharmony_ci		post-power-on-delay-ms = <10>;
11962306a36Sopenharmony_ci	};
12062306a36Sopenharmony_ci
12162306a36Sopenharmony_ci	ina226 {
12262306a36Sopenharmony_ci		compatible = "iio-hwmon";
12362306a36Sopenharmony_ci		io-channels = <&u35 0>, <&u35 1>, <&u35 2>, <&u35 3>;
12462306a36Sopenharmony_ci	};
12562306a36Sopenharmony_ci
12662306a36Sopenharmony_ci	si5335_0: si5335_0 { /* clk0_usb - u23 */
12762306a36Sopenharmony_ci		compatible = "fixed-clock";
12862306a36Sopenharmony_ci		#clock-cells = <0>;
12962306a36Sopenharmony_ci		clock-frequency = <26000000>;
13062306a36Sopenharmony_ci	};
13162306a36Sopenharmony_ci
13262306a36Sopenharmony_ci	si5335_1: si5335_1 { /* clk1_dp - u23 */
13362306a36Sopenharmony_ci		compatible = "fixed-clock";
13462306a36Sopenharmony_ci		#clock-cells = <0>;
13562306a36Sopenharmony_ci		clock-frequency = <27000000>;
13662306a36Sopenharmony_ci	};
13762306a36Sopenharmony_ci};
13862306a36Sopenharmony_ci
13962306a36Sopenharmony_ci&dcc {
14062306a36Sopenharmony_ci	status = "okay";
14162306a36Sopenharmony_ci};
14262306a36Sopenharmony_ci
14362306a36Sopenharmony_ci&gpio {
14462306a36Sopenharmony_ci	status = "okay";
14562306a36Sopenharmony_ci	gpio-line-names = "UART1_TX", "UART1_RX", "UART0_RX", "UART0_TX", "I2C1_SCL",
14662306a36Sopenharmony_ci			  "I2C1_SDA", "SPI1_SCLK", "WLAN_EN", "BT_EN", "SPI1_CS",
14762306a36Sopenharmony_ci			  "SPI1_MISO", "SPI1_MOSI", "I2C_MUX_RESET", "SD0_DAT0", "SD0_DAT1",
14862306a36Sopenharmony_ci			  "SD0_DAT2", "SD0_DAT3", "PS_LED3", "PS_LED2", "PS_LED1",
14962306a36Sopenharmony_ci			  "PS_LED0", "SD0_CMD", "SD0_CLK", "GPIO_PB", "SD0_DETECT",
15062306a36Sopenharmony_ci			  "VBUS_DET", "POWER_INT", "DP_AUX", "DP_HPD", "DP_OE",
15162306a36Sopenharmony_ci			  "DP_AUX_IN", "INA226_ALERT", "PS_FP_PWR_EN", "PL_PWR_EN", "POWER_KILL",
15262306a36Sopenharmony_ci			  "", "GPIO-A", "GPIO-B", "SPI0_SCLK", "GPIO-C",
15362306a36Sopenharmony_ci			  "GPIO-D", "SPI0_CS", "SPI0_MISO", "SPI_MOSI", "GPIO-E",
15462306a36Sopenharmony_ci			  "GPIO-F", "SD1_D0", "SD1_D1", "SD1_D2", "SD1_D3",
15562306a36Sopenharmony_ci			  "SD1_CMD", "SD1_CLK", "USB0_CLK", "USB0_DIR", "USB0_DATA2",
15662306a36Sopenharmony_ci			  "USB0_NXT", "USB0_DATA0", "USB0_DATA1", "USB0_STP", "USB0_DATA3",
15762306a36Sopenharmony_ci			  "USB0_DATA4", "USB0_DATA5", "USB0_DATA6", "USB0_DATA7", "USB1_CLK",
15862306a36Sopenharmony_ci			  "USB1_DIR", "USB1_DATA2", "USB1_NXT", "USB1_DATA0", "USB1_DATA1",
15962306a36Sopenharmony_ci			  "USB1_STP", "USB1_DATA3", "USB1_DATA4", "USB1_DATA5", "USB1_DATA6",
16062306a36Sopenharmony_ci			  "USB_DATA7", "WLAN_IRQ", "PMIC_IRQ", /* MIO end and EMIO start */
16162306a36Sopenharmony_ci			  "", "",
16262306a36Sopenharmony_ci			  "", "", "", "", "", "", "", "", "", "",
16362306a36Sopenharmony_ci			  "", "", "", "", "", "", "", "", "", "",
16462306a36Sopenharmony_ci			  "", "", "", "", "", "", "", "", "", "",
16562306a36Sopenharmony_ci			  "", "", "", "", "", "", "", "", "", "",
16662306a36Sopenharmony_ci			  "", "", "", "", "", "", "", "", "", "",
16762306a36Sopenharmony_ci			  "", "", "", "", "", "", "", "", "", "",
16862306a36Sopenharmony_ci			  "", "", "", "", "", "", "", "", "", "",
16962306a36Sopenharmony_ci			  "", "", "", "", "", "", "", "", "", "",
17062306a36Sopenharmony_ci			  "", "", "", "", "", "", "", "", "", "",
17162306a36Sopenharmony_ci			  "", "", "", "";
17262306a36Sopenharmony_ci};
17362306a36Sopenharmony_ci
17462306a36Sopenharmony_ci&gpu {
17562306a36Sopenharmony_ci	status = "okay";
17662306a36Sopenharmony_ci};
17762306a36Sopenharmony_ci
17862306a36Sopenharmony_ci&i2c1 {
17962306a36Sopenharmony_ci	status = "okay";
18062306a36Sopenharmony_ci	pinctrl-names = "default", "gpio";
18162306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_i2c1_default>;
18262306a36Sopenharmony_ci	pinctrl-1 = <&pinctrl_i2c1_gpio>;
18362306a36Sopenharmony_ci	scl-gpios = <&gpio 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
18462306a36Sopenharmony_ci	sda-gpios = <&gpio 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
18562306a36Sopenharmony_ci	clock-frequency = <100000>;
18662306a36Sopenharmony_ci	i2c-mux@75 { /* u11 */
18762306a36Sopenharmony_ci		compatible = "nxp,pca9548";
18862306a36Sopenharmony_ci		#address-cells = <1>;
18962306a36Sopenharmony_ci		#size-cells = <0>;
19062306a36Sopenharmony_ci		reg = <0x75>;
19162306a36Sopenharmony_ci		i2csw_0: i2c@0 {
19262306a36Sopenharmony_ci			#address-cells = <1>;
19362306a36Sopenharmony_ci			#size-cells = <0>;
19462306a36Sopenharmony_ci			reg = <0>;
19562306a36Sopenharmony_ci			label = "LS-I2C0";
19662306a36Sopenharmony_ci		};
19762306a36Sopenharmony_ci		i2csw_1: i2c@1 {
19862306a36Sopenharmony_ci			#address-cells = <1>;
19962306a36Sopenharmony_ci			#size-cells = <0>;
20062306a36Sopenharmony_ci			reg = <1>;
20162306a36Sopenharmony_ci			label = "LS-I2C1";
20262306a36Sopenharmony_ci		};
20362306a36Sopenharmony_ci		i2csw_2: i2c@2 {
20462306a36Sopenharmony_ci			#address-cells = <1>;
20562306a36Sopenharmony_ci			#size-cells = <0>;
20662306a36Sopenharmony_ci			reg = <2>;
20762306a36Sopenharmony_ci			label = "HS-I2C2";
20862306a36Sopenharmony_ci		};
20962306a36Sopenharmony_ci		i2csw_3: i2c@3 {
21062306a36Sopenharmony_ci			#address-cells = <1>;
21162306a36Sopenharmony_ci			#size-cells = <0>;
21262306a36Sopenharmony_ci			reg = <3>;
21362306a36Sopenharmony_ci			label = "HS-I2C3";
21462306a36Sopenharmony_ci		};
21562306a36Sopenharmony_ci		i2csw_4: i2c@4 {
21662306a36Sopenharmony_ci			#address-cells = <1>;
21762306a36Sopenharmony_ci			#size-cells = <0>;
21862306a36Sopenharmony_ci			reg = <0x4>;
21962306a36Sopenharmony_ci
22062306a36Sopenharmony_ci			pmic: pmic@5e { /* Custom TI PMIC u33 */
22162306a36Sopenharmony_ci				compatible = "ti,tps65086";
22262306a36Sopenharmony_ci				reg = <0x5e>;
22362306a36Sopenharmony_ci				interrupt-parent = <&gpio>;
22462306a36Sopenharmony_ci				interrupts = <77 IRQ_TYPE_LEVEL_LOW>;
22562306a36Sopenharmony_ci				#gpio-cells = <2>;
22662306a36Sopenharmony_ci				gpio-controller;
22762306a36Sopenharmony_ci			};
22862306a36Sopenharmony_ci		};
22962306a36Sopenharmony_ci		i2csw_5: i2c@5 {
23062306a36Sopenharmony_ci			#address-cells = <1>;
23162306a36Sopenharmony_ci			#size-cells = <0>;
23262306a36Sopenharmony_ci			reg = <5>;
23362306a36Sopenharmony_ci			/* PS_PMBUS */
23462306a36Sopenharmony_ci			u35: ina226@40 { /* u35 */
23562306a36Sopenharmony_ci				compatible = "ti,ina226";
23662306a36Sopenharmony_ci				#io-channel-cells = <1>;
23762306a36Sopenharmony_ci				reg = <0x40>;
23862306a36Sopenharmony_ci				shunt-resistor = <10000>;
23962306a36Sopenharmony_ci				/* MIO31 is alert which should be routed to PMUFW */
24062306a36Sopenharmony_ci			};
24162306a36Sopenharmony_ci		};
24262306a36Sopenharmony_ci		i2csw_6: i2c@6 {
24362306a36Sopenharmony_ci			#address-cells = <1>;
24462306a36Sopenharmony_ci			#size-cells = <0>;
24562306a36Sopenharmony_ci			reg = <6>;
24662306a36Sopenharmony_ci			/*
24762306a36Sopenharmony_ci			 * Not Connected
24862306a36Sopenharmony_ci			 */
24962306a36Sopenharmony_ci		};
25062306a36Sopenharmony_ci		i2csw_7: i2c@7 {
25162306a36Sopenharmony_ci			#address-cells = <1>;
25262306a36Sopenharmony_ci			#size-cells = <0>;
25362306a36Sopenharmony_ci			reg = <7>;
25462306a36Sopenharmony_ci			/*
25562306a36Sopenharmony_ci			 * usb5744 (DNP) - U5
25662306a36Sopenharmony_ci			 * 100kHz - this is default freq for us
25762306a36Sopenharmony_ci			 */
25862306a36Sopenharmony_ci		};
25962306a36Sopenharmony_ci	};
26062306a36Sopenharmony_ci};
26162306a36Sopenharmony_ci
26262306a36Sopenharmony_ci&pinctrl0 {
26362306a36Sopenharmony_ci	status = "okay";
26462306a36Sopenharmony_ci	pinctrl_i2c1_default: i2c1-default {
26562306a36Sopenharmony_ci		mux {
26662306a36Sopenharmony_ci			groups = "i2c1_1_grp";
26762306a36Sopenharmony_ci			function = "i2c1";
26862306a36Sopenharmony_ci		};
26962306a36Sopenharmony_ci
27062306a36Sopenharmony_ci		conf {
27162306a36Sopenharmony_ci			groups = "i2c1_1_grp";
27262306a36Sopenharmony_ci			bias-pull-up;
27362306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
27462306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
27562306a36Sopenharmony_ci		};
27662306a36Sopenharmony_ci	};
27762306a36Sopenharmony_ci
27862306a36Sopenharmony_ci	pinctrl_i2c1_gpio: i2c1-gpio {
27962306a36Sopenharmony_ci		mux {
28062306a36Sopenharmony_ci			groups = "gpio0_4_grp", "gpio0_5_grp";
28162306a36Sopenharmony_ci			function = "gpio0";
28262306a36Sopenharmony_ci		};
28362306a36Sopenharmony_ci
28462306a36Sopenharmony_ci		conf {
28562306a36Sopenharmony_ci			groups = "gpio0_4_grp", "gpio0_5_grp";
28662306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
28762306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
28862306a36Sopenharmony_ci		};
28962306a36Sopenharmony_ci	};
29062306a36Sopenharmony_ci
29162306a36Sopenharmony_ci	pinctrl_sdhci0_default: sdhci0-default {
29262306a36Sopenharmony_ci		mux {
29362306a36Sopenharmony_ci			groups = "sdio0_3_grp";
29462306a36Sopenharmony_ci			function = "sdio0";
29562306a36Sopenharmony_ci		};
29662306a36Sopenharmony_ci
29762306a36Sopenharmony_ci		conf {
29862306a36Sopenharmony_ci			groups = "sdio0_3_grp";
29962306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
30062306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
30162306a36Sopenharmony_ci			bias-disable;
30262306a36Sopenharmony_ci		};
30362306a36Sopenharmony_ci
30462306a36Sopenharmony_ci		mux-cd {
30562306a36Sopenharmony_ci			groups = "sdio0_cd_0_grp";
30662306a36Sopenharmony_ci			function = "sdio0_cd";
30762306a36Sopenharmony_ci		};
30862306a36Sopenharmony_ci
30962306a36Sopenharmony_ci		conf-cd {
31062306a36Sopenharmony_ci			groups = "sdio0_cd_0_grp";
31162306a36Sopenharmony_ci			bias-high-impedance;
31262306a36Sopenharmony_ci			bias-pull-up;
31362306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
31462306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
31562306a36Sopenharmony_ci		};
31662306a36Sopenharmony_ci	};
31762306a36Sopenharmony_ci
31862306a36Sopenharmony_ci	pinctrl_sdhci1_default: sdhci1-default {
31962306a36Sopenharmony_ci		mux {
32062306a36Sopenharmony_ci			groups = "sdio1_2_grp";
32162306a36Sopenharmony_ci			function = "sdio1";
32262306a36Sopenharmony_ci		};
32362306a36Sopenharmony_ci
32462306a36Sopenharmony_ci		conf {
32562306a36Sopenharmony_ci			groups = "sdio1_2_grp";
32662306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
32762306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
32862306a36Sopenharmony_ci			bias-disable;
32962306a36Sopenharmony_ci		};
33062306a36Sopenharmony_ci	};
33162306a36Sopenharmony_ci
33262306a36Sopenharmony_ci	pinctrl_spi0_default: spi0-default {
33362306a36Sopenharmony_ci		mux {
33462306a36Sopenharmony_ci			groups = "spi0_3_grp";
33562306a36Sopenharmony_ci			function = "spi0";
33662306a36Sopenharmony_ci		};
33762306a36Sopenharmony_ci
33862306a36Sopenharmony_ci		conf {
33962306a36Sopenharmony_ci			groups = "spi0_3_grp";
34062306a36Sopenharmony_ci			bias-disable;
34162306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
34262306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
34362306a36Sopenharmony_ci		};
34462306a36Sopenharmony_ci
34562306a36Sopenharmony_ci		mux-cs {
34662306a36Sopenharmony_ci			groups = "spi0_ss_9_grp";
34762306a36Sopenharmony_ci			function = "spi0_ss";
34862306a36Sopenharmony_ci		};
34962306a36Sopenharmony_ci
35062306a36Sopenharmony_ci		conf-cs {
35162306a36Sopenharmony_ci			groups = "spi0_ss_9_grp";
35262306a36Sopenharmony_ci			bias-disable;
35362306a36Sopenharmony_ci		};
35462306a36Sopenharmony_ci
35562306a36Sopenharmony_ci	};
35662306a36Sopenharmony_ci
35762306a36Sopenharmony_ci	pinctrl_spi1_default: spi1-default {
35862306a36Sopenharmony_ci		mux {
35962306a36Sopenharmony_ci			groups = "spi1_0_grp";
36062306a36Sopenharmony_ci			function = "spi1";
36162306a36Sopenharmony_ci		};
36262306a36Sopenharmony_ci
36362306a36Sopenharmony_ci		conf {
36462306a36Sopenharmony_ci			groups = "spi1_0_grp";
36562306a36Sopenharmony_ci			bias-disable;
36662306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
36762306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
36862306a36Sopenharmony_ci		};
36962306a36Sopenharmony_ci
37062306a36Sopenharmony_ci		mux-cs {
37162306a36Sopenharmony_ci			groups = "spi1_ss_0_grp";
37262306a36Sopenharmony_ci			function = "spi1_ss";
37362306a36Sopenharmony_ci		};
37462306a36Sopenharmony_ci
37562306a36Sopenharmony_ci		conf-cs {
37662306a36Sopenharmony_ci			groups = "spi1_ss_0_grp";
37762306a36Sopenharmony_ci			bias-disable;
37862306a36Sopenharmony_ci		};
37962306a36Sopenharmony_ci
38062306a36Sopenharmony_ci	};
38162306a36Sopenharmony_ci
38262306a36Sopenharmony_ci	pinctrl_uart0_default: uart0-default {
38362306a36Sopenharmony_ci		mux {
38462306a36Sopenharmony_ci			groups = "uart0_0_grp";
38562306a36Sopenharmony_ci			function = "uart0";
38662306a36Sopenharmony_ci		};
38762306a36Sopenharmony_ci
38862306a36Sopenharmony_ci		conf {
38962306a36Sopenharmony_ci			groups = "uart0_0_grp";
39062306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
39162306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
39262306a36Sopenharmony_ci		};
39362306a36Sopenharmony_ci
39462306a36Sopenharmony_ci		conf-rx {
39562306a36Sopenharmony_ci			pins = "MIO3";
39662306a36Sopenharmony_ci			bias-high-impedance;
39762306a36Sopenharmony_ci		};
39862306a36Sopenharmony_ci
39962306a36Sopenharmony_ci		conf-tx {
40062306a36Sopenharmony_ci			pins = "MIO2";
40162306a36Sopenharmony_ci			bias-disable;
40262306a36Sopenharmony_ci		};
40362306a36Sopenharmony_ci	};
40462306a36Sopenharmony_ci
40562306a36Sopenharmony_ci	pinctrl_uart1_default: uart1-default {
40662306a36Sopenharmony_ci		mux {
40762306a36Sopenharmony_ci			groups = "uart1_0_grp";
40862306a36Sopenharmony_ci			function = "uart1";
40962306a36Sopenharmony_ci		};
41062306a36Sopenharmony_ci
41162306a36Sopenharmony_ci		conf {
41262306a36Sopenharmony_ci			groups = "uart1_0_grp";
41362306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
41462306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
41562306a36Sopenharmony_ci		};
41662306a36Sopenharmony_ci
41762306a36Sopenharmony_ci		conf-rx {
41862306a36Sopenharmony_ci			pins = "MIO1";
41962306a36Sopenharmony_ci			bias-high-impedance;
42062306a36Sopenharmony_ci		};
42162306a36Sopenharmony_ci
42262306a36Sopenharmony_ci		conf-tx {
42362306a36Sopenharmony_ci			pins = "MIO0";
42462306a36Sopenharmony_ci			bias-disable;
42562306a36Sopenharmony_ci		};
42662306a36Sopenharmony_ci	};
42762306a36Sopenharmony_ci
42862306a36Sopenharmony_ci	pinctrl_usb0_default: usb0-default {
42962306a36Sopenharmony_ci		mux {
43062306a36Sopenharmony_ci			groups = "usb0_0_grp";
43162306a36Sopenharmony_ci			function = "usb0";
43262306a36Sopenharmony_ci		};
43362306a36Sopenharmony_ci
43462306a36Sopenharmony_ci		conf {
43562306a36Sopenharmony_ci			groups = "usb0_0_grp";
43662306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
43762306a36Sopenharmony_ci		};
43862306a36Sopenharmony_ci
43962306a36Sopenharmony_ci		conf-rx {
44062306a36Sopenharmony_ci			pins = "MIO52", "MIO53", "MIO55";
44162306a36Sopenharmony_ci			bias-high-impedance;
44262306a36Sopenharmony_ci			drive-strength = <12>;
44362306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_FAST>;
44462306a36Sopenharmony_ci		};
44562306a36Sopenharmony_ci
44662306a36Sopenharmony_ci		conf-tx {
44762306a36Sopenharmony_ci			pins = "MIO54", "MIO56", "MIO57", "MIO58", "MIO59",
44862306a36Sopenharmony_ci			       "MIO60", "MIO61", "MIO62", "MIO63";
44962306a36Sopenharmony_ci			bias-disable;
45062306a36Sopenharmony_ci			drive-strength = <4>;
45162306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
45262306a36Sopenharmony_ci		};
45362306a36Sopenharmony_ci	};
45462306a36Sopenharmony_ci
45562306a36Sopenharmony_ci	pinctrl_usb1_default: usb1-default {
45662306a36Sopenharmony_ci		mux {
45762306a36Sopenharmony_ci			groups = "usb1_0_grp";
45862306a36Sopenharmony_ci			function = "usb1";
45962306a36Sopenharmony_ci		};
46062306a36Sopenharmony_ci
46162306a36Sopenharmony_ci		conf {
46262306a36Sopenharmony_ci			groups = "usb1_0_grp";
46362306a36Sopenharmony_ci			power-source = <IO_STANDARD_LVCMOS18>;
46462306a36Sopenharmony_ci		};
46562306a36Sopenharmony_ci
46662306a36Sopenharmony_ci		conf-rx {
46762306a36Sopenharmony_ci			pins = "MIO64", "MIO65", "MIO67";
46862306a36Sopenharmony_ci			bias-high-impedance;
46962306a36Sopenharmony_ci			drive-strength = <12>;
47062306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_FAST>;
47162306a36Sopenharmony_ci		};
47262306a36Sopenharmony_ci
47362306a36Sopenharmony_ci		conf-tx {
47462306a36Sopenharmony_ci			pins = "MIO66", "MIO68", "MIO69", "MIO70", "MIO71",
47562306a36Sopenharmony_ci			       "MIO72", "MIO73", "MIO74", "MIO75";
47662306a36Sopenharmony_ci			bias-disable;
47762306a36Sopenharmony_ci			drive-strength = <4>;
47862306a36Sopenharmony_ci			slew-rate = <SLEW_RATE_SLOW>;
47962306a36Sopenharmony_ci		};
48062306a36Sopenharmony_ci	};
48162306a36Sopenharmony_ci};
48262306a36Sopenharmony_ci
48362306a36Sopenharmony_ci&psgtr {
48462306a36Sopenharmony_ci	status = "okay";
48562306a36Sopenharmony_ci	/* usb3, dp */
48662306a36Sopenharmony_ci	clocks = <&si5335_0>, <&si5335_1>;
48762306a36Sopenharmony_ci	clock-names = "ref0", "ref1";
48862306a36Sopenharmony_ci};
48962306a36Sopenharmony_ci
49062306a36Sopenharmony_ci&rtc {
49162306a36Sopenharmony_ci	status = "okay";
49262306a36Sopenharmony_ci};
49362306a36Sopenharmony_ci
49462306a36Sopenharmony_ci/* SD0 only supports 3.3V, no level shifter */
49562306a36Sopenharmony_ci&sdhci0 {
49662306a36Sopenharmony_ci	status = "okay";
49762306a36Sopenharmony_ci	no-1-8-v;
49862306a36Sopenharmony_ci	disable-wp;
49962306a36Sopenharmony_ci	pinctrl-names = "default";
50062306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_sdhci0_default>;
50162306a36Sopenharmony_ci	xlnx,mio-bank = <0>;
50262306a36Sopenharmony_ci};
50362306a36Sopenharmony_ci
50462306a36Sopenharmony_ci&sdhci1 {
50562306a36Sopenharmony_ci	status = "okay";
50662306a36Sopenharmony_ci	bus-width = <0x4>;
50762306a36Sopenharmony_ci	pinctrl-names = "default";
50862306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_sdhci1_default>;
50962306a36Sopenharmony_ci	xlnx,mio-bank = <0>;
51062306a36Sopenharmony_ci	non-removable;
51162306a36Sopenharmony_ci	disable-wp;
51262306a36Sopenharmony_ci	cap-power-off-card;
51362306a36Sopenharmony_ci	mmc-pwrseq = <&sdio_pwrseq>;
51462306a36Sopenharmony_ci	vqmmc-supply = <&wmmcsdio_fixed>;
51562306a36Sopenharmony_ci	#address-cells = <1>;
51662306a36Sopenharmony_ci	#size-cells = <0>;
51762306a36Sopenharmony_ci	wlcore: wifi@2 {
51862306a36Sopenharmony_ci		compatible = "ti,wl1831";
51962306a36Sopenharmony_ci		reg = <2>;
52062306a36Sopenharmony_ci		interrupt-parent = <&gpio>;
52162306a36Sopenharmony_ci		interrupts = <76 IRQ_TYPE_EDGE_RISING>; /* MIO76 WLAN_IRQ 1V8 */
52262306a36Sopenharmony_ci	};
52362306a36Sopenharmony_ci};
52462306a36Sopenharmony_ci
52562306a36Sopenharmony_ci&spi0 { /* Low Speed connector */
52662306a36Sopenharmony_ci	status = "okay";
52762306a36Sopenharmony_ci	label = "LS-SPI0";
52862306a36Sopenharmony_ci	num-cs = <1>;
52962306a36Sopenharmony_ci	pinctrl-names = "default";
53062306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_spi0_default>;
53162306a36Sopenharmony_ci};
53262306a36Sopenharmony_ci
53362306a36Sopenharmony_ci&spi1 { /* High Speed connector */
53462306a36Sopenharmony_ci	status = "okay";
53562306a36Sopenharmony_ci	label = "HS-SPI1";
53662306a36Sopenharmony_ci	num-cs = <1>;
53762306a36Sopenharmony_ci	pinctrl-names = "default";
53862306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_spi1_default>;
53962306a36Sopenharmony_ci};
54062306a36Sopenharmony_ci
54162306a36Sopenharmony_ci&uart0 {
54262306a36Sopenharmony_ci	status = "okay";
54362306a36Sopenharmony_ci	pinctrl-names = "default";
54462306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_uart0_default>;
54562306a36Sopenharmony_ci	bluetooth {
54662306a36Sopenharmony_ci		compatible = "ti,wl1831-st";
54762306a36Sopenharmony_ci		enable-gpios = <&gpio 8 GPIO_ACTIVE_HIGH>;
54862306a36Sopenharmony_ci	};
54962306a36Sopenharmony_ci};
55062306a36Sopenharmony_ci
55162306a36Sopenharmony_ci&uart1 {
55262306a36Sopenharmony_ci	status = "okay";
55362306a36Sopenharmony_ci	pinctrl-names = "default";
55462306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_uart1_default>;
55562306a36Sopenharmony_ci};
55662306a36Sopenharmony_ci
55762306a36Sopenharmony_ci/* ULPI SMSC USB3320 */
55862306a36Sopenharmony_ci&usb0 {
55962306a36Sopenharmony_ci	status = "okay";
56062306a36Sopenharmony_ci	pinctrl-names = "default";
56162306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_usb0_default>;
56262306a36Sopenharmony_ci	phy-names = "usb3-phy";
56362306a36Sopenharmony_ci	phys = <&psgtr 2 PHY_TYPE_USB3 0 0>;
56462306a36Sopenharmony_ci	/delete-property/ reset-gpios;
56562306a36Sopenharmony_ci};
56662306a36Sopenharmony_ci
56762306a36Sopenharmony_ci&dwc3_0 {
56862306a36Sopenharmony_ci	status = "okay";
56962306a36Sopenharmony_ci	dr_mode = "peripheral";
57062306a36Sopenharmony_ci	maximum-speed = "super-speed";
57162306a36Sopenharmony_ci};
57262306a36Sopenharmony_ci
57362306a36Sopenharmony_ci/* ULPI SMSC USB3320 */
57462306a36Sopenharmony_ci&usb1 {
57562306a36Sopenharmony_ci	status = "okay";
57662306a36Sopenharmony_ci	pinctrl-names = "default";
57762306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_usb1_default>;
57862306a36Sopenharmony_ci	phy-names = "usb3-phy";
57962306a36Sopenharmony_ci	phys = <&psgtr 3 PHY_TYPE_USB3 1 0>;
58062306a36Sopenharmony_ci	reset-gpios = <&modepin_gpio 1 GPIO_ACTIVE_LOW>;
58162306a36Sopenharmony_ci};
58262306a36Sopenharmony_ci
58362306a36Sopenharmony_ci&dwc3_1 {
58462306a36Sopenharmony_ci	status = "okay";
58562306a36Sopenharmony_ci	dr_mode = "host";
58662306a36Sopenharmony_ci	maximum-speed = "super-speed";
58762306a36Sopenharmony_ci};
58862306a36Sopenharmony_ci
58962306a36Sopenharmony_ci&watchdog0 {
59062306a36Sopenharmony_ci	status = "okay";
59162306a36Sopenharmony_ci};
59262306a36Sopenharmony_ci
59362306a36Sopenharmony_ci&xilinx_ams {
59462306a36Sopenharmony_ci	status = "okay";
59562306a36Sopenharmony_ci};
59662306a36Sopenharmony_ci
59762306a36Sopenharmony_ci&ams_ps {
59862306a36Sopenharmony_ci	status = "okay";
59962306a36Sopenharmony_ci};
60062306a36Sopenharmony_ci
60162306a36Sopenharmony_ci&zynqmp_dpdma {
60262306a36Sopenharmony_ci	status = "okay";
60362306a36Sopenharmony_ci};
60462306a36Sopenharmony_ci
60562306a36Sopenharmony_ci&zynqmp_dpsub {
60662306a36Sopenharmony_ci	status = "okay";
60762306a36Sopenharmony_ci	phy-names = "dp-phy0", "dp-phy1";
60862306a36Sopenharmony_ci	phys = <&psgtr 1 PHY_TYPE_DP 0 1>,
60962306a36Sopenharmony_ci	       <&psgtr 0 PHY_TYPE_DP 1 1>;
61062306a36Sopenharmony_ci};
611