imx28-m28evk.dts revision 284090
1/*
2 * Copyright (C) 2012 Marek Vasut <marex@denx.de>
3 *
4 * The code contained herein is licensed under the GNU General Public
5 * License. You may obtain a copy of the GNU General Public License
6 * Version 2 or later at the following locations:
7 *
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
10 */
11
12/dts-v1/;
13#include "imx28-m28.dtsi"
14
15/ {
16	model = "DENX M28EVK";
17	compatible = "denx,m28evk", "fsl,imx28";
18
19	apb@80000000 {
20		apbh@80000000 {
21			ssp0: ssp@80010000 {
22				compatible = "fsl,imx28-mmc";
23				pinctrl-names = "default";
24				pinctrl-0 = <&mmc0_8bit_pins_a
25					     &mmc0_cd_cfg
26					     &mmc0_sck_cfg>;
27				bus-width = <8>;
28				wp-gpios = <&gpio3 10 0>;
29				vmmc-supply = <&reg_vddio_sd0>;
30				status = "okay";
31			};
32
33			ssp2: ssp@80014000 {
34				#address-cells = <1>;
35				#size-cells = <0>;
36				compatible = "fsl,imx28-spi";
37				pinctrl-names = "default";
38				pinctrl-0 = <&spi2_pins_a>;
39				status = "okay";
40
41				flash: m25p80@0 {
42					#address-cells = <1>;
43					#size-cells = <1>;
44					compatible = "m25p80";
45					spi-max-frequency = <40000000>;
46					reg = <0>;
47				};
48			};
49
50			pinctrl@80018000 {
51				pinctrl-names = "default";
52				pinctrl-0 = <&hog_pins_a>;
53
54				hog_pins_a: hog@0 {
55					reg = <0>;
56					fsl,pinmux-ids = <
57						MX28_PAD_PWM3__GPIO_3_28
58						MX28_PAD_AUART2_CTS__GPIO_3_10
59						MX28_PAD_AUART2_RTS__GPIO_3_11
60						MX28_PAD_AUART3_RX__GPIO_3_12
61						MX28_PAD_AUART3_TX__GPIO_3_13
62					>;
63					fsl,drive-strength = <MXS_DRIVE_4mA>;
64					fsl,voltage = <MXS_VOLTAGE_HIGH>;
65					fsl,pull-up = <MXS_PULL_DISABLE>;
66				};
67
68				lcdif_pins_m28: lcdif-m28@0 {
69					reg = <0>;
70					fsl,pinmux-ids = <
71						MX28_PAD_LCD_DOTCLK__LCD_DOTCLK
72						MX28_PAD_LCD_ENABLE__LCD_ENABLE
73					>;
74					fsl,drive-strength = <MXS_DRIVE_4mA>;
75					fsl,voltage = <MXS_VOLTAGE_HIGH>;
76					fsl,pull-up = <MXS_PULL_DISABLE>;
77				};
78			};
79
80			lcdif@80030000 {
81				pinctrl-names = "default";
82				pinctrl-0 = <&lcdif_24bit_pins_a
83					     &lcdif_pins_m28>;
84				display = <&display0>;
85				status = "okay";
86
87				display0: display0 {
88					bits-per-pixel = <16>;
89					bus-width = <18>;
90
91					display-timings {
92						native-mode = <&timing0>;
93						timing0: timing0 {
94							clock-frequency = <33260000>;
95							hactive = <800>;
96							vactive = <480>;
97							hback-porch = <0>;
98							hfront-porch = <256>;
99							vback-porch = <0>;
100							vfront-porch = <45>;
101							hsync-len = <1>;
102							vsync-len = <1>;
103							hsync-active = <0>;
104							vsync-active = <0>;
105							de-active = <1>;
106							pixelclk-active = <1>;
107						};
108					};
109				};
110			};
111
112			can0: can@80032000 {
113				pinctrl-names = "default";
114				pinctrl-0 = <&can0_pins_a>;
115				status = "okay";
116			};
117
118			can1: can@80034000 {
119				pinctrl-names = "default";
120				pinctrl-0 = <&can1_pins_a>;
121				status = "okay";
122			};
123		};
124
125		apbx@80040000 {
126			saif0: saif@80042000 {
127				pinctrl-names = "default";
128				pinctrl-0 = <&saif0_pins_a>;
129				status = "okay";
130			};
131
132			saif1: saif@80046000 {
133				pinctrl-names = "default";
134				pinctrl-0 = <&saif1_pins_a>;
135				fsl,saif-master = <&saif0>;
136				status = "okay";
137			};
138
139			i2c0: i2c@80058000 {
140				sgtl5000: codec@0a {
141					compatible = "fsl,sgtl5000";
142					reg = <0x0a>;
143					VDDA-supply = <&reg_3p3v>;
144					VDDIO-supply = <&reg_3p3v>;
145					clocks = <&saif0>;
146				};
147
148				eeprom: eeprom@51 {
149					compatible = "atmel,24c128";
150					reg = <0x51>;
151					pagesize = <32>;
152				};
153			};
154
155			lradc@80050000 {
156				status = "okay";
157				fsl,lradc-touchscreen-wires = <4>;
158			};
159
160			duart: serial@80074000 {
161				pinctrl-names = "default";
162				pinctrl-0 = <&duart_pins_a>;
163				status = "okay";
164			};
165
166			usbphy0: usbphy@8007c000 {
167				status = "okay";
168			};
169
170			usbphy1: usbphy@8007e000 {
171				status = "okay";
172			};
173
174			auart0: serial@8006a000 {
175				pinctrl-names = "default";
176				pinctrl-0 = <&auart0_pins_a>;
177				status = "okay";
178			};
179
180			auart1: serial@8006c000 {
181				pinctrl-names = "default";
182				pinctrl-0 = <&auart1_pins_a>;
183				status = "okay";
184			};
185
186			auart2: serial@8006e000 {
187				pinctrl-names = "default";
188				pinctrl-0 = <&auart2_2pins_b>;
189				status = "okay";
190			};
191
192			pwm: pwm@80064000 {
193				pinctrl-names = "default";
194				pinctrl-0 = <&pwm4_pins_a>;
195				status = "okay";
196			};
197		};
198	};
199
200	ahb@80080000 {
201		usb0: usb@80080000 {
202			vbus-supply = <&reg_usb0_vbus>;
203			pinctrl-names = "default";
204			pinctrl-0 = <&usb0_pins_a>;
205			status = "okay";
206		};
207
208		usb1: usb@80090000 {
209			vbus-supply = <&reg_usb1_vbus>;
210			pinctrl-names = "default";
211			pinctrl-0 = <&usb1_pins_a>;
212			status = "okay";
213		};
214
215		mac0: ethernet@800f0000 {
216			phy-mode = "rmii";
217			pinctrl-names = "default";
218			pinctrl-0 = <&mac0_pins_a>;
219			clocks = <&clks 57>, <&clks 57>;
220			clock-names = "ipg", "ahb";
221			status = "okay";
222		};
223
224		mac1: ethernet@800f4000 {
225			phy-mode = "rmii";
226			pinctrl-names = "default";
227			pinctrl-0 = <&mac1_pins_a>;
228			status = "okay";
229		};
230	};
231
232	backlight {
233		compatible = "pwm-backlight";
234		pwms = <&pwm 4 5000000>;
235		brightness-levels = <0 4 8 16 32 64 128 255>;
236		default-brightness-level = <6>;
237	};
238
239	regulators {
240		reg_vddio_sd0: regulator@1 {
241			compatible = "regulator-fixed";
242			reg = <1>;
243			regulator-name = "vddio-sd0";
244			regulator-min-microvolt = <3300000>;
245			regulator-max-microvolt = <3300000>;
246			gpio = <&gpio3 28 0>;
247		};
248
249		reg_usb0_vbus: regulator@2 {
250			compatible = "regulator-fixed";
251			reg = <2>;
252			regulator-name = "usb0_vbus";
253			regulator-min-microvolt = <5000000>;
254			regulator-max-microvolt = <5000000>;
255			gpio = <&gpio3 12 0>;
256		};
257
258		reg_usb1_vbus: regulator@3 {
259			compatible = "regulator-fixed";
260			reg = <3>;
261			regulator-name = "usb1_vbus";
262			regulator-min-microvolt = <5000000>;
263			regulator-max-microvolt = <5000000>;
264			gpio = <&gpio3 13 0>;
265		};
266	};
267
268	sound {
269		compatible = "denx,m28evk-sgtl5000",
270			     "fsl,mxs-audio-sgtl5000";
271		model = "m28evk-sgtl5000";
272		saif-controllers = <&saif0 &saif1>;
273		audio-codec = <&sgtl5000>;
274	};
275};
276