blob: 28732249cfc0c93f4796131679d0b956c44b99af [file] [log] [blame]
Andrey Smirnov19fddda2018-07-19 12:57:24 -07001// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2
3/*
4 * Copyright (C) 2018 Zodiac Inflight Innovations
5 */
6
7/dts-v1/;
8#include "vf610.dtsi"
9
10/ {
11 model = "ZII VF610 CFU1 Board";
12 compatible = "zii,vf610cfu1", "zii,vf610dev", "fsl,vf610";
13
14 chosen {
15 stdout-path = &uart0;
16 };
17
18 memory@80000000 {
Fabio Estevamf535d102018-11-30 22:44:52 -020019 device_type = "memory";
Andrey Smirnov19fddda2018-07-19 12:57:24 -070020 reg = <0x80000000 0x20000000>;
21 };
22
23 gpio-leds {
24 compatible = "gpio-leds";
25 pinctrl-0 = <&pinctrl_leds_debug>;
26 pinctrl-names = "default";
27
28 led-debug {
29 label = "zii:green:debug1";
30 gpios = <&gpio2 18 GPIO_ACTIVE_HIGH>;
31 linux,default-trigger = "heartbeat";
Andrey Smirnov19fddda2018-07-19 12:57:24 -070032 };
33
34 led-fail {
35 label = "zii:red:fail";
36 gpios = <&gpio3 12 GPIO_ACTIVE_LOW>;
37 default-state = "off";
Andrey Smirnov19fddda2018-07-19 12:57:24 -070038 };
39
40 led-status {
41 label = "zii:green:status";
42 gpios = <&gpio3 13 GPIO_ACTIVE_HIGH>;
43 default-state = "off";
Andrey Smirnov19fddda2018-07-19 12:57:24 -070044 };
45
46 led-debug-a {
47 label = "zii:green:debug_a";
48 gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
49 default-state = "off";
Andrey Smirnov19fddda2018-07-19 12:57:24 -070050 };
51
52 led-debug-b {
53 label = "zii:green:debug_b";
54 gpios = <&gpio3 15 GPIO_ACTIVE_HIGH>;
55 default-state = "off";
Andrey Smirnov19fddda2018-07-19 12:57:24 -070056 };
57 };
58
59 reg_vcc_3v3_mcu: regulator-vcc-3v3-mcu {
60 compatible = "regulator-fixed";
61 regulator-name = "vcc_3v3_mcu";
62 regulator-min-microvolt = <3300000>;
63 regulator-max-microvolt = <3300000>;
64 };
Andrew Lunnd482cc62018-09-02 18:29:11 +020065
66 sff: sfp {
67 compatible = "sff,sff";
68 pinctrl-0 = <&pinctrl_optical>;
69 pinctrl-names = "default";
70 i2c-bus = <&i2c0>;
71 los-gpio = <&gpio4 4 GPIO_ACTIVE_HIGH>;
72 tx-disable-gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
73 };
Andrey Smirnov19fddda2018-07-19 12:57:24 -070074};
75
76&adc0 {
77 vref-supply = <&reg_vcc_3v3_mcu>;
78 status = "okay";
79};
80
81&adc1 {
82 vref-supply = <&reg_vcc_3v3_mcu>;
83 status = "okay";
84};
85
86&dspi1 {
87 bus-num = <1>;
88 pinctrl-names = "default";
89 pinctrl-0 = <&pinctrl_dspi1>;
Andrey Smirnov5f0a88a2019-03-25 11:30:17 -070090 /*
91 * Some CFU1s come with SPI-NOR chip DNPed, so we leave this
92 * node disabled by default and rely on bootloader to enable
93 * it when appropriate.
94 */
95 status = "disabled";
Andrey Smirnov19fddda2018-07-19 12:57:24 -070096
Fabio Estevam00e3ff82019-04-03 09:53:14 -030097 flash@0 {
Andrey Smirnov19fddda2018-07-19 12:57:24 -070098 #address-cells = <1>;
99 #size-cells = <1>;
100 compatible = "m25p128", "jedec,spi-nor";
101 reg = <0>;
102 spi-max-frequency = <50000000>;
103
104 partition@0 {
105 label = "m25p128-0";
106 reg = <0x0 0x01000000>;
107 };
108 };
109};
110
111&edma0 {
112 status = "okay";
113};
114
115&edma1 {
116 status = "okay";
117};
118
119&esdhc0 {
120 pinctrl-names = "default";
121 pinctrl-0 = <&pinctrl_esdhc0>;
122 bus-width = <8>;
123 non-removable;
124 no-1-8-v;
125 keep-power-in-suspend;
Fabio Estevam466b6bd2018-09-11 17:10:46 -0300126 no-sdio;
Fabio Estevam6656c392018-09-11 17:10:47 -0300127 no-sd;
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700128 status = "okay";
129};
130
131&esdhc1 {
132 pinctrl-names = "default";
133 pinctrl-0 = <&pinctrl_esdhc1>;
134 bus-width = <4>;
Fabio Estevam466b6bd2018-09-11 17:10:46 -0300135 no-sdio;
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700136 status = "okay";
137};
138
139&fec1 {
140 phy-mode = "rmii";
141 pinctrl-names = "default";
142 pinctrl-0 = <&pinctrl_fec1>;
143 status = "okay";
144
145 fixed-link {
146 speed = <100>;
147 full-duplex;
148 };
149
150 mdio1: mdio {
151 #address-cells = <1>;
152 #size-cells = <0>;
153 status = "okay";
154
155 switch0: switch0@0 {
156 compatible = "marvell,mv88e6085";
157 pinctrl-names = "default";
158 pinctrl-0 = <&pinctrl_switch>;
159 reg = <0>;
160 eeprom-length = <512>;
161 interrupt-parent = <&gpio3>;
162 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
163 interrupt-controller;
164 #interrupt-cells = <2>;
165 reset-gpios = <&gpio3 11 GPIO_ACTIVE_LOW>;
166
167 ports {
168 #address-cells = <1>;
169 #size-cells = <0>;
170
171 port@0 {
172 reg = <0>;
173 label = "eth_cu_1000_1";
174 };
175
176 port@1 {
177 reg = <1>;
178 label = "eth_cu_1000_2";
179 };
180
181 port@2 {
182 reg = <2>;
183 label = "eth_cu_1000_3";
184 };
185
Andrew Lunnd482cc62018-09-02 18:29:11 +0200186 port@5 {
187 reg = <5>;
188 label = "eth_fc_1000_1";
189 phy-mode = "1000base-x";
190 managed = "in-band-status";
191 sfp = <&sff>;
192 };
193
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700194 port@6 {
195 reg = <6>;
196 label = "cpu";
197 ethernet = <&fec1>;
198
199 fixed-link {
200 speed = <100>;
201 full-duplex;
202 };
203 };
204 };
205 };
206 };
207};
208
209&i2c0 {
Andrey Smirnov80159242019-08-20 18:39:36 -0700210 clock-frequency = <100000>;
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700211 pinctrl-names = "default";
212 pinctrl-0 = <&pinctrl_i2c0>;
213 status = "okay";
214
Fabio Estevam00e3ff82019-04-03 09:53:14 -0300215 io-expander@22 {
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700216 compatible = "nxp,pca9554";
217 reg = <0x22>;
218 gpio-controller;
219 };
220
221 lm75@48 {
222 compatible = "national,lm75";
223 reg = <0x48>;
224 };
225
Fabio Estevam00e3ff82019-04-03 09:53:14 -0300226 eeprom@52 {
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700227 compatible = "atmel,24c04";
228 reg = <0x52>;
229 label = "nvm";
230 };
231
Fabio Estevam00e3ff82019-04-03 09:53:14 -0300232 eeprom@54 {
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700233 compatible = "atmel,24c04";
234 reg = <0x54>;
235 label = "nameplate";
236 };
237};
238
Andrey Smirnov876eb9b2019-08-14 12:35:36 -0700239&i2c1 {
240 clock-frequency = <100000>;
241 pinctrl-names = "default";
242 pinctrl-0 = <&pinctrl_i2c1>;
243 status = "okay";
244
245 watchdog@38 {
246 compatible = "zii,rave-wdt";
247 reg = <0x38>;
248 };
249};
250
Fabio Estevam8da0af52019-02-13 16:24:38 -0200251&snvsrtc {
252 status = "disabled";
253};
254
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700255&uart0 {
256 pinctrl-names = "default";
257 pinctrl-0 = <&pinctrl_uart0>;
258 status = "okay";
259};
260
261&iomuxc {
262 pinctrl_dspi1: dspi1grp {
263 fsl,pins = <
264 VF610_PAD_PTD5__DSPI1_CS0 0x1182
265 VF610_PAD_PTC6__DSPI1_SIN 0x1181
266 VF610_PAD_PTC7__DSPI1_SOUT 0x1182
267 VF610_PAD_PTC8__DSPI1_SCK 0x1182
268 >;
269 };
270
271 pinctrl_esdhc0: esdhc0grp {
272 fsl,pins = <
273 VF610_PAD_PTC0__ESDHC0_CLK 0x31ef
274 VF610_PAD_PTC1__ESDHC0_CMD 0x31ef
275 VF610_PAD_PTC2__ESDHC0_DAT0 0x31ef
276 VF610_PAD_PTC3__ESDHC0_DAT1 0x31ef
277 VF610_PAD_PTC4__ESDHC0_DAT2 0x31ef
278 VF610_PAD_PTC5__ESDHC0_DAT3 0x31ef
279 VF610_PAD_PTD23__ESDHC0_DAT4 0x31ef
280 VF610_PAD_PTD22__ESDHC0_DAT5 0x31ef
281 VF610_PAD_PTD21__ESDHC0_DAT6 0x31ef
282 VF610_PAD_PTD20__ESDHC0_DAT7 0x31ef
283 >;
284 };
285
286 pinctrl_esdhc1: esdhc1grp {
287 fsl,pins = <
288 VF610_PAD_PTA24__ESDHC1_CLK 0x31ef
289 VF610_PAD_PTA25__ESDHC1_CMD 0x31ef
290 VF610_PAD_PTA26__ESDHC1_DAT0 0x31ef
291 VF610_PAD_PTA27__ESDHC1_DAT1 0x31ef
292 VF610_PAD_PTA28__ESDHC1_DATA2 0x31ef
293 VF610_PAD_PTA29__ESDHC1_DAT3 0x31ef
294 >;
295 };
296
297 pinctrl_fec1: fec1grp {
298 fsl,pins = <
299 VF610_PAD_PTA6__RMII_CLKIN 0x30d1
300 VF610_PAD_PTC9__ENET_RMII1_MDC 0x30fe
301 VF610_PAD_PTC10__ENET_RMII1_MDIO 0x30d3
302 VF610_PAD_PTC11__ENET_RMII1_CRS 0x30d1
303 VF610_PAD_PTC12__ENET_RMII1_RXD1 0x30d1
304 VF610_PAD_PTC13__ENET_RMII1_RXD0 0x30d1
305 VF610_PAD_PTC14__ENET_RMII1_RXER 0x30d1
306 VF610_PAD_PTC15__ENET_RMII1_TXD1 0x30d2
307 VF610_PAD_PTC16__ENET_RMII1_TXD0 0x30d2
308 VF610_PAD_PTC17__ENET_RMII1_TXEN 0x30d2
309 >;
310 };
311
312 pinctrl_i2c0: i2c0grp {
313 fsl,pins = <
314 VF610_PAD_PTB14__I2C0_SCL 0x37ff
315 VF610_PAD_PTB15__I2C0_SDA 0x37ff
316 >;
317 };
318
Andrey Smirnov876eb9b2019-08-14 12:35:36 -0700319 pinctrl_i2c1: i2c1grp {
320 fsl,pins = <
321 VF610_PAD_PTB16__I2C1_SCL 0x37ff
322 VF610_PAD_PTB17__I2C1_SDA 0x37ff
323 >;
324 };
325
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700326 pinctrl_leds_debug: pinctrl-leds-debug {
327 fsl,pins = <
328 VF610_PAD_PTD3__GPIO_82 0x31c2
329 VF610_PAD_PTE3__GPIO_108 0x31c2
330 VF610_PAD_PTE4__GPIO_109 0x31c2
331 VF610_PAD_PTE5__GPIO_110 0x31c2
332 VF610_PAD_PTE6__GPIO_111 0x31c2
333 >;
334 };
335
Andrew Lunnd482cc62018-09-02 18:29:11 +0200336 pinctrl_optical: optical-grp {
337 fsl,pins = <
338 /* SFF SD input */
339 VF610_PAD_PTE27__GPIO_132 0x3061
340
341 /* SFF Transmit disable output */
342 VF610_PAD_PTE13__GPIO_118 0x3043
343 >;
344 };
345
Andrey Smirnov19fddda2018-07-19 12:57:24 -0700346 pinctrl_switch: switch-grp {
347 fsl,pins = <
348 VF610_PAD_PTB28__GPIO_98 0x3061
349 VF610_PAD_PTE2__GPIO_107 0x1042
350 >;
351 };
352
353 pinctrl_uart0: uart0grp {
354 fsl,pins = <
355 VF610_PAD_PTB10__UART0_TX 0x21a2
356 VF610_PAD_PTB11__UART0_RX 0x21a1
357 >;
358 };
359};