1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * dts file for Xilinx ZynqMP ZCU100 revC 4 * 5 * (C) Copyright 2016 - 2018, Xilinx, Inc. 6 * 7 * Michal Simek <michal.simek@xilinx.com> 8 * Nathalie Chan King Choy 9 */ 10 11/dts-v1/; 12 13#include "zynqmp.dtsi" 14#include "zynqmp-clk.dtsi" 15#include <dt-bindings/input/input.h> 16#include <dt-bindings/interrupt-controller/irq.h> 17#include <dt-bindings/gpio/gpio.h> 18 19/ { 20 model = "ZynqMP ZCU100 RevC"; 21 compatible = "xlnx,zynqmp-zcu100-revC", "xlnx,zynqmp-zcu100", "xlnx,zynqmp"; 22 23 aliases { 24 i2c0 = &i2c1; 25 rtc0 = &rtc; 26 serial0 = &uart1; 27 serial1 = &uart0; 28 serial2 = &dcc; 29 spi0 = &spi0; 30 spi1 = &spi1; 31 mmc0 = &sdhci0; 32 mmc1 = &sdhci1; 33 }; 34 35 chosen { 36 bootargs = "earlycon"; 37 stdout-path = "serial0:115200n8"; 38 }; 39 40 memory@0 { 41 device_type = "memory"; 42 reg = <0x0 0x0 0x0 0x80000000>; 43 }; 44 45 gpio-keys { 46 compatible = "gpio-keys"; 47 autorepeat; 48 sw4 { 49 label = "sw4"; 50 gpios = <&gpio 23 GPIO_ACTIVE_LOW>; 51 linux,code = <KEY_POWER>; 52 wakeup-source; 53 autorepeat; 54 }; 55 }; 56 57 leds { 58 compatible = "gpio-leds"; 59 ds2 { 60 label = "ds2"; 61 gpios = <&gpio 20 GPIO_ACTIVE_HIGH>; 62 linux,default-trigger = "heartbeat"; 63 }; 64 65 ds3 { 66 label = "ds3"; 67 gpios = <&gpio 19 GPIO_ACTIVE_HIGH>; 68 linux,default-trigger = "phy0tx"; /* WLAN tx */ 69 default-state = "off"; 70 }; 71 72 ds4 { 73 label = "ds4"; 74 gpios = <&gpio 18 GPIO_ACTIVE_HIGH>; 75 linux,default-trigger = "phy0rx"; /* WLAN rx */ 76 default-state = "off"; 77 }; 78 79 ds5 { 80 label = "ds5"; 81 gpios = <&gpio 17 GPIO_ACTIVE_HIGH>; 82 linux,default-trigger = "bluetooth-power"; 83 }; 84 85 vbus-det { /* U5 USB5744 VBUS detection via MIO25 */ 86 label = "vbus_det"; 87 gpios = <&gpio 25 GPIO_ACTIVE_HIGH>; 88 default-state = "on"; 89 }; 90 }; 91 92 wmmcsdio_fixed: fixedregulator-mmcsdio { 93 compatible = "regulator-fixed"; 94 regulator-name = "wmmcsdio_fixed"; 95 regulator-min-microvolt = <3300000>; 96 regulator-max-microvolt = <3300000>; 97 regulator-always-on; 98 regulator-boot-on; 99 }; 100 101 sdio_pwrseq: sdio-pwrseq { 102 compatible = "mmc-pwrseq-simple"; 103 reset-gpios = <&gpio 7 GPIO_ACTIVE_LOW>; /* WIFI_EN */ 104 post-power-on-delay-ms = <10>; 105 }; 106}; 107 108&dcc { 109 status = "okay"; 110}; 111 112&gpio { 113 status = "okay"; 114 gpio-line-names = "UART1_TX", "UART1_RX", "UART0_RX", "UART0_TX", "I2C1_SCL", 115 "I2C1_SDA", "SPI1_SCLK", "WLAN_EN", "BT_EN", "SPI1_CS", 116 "SPI1_MISO", "SPI1_MOSI", "I2C_MUX_RESET", "SD0_DAT0", "SD0_DAT1", 117 "SD0_DAT2", "SD0_DAT3", "PS_LED3", "PS_LED2", "PS_LED1", 118 "PS_LED0", "SD0_CMD", "SD0_CLK", "GPIO_PB", "SD0_DETECT", 119 "VBUS_DET", "POWER_INT", "DP_AUX", "DP_HPD", "DP_OE", 120 "DP_AUX_IN", "INA226_ALERT", "PS_FP_PWR_EN", "PL_PWR_EN", "POWER_KILL", 121 "", "GPIO-A", "GPIO-B", "SPI0_SCLK", "GPIO-C", 122 "GPIO-D", "SPI0_CS", "SPI0_MISO", "SPI_MOSI", "GPIO-E", 123 "GPIO-F", "SD1_D0", "SD1_D1", "SD1_D2", "SD1_D3", 124 "SD1_CMD", "SD1_CLK", "USB0_CLK", "USB0_DIR", "USB0_DATA2", 125 "USB0_NXT", "USB0_DATA0", "USB0_DATA1", "USB0_STP", "USB0_DATA3", 126 "USB0_DATA4", "USB0_DATA5", "USB0_DATA6", "USB0_DATA7", "USB1_CLK", 127 "USB1_DIR", "USB1_DATA2", "USB1_NXT", "USB1_DATA0", "USB1_DATA1", 128 "USB1_STP", "USB1_DATA3", "USB1_DATA4", "USB1_DATA5", "USB1_DATA6", 129 "USB_DATA7", "WLAN_IRQ", "PMIC_IRQ", /* MIO end and EMIO start */ 130 "", "", 131 "", "", "", "", "", "", "", "", "", "", 132 "", "", "", "", "", "", "", "", "", "", 133 "", "", "", "", "", "", "", "", "", "", 134 "", "", "", "", "", "", "", "", "", "", 135 "", "", "", "", "", "", "", "", "", "", 136 "", "", "", "", "", "", "", "", "", "", 137 "", "", "", "", "", "", "", "", "", "", 138 "", "", "", "", "", "", "", "", "", "", 139 "", "", "", "", "", "", "", "", "", "", 140 "", "", "", ""; 141}; 142 143&i2c1 { 144 status = "okay"; 145 clock-frequency = <100000>; 146 i2c-mux@75 { /* u11 */ 147 compatible = "nxp,pca9548"; 148 #address-cells = <1>; 149 #size-cells = <0>; 150 reg = <0x75>; 151 i2csw_0: i2c@0 { 152 #address-cells = <1>; 153 #size-cells = <0>; 154 reg = <0>; 155 label = "LS-I2C0"; 156 }; 157 i2csw_1: i2c@1 { 158 #address-cells = <1>; 159 #size-cells = <0>; 160 reg = <1>; 161 label = "LS-I2C1"; 162 }; 163 i2csw_2: i2c@2 { 164 #address-cells = <1>; 165 #size-cells = <0>; 166 reg = <2>; 167 label = "HS-I2C2"; 168 }; 169 i2csw_3: i2c@3 { 170 #address-cells = <1>; 171 #size-cells = <0>; 172 reg = <3>; 173 label = "HS-I2C3"; 174 }; 175 i2csw_4: i2c@4 { 176 #address-cells = <1>; 177 #size-cells = <0>; 178 reg = <0x4>; 179 180 pmic: pmic@5e { /* Custom TI PMIC u33 */ 181 compatible = "ti,tps65086"; 182 reg = <0x5e>; 183 interrupt-parent = <&gpio>; 184 interrupts = <77 GPIO_ACTIVE_LOW>; 185 #gpio-cells = <2>; 186 gpio-controller; 187 }; 188 }; 189 i2csw_5: i2c@5 { 190 #address-cells = <1>; 191 #size-cells = <0>; 192 reg = <5>; 193 /* PS_PMBUS */ 194 ina226@40 { /* u35 */ 195 compatible = "ti,ina226"; 196 reg = <0x40>; 197 shunt-resistor = <10000>; 198 /* MIO31 is alert which should be routed to PMUFW */ 199 }; 200 }; 201 i2csw_6: i2c@6 { 202 #address-cells = <1>; 203 #size-cells = <0>; 204 reg = <6>; 205 /* 206 * Not Connected 207 */ 208 }; 209 i2csw_7: i2c@7 { 210 #address-cells = <1>; 211 #size-cells = <0>; 212 reg = <7>; 213 /* 214 * usb5744 (DNP) - U5 215 * 100kHz - this is default freq for us 216 */ 217 }; 218 }; 219}; 220 221&rtc { 222 status = "okay"; 223}; 224 225/* SD0 only supports 3.3V, no level shifter */ 226&sdhci0 { 227 status = "okay"; 228 no-1-8-v; 229 broken-cd; /* CD has to be enabled by default */ 230 disable-wp; 231}; 232 233&sdhci1 { 234 status = "okay"; 235 bus-width = <0x4>; 236 non-removable; 237 disable-wp; 238 cap-power-off-card; 239 mmc-pwrseq = <&sdio_pwrseq>; 240 vqmmc-supply = <&wmmcsdio_fixed>; 241 #address-cells = <1>; 242 #size-cells = <0>; 243 wlcore: wifi@2 { 244 compatible = "ti,wl1831"; 245 reg = <2>; 246 interrupt-parent = <&gpio>; 247 interrupts = <76 IRQ_TYPE_EDGE_RISING>; /* MIO76 WLAN_IRQ 1V8 */ 248 }; 249}; 250 251&spi0 { /* Low Speed connector */ 252 status = "okay"; 253 label = "LS-SPI0"; 254}; 255 256&spi1 { /* High Speed connector */ 257 status = "okay"; 258 label = "HS-SPI1"; 259}; 260 261&uart0 { 262 status = "okay"; 263 bluetooth { 264 compatible = "ti,wl1831-st"; 265 enable-gpios = <&gpio 8 GPIO_ACTIVE_HIGH>; 266 }; 267}; 268 269&uart1 { 270 status = "okay"; 271 272}; 273 274/* ULPI SMSC USB3320 */ 275&usb0 { 276 status = "okay"; 277}; 278 279/* ULPI SMSC USB3320 */ 280&usb1 { 281 status = "okay"; 282}; 283 284&watchdog0 { 285 status = "okay"; 286}; 287