1/*
2 * Copyright 2012 Freescale Semiconductor, Inc.
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 "imx23.dtsi"
14
15/ {
16	model = "Freescale i.MX23 Evaluation Kit";
17	compatible = "fsl,imx23-evk", "fsl,imx23";
18
19	memory {
20		reg = <0x40000000 0x08000000>;
21	};
22
23	apb@80000000 {
24		apbh@80000000 {
25			gpmi-nand@8000c000 {
26				pinctrl-names = "default";
27				pinctrl-0 = <&gpmi_pins_a &gpmi_pins_fixup>;
28				status = "okay";
29			};
30
31			ssp0: ssp@80010000 {
32				compatible = "fsl,imx23-mmc";
33				pinctrl-names = "default";
34				pinctrl-0 = <&mmc0_4bit_pins_a &mmc0_pins_fixup>;
35				bus-width = <4>;
36				wp-gpios = <&gpio1 30 0>;
37				vmmc-supply = <&reg_vddio_sd0>;
38				status = "okay";
39			};
40
41			pinctrl@80018000 {
42				pinctrl-names = "default";
43				pinctrl-0 = <&hog_pins_a>;
44
45				hog_pins_a: hog@0 {
46					reg = <0>;
47					fsl,pinmux-ids = <
48						MX23_PAD_LCD_RESET__GPIO_1_18
49						MX23_PAD_PWM3__GPIO_1_29
50						MX23_PAD_PWM4__GPIO_1_30
51						MX23_PAD_SSP1_DETECT__SSP1_DETECT
52					>;
53					fsl,drive-strength = <MXS_DRIVE_4mA>;
54					fsl,voltage = <MXS_VOLTAGE_HIGH>;
55					fsl,pull-up = <MXS_PULL_DISABLE>;
56				};
57			};
58
59			lcdif@80030000 {
60				pinctrl-names = "default";
61				pinctrl-0 = <&lcdif_24bit_pins_a>;
62				lcd-supply = <&reg_lcd_3v3>;
63				display = <&display0>;
64				status = "okay";
65
66				display0: display0 {
67					bits-per-pixel = <32>;
68					bus-width = <24>;
69
70					display-timings {
71						native-mode = <&timing0>;
72						timing0: timing0 {
73							clock-frequency = <9200000>;
74							hactive = <480>;
75							vactive = <272>;
76							hback-porch = <15>;
77							hfront-porch = <8>;
78							vback-porch = <12>;
79							vfront-porch = <4>;
80							hsync-len = <1>;
81							vsync-len = <1>;
82							hsync-active = <0>;
83							vsync-active = <0>;
84							de-active = <1>;
85							pixelclk-active = <0>;
86						};
87					};
88				};
89			};
90		};
91
92		apbx@80040000 {
93			lradc@80050000 {
94				status = "okay";
95				fsl,lradc-touchscreen-wires = <4>;
96			};
97
98			pwm: pwm@80064000 {
99				pinctrl-names = "default";
100				pinctrl-0 = <&pwm2_pins_a>;
101				status = "okay";
102			};
103
104			auart0: serial@8006c000 {
105				pinctrl-names = "default";
106				pinctrl-0 = <&auart0_pins_a>;
107				status = "okay";
108			};
109
110			duart: serial@80070000 {
111				pinctrl-names = "default";
112				pinctrl-0 = <&duart_pins_a>;
113				status = "okay";
114			};
115
116			usbphy0: usbphy@8007c000 {
117				status = "okay";
118			};
119		};
120	};
121
122	ahb@80080000 {
123		usb0: usb@80080000 {
124			status = "okay";
125		};
126	};
127
128	regulators {
129		compatible = "simple-bus";
130		#address-cells = <1>;
131		#size-cells = <0>;
132
133		reg_vddio_sd0: regulator@0 {
134			compatible = "regulator-fixed";
135			reg = <0>;
136			regulator-name = "vddio-sd0";
137			regulator-min-microvolt = <3300000>;
138			regulator-max-microvolt = <3300000>;
139			gpio = <&gpio1 29 0>;
140		};
141
142		reg_lcd_3v3: regulator@1 {
143			compatible = "regulator-fixed";
144			reg = <1>;
145			regulator-name = "lcd-3v3";
146			regulator-min-microvolt = <3300000>;
147			regulator-max-microvolt = <3300000>;
148			gpio = <&gpio1 18 0>;
149			enable-active-high;
150		};
151	};
152
153	backlight {
154		compatible = "pwm-backlight";
155		pwms = <&pwm 2 5000000>;
156		brightness-levels = <0 4 8 16 32 64 128 255>;
157		default-brightness-level = <6>;
158	};
159};
160