xref: /OK3568_Linux_fs/kernel/scripts/dtc/include-prefixes/arm/vf610-zii-ssmb-spu3.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2*4882a593Smuzhiyun
3*4882a593Smuzhiyun/*
4*4882a593Smuzhiyun * Device tree file for ZII's SSMB SPU3 board
5*4882a593Smuzhiyun *
6*4882a593Smuzhiyun * SSMB - SPU3 Switch Management Board
7*4882a593Smuzhiyun * SPU - Seat Power Unit
8*4882a593Smuzhiyun *
9*4882a593Smuzhiyun * Copyright (C) 2015, 2016 Zodiac Inflight Innovations
10*4882a593Smuzhiyun *
11*4882a593Smuzhiyun * Based on an original 'vf610-twr.dts' which is Copyright 2015,
12*4882a593Smuzhiyun * Freescale Semiconductor, Inc.
13*4882a593Smuzhiyun */
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun/dts-v1/;
16*4882a593Smuzhiyun#include "vf610.dtsi"
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun/ {
19*4882a593Smuzhiyun	model = "ZII VF610 SSMB SPU3 Board";
20*4882a593Smuzhiyun	compatible = "zii,vf610spu3", "zii,vf610dev", "fsl,vf610";
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun	chosen {
23*4882a593Smuzhiyun		stdout-path = &uart0;
24*4882a593Smuzhiyun	};
25*4882a593Smuzhiyun
26*4882a593Smuzhiyun	memory@80000000 {
27*4882a593Smuzhiyun		device_type = "memory";
28*4882a593Smuzhiyun		reg = <0x80000000 0x20000000>;
29*4882a593Smuzhiyun	};
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun	gpio-leds {
32*4882a593Smuzhiyun		compatible = "gpio-leds";
33*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_leds_debug>;
34*4882a593Smuzhiyun		pinctrl-names = "default";
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun		led-debug {
37*4882a593Smuzhiyun			label = "zii:green:debug1";
38*4882a593Smuzhiyun			gpios = <&gpio2 18 GPIO_ACTIVE_HIGH>;
39*4882a593Smuzhiyun			linux,default-trigger = "heartbeat";
40*4882a593Smuzhiyun		};
41*4882a593Smuzhiyun	};
42*4882a593Smuzhiyun
43*4882a593Smuzhiyun	reg_vcc_3v3_mcu: regulator {
44*4882a593Smuzhiyun		compatible = "regulator-fixed";
45*4882a593Smuzhiyun		regulator-name = "vcc_3v3_mcu";
46*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
47*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
48*4882a593Smuzhiyun	};
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun	supply-voltage-monitor {
51*4882a593Smuzhiyun		compatible = "iio-hwmon";
52*4882a593Smuzhiyun		io-channels = <&adc0 8>, /* 12V_MAIN */
53*4882a593Smuzhiyun			      <&adc0 9>, /* +3.3V    */
54*4882a593Smuzhiyun			      <&adc1 8>, /* VCC_1V5  */
55*4882a593Smuzhiyun			      <&adc1 9>; /* VCC_1V2  */
56*4882a593Smuzhiyun	};
57*4882a593Smuzhiyun};
58*4882a593Smuzhiyun
59*4882a593Smuzhiyun&adc0 {
60*4882a593Smuzhiyun	vref-supply = <&reg_vcc_3v3_mcu>;
61*4882a593Smuzhiyun	status = "okay";
62*4882a593Smuzhiyun};
63*4882a593Smuzhiyun
64*4882a593Smuzhiyun&adc1 {
65*4882a593Smuzhiyun	vref-supply = <&reg_vcc_3v3_mcu>;
66*4882a593Smuzhiyun	status = "okay";
67*4882a593Smuzhiyun};
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun&dspi1 {
70*4882a593Smuzhiyun	bus-num = <1>;
71*4882a593Smuzhiyun	pinctrl-names = "default";
72*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_dspi1>;
73*4882a593Smuzhiyun	/*
74*4882a593Smuzhiyun	 * Some SPU3s come with SPI-NOR chip DNPed, so we leave this
75*4882a593Smuzhiyun	 * node disabled by default and rely on bootloader to enable
76*4882a593Smuzhiyun	 * it when appropriate.
77*4882a593Smuzhiyun	 */
78*4882a593Smuzhiyun	status = "disabled";
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun	flash@0 {
81*4882a593Smuzhiyun		#address-cells = <1>;
82*4882a593Smuzhiyun		#size-cells = <1>;
83*4882a593Smuzhiyun		compatible = "m25p128", "jedec,spi-nor";
84*4882a593Smuzhiyun		reg = <0>;
85*4882a593Smuzhiyun		spi-max-frequency = <50000000>;
86*4882a593Smuzhiyun
87*4882a593Smuzhiyun		partition@0 {
88*4882a593Smuzhiyun			label = "m25p128-0";
89*4882a593Smuzhiyun			reg = <0x0 0x01000000>;
90*4882a593Smuzhiyun		};
91*4882a593Smuzhiyun	};
92*4882a593Smuzhiyun};
93*4882a593Smuzhiyun
94*4882a593Smuzhiyun&edma0 {
95*4882a593Smuzhiyun	status = "okay";
96*4882a593Smuzhiyun};
97*4882a593Smuzhiyun
98*4882a593Smuzhiyun&edma1 {
99*4882a593Smuzhiyun	status = "okay";
100*4882a593Smuzhiyun};
101*4882a593Smuzhiyun
102*4882a593Smuzhiyun&esdhc0 {
103*4882a593Smuzhiyun	pinctrl-names = "default";
104*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_esdhc0>;
105*4882a593Smuzhiyun	bus-width = <8>;
106*4882a593Smuzhiyun	non-removable;
107*4882a593Smuzhiyun	no-1-8-v;
108*4882a593Smuzhiyun	keep-power-in-suspend;
109*4882a593Smuzhiyun	no-sdio;
110*4882a593Smuzhiyun	no-sd;
111*4882a593Smuzhiyun	status = "okay";
112*4882a593Smuzhiyun};
113*4882a593Smuzhiyun
114*4882a593Smuzhiyun&esdhc1 {
115*4882a593Smuzhiyun	pinctrl-names = "default";
116*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_esdhc1>;
117*4882a593Smuzhiyun	bus-width = <4>;
118*4882a593Smuzhiyun	no-sdio;
119*4882a593Smuzhiyun	status = "okay";
120*4882a593Smuzhiyun};
121*4882a593Smuzhiyun
122*4882a593Smuzhiyun&fec1 {
123*4882a593Smuzhiyun	phy-mode = "rmii";
124*4882a593Smuzhiyun	pinctrl-names = "default";
125*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_fec1>;
126*4882a593Smuzhiyun	status = "okay";
127*4882a593Smuzhiyun
128*4882a593Smuzhiyun	fixed-link {
129*4882a593Smuzhiyun		speed = <100>;
130*4882a593Smuzhiyun		full-duplex;
131*4882a593Smuzhiyun	};
132*4882a593Smuzhiyun
133*4882a593Smuzhiyun	mdio1: mdio {
134*4882a593Smuzhiyun		#address-cells = <1>;
135*4882a593Smuzhiyun		#size-cells = <0>;
136*4882a593Smuzhiyun		clock-frequency = <12500000>;
137*4882a593Smuzhiyun		suppress-preamble;
138*4882a593Smuzhiyun		status = "okay";
139*4882a593Smuzhiyun
140*4882a593Smuzhiyun		switch0: switch0@0 {
141*4882a593Smuzhiyun			compatible = "marvell,mv88e6190";
142*4882a593Smuzhiyun			pinctrl-0 = <&pinctrl_gpio_switch0>;
143*4882a593Smuzhiyun			pinctrl-names = "default";
144*4882a593Smuzhiyun			reg = <0>;
145*4882a593Smuzhiyun			eeprom-length = <65536>;
146*4882a593Smuzhiyun			interrupt-parent = <&gpio3>;
147*4882a593Smuzhiyun			interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
148*4882a593Smuzhiyun			interrupt-controller;
149*4882a593Smuzhiyun			#interrupt-cells = <2>;
150*4882a593Smuzhiyun
151*4882a593Smuzhiyun			ports {
152*4882a593Smuzhiyun				#address-cells = <1>;
153*4882a593Smuzhiyun				#size-cells = <0>;
154*4882a593Smuzhiyun
155*4882a593Smuzhiyun				port@0 {
156*4882a593Smuzhiyun					reg = <0>;
157*4882a593Smuzhiyun					label = "cpu";
158*4882a593Smuzhiyun					ethernet = <&fec1>;
159*4882a593Smuzhiyun
160*4882a593Smuzhiyun					fixed-link {
161*4882a593Smuzhiyun						speed = <100>;
162*4882a593Smuzhiyun						full-duplex;
163*4882a593Smuzhiyun					};
164*4882a593Smuzhiyun				};
165*4882a593Smuzhiyun
166*4882a593Smuzhiyun				port@1 {
167*4882a593Smuzhiyun					reg = <1>;
168*4882a593Smuzhiyun					label = "eth_cu_1000_1";
169*4882a593Smuzhiyun				};
170*4882a593Smuzhiyun
171*4882a593Smuzhiyun				port@2 {
172*4882a593Smuzhiyun					reg = <2>;
173*4882a593Smuzhiyun					label = "eth_cu_1000_2";
174*4882a593Smuzhiyun				};
175*4882a593Smuzhiyun
176*4882a593Smuzhiyun				port@3 {
177*4882a593Smuzhiyun					reg = <3>;
178*4882a593Smuzhiyun					label = "eth_cu_1000_3";
179*4882a593Smuzhiyun				};
180*4882a593Smuzhiyun
181*4882a593Smuzhiyun				port@4 {
182*4882a593Smuzhiyun					reg = <4>;
183*4882a593Smuzhiyun					label = "eth_cu_1000_4";
184*4882a593Smuzhiyun				};
185*4882a593Smuzhiyun
186*4882a593Smuzhiyun				port@5 {
187*4882a593Smuzhiyun					reg = <5>;
188*4882a593Smuzhiyun					label = "eth_cu_1000_5";
189*4882a593Smuzhiyun				};
190*4882a593Smuzhiyun
191*4882a593Smuzhiyun				port@6 {
192*4882a593Smuzhiyun					reg = <6>;
193*4882a593Smuzhiyun					label = "eth_cu_1000_6";
194*4882a593Smuzhiyun				};
195*4882a593Smuzhiyun			};
196*4882a593Smuzhiyun		};
197*4882a593Smuzhiyun	};
198*4882a593Smuzhiyun};
199*4882a593Smuzhiyun
200*4882a593Smuzhiyun&i2c0 {
201*4882a593Smuzhiyun	clock-frequency = <100000>;
202*4882a593Smuzhiyun	pinctrl-names = "default";
203*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_i2c0>;
204*4882a593Smuzhiyun	status = "okay";
205*4882a593Smuzhiyun
206*4882a593Smuzhiyun	gpio6: io-expander@22 {
207*4882a593Smuzhiyun		compatible = "nxp,pca9554";
208*4882a593Smuzhiyun		reg = <0x22>;
209*4882a593Smuzhiyun		gpio-controller;
210*4882a593Smuzhiyun		#gpio-cells = <2>;
211*4882a593Smuzhiyun	};
212*4882a593Smuzhiyun
213*4882a593Smuzhiyun	lm75@48 {
214*4882a593Smuzhiyun		compatible = "national,lm75";
215*4882a593Smuzhiyun		reg = <0x48>;
216*4882a593Smuzhiyun	};
217*4882a593Smuzhiyun
218*4882a593Smuzhiyun	eeprom@50 {
219*4882a593Smuzhiyun		compatible = "atmel,24c04";
220*4882a593Smuzhiyun		reg = <0x50>;
221*4882a593Smuzhiyun		label = "nameplate";
222*4882a593Smuzhiyun	};
223*4882a593Smuzhiyun
224*4882a593Smuzhiyun	eeprom@52 {
225*4882a593Smuzhiyun		compatible = "atmel,24c04";
226*4882a593Smuzhiyun		reg = <0x52>;
227*4882a593Smuzhiyun	};
228*4882a593Smuzhiyun};
229*4882a593Smuzhiyun
230*4882a593Smuzhiyun&i2c1 {
231*4882a593Smuzhiyun	clock-frequency = <100000>;
232*4882a593Smuzhiyun	pinctrl-names = "default";
233*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_i2c1>;
234*4882a593Smuzhiyun	status = "okay";
235*4882a593Smuzhiyun
236*4882a593Smuzhiyun	watchdog@38 {
237*4882a593Smuzhiyun		compatible = "zii,rave-wdt";
238*4882a593Smuzhiyun		reg = <0x38>;
239*4882a593Smuzhiyun	};
240*4882a593Smuzhiyun};
241*4882a593Smuzhiyun
242*4882a593Smuzhiyun&snvsrtc {
243*4882a593Smuzhiyun	status = "disabled";
244*4882a593Smuzhiyun};
245*4882a593Smuzhiyun
246*4882a593Smuzhiyun&uart0 {
247*4882a593Smuzhiyun	pinctrl-names = "default";
248*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_uart0>;
249*4882a593Smuzhiyun	status = "okay";
250*4882a593Smuzhiyun};
251*4882a593Smuzhiyun
252*4882a593Smuzhiyun&uart1 {
253*4882a593Smuzhiyun	pinctrl-names = "default";
254*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_uart1>;
255*4882a593Smuzhiyun	status = "okay";
256*4882a593Smuzhiyun
257*4882a593Smuzhiyun	rave-sp {
258*4882a593Smuzhiyun		compatible = "zii,rave-sp-rdu2";
259*4882a593Smuzhiyun		current-speed = <1000000>;
260*4882a593Smuzhiyun		#address-cells = <1>;
261*4882a593Smuzhiyun		#size-cells = <1>;
262*4882a593Smuzhiyun
263*4882a593Smuzhiyun		watchdog {
264*4882a593Smuzhiyun			compatible = "zii,rave-sp-watchdog";
265*4882a593Smuzhiyun		};
266*4882a593Smuzhiyun
267*4882a593Smuzhiyun		eeprom@a3 {
268*4882a593Smuzhiyun			compatible = "zii,rave-sp-eeprom";
269*4882a593Smuzhiyun			reg = <0xa3 0x4000>;
270*4882a593Smuzhiyun			#address-cells = <1>;
271*4882a593Smuzhiyun			#size-cells = <1>;
272*4882a593Smuzhiyun			zii,eeprom-name = "main-eeprom";
273*4882a593Smuzhiyun		};
274*4882a593Smuzhiyun	};
275*4882a593Smuzhiyun};
276*4882a593Smuzhiyun
277*4882a593Smuzhiyun&wdoga5 {
278*4882a593Smuzhiyun	status = "disabled";
279*4882a593Smuzhiyun};
280*4882a593Smuzhiyun
281*4882a593Smuzhiyun&iomuxc {
282*4882a593Smuzhiyun	pinctrl_dspi1: dspi1grp {
283*4882a593Smuzhiyun		fsl,pins = <
284*4882a593Smuzhiyun			VF610_PAD_PTD5__DSPI1_CS0		0x1182
285*4882a593Smuzhiyun			VF610_PAD_PTD4__DSPI1_CS1		0x1182
286*4882a593Smuzhiyun			VF610_PAD_PTC6__DSPI1_SIN		0x1181
287*4882a593Smuzhiyun			VF610_PAD_PTC7__DSPI1_SOUT		0x1182
288*4882a593Smuzhiyun			VF610_PAD_PTC8__DSPI1_SCK		0x1182
289*4882a593Smuzhiyun		>;
290*4882a593Smuzhiyun	};
291*4882a593Smuzhiyun
292*4882a593Smuzhiyun	pinctrl_esdhc0: esdhc0grp {
293*4882a593Smuzhiyun		fsl,pins = <
294*4882a593Smuzhiyun			VF610_PAD_PTC0__ESDHC0_CLK		0x31ef
295*4882a593Smuzhiyun			VF610_PAD_PTC1__ESDHC0_CMD		0x31ef
296*4882a593Smuzhiyun			VF610_PAD_PTC2__ESDHC0_DAT0		0x31ef
297*4882a593Smuzhiyun			VF610_PAD_PTC3__ESDHC0_DAT1		0x31ef
298*4882a593Smuzhiyun			VF610_PAD_PTC4__ESDHC0_DAT2		0x31ef
299*4882a593Smuzhiyun			VF610_PAD_PTC5__ESDHC0_DAT3		0x31ef
300*4882a593Smuzhiyun			VF610_PAD_PTD23__ESDHC0_DAT4		0x31ef
301*4882a593Smuzhiyun			VF610_PAD_PTD22__ESDHC0_DAT5		0x31ef
302*4882a593Smuzhiyun			VF610_PAD_PTD21__ESDHC0_DAT6		0x31ef
303*4882a593Smuzhiyun			VF610_PAD_PTD20__ESDHC0_DAT7		0x31ef
304*4882a593Smuzhiyun		>;
305*4882a593Smuzhiyun	};
306*4882a593Smuzhiyun
307*4882a593Smuzhiyun	pinctrl_esdhc1: esdhc1grp {
308*4882a593Smuzhiyun		fsl,pins = <
309*4882a593Smuzhiyun			VF610_PAD_PTA24__ESDHC1_CLK		0x31ef
310*4882a593Smuzhiyun			VF610_PAD_PTA25__ESDHC1_CMD		0x31ef
311*4882a593Smuzhiyun			VF610_PAD_PTA26__ESDHC1_DAT0		0x31ef
312*4882a593Smuzhiyun			VF610_PAD_PTA27__ESDHC1_DAT1		0x31ef
313*4882a593Smuzhiyun			VF610_PAD_PTA28__ESDHC1_DATA2		0x31ef
314*4882a593Smuzhiyun			VF610_PAD_PTA29__ESDHC1_DAT3		0x31ef
315*4882a593Smuzhiyun		>;
316*4882a593Smuzhiyun	};
317*4882a593Smuzhiyun
318*4882a593Smuzhiyun	pinctrl_fec1: fec1grp {
319*4882a593Smuzhiyun		fsl,pins = <
320*4882a593Smuzhiyun			VF610_PAD_PTA6__RMII_CLKIN		0x30d1
321*4882a593Smuzhiyun			VF610_PAD_PTC9__ENET_RMII1_MDC		0x30d2
322*4882a593Smuzhiyun			VF610_PAD_PTC10__ENET_RMII1_MDIO	0x30d3
323*4882a593Smuzhiyun			VF610_PAD_PTC11__ENET_RMII1_CRS		0x30d1
324*4882a593Smuzhiyun			VF610_PAD_PTC12__ENET_RMII1_RXD1	0x30d1
325*4882a593Smuzhiyun			VF610_PAD_PTC13__ENET_RMII1_RXD0	0x30d1
326*4882a593Smuzhiyun			VF610_PAD_PTC14__ENET_RMII1_RXER	0x30d1
327*4882a593Smuzhiyun			VF610_PAD_PTC15__ENET_RMII1_TXD1	0x30d2
328*4882a593Smuzhiyun			VF610_PAD_PTC16__ENET_RMII1_TXD0	0x30d2
329*4882a593Smuzhiyun			VF610_PAD_PTC17__ENET_RMII1_TXEN	0x30d2
330*4882a593Smuzhiyun		>;
331*4882a593Smuzhiyun	};
332*4882a593Smuzhiyun
333*4882a593Smuzhiyun	pinctrl_gpio_switch0: pinctrl-gpio-switch0 {
334*4882a593Smuzhiyun		fsl,pins = <
335*4882a593Smuzhiyun			VF610_PAD_PTB28__GPIO_98		0x219d
336*4882a593Smuzhiyun		>;
337*4882a593Smuzhiyun	};
338*4882a593Smuzhiyun
339*4882a593Smuzhiyun	pinctrl_i2c0: i2c0grp {
340*4882a593Smuzhiyun		fsl,pins = <
341*4882a593Smuzhiyun			VF610_PAD_PTB14__I2C0_SCL		0x37ff
342*4882a593Smuzhiyun			VF610_PAD_PTB15__I2C0_SDA		0x37ff
343*4882a593Smuzhiyun		>;
344*4882a593Smuzhiyun	};
345*4882a593Smuzhiyun
346*4882a593Smuzhiyun	pinctrl_i2c1: i2c1grp {
347*4882a593Smuzhiyun		fsl,pins = <
348*4882a593Smuzhiyun			VF610_PAD_PTB16__I2C1_SCL		0x37ff
349*4882a593Smuzhiyun			VF610_PAD_PTB17__I2C1_SDA		0x37ff
350*4882a593Smuzhiyun		>;
351*4882a593Smuzhiyun	};
352*4882a593Smuzhiyun
353*4882a593Smuzhiyun	pinctrl_leds_debug: pinctrl-leds-debug {
354*4882a593Smuzhiyun		fsl,pins = <
355*4882a593Smuzhiyun			VF610_PAD_PTD3__GPIO_82			0x31c2
356*4882a593Smuzhiyun		>;
357*4882a593Smuzhiyun	};
358*4882a593Smuzhiyun
359*4882a593Smuzhiyun	pinctrl_uart0: uart0grp {
360*4882a593Smuzhiyun		fsl,pins = <
361*4882a593Smuzhiyun			VF610_PAD_PTB10__UART0_TX		0x21a2
362*4882a593Smuzhiyun			VF610_PAD_PTB11__UART0_RX		0x21a1
363*4882a593Smuzhiyun		>;
364*4882a593Smuzhiyun	};
365*4882a593Smuzhiyun
366*4882a593Smuzhiyun	pinctrl_uart1: uart1grp {
367*4882a593Smuzhiyun		fsl,pins = <
368*4882a593Smuzhiyun			VF610_PAD_PTB23__UART1_TX		0x21a2
369*4882a593Smuzhiyun			VF610_PAD_PTB24__UART1_RX		0x21a1
370*4882a593Smuzhiyun		>;
371*4882a593Smuzhiyun	};
372*4882a593Smuzhiyun};
373