xref: /openbmc/linux/arch/arm/boot/dts/nxp/mxs/imx28-m28evk.dts (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later
2724ba675SRob Herring/*
3724ba675SRob Herring
4724ba675SRob Herring * Copyright (C) 2012 Marek Vasut <marex@denx.de>
5724ba675SRob Herring */
6724ba675SRob Herring
7724ba675SRob Herring/dts-v1/;
8724ba675SRob Herring#include "imx28-m28.dtsi"
9724ba675SRob Herring
10724ba675SRob Herring/ {
11724ba675SRob Herring	model = "Aries/DENX M28EVK";
12724ba675SRob Herring	compatible = "aries,m28evk", "denx,m28evk", "fsl,imx28";
13724ba675SRob Herring
14724ba675SRob Herring	backlight {
15724ba675SRob Herring		compatible = "pwm-backlight";
16724ba675SRob Herring		pwms = <&pwm 4 5000000>;
17724ba675SRob Herring		brightness-levels = <0 4 8 16 32 64 128 255>;
18724ba675SRob Herring		default-brightness-level = <6>;
19724ba675SRob Herring	};
20724ba675SRob Herring
21*106e8447SKrzysztof Kozlowski	reg_vddio_sd0: regulator-1 {
22724ba675SRob Herring		compatible = "regulator-fixed";
23724ba675SRob Herring		regulator-name = "vddio-sd0";
24724ba675SRob Herring		regulator-min-microvolt = <3300000>;
25724ba675SRob Herring		regulator-max-microvolt = <3300000>;
26724ba675SRob Herring		gpio = <&gpio3 28 0>;
27724ba675SRob Herring	};
28724ba675SRob Herring
29*106e8447SKrzysztof Kozlowski	reg_usb0_vbus: regulator-2 {
30724ba675SRob Herring		compatible = "regulator-fixed";
31724ba675SRob Herring		regulator-name = "usb0_vbus";
32724ba675SRob Herring		regulator-min-microvolt = <5000000>;
33724ba675SRob Herring		regulator-max-microvolt = <5000000>;
34724ba675SRob Herring		gpio = <&gpio3 12 0>;
35724ba675SRob Herring	};
36724ba675SRob Herring
37*106e8447SKrzysztof Kozlowski	reg_usb1_vbus: regulator-3 {
38724ba675SRob Herring		compatible = "regulator-fixed";
39724ba675SRob Herring		regulator-name = "usb1_vbus";
40724ba675SRob Herring		regulator-min-microvolt = <5000000>;
41724ba675SRob Herring		regulator-max-microvolt = <5000000>;
42724ba675SRob Herring		gpio = <&gpio3 13 0>;
43724ba675SRob Herring	};
44724ba675SRob Herring
45724ba675SRob Herring	sound {
46724ba675SRob Herring		compatible = "denx,m28evk-sgtl5000",
47724ba675SRob Herring			     "fsl,mxs-audio-sgtl5000";
48724ba675SRob Herring		model = "m28evk-sgtl5000";
49724ba675SRob Herring		saif-controllers = <&saif0 &saif1>;
50724ba675SRob Herring		audio-codec = <&sgtl5000>;
51724ba675SRob Herring	};
52724ba675SRob Herring};
53724ba675SRob Herring
54724ba675SRob Herring&auart0 {
55724ba675SRob Herring	pinctrl-names = "default";
56724ba675SRob Herring	pinctrl-0 = <&auart0_pins_a>;
57724ba675SRob Herring	status = "okay";
58724ba675SRob Herring};
59724ba675SRob Herring
60724ba675SRob Herring&auart1 {
61724ba675SRob Herring	pinctrl-names = "default";
62724ba675SRob Herring	pinctrl-0 = <&auart1_pins_a>;
63724ba675SRob Herring	status = "okay";
64724ba675SRob Herring};
65724ba675SRob Herring
66724ba675SRob Herring&auart2 {
67724ba675SRob Herring	pinctrl-names = "default";
68724ba675SRob Herring	pinctrl-0 = <&auart2_2pins_b>;
69724ba675SRob Herring	status = "okay";
70724ba675SRob Herring};
71724ba675SRob Herring
72724ba675SRob Herring&duart {
73724ba675SRob Herring	pinctrl-names = "default";
74724ba675SRob Herring	pinctrl-0 = <&duart_pins_a>;
75724ba675SRob Herring	status = "okay";
76724ba675SRob Herring};
77724ba675SRob Herring
78724ba675SRob Herring&i2c0 {
79724ba675SRob Herring	sgtl5000: codec@a {
80724ba675SRob Herring		compatible = "fsl,sgtl5000";
81724ba675SRob Herring		reg = <0x0a>;
82724ba675SRob Herring		#sound-dai-cells = <0>;
83724ba675SRob Herring		VDDA-supply = <&reg_3p3v>;
84724ba675SRob Herring		VDDIO-supply = <&reg_3p3v>;
85724ba675SRob Herring		clocks = <&saif0>;
86724ba675SRob Herring	};
87724ba675SRob Herring
88724ba675SRob Herring	eeprom: eeprom@51 {
89724ba675SRob Herring		compatible = "atmel,24c128";
90724ba675SRob Herring		reg = <0x51>;
91724ba675SRob Herring		pagesize = <32>;
92724ba675SRob Herring	};
93724ba675SRob Herring};
94724ba675SRob Herring
95724ba675SRob Herring&lcdif {
96724ba675SRob Herring	pinctrl-names = "default";
97724ba675SRob Herring	pinctrl-0 = <&lcdif_24bit_pins_a
98724ba675SRob Herring		     &lcdif_pins_m28>;
99724ba675SRob Herring	display = <&display0>;
100724ba675SRob Herring	status = "okay";
101724ba675SRob Herring
102724ba675SRob Herring	display0: display0 {
103724ba675SRob Herring		bits-per-pixel = <16>;
104724ba675SRob Herring		bus-width = <18>;
105724ba675SRob Herring
106724ba675SRob Herring		display-timings {
107724ba675SRob Herring			native-mode = <&timing0>;
108724ba675SRob Herring			timing0: timing0 {
109724ba675SRob Herring				clock-frequency = <33260000>;
110724ba675SRob Herring				hactive = <800>;
111724ba675SRob Herring				vactive = <480>;
112724ba675SRob Herring				hback-porch = <0>;
113724ba675SRob Herring				hfront-porch = <256>;
114724ba675SRob Herring				vback-porch = <0>;
115724ba675SRob Herring				vfront-porch = <45>;
116724ba675SRob Herring				hsync-len = <1>;
117724ba675SRob Herring				vsync-len = <1>;
118724ba675SRob Herring				hsync-active = <0>;
119724ba675SRob Herring				vsync-active = <0>;
120724ba675SRob Herring				de-active = <1>;
121724ba675SRob Herring				pixelclk-active = <1>;
122724ba675SRob Herring			};
123724ba675SRob Herring		};
124724ba675SRob Herring	};
125724ba675SRob Herring};
126724ba675SRob Herring
127724ba675SRob Herring&lradc {
128724ba675SRob Herring	status = "okay";
129724ba675SRob Herring	fsl,lradc-touchscreen-wires = <4>;
130724ba675SRob Herring};
131724ba675SRob Herring
132724ba675SRob Herring&can0 {
133724ba675SRob Herring	pinctrl-names = "default";
134724ba675SRob Herring	pinctrl-0 = <&can0_pins_a>;
135724ba675SRob Herring	status = "okay";
136724ba675SRob Herring};
137724ba675SRob Herring
138724ba675SRob Herring&can1 {
139724ba675SRob Herring	pinctrl-names = "default";
140724ba675SRob Herring	pinctrl-0 = <&can1_pins_a>;
141724ba675SRob Herring	status = "okay";
142724ba675SRob Herring};
143724ba675SRob Herring
144724ba675SRob Herring&mac0 {
145724ba675SRob Herring	phy-mode = "rmii";
146724ba675SRob Herring	pinctrl-names = "default";
147724ba675SRob Herring	pinctrl-0 = <&mac0_pins_a>;
148724ba675SRob Herring	clocks = <&clks 57>, <&clks 57>;
149724ba675SRob Herring	clock-names = "ipg", "ahb";
150724ba675SRob Herring	status = "okay";
151724ba675SRob Herring};
152724ba675SRob Herring
153724ba675SRob Herring&mac1 {
154724ba675SRob Herring	phy-mode = "rmii";
155724ba675SRob Herring	pinctrl-names = "default";
156724ba675SRob Herring	pinctrl-0 = <&mac1_pins_a>;
157724ba675SRob Herring	status = "okay";
158724ba675SRob Herring};
159724ba675SRob Herring
160724ba675SRob Herring&pinctrl {
161724ba675SRob Herring	pinctrl-names = "default";
162724ba675SRob Herring	pinctrl-0 = <&hog_pins_a>;
163724ba675SRob Herring
164724ba675SRob Herring	hog_pins_a: hog@0 {
165724ba675SRob Herring		reg = <0>;
166724ba675SRob Herring		fsl,pinmux-ids = <
167724ba675SRob Herring			MX28_PAD_PWM3__GPIO_3_28
168724ba675SRob Herring			MX28_PAD_AUART2_CTS__GPIO_3_10
169724ba675SRob Herring			MX28_PAD_AUART2_RTS__GPIO_3_11
170724ba675SRob Herring			MX28_PAD_AUART3_RX__GPIO_3_12
171724ba675SRob Herring			MX28_PAD_AUART3_TX__GPIO_3_13
172724ba675SRob Herring		>;
173724ba675SRob Herring		fsl,drive-strength = <MXS_DRIVE_4mA>;
174724ba675SRob Herring		fsl,voltage = <MXS_VOLTAGE_HIGH>;
175724ba675SRob Herring		fsl,pull-up = <MXS_PULL_DISABLE>;
176724ba675SRob Herring	};
177724ba675SRob Herring
178724ba675SRob Herring	lcdif_pins_m28: lcdif-m28@0 {
179724ba675SRob Herring		reg = <0>;
180724ba675SRob Herring		fsl,pinmux-ids = <
181724ba675SRob Herring			MX28_PAD_LCD_DOTCLK__LCD_DOTCLK
182724ba675SRob Herring			MX28_PAD_LCD_ENABLE__LCD_ENABLE
183724ba675SRob Herring		>;
184724ba675SRob Herring		fsl,drive-strength = <MXS_DRIVE_4mA>;
185724ba675SRob Herring		fsl,voltage = <MXS_VOLTAGE_HIGH>;
186724ba675SRob Herring		fsl,pull-up = <MXS_PULL_DISABLE>;
187724ba675SRob Herring	};
188724ba675SRob Herring};
189724ba675SRob Herring
190724ba675SRob Herring&pwm {
191724ba675SRob Herring	pinctrl-names = "default";
192724ba675SRob Herring	pinctrl-0 = <&pwm4_pins_a>;
193724ba675SRob Herring	status = "okay";
194724ba675SRob Herring};
195724ba675SRob Herring
196724ba675SRob Herring&saif0 {
197724ba675SRob Herring	pinctrl-names = "default";
198724ba675SRob Herring	pinctrl-0 = <&saif0_pins_a>;
199724ba675SRob Herring	status = "okay";
200724ba675SRob Herring};
201724ba675SRob Herring
202724ba675SRob Herring&saif1 {
203724ba675SRob Herring	pinctrl-names = "default";
204724ba675SRob Herring	pinctrl-0 = <&saif1_pins_a>;
205724ba675SRob Herring	fsl,saif-master = <&saif0>;
206724ba675SRob Herring	status = "okay";
207724ba675SRob Herring};
208724ba675SRob Herring
209724ba675SRob Herring&ssp0 {
210724ba675SRob Herring	compatible = "fsl,imx28-mmc";
211724ba675SRob Herring	pinctrl-names = "default";
212724ba675SRob Herring	pinctrl-0 = <&mmc0_8bit_pins_a
213724ba675SRob Herring		     &mmc0_cd_cfg
214724ba675SRob Herring		     &mmc0_sck_cfg>;
215724ba675SRob Herring	bus-width = <8>;
216724ba675SRob Herring	wp-gpios = <&gpio3 10 0>;
217724ba675SRob Herring	vmmc-supply = <&reg_vddio_sd0>;
218724ba675SRob Herring	status = "okay";
219724ba675SRob Herring};
220724ba675SRob Herring
221724ba675SRob Herring&ssp2 {
222724ba675SRob Herring	#address-cells = <1>;
223724ba675SRob Herring	#size-cells = <0>;
224724ba675SRob Herring	compatible = "fsl,imx28-spi";
225724ba675SRob Herring	pinctrl-names = "default";
226724ba675SRob Herring	pinctrl-0 = <&spi2_pins_a>;
227724ba675SRob Herring	status = "okay";
228724ba675SRob Herring
229724ba675SRob Herring	flash: flash@0 {
230724ba675SRob Herring		#address-cells = <1>;
231724ba675SRob Herring		#size-cells = <1>;
232724ba675SRob Herring		compatible = "m25p80", "jedec,spi-nor";
233724ba675SRob Herring		spi-max-frequency = <40000000>;
234724ba675SRob Herring		reg = <0>;
235724ba675SRob Herring	};
236724ba675SRob Herring};
237724ba675SRob Herring
238724ba675SRob Herring&usb0 {
239724ba675SRob Herring	vbus-supply = <&reg_usb0_vbus>;
240724ba675SRob Herring	pinctrl-names = "default";
241724ba675SRob Herring	pinctrl-0 = <&usb0_pins_a>;
242724ba675SRob Herring	status = "okay";
243724ba675SRob Herring};
244724ba675SRob Herring
245724ba675SRob Herring&usb1 {
246724ba675SRob Herring	vbus-supply = <&reg_usb1_vbus>;
247724ba675SRob Herring	pinctrl-names = "default";
248724ba675SRob Herring	pinctrl-0 = <&usb1_pins_a>;
249724ba675SRob Herring	status = "okay";
250724ba675SRob Herring};
251724ba675SRob Herring
252724ba675SRob Herring&usbphy0 {
253724ba675SRob Herring	status = "okay";
254724ba675SRob Herring};
255724ba675SRob Herring
256724ba675SRob Herring&usbphy1 {
257724ba675SRob Herring	status = "okay";
258724ba675SRob Herring};
259