18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * dts file for Xilinx ZynqMP ZCU100 revC 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * (C) Copyright 2016 - 2019, Xilinx, Inc. 68c2ecf20Sopenharmony_ci * 78c2ecf20Sopenharmony_ci * Michal Simek <michal.simek@xilinx.com> 88c2ecf20Sopenharmony_ci * Nathalie Chan King Choy 98c2ecf20Sopenharmony_ci */ 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci/dts-v1/; 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci#include "zynqmp.dtsi" 148c2ecf20Sopenharmony_ci#include "zynqmp-clk-ccf.dtsi" 158c2ecf20Sopenharmony_ci#include <dt-bindings/input/input.h> 168c2ecf20Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h> 178c2ecf20Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci/ { 208c2ecf20Sopenharmony_ci model = "ZynqMP ZCU100 RevC"; 218c2ecf20Sopenharmony_ci compatible = "xlnx,zynqmp-zcu100-revC", "xlnx,zynqmp-zcu100", "xlnx,zynqmp"; 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci aliases { 248c2ecf20Sopenharmony_ci i2c0 = &i2c1; 258c2ecf20Sopenharmony_ci rtc0 = &rtc; 268c2ecf20Sopenharmony_ci serial0 = &uart1; 278c2ecf20Sopenharmony_ci serial1 = &uart0; 288c2ecf20Sopenharmony_ci serial2 = &dcc; 298c2ecf20Sopenharmony_ci spi0 = &spi0; 308c2ecf20Sopenharmony_ci spi1 = &spi1; 318c2ecf20Sopenharmony_ci mmc0 = &sdhci0; 328c2ecf20Sopenharmony_ci mmc1 = &sdhci1; 338c2ecf20Sopenharmony_ci }; 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci chosen { 368c2ecf20Sopenharmony_ci bootargs = "earlycon"; 378c2ecf20Sopenharmony_ci stdout-path = "serial0:115200n8"; 388c2ecf20Sopenharmony_ci }; 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ci memory@0 { 418c2ecf20Sopenharmony_ci device_type = "memory"; 428c2ecf20Sopenharmony_ci reg = <0x0 0x0 0x0 0x80000000>; 438c2ecf20Sopenharmony_ci }; 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci gpio-keys { 468c2ecf20Sopenharmony_ci compatible = "gpio-keys"; 478c2ecf20Sopenharmony_ci autorepeat; 488c2ecf20Sopenharmony_ci sw4 { 498c2ecf20Sopenharmony_ci label = "sw4"; 508c2ecf20Sopenharmony_ci gpios = <&gpio 23 GPIO_ACTIVE_LOW>; 518c2ecf20Sopenharmony_ci linux,code = <KEY_POWER>; 528c2ecf20Sopenharmony_ci wakeup-source; 538c2ecf20Sopenharmony_ci autorepeat; 548c2ecf20Sopenharmony_ci }; 558c2ecf20Sopenharmony_ci }; 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci leds { 588c2ecf20Sopenharmony_ci compatible = "gpio-leds"; 598c2ecf20Sopenharmony_ci led-ds2 { 608c2ecf20Sopenharmony_ci label = "ds2"; 618c2ecf20Sopenharmony_ci gpios = <&gpio 20 GPIO_ACTIVE_HIGH>; 628c2ecf20Sopenharmony_ci linux,default-trigger = "heartbeat"; 638c2ecf20Sopenharmony_ci }; 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci led-ds3 { 668c2ecf20Sopenharmony_ci label = "ds3"; 678c2ecf20Sopenharmony_ci gpios = <&gpio 19 GPIO_ACTIVE_HIGH>; 688c2ecf20Sopenharmony_ci linux,default-trigger = "phy0tx"; /* WLAN tx */ 698c2ecf20Sopenharmony_ci default-state = "off"; 708c2ecf20Sopenharmony_ci }; 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_ci led-ds4 { 738c2ecf20Sopenharmony_ci label = "ds4"; 748c2ecf20Sopenharmony_ci gpios = <&gpio 18 GPIO_ACTIVE_HIGH>; 758c2ecf20Sopenharmony_ci linux,default-trigger = "phy0rx"; /* WLAN rx */ 768c2ecf20Sopenharmony_ci default-state = "off"; 778c2ecf20Sopenharmony_ci }; 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci led-ds5 { 808c2ecf20Sopenharmony_ci label = "ds5"; 818c2ecf20Sopenharmony_ci gpios = <&gpio 17 GPIO_ACTIVE_HIGH>; 828c2ecf20Sopenharmony_ci linux,default-trigger = "bluetooth-power"; 838c2ecf20Sopenharmony_ci }; 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_ci vbus-det { /* U5 USB5744 VBUS detection via MIO25 */ 868c2ecf20Sopenharmony_ci label = "vbus_det"; 878c2ecf20Sopenharmony_ci gpios = <&gpio 25 GPIO_ACTIVE_HIGH>; 888c2ecf20Sopenharmony_ci default-state = "on"; 898c2ecf20Sopenharmony_ci }; 908c2ecf20Sopenharmony_ci }; 918c2ecf20Sopenharmony_ci 928c2ecf20Sopenharmony_ci wmmcsdio_fixed: fixedregulator-mmcsdio { 938c2ecf20Sopenharmony_ci compatible = "regulator-fixed"; 948c2ecf20Sopenharmony_ci regulator-name = "wmmcsdio_fixed"; 958c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 968c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 978c2ecf20Sopenharmony_ci regulator-always-on; 988c2ecf20Sopenharmony_ci regulator-boot-on; 998c2ecf20Sopenharmony_ci }; 1008c2ecf20Sopenharmony_ci 1018c2ecf20Sopenharmony_ci sdio_pwrseq: sdio-pwrseq { 1028c2ecf20Sopenharmony_ci compatible = "mmc-pwrseq-simple"; 1038c2ecf20Sopenharmony_ci reset-gpios = <&gpio 7 GPIO_ACTIVE_LOW>; /* WIFI_EN */ 1048c2ecf20Sopenharmony_ci post-power-on-delay-ms = <10>; 1058c2ecf20Sopenharmony_ci }; 1068c2ecf20Sopenharmony_ci 1078c2ecf20Sopenharmony_ci ina226 { 1088c2ecf20Sopenharmony_ci compatible = "iio-hwmon"; 1098c2ecf20Sopenharmony_ci io-channels = <&u35 0>, <&u35 1>, <&u35 2>, <&u35 3>; 1108c2ecf20Sopenharmony_ci }; 1118c2ecf20Sopenharmony_ci}; 1128c2ecf20Sopenharmony_ci 1138c2ecf20Sopenharmony_ci&dcc { 1148c2ecf20Sopenharmony_ci status = "okay"; 1158c2ecf20Sopenharmony_ci}; 1168c2ecf20Sopenharmony_ci 1178c2ecf20Sopenharmony_ci&gpio { 1188c2ecf20Sopenharmony_ci status = "okay"; 1198c2ecf20Sopenharmony_ci gpio-line-names = "UART1_TX", "UART1_RX", "UART0_RX", "UART0_TX", "I2C1_SCL", 1208c2ecf20Sopenharmony_ci "I2C1_SDA", "SPI1_SCLK", "WLAN_EN", "BT_EN", "SPI1_CS", 1218c2ecf20Sopenharmony_ci "SPI1_MISO", "SPI1_MOSI", "I2C_MUX_RESET", "SD0_DAT0", "SD0_DAT1", 1228c2ecf20Sopenharmony_ci "SD0_DAT2", "SD0_DAT3", "PS_LED3", "PS_LED2", "PS_LED1", 1238c2ecf20Sopenharmony_ci "PS_LED0", "SD0_CMD", "SD0_CLK", "GPIO_PB", "SD0_DETECT", 1248c2ecf20Sopenharmony_ci "VBUS_DET", "POWER_INT", "DP_AUX", "DP_HPD", "DP_OE", 1258c2ecf20Sopenharmony_ci "DP_AUX_IN", "INA226_ALERT", "PS_FP_PWR_EN", "PL_PWR_EN", "POWER_KILL", 1268c2ecf20Sopenharmony_ci "", "GPIO-A", "GPIO-B", "SPI0_SCLK", "GPIO-C", 1278c2ecf20Sopenharmony_ci "GPIO-D", "SPI0_CS", "SPI0_MISO", "SPI_MOSI", "GPIO-E", 1288c2ecf20Sopenharmony_ci "GPIO-F", "SD1_D0", "SD1_D1", "SD1_D2", "SD1_D3", 1298c2ecf20Sopenharmony_ci "SD1_CMD", "SD1_CLK", "USB0_CLK", "USB0_DIR", "USB0_DATA2", 1308c2ecf20Sopenharmony_ci "USB0_NXT", "USB0_DATA0", "USB0_DATA1", "USB0_STP", "USB0_DATA3", 1318c2ecf20Sopenharmony_ci "USB0_DATA4", "USB0_DATA5", "USB0_DATA6", "USB0_DATA7", "USB1_CLK", 1328c2ecf20Sopenharmony_ci "USB1_DIR", "USB1_DATA2", "USB1_NXT", "USB1_DATA0", "USB1_DATA1", 1338c2ecf20Sopenharmony_ci "USB1_STP", "USB1_DATA3", "USB1_DATA4", "USB1_DATA5", "USB1_DATA6", 1348c2ecf20Sopenharmony_ci "USB_DATA7", "WLAN_IRQ", "PMIC_IRQ", /* MIO end and EMIO start */ 1358c2ecf20Sopenharmony_ci "", "", 1368c2ecf20Sopenharmony_ci "", "", "", "", "", "", "", "", "", "", 1378c2ecf20Sopenharmony_ci "", "", "", "", "", "", "", "", "", "", 1388c2ecf20Sopenharmony_ci "", "", "", "", "", "", "", "", "", "", 1398c2ecf20Sopenharmony_ci "", "", "", "", "", "", "", "", "", "", 1408c2ecf20Sopenharmony_ci "", "", "", "", "", "", "", "", "", "", 1418c2ecf20Sopenharmony_ci "", "", "", "", "", "", "", "", "", "", 1428c2ecf20Sopenharmony_ci "", "", "", "", "", "", "", "", "", "", 1438c2ecf20Sopenharmony_ci "", "", "", "", "", "", "", "", "", "", 1448c2ecf20Sopenharmony_ci "", "", "", "", "", "", "", "", "", "", 1458c2ecf20Sopenharmony_ci "", "", "", ""; 1468c2ecf20Sopenharmony_ci}; 1478c2ecf20Sopenharmony_ci 1488c2ecf20Sopenharmony_ci&i2c1 { 1498c2ecf20Sopenharmony_ci status = "okay"; 1508c2ecf20Sopenharmony_ci clock-frequency = <100000>; 1518c2ecf20Sopenharmony_ci i2c-mux@75 { /* u11 */ 1528c2ecf20Sopenharmony_ci compatible = "nxp,pca9548"; 1538c2ecf20Sopenharmony_ci #address-cells = <1>; 1548c2ecf20Sopenharmony_ci #size-cells = <0>; 1558c2ecf20Sopenharmony_ci reg = <0x75>; 1568c2ecf20Sopenharmony_ci i2csw_0: i2c@0 { 1578c2ecf20Sopenharmony_ci #address-cells = <1>; 1588c2ecf20Sopenharmony_ci #size-cells = <0>; 1598c2ecf20Sopenharmony_ci reg = <0>; 1608c2ecf20Sopenharmony_ci label = "LS-I2C0"; 1618c2ecf20Sopenharmony_ci }; 1628c2ecf20Sopenharmony_ci i2csw_1: i2c@1 { 1638c2ecf20Sopenharmony_ci #address-cells = <1>; 1648c2ecf20Sopenharmony_ci #size-cells = <0>; 1658c2ecf20Sopenharmony_ci reg = <1>; 1668c2ecf20Sopenharmony_ci label = "LS-I2C1"; 1678c2ecf20Sopenharmony_ci }; 1688c2ecf20Sopenharmony_ci i2csw_2: i2c@2 { 1698c2ecf20Sopenharmony_ci #address-cells = <1>; 1708c2ecf20Sopenharmony_ci #size-cells = <0>; 1718c2ecf20Sopenharmony_ci reg = <2>; 1728c2ecf20Sopenharmony_ci label = "HS-I2C2"; 1738c2ecf20Sopenharmony_ci }; 1748c2ecf20Sopenharmony_ci i2csw_3: i2c@3 { 1758c2ecf20Sopenharmony_ci #address-cells = <1>; 1768c2ecf20Sopenharmony_ci #size-cells = <0>; 1778c2ecf20Sopenharmony_ci reg = <3>; 1788c2ecf20Sopenharmony_ci label = "HS-I2C3"; 1798c2ecf20Sopenharmony_ci }; 1808c2ecf20Sopenharmony_ci i2csw_4: i2c@4 { 1818c2ecf20Sopenharmony_ci #address-cells = <1>; 1828c2ecf20Sopenharmony_ci #size-cells = <0>; 1838c2ecf20Sopenharmony_ci reg = <0x4>; 1848c2ecf20Sopenharmony_ci 1858c2ecf20Sopenharmony_ci pmic: pmic@5e { /* Custom TI PMIC u33 */ 1868c2ecf20Sopenharmony_ci compatible = "ti,tps65086"; 1878c2ecf20Sopenharmony_ci reg = <0x5e>; 1888c2ecf20Sopenharmony_ci interrupt-parent = <&gpio>; 1898c2ecf20Sopenharmony_ci interrupts = <77 IRQ_TYPE_LEVEL_LOW>; 1908c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1918c2ecf20Sopenharmony_ci gpio-controller; 1928c2ecf20Sopenharmony_ci }; 1938c2ecf20Sopenharmony_ci }; 1948c2ecf20Sopenharmony_ci i2csw_5: i2c@5 { 1958c2ecf20Sopenharmony_ci #address-cells = <1>; 1968c2ecf20Sopenharmony_ci #size-cells = <0>; 1978c2ecf20Sopenharmony_ci reg = <5>; 1988c2ecf20Sopenharmony_ci /* PS_PMBUS */ 1998c2ecf20Sopenharmony_ci u35: ina226@40 { /* u35 */ 2008c2ecf20Sopenharmony_ci compatible = "ti,ina226"; 2018c2ecf20Sopenharmony_ci #io-channel-cells = <1>; 2028c2ecf20Sopenharmony_ci reg = <0x40>; 2038c2ecf20Sopenharmony_ci shunt-resistor = <10000>; 2048c2ecf20Sopenharmony_ci /* MIO31 is alert which should be routed to PMUFW */ 2058c2ecf20Sopenharmony_ci }; 2068c2ecf20Sopenharmony_ci }; 2078c2ecf20Sopenharmony_ci i2csw_6: i2c@6 { 2088c2ecf20Sopenharmony_ci #address-cells = <1>; 2098c2ecf20Sopenharmony_ci #size-cells = <0>; 2108c2ecf20Sopenharmony_ci reg = <6>; 2118c2ecf20Sopenharmony_ci /* 2128c2ecf20Sopenharmony_ci * Not Connected 2138c2ecf20Sopenharmony_ci */ 2148c2ecf20Sopenharmony_ci }; 2158c2ecf20Sopenharmony_ci i2csw_7: i2c@7 { 2168c2ecf20Sopenharmony_ci #address-cells = <1>; 2178c2ecf20Sopenharmony_ci #size-cells = <0>; 2188c2ecf20Sopenharmony_ci reg = <7>; 2198c2ecf20Sopenharmony_ci /* 2208c2ecf20Sopenharmony_ci * usb5744 (DNP) - U5 2218c2ecf20Sopenharmony_ci * 100kHz - this is default freq for us 2228c2ecf20Sopenharmony_ci */ 2238c2ecf20Sopenharmony_ci }; 2248c2ecf20Sopenharmony_ci }; 2258c2ecf20Sopenharmony_ci}; 2268c2ecf20Sopenharmony_ci 2278c2ecf20Sopenharmony_ci&rtc { 2288c2ecf20Sopenharmony_ci status = "okay"; 2298c2ecf20Sopenharmony_ci}; 2308c2ecf20Sopenharmony_ci 2318c2ecf20Sopenharmony_ci/* SD0 only supports 3.3V, no level shifter */ 2328c2ecf20Sopenharmony_ci&sdhci0 { 2338c2ecf20Sopenharmony_ci status = "okay"; 2348c2ecf20Sopenharmony_ci no-1-8-v; 2358c2ecf20Sopenharmony_ci disable-wp; 2368c2ecf20Sopenharmony_ci}; 2378c2ecf20Sopenharmony_ci 2388c2ecf20Sopenharmony_ci&sdhci1 { 2398c2ecf20Sopenharmony_ci status = "okay"; 2408c2ecf20Sopenharmony_ci bus-width = <0x4>; 2418c2ecf20Sopenharmony_ci non-removable; 2428c2ecf20Sopenharmony_ci disable-wp; 2438c2ecf20Sopenharmony_ci cap-power-off-card; 2448c2ecf20Sopenharmony_ci mmc-pwrseq = <&sdio_pwrseq>; 2458c2ecf20Sopenharmony_ci vqmmc-supply = <&wmmcsdio_fixed>; 2468c2ecf20Sopenharmony_ci #address-cells = <1>; 2478c2ecf20Sopenharmony_ci #size-cells = <0>; 2488c2ecf20Sopenharmony_ci wlcore: wifi@2 { 2498c2ecf20Sopenharmony_ci compatible = "ti,wl1831"; 2508c2ecf20Sopenharmony_ci reg = <2>; 2518c2ecf20Sopenharmony_ci interrupt-parent = <&gpio>; 2528c2ecf20Sopenharmony_ci interrupts = <76 IRQ_TYPE_EDGE_RISING>; /* MIO76 WLAN_IRQ 1V8 */ 2538c2ecf20Sopenharmony_ci }; 2548c2ecf20Sopenharmony_ci}; 2558c2ecf20Sopenharmony_ci 2568c2ecf20Sopenharmony_ci&spi0 { /* Low Speed connector */ 2578c2ecf20Sopenharmony_ci status = "okay"; 2588c2ecf20Sopenharmony_ci label = "LS-SPI0"; 2598c2ecf20Sopenharmony_ci num-cs = <1>; 2608c2ecf20Sopenharmony_ci}; 2618c2ecf20Sopenharmony_ci 2628c2ecf20Sopenharmony_ci&spi1 { /* High Speed connector */ 2638c2ecf20Sopenharmony_ci status = "okay"; 2648c2ecf20Sopenharmony_ci label = "HS-SPI1"; 2658c2ecf20Sopenharmony_ci num-cs = <1>; 2668c2ecf20Sopenharmony_ci}; 2678c2ecf20Sopenharmony_ci 2688c2ecf20Sopenharmony_ci&uart0 { 2698c2ecf20Sopenharmony_ci status = "okay"; 2708c2ecf20Sopenharmony_ci bluetooth { 2718c2ecf20Sopenharmony_ci compatible = "ti,wl1831-st"; 2728c2ecf20Sopenharmony_ci enable-gpios = <&gpio 8 GPIO_ACTIVE_HIGH>; 2738c2ecf20Sopenharmony_ci }; 2748c2ecf20Sopenharmony_ci}; 2758c2ecf20Sopenharmony_ci 2768c2ecf20Sopenharmony_ci&uart1 { 2778c2ecf20Sopenharmony_ci status = "okay"; 2788c2ecf20Sopenharmony_ci 2798c2ecf20Sopenharmony_ci}; 2808c2ecf20Sopenharmony_ci 2818c2ecf20Sopenharmony_ci/* ULPI SMSC USB3320 */ 2828c2ecf20Sopenharmony_ci&usb0 { 2838c2ecf20Sopenharmony_ci status = "okay"; 2848c2ecf20Sopenharmony_ci dr_mode = "peripheral"; 2858c2ecf20Sopenharmony_ci}; 2868c2ecf20Sopenharmony_ci 2878c2ecf20Sopenharmony_ci/* ULPI SMSC USB3320 */ 2888c2ecf20Sopenharmony_ci&usb1 { 2898c2ecf20Sopenharmony_ci status = "okay"; 2908c2ecf20Sopenharmony_ci dr_mode = "host"; 2918c2ecf20Sopenharmony_ci}; 2928c2ecf20Sopenharmony_ci 2938c2ecf20Sopenharmony_ci&watchdog0 { 2948c2ecf20Sopenharmony_ci status = "okay"; 2958c2ecf20Sopenharmony_ci}; 296