xref: /freebsd-src/sys/contrib/device-tree/src/arm/nxp/imx/imx27-apf27dev.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright 2013 Armadeus Systems - <support@armadeus.com>
4*f126890aSEmmanuel Vadot */
5*f126890aSEmmanuel Vadot
6*f126890aSEmmanuel Vadot/* APF27Dev is a docking board for the APF27 SOM */
7*f126890aSEmmanuel Vadot#include "imx27-apf27.dts"
8*f126890aSEmmanuel Vadot
9*f126890aSEmmanuel Vadot/ {
10*f126890aSEmmanuel Vadot	model = "Armadeus Systems APF27Dev docking/development board";
11*f126890aSEmmanuel Vadot	compatible = "armadeus,imx27-apf27dev", "armadeus,imx27-apf27", "fsl,imx27";
12*f126890aSEmmanuel Vadot
13*f126890aSEmmanuel Vadot	display: display {
14*f126890aSEmmanuel Vadot		model = "Chimei-LW700AT9003";
15*f126890aSEmmanuel Vadot		bits-per-pixel = <16>;  /* non-standard but required */
16*f126890aSEmmanuel Vadot		fsl,pcr = <0xfae80083>;	/* non-standard but required */
17*f126890aSEmmanuel Vadot		display-timings {
18*f126890aSEmmanuel Vadot			native-mode = <&timing0>;
19*f126890aSEmmanuel Vadot			timing0: 800x480 {
20*f126890aSEmmanuel Vadot				clock-frequency = <33000033>;
21*f126890aSEmmanuel Vadot				hactive = <800>;
22*f126890aSEmmanuel Vadot				vactive = <480>;
23*f126890aSEmmanuel Vadot				hback-porch = <96>;
24*f126890aSEmmanuel Vadot				hfront-porch = <96>;
25*f126890aSEmmanuel Vadot				vback-porch = <20>;
26*f126890aSEmmanuel Vadot				vfront-porch = <21>;
27*f126890aSEmmanuel Vadot				hsync-len = <64>;
28*f126890aSEmmanuel Vadot				vsync-len = <4>;
29*f126890aSEmmanuel Vadot			};
30*f126890aSEmmanuel Vadot		};
31*f126890aSEmmanuel Vadot	};
32*f126890aSEmmanuel Vadot
33*f126890aSEmmanuel Vadot	gpio-keys {
34*f126890aSEmmanuel Vadot		compatible = "gpio-keys";
35*f126890aSEmmanuel Vadot		pinctrl-names = "default";
36*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_gpio_keys>;
37*f126890aSEmmanuel Vadot
38*f126890aSEmmanuel Vadot		user-key {
39*f126890aSEmmanuel Vadot			label = "user";
40*f126890aSEmmanuel Vadot			gpios = <&gpio6 13 GPIO_ACTIVE_HIGH>;
41*f126890aSEmmanuel Vadot			linux,code = <276>; /* BTN_EXTRA */
42*f126890aSEmmanuel Vadot		};
43*f126890aSEmmanuel Vadot	};
44*f126890aSEmmanuel Vadot
45*f126890aSEmmanuel Vadot	leds {
46*f126890aSEmmanuel Vadot		compatible = "gpio-leds";
47*f126890aSEmmanuel Vadot		pinctrl-names = "default";
48*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_gpio_leds>;
49*f126890aSEmmanuel Vadot
50*f126890aSEmmanuel Vadot		user {
51*f126890aSEmmanuel Vadot			label = "Heartbeat";
52*f126890aSEmmanuel Vadot			gpios = <&gpio6 14 GPIO_ACTIVE_HIGH>;
53*f126890aSEmmanuel Vadot			linux,default-trigger = "heartbeat";
54*f126890aSEmmanuel Vadot		};
55*f126890aSEmmanuel Vadot	};
56*f126890aSEmmanuel Vadot
57*f126890aSEmmanuel Vadot	regulators {
58*f126890aSEmmanuel Vadot		compatible = "simple-bus";
59*f126890aSEmmanuel Vadot		#address-cells = <1>;
60*f126890aSEmmanuel Vadot		#size-cells = <0>;
61*f126890aSEmmanuel Vadot
62*f126890aSEmmanuel Vadot		reg_max5821: regulator@0 {
63*f126890aSEmmanuel Vadot			compatible = "regulator-fixed";
64*f126890aSEmmanuel Vadot			reg = <0>;
65*f126890aSEmmanuel Vadot			regulator-name = "max5821-reg";
66*f126890aSEmmanuel Vadot			regulator-min-microvolt = <2500000>;
67*f126890aSEmmanuel Vadot			regulator-max-microvolt = <2500000>;
68*f126890aSEmmanuel Vadot			regulator-always-on;
69*f126890aSEmmanuel Vadot		};
70*f126890aSEmmanuel Vadot	};
71*f126890aSEmmanuel Vadot};
72*f126890aSEmmanuel Vadot
73*f126890aSEmmanuel Vadot&cspi1 {
74*f126890aSEmmanuel Vadot	cs-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
75*f126890aSEmmanuel Vadot	pinctrl-names = "default";
76*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_cspi1 &pinctrl_cspi1_cs>;
77*f126890aSEmmanuel Vadot	status = "okay";
78*f126890aSEmmanuel Vadot
79*f126890aSEmmanuel Vadot	adc@0 {
80*f126890aSEmmanuel Vadot		compatible = "maxim,max1027";
81*f126890aSEmmanuel Vadot		reg = <0>;
82*f126890aSEmmanuel Vadot		interrupt-parent = <&gpio5>;
83*f126890aSEmmanuel Vadot		interrupts = <15 IRQ_TYPE_EDGE_FALLING>;
84*f126890aSEmmanuel Vadot		pinctrl-names = "default";
85*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_max1027>;
86*f126890aSEmmanuel Vadot		spi-max-frequency = <10000000>;
87*f126890aSEmmanuel Vadot	};
88*f126890aSEmmanuel Vadot};
89*f126890aSEmmanuel Vadot
90*f126890aSEmmanuel Vadot&cspi2 {
91*f126890aSEmmanuel Vadot	cs-gpios = <&gpio4 21 GPIO_ACTIVE_LOW>,
92*f126890aSEmmanuel Vadot		   <&gpio4 27 GPIO_ACTIVE_LOW>,
93*f126890aSEmmanuel Vadot		   <&gpio2 17 GPIO_ACTIVE_LOW>;
94*f126890aSEmmanuel Vadot	pinctrl-names = "default";
95*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_cspi2 &pinctrl_cspi2_cs>;
96*f126890aSEmmanuel Vadot	status = "okay";
97*f126890aSEmmanuel Vadot};
98*f126890aSEmmanuel Vadot
99*f126890aSEmmanuel Vadot&fb {
100*f126890aSEmmanuel Vadot	display = <&display>;
101*f126890aSEmmanuel Vadot	fsl,dmacr = <0x00020010>;
102*f126890aSEmmanuel Vadot	pinctrl-names = "default";
103*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_imxfb1>;
104*f126890aSEmmanuel Vadot	status = "okay";
105*f126890aSEmmanuel Vadot};
106*f126890aSEmmanuel Vadot
107*f126890aSEmmanuel Vadot&i2c1 {
108*f126890aSEmmanuel Vadot	clock-frequency = <400000>;
109*f126890aSEmmanuel Vadot	pinctrl-names = "default";
110*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c1>;
111*f126890aSEmmanuel Vadot	status = "okay";
112*f126890aSEmmanuel Vadot
113*f126890aSEmmanuel Vadot	rtc@68 {
114*f126890aSEmmanuel Vadot		compatible = "dallas,ds1374";
115*f126890aSEmmanuel Vadot		reg = <0x68>;
116*f126890aSEmmanuel Vadot	};
117*f126890aSEmmanuel Vadot
118*f126890aSEmmanuel Vadot	max5821@38 {
119*f126890aSEmmanuel Vadot		compatible = "maxim,max5821";
120*f126890aSEmmanuel Vadot		reg = <0x38>;
121*f126890aSEmmanuel Vadot		vref-supply = <&reg_max5821>;
122*f126890aSEmmanuel Vadot	};
123*f126890aSEmmanuel Vadot};
124*f126890aSEmmanuel Vadot
125*f126890aSEmmanuel Vadot&i2c2 {
126*f126890aSEmmanuel Vadot	pinctrl-names = "default";
127*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c2>;
128*f126890aSEmmanuel Vadot	status = "okay";
129*f126890aSEmmanuel Vadot};
130*f126890aSEmmanuel Vadot
131*f126890aSEmmanuel Vadot&iomuxc {
132*f126890aSEmmanuel Vadot	imx27-apf27dev {
133*f126890aSEmmanuel Vadot		pinctrl_cspi1: cspi1grp {
134*f126890aSEmmanuel Vadot			fsl,pins = <
135*f126890aSEmmanuel Vadot				MX27_PAD_CSPI1_MISO__CSPI1_MISO 0x0
136*f126890aSEmmanuel Vadot				MX27_PAD_CSPI1_MOSI__CSPI1_MOSI 0x0
137*f126890aSEmmanuel Vadot				MX27_PAD_CSPI1_SCLK__CSPI1_SCLK 0x0
138*f126890aSEmmanuel Vadot			>;
139*f126890aSEmmanuel Vadot		};
140*f126890aSEmmanuel Vadot
141*f126890aSEmmanuel Vadot		pinctrl_cspi1_cs: cspi1csgrp {
142*f126890aSEmmanuel Vadot			fsl,pins = <MX27_PAD_CSPI1_SS0__GPIO4_28 0x0>;
143*f126890aSEmmanuel Vadot		};
144*f126890aSEmmanuel Vadot
145*f126890aSEmmanuel Vadot		pinctrl_cspi2: cspi2grp {
146*f126890aSEmmanuel Vadot			fsl,pins = <
147*f126890aSEmmanuel Vadot				MX27_PAD_CSPI2_MISO__CSPI2_MISO 0x0
148*f126890aSEmmanuel Vadot				MX27_PAD_CSPI2_MOSI__CSPI2_MOSI 0x0
149*f126890aSEmmanuel Vadot				MX27_PAD_CSPI2_SCLK__CSPI2_SCLK 0x0
150*f126890aSEmmanuel Vadot			>;
151*f126890aSEmmanuel Vadot		};
152*f126890aSEmmanuel Vadot
153*f126890aSEmmanuel Vadot		pinctrl_cspi2_cs: cspi2csgrp {
154*f126890aSEmmanuel Vadot			fsl,pins = <
155*f126890aSEmmanuel Vadot				MX27_PAD_CSI_D5__GPIO2_17 0x0
156*f126890aSEmmanuel Vadot				MX27_PAD_CSPI2_SS0__GPIO4_21 0x0
157*f126890aSEmmanuel Vadot				MX27_PAD_CSPI1_SS1__GPIO4_27 0x0
158*f126890aSEmmanuel Vadot			>;
159*f126890aSEmmanuel Vadot		};
160*f126890aSEmmanuel Vadot
161*f126890aSEmmanuel Vadot		pinctrl_gpio_leds: gpioledsgrp {
162*f126890aSEmmanuel Vadot			fsl,pins = <MX27_PAD_PC_VS1__GPIO6_14 0x0>;
163*f126890aSEmmanuel Vadot		};
164*f126890aSEmmanuel Vadot
165*f126890aSEmmanuel Vadot		pinctrl_gpio_keys: gpiokeysgrp {
166*f126890aSEmmanuel Vadot			fsl,pins = <MX27_PAD_PC_VS2__GPIO6_13 0x0>;
167*f126890aSEmmanuel Vadot		};
168*f126890aSEmmanuel Vadot
169*f126890aSEmmanuel Vadot		pinctrl_imxfb1: imxfbgrp {
170*f126890aSEmmanuel Vadot			fsl,pins = <
171*f126890aSEmmanuel Vadot				MX27_PAD_CLS__CLS 0x0
172*f126890aSEmmanuel Vadot				MX27_PAD_CONTRAST__CONTRAST 0x0
173*f126890aSEmmanuel Vadot				MX27_PAD_LD0__LD0 0x0
174*f126890aSEmmanuel Vadot				MX27_PAD_LD1__LD1 0x0
175*f126890aSEmmanuel Vadot				MX27_PAD_LD2__LD2 0x0
176*f126890aSEmmanuel Vadot				MX27_PAD_LD3__LD3 0x0
177*f126890aSEmmanuel Vadot				MX27_PAD_LD4__LD4 0x0
178*f126890aSEmmanuel Vadot				MX27_PAD_LD5__LD5 0x0
179*f126890aSEmmanuel Vadot				MX27_PAD_LD6__LD6 0x0
180*f126890aSEmmanuel Vadot				MX27_PAD_LD7__LD7 0x0
181*f126890aSEmmanuel Vadot				MX27_PAD_LD8__LD8 0x0
182*f126890aSEmmanuel Vadot				MX27_PAD_LD9__LD9 0x0
183*f126890aSEmmanuel Vadot				MX27_PAD_LD10__LD10 0x0
184*f126890aSEmmanuel Vadot				MX27_PAD_LD11__LD11 0x0
185*f126890aSEmmanuel Vadot				MX27_PAD_LD12__LD12 0x0
186*f126890aSEmmanuel Vadot				MX27_PAD_LD13__LD13 0x0
187*f126890aSEmmanuel Vadot				MX27_PAD_LD14__LD14 0x0
188*f126890aSEmmanuel Vadot				MX27_PAD_LD15__LD15 0x0
189*f126890aSEmmanuel Vadot				MX27_PAD_LD16__LD16 0x0
190*f126890aSEmmanuel Vadot				MX27_PAD_LD17__LD17 0x0
191*f126890aSEmmanuel Vadot				MX27_PAD_LSCLK__LSCLK 0x0
192*f126890aSEmmanuel Vadot				MX27_PAD_OE_ACD__OE_ACD 0x0
193*f126890aSEmmanuel Vadot				MX27_PAD_PS__PS 0x0
194*f126890aSEmmanuel Vadot				MX27_PAD_REV__REV 0x0
195*f126890aSEmmanuel Vadot				MX27_PAD_SPL_SPR__SPL_SPR 0x0
196*f126890aSEmmanuel Vadot				MX27_PAD_HSYNC__HSYNC 0x0
197*f126890aSEmmanuel Vadot				MX27_PAD_VSYNC__VSYNC 0x0
198*f126890aSEmmanuel Vadot			>;
199*f126890aSEmmanuel Vadot		};
200*f126890aSEmmanuel Vadot
201*f126890aSEmmanuel Vadot		pinctrl_i2c1: i2c1grp {
202*f126890aSEmmanuel Vadot			fsl,pins = <
203*f126890aSEmmanuel Vadot				MX27_PAD_I2C_DATA__I2C_DATA 0x0
204*f126890aSEmmanuel Vadot				MX27_PAD_I2C_CLK__I2C_CLK 0x0
205*f126890aSEmmanuel Vadot			>;
206*f126890aSEmmanuel Vadot		};
207*f126890aSEmmanuel Vadot
208*f126890aSEmmanuel Vadot		pinctrl_i2c2: i2c2grp {
209*f126890aSEmmanuel Vadot			fsl,pins = <
210*f126890aSEmmanuel Vadot				MX27_PAD_I2C2_SDA__I2C2_SDA 0x0
211*f126890aSEmmanuel Vadot				MX27_PAD_I2C2_SCL__I2C2_SCL 0x0
212*f126890aSEmmanuel Vadot			>;
213*f126890aSEmmanuel Vadot		};
214*f126890aSEmmanuel Vadot
215*f126890aSEmmanuel Vadot		pinctrl_max1027: max1027 {
216*f126890aSEmmanuel Vadot			 fsl,pins = <
217*f126890aSEmmanuel Vadot				 MX27_PAD_UART1_CTS__GPIO5_14 0x0 /* CNVST */
218*f126890aSEmmanuel Vadot				 MX27_PAD_UART1_RTS__GPIO5_15 0x0 /* EOC */
219*f126890aSEmmanuel Vadot			>;
220*f126890aSEmmanuel Vadot		};
221*f126890aSEmmanuel Vadot
222*f126890aSEmmanuel Vadot		pinctrl_pwm: pwmgrp {
223*f126890aSEmmanuel Vadot			fsl,pins = <
224*f126890aSEmmanuel Vadot				MX27_PAD_PWMO__PWMO 0x0
225*f126890aSEmmanuel Vadot			>;
226*f126890aSEmmanuel Vadot		};
227*f126890aSEmmanuel Vadot
228*f126890aSEmmanuel Vadot		pinctrl_sdhc2: sdhc2grp {
229*f126890aSEmmanuel Vadot			fsl,pins = <
230*f126890aSEmmanuel Vadot				MX27_PAD_SD2_CLK__SD2_CLK 0x0
231*f126890aSEmmanuel Vadot				MX27_PAD_SD2_CMD__SD2_CMD 0x0
232*f126890aSEmmanuel Vadot				MX27_PAD_SD2_D0__SD2_D0 0x0
233*f126890aSEmmanuel Vadot				MX27_PAD_SD2_D1__SD2_D1 0x0
234*f126890aSEmmanuel Vadot				MX27_PAD_SD2_D2__SD2_D2 0x0
235*f126890aSEmmanuel Vadot				MX27_PAD_SD2_D3__SD2_D3 0x0
236*f126890aSEmmanuel Vadot			>;
237*f126890aSEmmanuel Vadot		};
238*f126890aSEmmanuel Vadot
239*f126890aSEmmanuel Vadot		pinctrl_sdhc2_cd: sdhc2cdgrp {
240*f126890aSEmmanuel Vadot			fsl,pins = <MX27_PAD_TOUT__GPIO3_14 0x0>;
241*f126890aSEmmanuel Vadot		};
242*f126890aSEmmanuel Vadot	};
243*f126890aSEmmanuel Vadot};
244*f126890aSEmmanuel Vadot
245*f126890aSEmmanuel Vadot&sdhci2 {
246*f126890aSEmmanuel Vadot	bus-width = <4>;
247*f126890aSEmmanuel Vadot	cd-gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
248*f126890aSEmmanuel Vadot	pinctrl-names = "default";
249*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_sdhc2 &pinctrl_sdhc2_cd>;
250*f126890aSEmmanuel Vadot	status = "okay";
251*f126890aSEmmanuel Vadot};
252*f126890aSEmmanuel Vadot
253*f126890aSEmmanuel Vadot&pwm {
254*f126890aSEmmanuel Vadot	pinctrl-names = "default";
255*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_pwm>;
256*f126890aSEmmanuel Vadot};
257