xref: /openbmc/linux/arch/arm/boot/dts/nxp/imx/imx27-eukrea-mbimxsd27-baseboard.dts (revision 87832e937c808a7ebc41254b408362e3255c87c9)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later
2724ba675SRob Herring/*
3724ba675SRob Herring * Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru>
4724ba675SRob Herring */
5724ba675SRob Herring
6724ba675SRob Herring#include "imx27-eukrea-cpuimx27.dtsi"
7724ba675SRob Herring
8724ba675SRob Herring/ {
9724ba675SRob Herring	model = "Eukrea MBIMXSD27";
10724ba675SRob Herring	compatible = "eukrea,mbimxsd27-baseboard", "eukrea,cpuimx27", "fsl,imx27";
11724ba675SRob Herring
12724ba675SRob Herring	display0: CMO-QVGA {
13724ba675SRob Herring		model = "CMO-QVGA";
14724ba675SRob Herring		bits-per-pixel = <16>;
15724ba675SRob Herring		fsl,pcr = <0xfad08b80>;
16724ba675SRob Herring
17724ba675SRob Herring		display-timings {
18724ba675SRob Herring			native-mode = <&timing0>;
19*8b9b3d9dSFabio Estevam			timing0: timing0 {
20724ba675SRob Herring				clock-frequency = <6500000>;
21724ba675SRob Herring				hactive = <320>;
22724ba675SRob Herring				vactive = <240>;
23724ba675SRob Herring				hback-porch = <20>;
24724ba675SRob Herring				hsync-len = <30>;
25724ba675SRob Herring				hfront-porch = <38>;
26724ba675SRob Herring				vback-porch = <4>;
27724ba675SRob Herring				vsync-len = <3>;
28724ba675SRob Herring				vfront-porch = <15>;
29724ba675SRob Herring			};
30724ba675SRob Herring		};
31724ba675SRob Herring	};
32724ba675SRob Herring
33724ba675SRob Herring	backlight {
34724ba675SRob Herring		compatible = "gpio-backlight";
35724ba675SRob Herring		pinctrl-names = "default";
36724ba675SRob Herring		pinctrl-0 = <&pinctrl_backlight>;
37724ba675SRob Herring		gpios = <&gpio5 5 GPIO_ACTIVE_HIGH>;
38724ba675SRob Herring	};
39724ba675SRob Herring
40724ba675SRob Herring	leds {
41724ba675SRob Herring		compatible = "gpio-leds";
42724ba675SRob Herring		pinctrl-names = "default";
43724ba675SRob Herring		pinctrl-0 = <&pinctrl_gpioleds>;
44724ba675SRob Herring
45724ba675SRob Herring		led1 {
46724ba675SRob Herring			label = "system::live";
47724ba675SRob Herring			gpios = <&gpio6 16 GPIO_ACTIVE_LOW>;
48724ba675SRob Herring			linux,default-trigger = "heartbeat";
49724ba675SRob Herring		};
50724ba675SRob Herring
51724ba675SRob Herring		led2 {
52724ba675SRob Herring			label = "system::user";
53724ba675SRob Herring			gpios = <&gpio6 19 GPIO_ACTIVE_LOW>;
54724ba675SRob Herring		};
55724ba675SRob Herring	};
56724ba675SRob Herring
57dc7b1fb4SKrzysztof Kozlowski	reg_lcd: regulator-0 {
58dc7b1fb4SKrzysztof Kozlowski		compatible = "regulator-fixed";
59724ba675SRob Herring		pinctrl-names = "default";
60724ba675SRob Herring		pinctrl-0 = <&pinctrl_lcdreg>;
61724ba675SRob Herring		regulator-name = "LCD";
62724ba675SRob Herring		regulator-min-microvolt = <5000000>;
63724ba675SRob Herring		regulator-max-microvolt = <5000000>;
64724ba675SRob Herring		gpio = <&gpio1 25 GPIO_ACTIVE_HIGH>;
65724ba675SRob Herring		enable-active-high;
66724ba675SRob Herring	};
67724ba675SRob Herring};
68724ba675SRob Herring
69724ba675SRob Herring&cspi1 {
70724ba675SRob Herring	pinctrl-0 = <&pinctrl_cspi1>;
71724ba675SRob Herring	cs-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
72724ba675SRob Herring	status = "okay";
73724ba675SRob Herring
74724ba675SRob Herring	ads7846@0 {
75724ba675SRob Herring		compatible = "ti,ads7846";
76724ba675SRob Herring		pinctrl-names = "default";
77724ba675SRob Herring		pinctrl-0 = <&pinctrl_touch>;
78724ba675SRob Herring		reg = <0>;
79724ba675SRob Herring		interrupts = <&gpio4 25 IRQ_TYPE_LEVEL_LOW>;
80724ba675SRob Herring		spi-cpol;
81724ba675SRob Herring		spi-max-frequency = <1500000>;
82724ba675SRob Herring		ti,keep-vref-on;
83724ba675SRob Herring	};
84724ba675SRob Herring};
85724ba675SRob Herring
86724ba675SRob Herring&fb {
87724ba675SRob Herring	pinctrl-names = "default";
88724ba675SRob Herring	pinctrl-0 = <&pinctrl_imxfb>;
89724ba675SRob Herring	display = <&display0>;
90724ba675SRob Herring	lcd-supply = <&reg_lcd>;
91724ba675SRob Herring	fsl,dmacr = <0x00040060>;
92724ba675SRob Herring	fsl,lscr1 = <0x00120300>;
93724ba675SRob Herring	fsl,lpccr = <0x00a903ff>;
94724ba675SRob Herring	status = "okay";
95724ba675SRob Herring};
96724ba675SRob Herring
97724ba675SRob Herring&i2c1 {
98724ba675SRob Herring	codec: codec@1a {
99724ba675SRob Herring		compatible = "ti,tlv320aic23";
100724ba675SRob Herring		reg = <0x1a>;
101724ba675SRob Herring	};
102724ba675SRob Herring};
103724ba675SRob Herring
104724ba675SRob Herring&kpp {
105724ba675SRob Herring	linux,keymap = <
106724ba675SRob Herring		MATRIX_KEY(0, 0, KEY_UP)
107724ba675SRob Herring		MATRIX_KEY(0, 1, KEY_DOWN)
108724ba675SRob Herring		MATRIX_KEY(1, 0, KEY_RIGHT)
109724ba675SRob Herring		MATRIX_KEY(1, 1, KEY_LEFT)
110724ba675SRob Herring	>;
111724ba675SRob Herring	status = "okay";
112724ba675SRob Herring};
113724ba675SRob Herring
114724ba675SRob Herring&sdhci1 {
115724ba675SRob Herring	pinctrl-names = "default";
116724ba675SRob Herring	pinctrl-0 = <&pinctrl_sdhc1>;
117724ba675SRob Herring	bus-width = <4>;
118724ba675SRob Herring	status = "okay";
119724ba675SRob Herring};
120724ba675SRob Herring
121724ba675SRob Herring&ssi1 {
122724ba675SRob Herring	pinctrl-names = "default";
123724ba675SRob Herring	pinctrl-0 = <&pinctrl_ssi1>;
124724ba675SRob Herring	codec-handle = <&codec>;
125724ba675SRob Herring	status = "okay";
126724ba675SRob Herring};
127724ba675SRob Herring
128724ba675SRob Herring&uart1 {
129724ba675SRob Herring	uart-has-rtscts;
130724ba675SRob Herring	pinctrl-names = "default";
131724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart1>;
132724ba675SRob Herring	status = "okay";
133724ba675SRob Herring};
134724ba675SRob Herring
135724ba675SRob Herring&uart2 {
136724ba675SRob Herring	uart-has-rtscts;
137724ba675SRob Herring	pinctrl-names = "default";
138724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart2>;
139724ba675SRob Herring	status = "okay";
140724ba675SRob Herring};
141724ba675SRob Herring
142724ba675SRob Herring&uart3 {
143724ba675SRob Herring	uart-has-rtscts;
144724ba675SRob Herring	pinctrl-names = "default";
145724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart3>;
146724ba675SRob Herring	status = "okay";
147724ba675SRob Herring};
148724ba675SRob Herring
149724ba675SRob Herring&iomuxc {
150724ba675SRob Herring	imx27-eukrea-cpuimx27-baseboard {
151724ba675SRob Herring		pinctrl_cspi1: cspi1grp {
152724ba675SRob Herring			fsl,pins = <
153724ba675SRob Herring				MX27_PAD_CSPI1_MISO__CSPI1_MISO	0x0
154724ba675SRob Herring				MX27_PAD_CSPI1_MOSI__CSPI1_MOSI	0x0
155724ba675SRob Herring				MX27_PAD_CSPI1_SCLK__CSPI1_SCLK	0x0
156724ba675SRob Herring				MX27_PAD_CSPI1_SS0__GPIO4_28	0x0 /* CS0 */
157724ba675SRob Herring			>;
158724ba675SRob Herring		};
159724ba675SRob Herring
160724ba675SRob Herring		pinctrl_backlight: backlightgrp {
161724ba675SRob Herring			fsl,pins = <
162724ba675SRob Herring				MX27_PAD_PWMO__GPIO5_5		0x0
163724ba675SRob Herring			>;
164724ba675SRob Herring		};
165724ba675SRob Herring
166724ba675SRob Herring		pinctrl_gpioleds: gpioledsgrp {
167724ba675SRob Herring			fsl,pins = <
168724ba675SRob Herring				MX27_PAD_PC_PWRON__GPIO6_16	0x0
169724ba675SRob Herring				MX27_PAD_PC_CD2_B__GPIO6_19	0x0
170724ba675SRob Herring			>;
171724ba675SRob Herring		};
172724ba675SRob Herring
173724ba675SRob Herring		pinctrl_imxfb: imxfbgrp {
174724ba675SRob Herring			fsl,pins = <
175724ba675SRob Herring				MX27_PAD_LD0__LD0		0x0
176724ba675SRob Herring				MX27_PAD_LD1__LD1		0x0
177724ba675SRob Herring				MX27_PAD_LD2__LD2		0x0
178724ba675SRob Herring				MX27_PAD_LD3__LD3		0x0
179724ba675SRob Herring				MX27_PAD_LD4__LD4		0x0
180724ba675SRob Herring				MX27_PAD_LD5__LD5		0x0
181724ba675SRob Herring				MX27_PAD_LD6__LD6		0x0
182724ba675SRob Herring				MX27_PAD_LD7__LD7		0x0
183724ba675SRob Herring				MX27_PAD_LD8__LD8		0x0
184724ba675SRob Herring				MX27_PAD_LD9__LD9		0x0
185724ba675SRob Herring				MX27_PAD_LD10__LD10		0x0
186724ba675SRob Herring				MX27_PAD_LD11__LD11		0x0
187724ba675SRob Herring				MX27_PAD_LD12__LD12		0x0
188724ba675SRob Herring				MX27_PAD_LD13__LD13		0x0
189724ba675SRob Herring				MX27_PAD_LD14__LD14		0x0
190724ba675SRob Herring				MX27_PAD_LD15__LD15		0x0
191724ba675SRob Herring				MX27_PAD_LD16__LD16		0x0
192724ba675SRob Herring				MX27_PAD_LD17__LD17		0x0
193724ba675SRob Herring				MX27_PAD_CONTRAST__CONTRAST	0x0
194724ba675SRob Herring				MX27_PAD_OE_ACD__OE_ACD		0x0
195724ba675SRob Herring				MX27_PAD_HSYNC__HSYNC		0x0
196724ba675SRob Herring				MX27_PAD_VSYNC__VSYNC		0x0
197724ba675SRob Herring			>;
198724ba675SRob Herring		};
199724ba675SRob Herring
200724ba675SRob Herring		pinctrl_lcdreg: lcdreggrp {
201724ba675SRob Herring			fsl,pins = <
202724ba675SRob Herring				MX27_PAD_CLS__GPIO1_25		0x0
203724ba675SRob Herring			>;
204724ba675SRob Herring		};
205724ba675SRob Herring
206724ba675SRob Herring		pinctrl_sdhc1: sdhc1grp {
207724ba675SRob Herring			fsl,pins = <
208724ba675SRob Herring				MX27_PAD_SD1_CLK__SD1_CLK	0x0
209724ba675SRob Herring				MX27_PAD_SD1_CMD__SD1_CMD	0x0
210724ba675SRob Herring				MX27_PAD_SD1_D0__SD1_D0		0x0
211724ba675SRob Herring				MX27_PAD_SD1_D1__SD1_D1		0x0
212724ba675SRob Herring				MX27_PAD_SD1_D2__SD1_D2		0x0
213724ba675SRob Herring				MX27_PAD_SD1_D3__SD1_D3		0x0
214724ba675SRob Herring			>;
215724ba675SRob Herring		};
216724ba675SRob Herring
217724ba675SRob Herring		pinctrl_ssi1: ssi1grp {
218724ba675SRob Herring			fsl,pins = <
219724ba675SRob Herring				MX27_PAD_SSI4_CLK__SSI4_CLK	0x0
220724ba675SRob Herring				MX27_PAD_SSI4_FS__SSI4_FS	0x0
221724ba675SRob Herring				MX27_PAD_SSI4_RXDAT__SSI4_RXDAT	0x1
222724ba675SRob Herring				MX27_PAD_SSI4_TXDAT__SSI4_TXDAT	0x1
223724ba675SRob Herring			>;
224724ba675SRob Herring		};
225724ba675SRob Herring
226724ba675SRob Herring		pinctrl_touch: touchgrp {
227724ba675SRob Herring			fsl,pins = <
228724ba675SRob Herring				MX27_PAD_CSPI1_RDY__GPIO4_25	0x0 /* IRQ */
229724ba675SRob Herring			>;
230724ba675SRob Herring		};
231724ba675SRob Herring
232724ba675SRob Herring		pinctrl_uart1: uart1grp {
233724ba675SRob Herring			fsl,pins = <
234724ba675SRob Herring				MX27_PAD_UART1_TXD__UART1_TXD	0x0
235724ba675SRob Herring				MX27_PAD_UART1_RXD__UART1_RXD	0x0
236724ba675SRob Herring				MX27_PAD_UART1_CTS__UART1_CTS	0x0
237724ba675SRob Herring				MX27_PAD_UART1_RTS__UART1_RTS	0x0
238724ba675SRob Herring			>;
239724ba675SRob Herring		};
240724ba675SRob Herring
241724ba675SRob Herring		pinctrl_uart2: uart2grp {
242724ba675SRob Herring			fsl,pins = <
243724ba675SRob Herring				MX27_PAD_UART2_TXD__UART2_TXD	0x0
244724ba675SRob Herring				MX27_PAD_UART2_RXD__UART2_RXD	0x0
245724ba675SRob Herring				MX27_PAD_UART2_CTS__UART2_CTS	0x0
246724ba675SRob Herring				MX27_PAD_UART2_RTS__UART2_RTS	0x0
247724ba675SRob Herring			>;
248724ba675SRob Herring		};
249724ba675SRob Herring
250724ba675SRob Herring		pinctrl_uart3: uart3grp {
251724ba675SRob Herring			fsl,pins = <
252724ba675SRob Herring				MX27_PAD_UART3_TXD__UART3_TXD	0x0
253724ba675SRob Herring				MX27_PAD_UART3_RXD__UART3_RXD	0x0
254724ba675SRob Herring				MX27_PAD_UART3_CTS__UART3_CTS	0x0
255724ba675SRob Herring				MX27_PAD_UART3_RTS__UART3_RTS	0x0
256724ba675SRob Herring			>;
257724ba675SRob Herring		};
258724ba675SRob Herring	};
259724ba675SRob Herring};
260