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