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