blob: 7e2b0f198dfadb801f350ee9282cc6c73bcea210 [file] [log] [blame]
Fabio Estevam3f24bd32021-02-17 23:39:27 -03001// SPDX-License-Identifier: GPL-2.0+
2//
3// Copyright 2012 Freescale Semiconductor, Inc.
4
5/dts-v1/;
6#include "imx28.dtsi"
7
8/ {
9 model = "Freescale i.MX28 Evaluation Kit";
10 compatible = "fsl,imx28-evk", "fsl,imx28";
11
12 memory@40000000 {
13 device_type = "memory";
14 reg = <0x40000000 0x08000000>;
15 };
16
17
18 reg_3p3v: regulator-3p3v {
19 compatible = "regulator-fixed";
20 regulator-name = "3P3V";
21 regulator-min-microvolt = <3300000>;
22 regulator-max-microvolt = <3300000>;
23 regulator-always-on;
24 };
25
26 reg_vddio_sd0: regulator-vddio-sd0 {
27 compatible = "regulator-fixed";
28 regulator-name = "vddio-sd0";
29 regulator-min-microvolt = <3300000>;
30 regulator-max-microvolt = <3300000>;
31 gpio = <&gpio3 28 0>;
32 };
33
34 reg_fec_3v3: regulator-fec-3v3 {
35 compatible = "regulator-fixed";
36 regulator-name = "fec-3v3";
37 regulator-min-microvolt = <3300000>;
38 regulator-max-microvolt = <3300000>;
39 gpio = <&gpio2 15 0>;
40 };
41
42 reg_usb0_vbus: regulator-usb0-vbus {
43 compatible = "regulator-fixed";
44 regulator-name = "usb0_vbus";
45 regulator-min-microvolt = <5000000>;
46 regulator-max-microvolt = <5000000>;
47 gpio = <&gpio3 9 0>;
48 enable-active-high;
49 };
50
51 reg_usb1_vbus: regulator-usb1-vbus {
52 compatible = "regulator-fixed";
53 regulator-name = "usb1_vbus";
54 regulator-min-microvolt = <5000000>;
55 regulator-max-microvolt = <5000000>;
56 gpio = <&gpio3 8 0>;
57 enable-active-high;
58 };
59
60 reg_lcd_3v3: regulator-lcd-3v3 {
61 compatible = "regulator-fixed";
62 regulator-name = "lcd-3v3";
63 regulator-min-microvolt = <3300000>;
64 regulator-max-microvolt = <3300000>;
65 gpio = <&gpio3 30 0>;
66 enable-active-high;
67 };
68
69 reg_can_3v3: regulator-can-3v3 {
70 compatible = "regulator-fixed";
71 regulator-name = "can-3v3";
72 regulator-min-microvolt = <3300000>;
73 regulator-max-microvolt = <3300000>;
74 gpio = <&gpio2 13 0>;
75 enable-active-high;
76 };
77
78 reg_lcd_5v: regulator-lcd-5v {
79 compatible = "regulator-fixed";
80 regulator-name = "lcd-5v";
81 regulator-min-microvolt = <5000000>;
82 regulator-max-microvolt = <5000000>;
83 };
84
85 panel {
86 compatible = "sii,43wvf1g";
87 backlight = <&backlight_display>;
88 dvdd-supply = <&reg_lcd_3v3>;
89 avdd-supply = <&reg_lcd_5v>;
90
91 port {
92 panel_in: endpoint {
93 remote-endpoint = <&display_out>;
94 };
95 };
96 };
97
98 apb@80000000 {
99 apbh@80000000 {
100 nand-controller@8000c000 {
101 pinctrl-names = "default";
102 pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg
103 &gpmi_pins_evk>;
104 status = "okay";
105 };
106
107 ssp0: spi@80010000 {
108 compatible = "fsl,imx28-mmc";
109 pinctrl-names = "default";
110 pinctrl-0 = <&mmc0_8bit_pins_a
111 &mmc0_cd_cfg &mmc0_sck_cfg>;
112 bus-width = <8>;
113 wp-gpios = <&gpio2 12 0>;
114 vmmc-supply = <&reg_vddio_sd0>;
115 status = "okay";
116 };
117
118 ssp1: spi@80012000 {
119 compatible = "fsl,imx28-mmc";
120 bus-width = <8>;
121 wp-gpios = <&gpio0 28 0>;
122 };
123
124 ssp2: spi@80014000 {
125 #address-cells = <1>;
126 #size-cells = <0>;
127 compatible = "fsl,imx28-spi";
128 pinctrl-names = "default";
129 pinctrl-0 = <&spi2_pins_a>;
130 status = "okay";
131
132 flash: m25p80@0 {
133 #address-cells = <1>;
134 #size-cells = <1>;
135 compatible = "sst,sst25vf016b", "jedec,spi-nor";
136 spi-max-frequency = <40000000>;
137 reg = <0>;
138 };
139 };
140
141 pinctrl@80018000 {
142 pinctrl-names = "default";
143 pinctrl-0 = <&hog_pins_a>;
144
145 hog_pins_a: hog@0 {
146 reg = <0>;
147 fsl,pinmux-ids = <
148 MX28_PAD_SSP1_CMD__GPIO_2_13
149 MX28_PAD_SSP1_DATA3__GPIO_2_15
150 MX28_PAD_ENET0_RX_CLK__GPIO_4_13
151 MX28_PAD_SSP1_SCK__GPIO_2_12
152 MX28_PAD_PWM3__GPIO_3_28
153 MX28_PAD_LCD_RESET__GPIO_3_30
154 MX28_PAD_AUART2_RX__GPIO_3_8
155 MX28_PAD_AUART2_TX__GPIO_3_9
156 >;
157 fsl,drive-strength = <MXS_DRIVE_4mA>;
158 fsl,voltage = <MXS_VOLTAGE_HIGH>;
159 fsl,pull-up = <MXS_PULL_DISABLE>;
160 };
161
162 led_pin_gpio3_5: led_gpio3_5@0 {
163 reg = <0>;
164 fsl,pinmux-ids = <
165 MX28_PAD_AUART1_TX__GPIO_3_5
166 >;
167 fsl,drive-strength = <MXS_DRIVE_4mA>;
168 fsl,voltage = <MXS_VOLTAGE_HIGH>;
169 fsl,pull-up = <MXS_PULL_DISABLE>;
170 };
171
172 gpmi_pins_evk: gpmi-nand-evk@0 {
173 reg = <0>;
174 fsl,pinmux-ids = <
175 MX28_PAD_GPMI_CE1N__GPMI_CE1N
176 MX28_PAD_GPMI_RDY1__GPMI_READY1
177 >;
178 fsl,drive-strength = <MXS_DRIVE_4mA>;
179 fsl,voltage = <MXS_VOLTAGE_HIGH>;
180 fsl,pull-up = <MXS_PULL_DISABLE>;
181 };
182
183 lcdif_pins_evk: lcdif-evk@0 {
184 reg = <0>;
185 fsl,pinmux-ids = <
186 MX28_PAD_LCD_RD_E__LCD_VSYNC
187 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
188 MX28_PAD_LCD_RS__LCD_DOTCLK
189 MX28_PAD_LCD_CS__LCD_ENABLE
190 >;
191 fsl,drive-strength = <MXS_DRIVE_4mA>;
192 fsl,voltage = <MXS_VOLTAGE_HIGH>;
193 fsl,pull-up = <MXS_PULL_DISABLE>;
194 };
195 };
196
197 lcdif@80030000 {
198 pinctrl-names = "default";
199 pinctrl-0 = <&lcdif_24bit_pins_a
200 &lcdif_pins_evk>;
201 status = "okay";
202
203 port {
204 display_out: endpoint {
205 remote-endpoint = <&panel_in>;
206 };
207 };
208 };
209
210 can0: can@80032000 {
211 pinctrl-names = "default";
212 pinctrl-0 = <&can0_pins_a>;
213 xceiver-supply = <&reg_can_3v3>;
214 status = "okay";
215 };
216
217 can1: can@80034000 {
218 pinctrl-names = "default";
219 pinctrl-0 = <&can1_pins_a>;
220 xceiver-supply = <&reg_can_3v3>;
221 status = "okay";
222 };
223 };
224
225 apbx@80040000 {
226 saif0: saif@80042000 {
227 pinctrl-names = "default";
228 pinctrl-0 = <&saif0_pins_a>;
229 status = "okay";
230 };
231
232 saif1: saif@80046000 {
233 pinctrl-names = "default";
234 pinctrl-0 = <&saif1_pins_a>;
235 fsl,saif-master = <&saif0>;
236 status = "okay";
237 };
238
239 lradc@80050000 {
240 status = "okay";
241 fsl,lradc-touchscreen-wires = <4>;
242 fsl,ave-ctrl = <4>;
243 fsl,ave-delay = <2>;
244 fsl,settling = <10>;
245 };
246
247 i2c0: i2c@80058000 {
248 pinctrl-names = "default";
249 pinctrl-0 = <&i2c0_pins_a>;
250 status = "okay";
251
252 sgtl5000: codec@a {
253 compatible = "fsl,sgtl5000";
254 reg = <0x0a>;
255 #sound-dai-cells = <0>;
256 VDDA-supply = <&reg_3p3v>;
257 VDDIO-supply = <&reg_3p3v>;
258 clocks = <&saif0>;
259 };
260
261 at24@51 {
262 compatible = "atmel,24c32";
263 pagesize = <32>;
264 reg = <0x51>;
265 };
266 };
267
268 pwm: pwm@80064000 {
269 pinctrl-names = "default";
270 pinctrl-0 = <&pwm2_pins_a>;
271 status = "okay";
272 };
273
274 duart: serial@80074000 {
275 pinctrl-names = "default";
276 pinctrl-0 = <&duart_pins_a>;
277 status = "okay";
278 };
279
280 auart0: serial@8006a000 {
281 pinctrl-names = "default";
282 pinctrl-0 = <&auart0_pins_a>;
283 uart-has-rtscts;
284 status = "okay";
285 };
286
287 auart3: serial@80070000 {
288 pinctrl-names = "default";
289 pinctrl-0 = <&auart3_pins_a>;
290 status = "okay";
291 };
292
293 usbphy0: usbphy@8007c000 {
294 status = "okay";
295 };
296
297 usbphy1: usbphy@8007e000 {
298 status = "okay";
299 };
300 };
301 };
302
303 ahb@80080000 {
304 usb0: usb@80080000 {
305 pinctrl-names = "default";
306 pinctrl-0 = <&usb0_id_pins_a>;
307 vbus-supply = <&reg_usb0_vbus>;
308 status = "okay";
309 };
310
311 usb1: usb@80090000 {
312 vbus-supply = <&reg_usb1_vbus>;
313 status = "okay";
314 };
315
316 mac0: ethernet@800f0000 {
317 phy-mode = "rmii";
318 pinctrl-names = "default";
319 pinctrl-0 = <&mac0_pins_a>;
320 phy-supply = <&reg_fec_3v3>;
321 phy-reset-gpios = <&gpio4 13 GPIO_ACTIVE_LOW>;
322 phy-reset-duration = <100>;
323 status = "okay";
324 };
325
326 mac1: ethernet@800f4000 {
327 phy-mode = "rmii";
328 pinctrl-names = "default";
329 pinctrl-0 = <&mac1_pins_a>;
330 status = "okay";
331 };
332 };
333
334 sound {
335 compatible = "fsl,imx28-evk-sgtl5000",
336 "fsl,mxs-audio-sgtl5000";
337 model = "imx28-evk-sgtl5000";
338 saif-controllers = <&saif0 &saif1>;
339 audio-codec = <&sgtl5000>;
340 };
341
342 leds {
343 compatible = "gpio-leds";
344 pinctrl-names = "default";
345 pinctrl-0 = <&led_pin_gpio3_5>;
346
347 user {
348 label = "Heartbeat";
349 gpios = <&gpio3 5 0>;
350 linux,default-trigger = "heartbeat";
351 };
352 };
353
354 backlight_display: backlight {
355 compatible = "pwm-backlight";
356 pwms = <&pwm 2 5000000>;
357 brightness-levels = <0 4 8 16 32 64 128 255>;
358 default-brightness-level = <6>;
359 };
360};