blob: 8d47f24b757b50fe17dc9b3c3d85f906a462b9cf [file] [log] [blame]
Michal Simek71d84b42018-03-27 13:43:05 +02001// SPDX-License-Identifier: GPL-2.0+
Jagannadha Sutradharudu Tekifc0d22b2014-01-09 01:48:29 +05302/*
Michal Simeke2612e12015-07-22 11:12:10 +02003 * Copyright (C) 2011 - 2015 Xilinx
4 * Copyright (C) 2012 National Instruments Corp.
Jagannadha Sutradharudu Tekifc0d22b2014-01-09 01:48:29 +05305 */
6/dts-v1/;
7#include "zynq-7000.dtsi"
Manikanta Guntupallicc45c9c2023-07-10 14:37:28 +02008#include <dt-bindings/gpio/gpio.h>
Jagannadha Sutradharudu Tekifc0d22b2014-01-09 01:48:29 +05309
10/ {
Luis Aranedaac891162018-07-12 00:10:20 -040011 model = "Xilinx ZC702 board";
Jagannadha Sutradharudu Tekifc0d22b2014-01-09 01:48:29 +053012 compatible = "xlnx,zynq-zc702", "xlnx,zynq-7000";
Masahiro Yamadad6367a22014-05-15 20:37:54 +090013
Masahiro Yamada87f645e2014-05-15 20:37:55 +090014 aliases {
Michal Simeke2612e12015-07-22 11:12:10 +020015 ethernet0 = &gem0;
16 i2c0 = &i2c0;
Masahiro Yamada87f645e2014-05-15 20:37:55 +090017 serial0 = &uart1;
Jagan Teki0ac0ffb2015-08-15 23:15:21 +053018 spi0 = &qspi;
Michal Simek9ecd2682015-11-30 16:13:03 +010019 mmc0 = &sdhci0;
Vipul Kumardd3f8dc2018-08-07 16:30:04 +053020 usb0 = &usb0;
Michal Simek865bb3b2022-09-27 09:55:12 +020021 nvmem0 = &eeprom;
Michal Simeke42a0392022-09-27 13:50:26 +020022 rtc0 = &rtc;
Masahiro Yamada87f645e2014-05-15 20:37:55 +090023 };
24
Michal Simekb3585f42016-11-11 13:11:37 +010025 memory@0 {
Masahiro Yamadad6367a22014-05-15 20:37:54 +090026 device_type = "memory";
Michal Simeke2612e12015-07-22 11:12:10 +020027 reg = <0x0 0x40000000>;
Masahiro Yamadad6367a22014-05-15 20:37:54 +090028 };
Michal Simeke2612e12015-07-22 11:12:10 +020029
30 chosen {
Michal Simek8073b862016-04-07 11:15:00 +020031 bootargs = "";
Michal Simeke2612e12015-07-22 11:12:10 +020032 stdout-path = "serial0:115200n8";
33 };
34
Michal Simek064be102015-07-22 11:41:11 +020035 gpio-keys {
36 compatible = "gpio-keys";
Michal Simek064be102015-07-22 11:41:11 +020037 autorepeat;
Krzysztof Kozlowski32c25c82022-06-15 17:53:24 -070038 switch-14 {
Michal Simek064be102015-07-22 11:41:11 +020039 label = "sw14";
40 gpios = <&gpio0 12 0>;
41 linux,code = <108>; /* down */
Sudeep Holla46521572015-10-21 11:10:16 +010042 wakeup-source;
Michal Simek064be102015-07-22 11:41:11 +020043 autorepeat;
44 };
Krzysztof Kozlowski32c25c82022-06-15 17:53:24 -070045 switch-13 {
Michal Simek064be102015-07-22 11:41:11 +020046 label = "sw13";
47 gpios = <&gpio0 14 0>;
48 linux,code = <103>; /* up */
Sudeep Holla46521572015-10-21 11:10:16 +010049 wakeup-source;
Michal Simek064be102015-07-22 11:41:11 +020050 autorepeat;
51 };
52 };
53
Michal Simeke2612e12015-07-22 11:12:10 +020054 leds {
55 compatible = "gpio-leds";
56
Michal Simek958c0e92020-11-26 14:25:02 +010057 led-ds23 {
Michal Simeke2612e12015-07-22 11:12:10 +020058 label = "ds23";
59 gpios = <&gpio0 10 0>;
60 linux,default-trigger = "heartbeat";
61 };
62 };
63
64 usb_phy0: phy0 {
65 compatible = "usb-nop-xceiv";
66 #phy-cells = <0>;
67 };
68};
69
Michal Simeke2612e12015-07-22 11:12:10 +020070&can0 {
71 status = "okay";
72 pinctrl-names = "default";
73 pinctrl-0 = <&pinctrl_can0_default>;
74};
75
76&clkc {
77 ps-clk-frequency = <33333333>;
78};
79
80&gem0 {
81 status = "okay";
82 phy-mode = "rgmii-id";
83 phy-handle = <&ethernet_phy>;
84 pinctrl-names = "default";
85 pinctrl-0 = <&pinctrl_gem0_default>;
Punnaiah Choudary Kallurib3d15312016-02-03 15:27:18 +053086 phy-reset-gpio = <&gpio0 11 0>;
87 phy-reset-active-low;
Michal Simeke2612e12015-07-22 11:12:10 +020088
89 ethernet_phy: ethernet-phy@7 {
90 reg = <7>;
Sai Pavan Boddub2ed84b2017-03-06 18:17:19 +053091 device_type = "ethernet-phy";
Michal Simeke2612e12015-07-22 11:12:10 +020092 };
93};
94
95&gpio0 {
96 pinctrl-names = "default";
97 pinctrl-0 = <&pinctrl_gpio0_default>;
98};
99
100&i2c0 {
101 status = "okay";
102 clock-frequency = <400000>;
Chirag Parekh0d7fcb12016-12-27 22:07:58 +0530103 pinctrl-names = "default", "gpio";
Michal Simeke2612e12015-07-22 11:12:10 +0200104 pinctrl-0 = <&pinctrl_i2c0_default>;
Chirag Parekh0d7fcb12016-12-27 22:07:58 +0530105 pinctrl-1 = <&pinctrl_i2c0_gpio>;
Manikanta Guntupallicc45c9c2023-07-10 14:37:28 +0200106 scl-gpios = <&gpio0 50 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
107 sda-gpios = <&gpio0 51 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
Michal Simeke2612e12015-07-22 11:12:10 +0200108
Michal Simekf6fd3f22018-02-06 14:00:30 +0100109 i2c-mux@74 {
Michal Simeke2612e12015-07-22 11:12:10 +0200110 compatible = "nxp,pca9548";
111 #address-cells = <1>;
112 #size-cells = <0>;
113 reg = <0x74>;
114
115 i2c@0 {
116 #address-cells = <1>;
117 #size-cells = <0>;
118 reg = <0>;
119 si570: clock-generator@5d {
120 #clock-cells = <0>;
121 compatible = "silabs,si570";
122 temperature-stability = <50>;
123 reg = <0x5d>;
124 factory-fout = <156250000>;
125 clock-frequency = <148500000>;
126 };
127 };
128
Christian Kohn9d979ac2015-11-12 15:53:35 -0800129 i2c@1 {
130 #address-cells = <1>;
131 #size-cells = <0>;
132 reg = <1>;
133 adv7511: hdmi-tx@39 {
134 compatible = "adi,adv7511";
135 reg = <0x39>;
136 adi,input-depth = <8>;
137 adi,input-colorspace = "yuv422";
138 adi,input-clock = "1x";
139 adi,input-style = <3>;
140 adi,input-justification = "right";
141 };
142 };
143
Michal Simeke2612e12015-07-22 11:12:10 +0200144 i2c@2 {
145 #address-cells = <1>;
146 #size-cells = <0>;
147 reg = <2>;
Michal Simek865bb3b2022-09-27 09:55:12 +0200148 eeprom: eeprom@54 {
Javier Martinez Canillasa2ce2722017-06-15 20:54:12 +0200149 compatible = "atmel,24c08";
Michal Simeke2612e12015-07-22 11:12:10 +0200150 reg = <0x54>;
151 };
152 };
153
154 i2c@3 {
155 #address-cells = <1>;
156 #size-cells = <0>;
157 reg = <3>;
158 gpio@21 {
159 compatible = "ti,tca6416";
160 reg = <0x21>;
161 gpio-controller;
162 #gpio-cells = <2>;
163 };
164 };
165
166 i2c@4 {
167 #address-cells = <1>;
168 #size-cells = <0>;
169 reg = <4>;
Michal Simeke42a0392022-09-27 13:50:26 +0200170 rtc: rtc@51 {
Michal Simeke2612e12015-07-22 11:12:10 +0200171 compatible = "nxp,pcf8563";
172 reg = <0x51>;
173 };
174 };
175
176 i2c@7 {
177 #address-cells = <1>;
178 #size-cells = <0>;
179 reg = <7>;
Quanyang Wang8242d1d2019-09-23 17:47:08 +0800180 hwmon@34 {
Michal Simeke2612e12015-07-22 11:12:10 +0200181 compatible = "ti,ucd9248";
Quanyang Wang8242d1d2019-09-23 17:47:08 +0800182 reg = <0x34>;
Michal Simeke2612e12015-07-22 11:12:10 +0200183 };
Quanyang Wang8242d1d2019-09-23 17:47:08 +0800184 hwmon@35 {
Michal Simeke2612e12015-07-22 11:12:10 +0200185 compatible = "ti,ucd9248";
Quanyang Wang8242d1d2019-09-23 17:47:08 +0800186 reg = <0x35>;
Michal Simeke2612e12015-07-22 11:12:10 +0200187 };
Quanyang Wang8242d1d2019-09-23 17:47:08 +0800188 hwmon@36 {
Michal Simeke2612e12015-07-22 11:12:10 +0200189 compatible = "ti,ucd9248";
Quanyang Wang8242d1d2019-09-23 17:47:08 +0800190 reg = <0x36>;
Michal Simeke2612e12015-07-22 11:12:10 +0200191 };
192 };
193 };
194};
195
196&pinctrl0 {
197 pinctrl_can0_default: can0-default {
198 mux {
199 function = "can0";
200 groups = "can0_9_grp";
201 };
202
203 conf {
204 groups = "can0_9_grp";
205 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600206 power-source = <1>;
Michal Simeke2612e12015-07-22 11:12:10 +0200207 };
208
209 conf-rx {
210 pins = "MIO46";
211 bias-high-impedance;
212 };
213
214 conf-tx {
215 pins = "MIO47";
216 bias-disable;
217 };
218 };
219
220 pinctrl_gem0_default: gem0-default {
221 mux {
222 function = "ethernet0";
223 groups = "ethernet0_0_grp";
224 };
225
226 conf {
227 groups = "ethernet0_0_grp";
228 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600229 power-source = <4>;
Michal Simeke2612e12015-07-22 11:12:10 +0200230 };
231
232 conf-rx {
233 pins = "MIO22", "MIO23", "MIO24", "MIO25", "MIO26", "MIO27";
234 bias-high-impedance;
235 low-power-disable;
236 };
237
238 conf-tx {
239 pins = "MIO16", "MIO17", "MIO18", "MIO19", "MIO20", "MIO21";
240 bias-disable;
241 low-power-enable;
242 };
243
244 mux-mdio {
245 function = "mdio0";
246 groups = "mdio0_0_grp";
247 };
248
249 conf-mdio {
250 groups = "mdio0_0_grp";
251 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600252 power-source = <1>;
Michal Simeke2612e12015-07-22 11:12:10 +0200253 bias-disable;
254 };
255 };
256
257 pinctrl_gpio0_default: gpio0-default {
258 mux {
259 function = "gpio0";
260 groups = "gpio0_7_grp", "gpio0_8_grp", "gpio0_9_grp",
261 "gpio0_10_grp", "gpio0_11_grp", "gpio0_12_grp",
262 "gpio0_13_grp", "gpio0_14_grp";
263 };
264
265 conf {
266 groups = "gpio0_7_grp", "gpio0_8_grp", "gpio0_9_grp",
267 "gpio0_10_grp", "gpio0_11_grp", "gpio0_12_grp",
268 "gpio0_13_grp", "gpio0_14_grp";
269 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600270 power-source = <1>;
Michal Simeke2612e12015-07-22 11:12:10 +0200271 };
272
273 conf-pull-up {
274 pins = "MIO9", "MIO10", "MIO11", "MIO12", "MIO13", "MIO14";
275 bias-pull-up;
276 };
277
278 conf-pull-none {
279 pins = "MIO7", "MIO8";
280 bias-disable;
281 };
282 };
283
284 pinctrl_i2c0_default: i2c0-default {
285 mux {
286 groups = "i2c0_10_grp";
287 function = "i2c0";
288 };
289
290 conf {
291 groups = "i2c0_10_grp";
292 bias-pull-up;
293 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600294 power-source = <1>;
Michal Simeke2612e12015-07-22 11:12:10 +0200295 };
296 };
297
Chirag Parekh0d7fcb12016-12-27 22:07:58 +0530298 pinctrl_i2c0_gpio: i2c0-gpio {
299 mux {
300 groups = "gpio0_50_grp", "gpio0_51_grp";
301 function = "gpio0";
302 };
303
304 conf {
305 groups = "gpio0_50_grp", "gpio0_51_grp";
306 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600307 power-source = <1>;
Chirag Parekh0d7fcb12016-12-27 22:07:58 +0530308 };
309 };
310
Michal Simeke2612e12015-07-22 11:12:10 +0200311 pinctrl_sdhci0_default: sdhci0-default {
312 mux {
313 groups = "sdio0_2_grp";
314 function = "sdio0";
315 };
316
317 conf {
318 groups = "sdio0_2_grp";
319 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600320 power-source = <1>;
Michal Simeke2612e12015-07-22 11:12:10 +0200321 bias-disable;
322 };
323
324 mux-cd {
325 groups = "gpio0_0_grp";
326 function = "sdio0_cd";
327 };
328
329 conf-cd {
330 groups = "gpio0_0_grp";
331 bias-high-impedance;
332 bias-pull-up;
333 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600334 power-source = <1>;
Michal Simeke2612e12015-07-22 11:12:10 +0200335 };
336
337 mux-wp {
338 groups = "gpio0_15_grp";
339 function = "sdio0_wp";
340 };
341
342 conf-wp {
343 groups = "gpio0_15_grp";
344 bias-high-impedance;
345 bias-pull-up;
346 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600347 power-source = <1>;
Michal Simeke2612e12015-07-22 11:12:10 +0200348 };
349 };
350
351 pinctrl_uart1_default: uart1-default {
352 mux {
353 groups = "uart1_10_grp";
354 function = "uart1";
355 };
356
357 conf {
358 groups = "uart1_10_grp";
359 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600360 power-source = <1>;
Michal Simeke2612e12015-07-22 11:12:10 +0200361 };
362
363 conf-rx {
364 pins = "MIO49";
365 bias-high-impedance;
366 };
367
368 conf-tx {
369 pins = "MIO48";
370 bias-disable;
371 };
372 };
373
374 pinctrl_usb0_default: usb0-default {
375 mux {
376 groups = "usb0_0_grp";
377 function = "usb0";
378 };
379
380 conf {
381 groups = "usb0_0_grp";
382 slew-rate = <0>;
Sai Krishna Potthuria735bc82021-08-06 01:41:46 -0600383 power-source = <1>;
Michal Simeke2612e12015-07-22 11:12:10 +0200384 };
385
386 conf-rx {
387 pins = "MIO29", "MIO31", "MIO36";
388 bias-high-impedance;
389 };
390
391 conf-tx {
392 pins = "MIO28", "MIO30", "MIO32", "MIO33", "MIO34",
393 "MIO35", "MIO37", "MIO38", "MIO39";
394 bias-disable;
395 };
396 };
397};
398
Michal Simek6603e1c2016-04-07 13:04:15 +0200399&qspi {
Simon Glassd3a98cb2023-02-13 08:56:33 -0700400 bootph-all;
Michal Simek6603e1c2016-04-07 13:04:15 +0200401 status = "okay";
Michal Simekeacca2f2021-08-06 13:30:19 +0200402 num-cs = <1>;
403 flash@0 {
404 compatible = "n25q128a11", "jedec,spi-nor";
405 reg = <0x0>;
406 spi-tx-bus-width = <1>;
407 spi-rx-bus-width = <4>;
408 spi-max-frequency = <50000000>;
409 };
Michal Simek6603e1c2016-04-07 13:04:15 +0200410};
411
Michal Simeke2612e12015-07-22 11:12:10 +0200412&sdhci0 {
Simon Glassd3a98cb2023-02-13 08:56:33 -0700413 bootph-all;
Michal Simeke2612e12015-07-22 11:12:10 +0200414 status = "okay";
415 pinctrl-names = "default";
416 pinctrl-0 = <&pinctrl_sdhci0_default>;
417};
418
419&uart1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -0700420 bootph-all;
Michal Simeke2612e12015-07-22 11:12:10 +0200421 status = "okay";
422 pinctrl-names = "default";
423 pinctrl-0 = <&pinctrl_uart1_default>;
424};
425
426&usb0 {
427 status = "okay";
428 dr_mode = "host";
429 usb-phy = <&usb_phy0>;
430 pinctrl-names = "default";
431 pinctrl-0 = <&pinctrl_usb0_default>;
Jagannadha Sutradharudu Tekifc0d22b2014-01-09 01:48:29 +0530432};