]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/gnu/dts/arm64/xilinx/zynqmp-zcu100-revC.dts
Merge clang release_80 branch r351543, and resolve conflicts.
[FreeBSD/FreeBSD.git] / sys / gnu / dts / arm64 / xilinx / zynqmp-zcu100-revC.dts
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 };