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