blob: 6e575a063befbacfcaa8926f0daef2e16702dce7 [file] [log] [blame]
Michal Simeka057d222018-03-28 14:37:47 +02001// 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#include <dt-bindings/phy/phy.h>
19
20/ {
21 model = "ZynqMP ZCU100 RevC";
22 compatible = "xlnx,zynqmp-zcu100-revC", "xlnx,zynqmp-zcu100", "xlnx,zynqmp";
23
24 aliases {
25 gpio0 = &gpio;
26 i2c0 = &i2c1;
27 rtc0 = &rtc;
28 serial0 = &uart1;
29 serial1 = &uart0;
30 serial2 = &dcc;
31 spi0 = &spi0;
32 spi1 = &spi1;
33 usb0 = &usb0;
34 usb1 = &usb1;
35 mmc0 = &sdhci0;
36 mmc1 = &sdhci1;
37 };
38
39 chosen {
40 bootargs = "earlycon";
41 stdout-path = "serial0:115200n8";
42 };
43
44 memory@0 {
45 device_type = "memory";
46 reg = <0x0 0x0 0x0 0x80000000>;
47 };
48
49 gpio-keys {
50 compatible = "gpio-keys";
Michal Simeka057d222018-03-28 14:37:47 +020051 autorepeat;
52 sw4 {
53 label = "sw4";
54 gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
55 linux,code = <KEY_POWER>;
56 gpio-key,wakeup;
57 autorepeat;
58 };
59 };
60
61 iio-hwmon {
62 compatible = "iio-hwmon";
63 io-channels = <&xilinx_ams 0>, <&xilinx_ams 1>, <&xilinx_ams 2>,
64 <&xilinx_ams 3>, <&xilinx_ams 4>, <&xilinx_ams 5>,
65 <&xilinx_ams 6>, <&xilinx_ams 7>, <&xilinx_ams 8>,
66 <&xilinx_ams 9>, <&xilinx_ams 10>,
67 <&xilinx_ams 11>, <&xilinx_ams 12>;
68 };
69
70 leds {
71 compatible = "gpio-leds";
72 ds2 {
73 label = "ds2";
74 gpios = <&gpio 20 GPIO_ACTIVE_HIGH>;
75 linux,default-trigger = "heartbeat";
76 };
77
78 ds3 {
79 label = "ds3";
80 gpios = <&gpio 19 GPIO_ACTIVE_HIGH>;
81 linux,default-trigger = "phy0tx"; /* WLAN tx */
82 default-state = "off";
83 };
84
85 ds4 {
86 label = "ds4";
87 gpios = <&gpio 18 GPIO_ACTIVE_HIGH>;
88 linux,default-trigger = "phy0rx"; /* WLAN rx */
89 default-state = "off";
90 };
91
92 ds5 {
93 label = "ds5";
94 gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
95 linux,default-trigger = "bluetooth-power";
96 };
97
98 vbus_det { /* U5 USB5744 VBUS detection via MIO25 */
99 label = "vbus_det";
100 gpios = <&gpio 25 GPIO_ACTIVE_HIGH>;
101 default-state = "on";
102 };
103 };
104
105 ltc2954: ltc2954 { /* U7 */
106 compatible = "lltc,ltc2954", "lltc,ltc2952";
107 trigger-gpios = <&gpio 26 GPIO_ACTIVE_LOW>; /* INT line - input */
108 /* If there is HW watchdog on mezzanine this signal should be connected there */
109 watchdog-gpios = <&gpio 35 GPIO_ACTIVE_HIGH>; /* MIO on PAD */
110 kill-gpios = <&gpio 34 GPIO_ACTIVE_LOW>; /* KILL signal - output */
111 };
112
113 wmmcsdio_fixed: fixedregulator-mmcsdio {
114 compatible = "regulator-fixed";
115 regulator-name = "wmmcsdio_fixed";
116 regulator-min-microvolt = <3300000>;
117 regulator-max-microvolt = <3300000>;
118 regulator-always-on;
119 regulator-boot-on;
120 };
121
122 sdio_pwrseq: sdio_pwrseq {
123 compatible = "mmc-pwrseq-simple";
124 reset-gpios = <&gpio 7 GPIO_ACTIVE_LOW>; /* WIFI_EN */
125 };
126};
127
128&dcc {
129 status = "okay";
130};
131
132&gpio {
133 status = "okay";
134 gpio-line-names = "UART1_TX", "UART1_RX", "UART0_RX", "UART0_TX", "I2C1_SCL",
135 "I2C1_SDA", "SPI1_SCLK", "WLAN_EN", "BT_EN", "SPI1_CS",
136 "SPI1_MISO", "SPI1_MOSI", "I2C_MUX_RESET", "SD0_DAT0", "SD0_DAT1",
137 "SD0_DAT2", "SD0_DAT3", "PS_LED3", "PS_LED2", "PS_LED1",
138 "PS_LED0", "SD0_CMD", "SD0_CLK", "GPIO_PB", "SD0_DETECT",
139 "VBUS_DET", "POWER_INT", "DP_AUX", "DP_HPD", "DP_OE",
140 "DP_AUX_IN", "INA226_ALERT", "PS_FP_PWR_EN", "PL_PWR_EN", "POWER_KILL",
141 "", "GPIO-A", "GPIO-B", "SPI0_SCLK", "GPIO-C",
142 "GPIO-D", "SPI0_CS", "SPI0_MISO", "SPI_MOSI", "GPIO-E",
143 "GPIO-F", "SD1_D0", "SD1_D1", "SD1_D2", "SD1_D3",
144 "SD1_CMD", "SD1_CLK", "USB0_CLK", "USB0_DIR", "USB0_DATA2",
145 "USB0_NXT", "USB0_DATA0", "USB0_DATA1", "USB0_STP", "USB0_DATA3",
146 "USB0_DATA4", "USB0_DATA5", "USB0_DATA6", "USB0_DATA7", "USB1_CLK",
147 "USB1_DIR", "USB1_DATA2", "USB1_NXT", "USB1_DATA0", "USB1_DATA1",
148 "USB1_STP", "USB1_DATA3", "USB1_DATA4", "USB1_DATA5", "USB1_DATA6",
149 "USB_DATA7", "WLAN_IRQ", "PMIC_IRQ", /* MIO end and EMIO start */
150 "", "",
151 "", "", "", "", "", "", "", "", "", "",
152 "", "", "", "", "", "", "", "", "", "",
153 "", "", "", "", "", "", "", "", "", "",
154 "", "", "", "", "", "", "", "", "", "",
155 "", "", "", "", "", "", "", "", "", "",
156 "", "", "", "", "", "", "", "", "", "",
157 "", "", "", "", "", "", "", "", "", "",
158 "", "", "", "", "", "", "", "", "", "",
159 "", "", "", "", "", "", "", "", "", "",
160 "", "", "", "";
161};
162
163&gpu {
164 status = "okay";
165};
166
167&i2c1 {
168 status = "okay";
169 clock-frequency = <100000>;
170 i2c-mux@75 { /* u11 */
171 compatible = "nxp,pca9548";
172 #address-cells = <1>;
173 #size-cells = <0>;
174 reg = <0x75>;
175 i2csw_0: i2c@0 {
176 #address-cells = <1>;
177 #size-cells = <0>;
178 reg = <0>;
179 label = "LS-I2C0";
180 };
181 i2csw_1: i2c@1 {
182 #address-cells = <1>;
183 #size-cells = <0>;
184 reg = <1>;
185 label = "LS-I2C1";
186 };
187 i2csw_2: i2c@2 {
188 #address-cells = <1>;
189 #size-cells = <0>;
190 reg = <2>;
191 label = "HS-I2C2";
192 };
193 i2csw_3: i2c@3 {
194 #address-cells = <1>;
195 #size-cells = <0>;
196 reg = <3>;
197 label = "HS-I2C3";
198 };
199 i2csw_4: i2c@4 {
200 #address-cells = <1>;
201 #size-cells = <0>;
202 reg = <0x4>;
203
204 pmic: pmic@5e { /* Custom TI PMIC u33 */
205 compatible = "ti,tps65086";
206 reg = <0x5e>;
207 interrupt-parent = <&gpio>;
208 interrupts = <77 GPIO_ACTIVE_LOW>;
209 #gpio-cells = <2>;
210 gpio-controller;
211 };
212 };
213 i2csw_5: i2c@5 {
214 #address-cells = <1>;
215 #size-cells = <0>;
216 reg = <5>;
217 /* PS_PMBUS */
218 ina226@40 { /* u35 */
219 compatible = "ti,ina226";
220 reg = <0x40>;
221 shunt-resistor = <10000>;
222 /* MIO31 is alert which should be routed to PMUFW */
223 };
224 };
225 i2csw_6: i2c@6 {
226 #address-cells = <1>;
227 #size-cells = <0>;
228 reg = <6>;
229 /*
230 * Not Connected
231 */
232 };
233 i2csw_7: i2c@7 {
234 #address-cells = <1>;
235 #size-cells = <0>;
236 reg = <7>;
237 /*
238 * usb5744 (DNP) - U5
239 * 100kHz - this is default freq for us
240 */
241 };
242 };
243};
244
245&rtc {
246 status = "okay";
247};
248
249/* SD0 only supports 3.3V, no level shifter */
250&sdhci0 {
251 status = "okay";
252 no-1-8-v;
Michal Simeka057d222018-03-28 14:37:47 +0200253 disable-wp;
254 xlnx,mio_bank = <0>;
255};
256
257&sdhci1 {
258 status = "okay";
259 bus-width = <0x4>;
260 xlnx,mio_bank = <0>;
261 non-removable;
262 disable-wp;
263 cap-power-off-card;
264 mmc-pwrseq = <&sdio_pwrseq>;
265 vqmmc-supply = <&wmmcsdio_fixed>;
266 #address-cells = <1>;
267 #size-cells = <0>;
268 wlcore: wifi@2 {
269 compatible = "ti,wl1831";
270 reg = <2>;
271 interrupt-parent = <&gpio>;
272 interrupts = <76 IRQ_TYPE_EDGE_RISING>; /* MIO76 WLAN_IRQ 1V8 */
273 };
274};
275
276&serdes {
277 status = "okay";
278};
279
280&spi0 { /* Low Speed connector */
281 status = "okay";
282 label = "LS-SPI0";
283};
284
285&spi1 { /* High Speed connector */
286 status = "okay";
287 label = "HS-SPI1";
288};
289
290&uart0 {
291 status = "okay";
292 bluetooth {
293 compatible = "ti,wl1831-st";
294 enable-gpios = <&gpio 8 GPIO_ACTIVE_HIGH>;
295 };
296
297};
298
299&uart1 {
300 status = "okay";
301
302};
303
304/* ULPI SMSC USB3320 */
305&usb0 {
306 status = "okay";
307};
308
309&dwc3_0 {
310 status = "okay";
311 dr_mode = "peripheral";
312 phy-names = "usb3-phy";
313 phys = <&lane2 PHY_TYPE_USB3 0 0 26000000>;
314 maximum-speed = "super-speed";
315};
316
317/* ULPI SMSC USB3320 */
318&usb1 {
319 status = "okay";
320};
321
322&dwc3_1 {
323 status = "okay";
324 dr_mode = "host";
325 phy-names = "usb3-phy";
326 phys = <&lane3 PHY_TYPE_USB3 1 0 26000000>;
327 maximum-speed = "super-speed";
328};
329
330&watchdog0 {
331 status = "okay";
Michal Simek088fb5d2018-04-19 15:43:50 +0200332 reset-on-timeout;
Michal Simeka057d222018-03-28 14:37:47 +0200333};
334
335&xilinx_ams {
336 status = "okay";
337};
338
339&ams_ps {
340 status = "okay";
341};