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