blob: 569614b08f048fc935ff650e8379732638a0dd97 [file] [log] [blame]
Andrew Lunn4a2c2592019-02-06 00:16:41 +01001// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2
3/*
4 * Device tree file for ZII's SSMB DTU board
5 *
6 * SSMB - SPU3 Switch Management Board
7 * DTU - Digital Tapping Unit
8 *
9 * Copyright (C) 2015-2019 Zodiac Inflight Innovations
10 *
11 * Based on an original 'vf610-twr.dts' which is Copyright 2015,
12 * Freescale Semiconductor, Inc.
13 */
14
15/dts-v1/;
16#include "vf610.dtsi"
17
18/ {
19 model = "ZII VF610 SSMB DTU Board";
20 compatible = "zii,vf610dtu", "zii,vf610dev", "fsl,vf610";
21
22 chosen {
23 stdout-path = &uart0;
24 };
25
26 memory@80000000 {
27 device_type = "memory";
28 reg = <0x80000000 0x20000000>;
29 };
30
31 gpio-leds {
32 compatible = "gpio-leds";
33 pinctrl-0 = <&pinctrl_leds_debug>;
34 pinctrl-names = "default";
35
36 led-debug {
37 label = "zii:green:debug1";
38 gpios = <&gpio2 18 GPIO_ACTIVE_HIGH>;
39 linux,default-trigger = "heartbeat";
Andrew Lunn4a2c2592019-02-06 00:16:41 +010040 };
41 };
42
43 reg_vcc_3v3_mcu: regulator {
44 compatible = "regulator-fixed";
45 regulator-name = "vcc_3v3_mcu";
46 regulator-min-microvolt = <3300000>;
47 regulator-max-microvolt = <3300000>;
48 };
Andrey Smirnova049c962020-01-14 07:19:03 -080049
50 supply-voltage-monitor {
51 compatible = "iio-hwmon";
52 io-channels = <&adc0 8>, /* 12V_MAIN */
53 <&adc0 9>, /* +3.3V */
54 <&adc1 8>, /* VCC_1V5 */
55 <&adc1 9>; /* VCC_1V2 */
56 };
Andrew Lunn4a2c2592019-02-06 00:16:41 +010057};
58
59&adc0 {
60 vref-supply = <&reg_vcc_3v3_mcu>;
61 status = "okay";
62};
63
64&adc1 {
65 vref-supply = <&reg_vcc_3v3_mcu>;
66 status = "okay";
67};
68
69&edma0 {
70 status = "okay";
71};
72
73&edma1 {
74 status = "okay";
75};
76
77&esdhc0 {
78 pinctrl-names = "default";
79 pinctrl-0 = <&pinctrl_esdhc0>;
80 bus-width = <8>;
81 non-removable;
82 no-1-8-v;
83 keep-power-in-suspend;
Chris Healy2b4bd732020-07-15 14:31:48 -070084 no-sdio;
85 no-sd;
Andrew Lunn4a2c2592019-02-06 00:16:41 +010086 status = "okay";
87};
88
89&esdhc1 {
90 pinctrl-names = "default";
91 pinctrl-0 = <&pinctrl_esdhc1>;
92 bus-width = <4>;
Chris Healy2b4bd732020-07-15 14:31:48 -070093 no-sdio;
Andrew Lunn4a2c2592019-02-06 00:16:41 +010094 status = "okay";
95};
96
97&fec1 {
98 phy-mode = "rmii";
99 pinctrl-names = "default";
100 pinctrl-0 = <&pinctrl_fec1>;
101 status = "okay";
102
103 fixed-link {
104 speed = <100>;
105 full-duplex;
106 };
107
108 mdio1: mdio {
109 #address-cells = <1>;
110 #size-cells = <0>;
Chris Healyb9553872020-07-07 18:16:27 -0700111 clock-frequency = <12500000>;
112 suppress-preamble;
Andrew Lunn4a2c2592019-02-06 00:16:41 +0100113 status = "okay";
114
115 switch0: switch0@0 {
116 compatible = "marvell,mv88e6190";
117 pinctrl-0 = <&pinctrl_gpio_switch0>;
118 pinctrl-names = "default";
119 reg = <0>;
120 eeprom-length = <65536>;
121 reset-gpios = <&gpio3 11 GPIO_ACTIVE_LOW>;
122 interrupt-parent = <&gpio3>;
123 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
124 interrupt-controller;
125 #interrupt-cells = <2>;
126
127 ports {
128 #address-cells = <1>;
129 #size-cells = <0>;
130
131 port@0 {
132 reg = <0>;
133 label = "cpu";
134 ethernet = <&fec1>;
135
136 fixed-link {
137 speed = <100>;
138 full-duplex;
139 };
140 };
141
142 port@1 {
143 reg = <1>;
144 label = "eth_cu_100_3";
145 };
146
147 port@5 {
148 reg = <5>;
149 label = "eth_cu_1000_4";
150 };
151
152 port@6 {
153 reg = <6>;
154 label = "eth_cu_1000_5";
155 };
156
157 port@8 {
158 reg = <8>;
159 label = "eth_cu_1000_1";
160 };
161
162 port@9 {
163 reg = <9>;
164 label = "eth_cu_1000_2";
165 phy-handle = <&phy9>;
166 phy-mode = "sgmii";
167 managed = "in-band-status";
168 };
169 };
170
171 mdio1 {
172 compatible = "marvell,mv88e6xxx-mdio-external";
173 #address-cells = <1>;
174 #size-cells = <0>;
175
176 phy9: phy9@0 {
177 compatible = "ethernet-phy-ieee802.3-c45";
178 pinctrl-0 = <&pinctrl_gpio_phy9>;
179 pinctrl-names = "default";
180 interrupt-parent = <&gpio2>;
181 interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
182 reg = <0>;
183 };
184 };
185 };
186 };
187};
188
189&i2c0 {
190 clock-frequency = <100000>;
191 pinctrl-names = "default";
192 pinctrl-0 = <&pinctrl_i2c0>;
193 status = "okay";
194
195 gpio6: gpio-expander@22 {
196 compatible = "nxp,pca9554";
197 reg = <0x22>;
198 gpio-controller;
199 #gpio-cells = <2>;
200 };
201
202 /* On SSMB */
203 temperature-sensor@48 {
204 compatible = "national,lm75";
205 reg = <0x48>;
206 };
207
208 /* On DSB */
209 temperature-sensor@4d {
210 compatible = "national,lm75";
211 reg = <0x4d>;
212 };
213
214 eeprom@50 {
215 compatible = "atmel,24c04";
216 reg = <0x50>;
217 label = "nameplate";
218 };
219
220 eeprom@52 {
221 compatible = "atmel,24c04";
222 reg = <0x52>;
223 };
224};
225
Fabio Estevam8da0af52019-02-13 16:24:38 -0200226&snvsrtc {
227 status = "disabled";
228};
229
Andrew Lunn4a2c2592019-02-06 00:16:41 +0100230&uart0 {
231 pinctrl-names = "default";
232 pinctrl-0 = <&pinctrl_uart0>;
233 status = "okay";
234};
235
236&iomuxc {
237 pinctrl_dspi1: dspi1grp {
238 fsl,pins = <
239 VF610_PAD_PTD5__DSPI1_CS0 0x1182
240 VF610_PAD_PTD4__DSPI1_CS1 0x1182
241 VF610_PAD_PTC6__DSPI1_SIN 0x1181
242 VF610_PAD_PTC7__DSPI1_SOUT 0x1182
243 VF610_PAD_PTC8__DSPI1_SCK 0x1182
244 >;
245 };
246
247 pinctrl_esdhc0: esdhc0grp {
248 fsl,pins = <
249 VF610_PAD_PTC0__ESDHC0_CLK 0x31ef
250 VF610_PAD_PTC1__ESDHC0_CMD 0x31ef
251 VF610_PAD_PTC2__ESDHC0_DAT0 0x31ef
252 VF610_PAD_PTC3__ESDHC0_DAT1 0x31ef
253 VF610_PAD_PTC4__ESDHC0_DAT2 0x31ef
254 VF610_PAD_PTC5__ESDHC0_DAT3 0x31ef
255 VF610_PAD_PTD23__ESDHC0_DAT4 0x31ef
256 VF610_PAD_PTD22__ESDHC0_DAT5 0x31ef
257 VF610_PAD_PTD21__ESDHC0_DAT6 0x31ef
258 VF610_PAD_PTD20__ESDHC0_DAT7 0x31ef
259 >;
260 };
261
262 pinctrl_esdhc1: esdhc1grp {
263 fsl,pins = <
264 VF610_PAD_PTA24__ESDHC1_CLK 0x31ef
265 VF610_PAD_PTA25__ESDHC1_CMD 0x31ef
266 VF610_PAD_PTA26__ESDHC1_DAT0 0x31ef
267 VF610_PAD_PTA27__ESDHC1_DAT1 0x31ef
268 VF610_PAD_PTA28__ESDHC1_DATA2 0x31ef
269 VF610_PAD_PTA29__ESDHC1_DAT3 0x31ef
270 >;
271 };
272
273 pinctrl_fec1: fec1grp {
274 fsl,pins = <
275 VF610_PAD_PTA6__RMII_CLKIN 0x30d1
276 VF610_PAD_PTC9__ENET_RMII1_MDC 0x30d2
277 VF610_PAD_PTC10__ENET_RMII1_MDIO 0x30d3
278 VF610_PAD_PTC11__ENET_RMII1_CRS 0x30d1
279 VF610_PAD_PTC12__ENET_RMII1_RXD1 0x30d1
280 VF610_PAD_PTC13__ENET_RMII1_RXD0 0x30d1
281 VF610_PAD_PTC14__ENET_RMII1_RXER 0x30d1
282 VF610_PAD_PTC15__ENET_RMII1_TXD1 0x30d2
283 VF610_PAD_PTC16__ENET_RMII1_TXD0 0x30d2
284 VF610_PAD_PTC17__ENET_RMII1_TXEN 0x30d2
285 >;
286 };
287
288 pinctrl_gpio_phy9: pinctrl-gpio-phy9 {
289 fsl,pins = <
290 VF610_PAD_PTB24__GPIO_94 0x219d
291 >;
292 };
293
294 pinctrl_gpio_switch0: pinctrl-gpio-switch0 {
295 fsl,pins = <
296 VF610_PAD_PTE2__GPIO_107 0x31c2
297 VF610_PAD_PTB28__GPIO_98 0x219d
298 >;
299 };
300
301 pinctrl_i2c0: i2c0grp {
302 fsl,pins = <
303 VF610_PAD_PTB14__I2C0_SCL 0x37ff
304 VF610_PAD_PTB15__I2C0_SDA 0x37ff
305 >;
306 };
307
308 pinctrl_i2c1: i2c1grp {
309 fsl,pins = <
310 VF610_PAD_PTB16__I2C1_SCL 0x37ff
311 VF610_PAD_PTB17__I2C1_SDA 0x37ff
312 >;
313 };
314
315 pinctrl_leds_debug: pinctrl-leds-debug {
316 fsl,pins = <
317 VF610_PAD_PTD3__GPIO_82 0x31c2
318 >;
319 };
320
321 pinctrl_uart0: uart0grp {
322 fsl,pins = <
323 VF610_PAD_PTB10__UART0_TX 0x21a2
324 VF610_PAD_PTB11__UART0_RX 0x21a1
325 >;
326 };
327};