Commit | Line | Data |
---|---|---|
e0ec2f39 MV |
1 | /* |
2 | * Copyright (C) 2013 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.dtsi" | |
14 | ||
15 | / { | |
16 | model = "MSR M28CU3"; | |
17 | compatible = "msr,m28cu3", "fsl,imx28"; | |
18 | ||
19 | memory { | |
20 | reg = <0x40000000 0x08000000>; | |
21 | }; | |
22 | ||
23 | apb@80000000 { | |
24 | apbh@80000000 { | |
25 | gpmi-nand@8000c000 { | |
26 | #address-cells = <1>; | |
27 | #size-cells = <1>; | |
28 | pinctrl-names = "default"; | |
29 | pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>; | |
30 | status = "okay"; | |
31 | ||
32 | partition@0 { | |
33 | label = "gpmi-nfc-0-boot"; | |
34 | reg = <0x00000000 0x01400000>; | |
35 | read-only; | |
36 | }; | |
37 | ||
38 | partition@1 { | |
39 | label = "gpmi-nfc-general-use"; | |
40 | reg = <0x01400000 0x0ec00000>; | |
41 | }; | |
42 | }; | |
43 | ||
44 | ssp0: ssp@80010000 { | |
45 | compatible = "fsl,imx28-mmc"; | |
46 | pinctrl-names = "default"; | |
47 | pinctrl-0 = <&mmc0_4bit_pins_a | |
48 | &mmc0_cd_cfg | |
49 | &mmc0_sck_cfg>; | |
50 | bus-width = <4>; | |
51 | vmmc-supply = <®_vddio_sd0>; | |
52 | status = "okay"; | |
53 | }; | |
54 | ||
55 | ssp2: ssp@80014000 { | |
56 | compatible = "fsl,imx28-mmc"; | |
57 | pinctrl-names = "default"; | |
58 | pinctrl-0 = <&mmc2_4bit_pins_a | |
59 | &mmc2_cd_cfg | |
60 | &mmc2_sck_cfg>; | |
61 | bus-width = <4>; | |
62 | vmmc-supply = <®_vddio_sd1>; | |
63 | status = "okay"; | |
64 | }; | |
65 | ||
66 | pinctrl@80018000 { | |
67 | pinctrl-names = "default"; | |
68 | pinctrl-0 = <&hog_pins_a>; | |
69 | ||
70 | hog_pins_a: hog@0 { | |
71 | reg = <0>; | |
72 | fsl,pinmux-ids = < | |
73 | MX28_PAD_SSP2_SS0__GPIO_2_19 | |
74 | MX28_PAD_PWM4__GPIO_3_29 | |
75 | MX28_PAD_AUART2_RX__GPIO_3_8 | |
76 | MX28_PAD_ENET0_RX_CLK__GPIO_4_13 | |
77 | >; | |
78 | fsl,drive-strength = <MXS_DRIVE_4mA>; | |
79 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | |
80 | fsl,pull-up = <MXS_PULL_DISABLE>; | |
81 | }; | |
82 | ||
83 | lcdif_pins_m28: lcdif-m28@0 { | |
84 | reg = <0>; | |
85 | fsl,pinmux-ids = < | |
86 | MX28_PAD_LCD_VSYNC__LCD_VSYNC | |
87 | MX28_PAD_LCD_HSYNC__LCD_HSYNC | |
88 | MX28_PAD_LCD_DOTCLK__LCD_DOTCLK | |
89 | MX28_PAD_LCD_RESET__LCD_RESET | |
90 | MX28_PAD_LCD_CS__LCD_ENABLE | |
91 | MX28_PAD_AUART1_TX__GPIO_3_5 | |
92 | >; | |
93 | fsl,drive-strength = <MXS_DRIVE_4mA>; | |
94 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | |
95 | fsl,pull-up = <MXS_PULL_DISABLE>; | |
96 | }; | |
97 | ||
98 | led_pins_gpio: leds-m28@0 { | |
99 | reg = <0>; | |
100 | fsl,pinmux-ids = < | |
101 | MX28_PAD_SSP3_MISO__GPIO_2_26 | |
102 | MX28_PAD_SSP3_SCK__GPIO_2_24 | |
103 | >; | |
104 | fsl,drive-strength = <MXS_DRIVE_4mA>; | |
105 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | |
106 | fsl,pull-up = <MXS_PULL_DISABLE>; | |
107 | }; | |
108 | }; | |
109 | ||
110 | ocotp@8002c000 { | |
111 | status = "okay"; | |
112 | }; | |
113 | ||
114 | lcdif@80030000 { | |
115 | pinctrl-names = "default"; | |
116 | pinctrl-0 = <&lcdif_24bit_pins_a | |
117 | &lcdif_pins_m28>; | |
7f0d61d6 | 118 | display = <&display0>; |
e0ec2f39 MV |
119 | status = "okay"; |
120 | ||
7f0d61d6 | 121 | display0: display0 { |
e0ec2f39 MV |
122 | bits-per-pixel = <32>; |
123 | bus-width = <24>; | |
124 | ||
125 | display-timings { | |
126 | native-mode = <&timing0>; | |
127 | timing0: timing0 { | |
128 | clock-frequency = <6410256>; | |
129 | hactive = <320>; | |
130 | vactive = <240>; | |
131 | hback-porch = <38>; | |
132 | hfront-porch = <20>; | |
133 | vback-porch = <15>; | |
134 | vfront-porch = <5>; | |
135 | hsync-len = <30>; | |
136 | vsync-len = <3>; | |
137 | hsync-active = <0>; | |
138 | vsync-active = <0>; | |
139 | de-active = <1>; | |
140 | pixelclk-active = <1>; | |
141 | }; | |
142 | }; | |
143 | }; | |
144 | }; | |
145 | }; | |
146 | ||
147 | apbx@80040000 { | |
148 | duart: serial@80074000 { | |
149 | pinctrl-names = "default"; | |
150 | pinctrl-0 = <&duart_pins_b>; | |
151 | status = "okay"; | |
152 | }; | |
153 | ||
154 | usbphy1: usbphy@8007e000 { | |
155 | status = "okay"; | |
156 | }; | |
157 | ||
158 | auart0: serial@8006a000 { | |
159 | pinctrl-names = "default"; | |
160 | pinctrl-0 = <&auart0_2pins_a>; | |
161 | status = "okay"; | |
162 | }; | |
163 | ||
164 | auart3: serial@80070000 { | |
165 | pinctrl-names = "default"; | |
166 | pinctrl-0 = <&auart3_2pins_b>; | |
167 | status = "okay"; | |
168 | }; | |
169 | ||
170 | pwm: pwm@80064000 { | |
171 | pinctrl-names = "default"; | |
172 | pinctrl-0 = <&pwm3_pins_a>; | |
173 | status = "okay"; | |
174 | }; | |
175 | }; | |
176 | }; | |
177 | ||
178 | ahb@80080000 { | |
179 | usb1: usb@80090000 { | |
180 | vbus-supply = <®_usb1_vbus>; | |
181 | pinctrl-names = "default"; | |
c8e42bc9 | 182 | pinctrl-0 = <&usb1_pins_a>; |
e0ec2f39 MV |
183 | disable-over-current; |
184 | status = "okay"; | |
185 | }; | |
186 | ||
187 | mac0: ethernet@800f0000 { | |
188 | phy-mode = "rmii"; | |
189 | pinctrl-names = "default"; | |
190 | pinctrl-0 = <&mac0_pins_a>; | |
191 | phy-reset-gpios = <&gpio4 13 0>; | |
192 | phy-reset-duration = <100>; | |
193 | status = "okay"; | |
194 | }; | |
195 | ||
196 | mac1: ethernet@800f4000 { | |
197 | phy-mode = "rmii"; | |
198 | pinctrl-names = "default"; | |
199 | pinctrl-0 = <&mac1_pins_a>; | |
200 | status = "okay"; | |
201 | }; | |
202 | }; | |
203 | ||
204 | backlight { | |
205 | compatible = "pwm-backlight"; | |
206 | pwms = <&pwm 3 5000000>; | |
207 | brightness-levels = <0 4 8 16 32 64 128 255>; | |
208 | default-brightness-level = <6>; | |
209 | }; | |
210 | ||
211 | leds { | |
212 | compatible = "gpio-leds"; | |
213 | pinctrl-names = "default"; | |
214 | pinctrl-0 = <&led_pins_gpio>; | |
215 | ||
216 | user1 { | |
217 | label = "sd0-led"; | |
218 | gpios = <&gpio2 26 0>; | |
219 | linux,default-trigger = "mmc0"; | |
220 | }; | |
221 | ||
222 | user2 { | |
223 | label = "sd1-led"; | |
224 | gpios = <&gpio2 24 0>; | |
225 | linux,default-trigger = "mmc2"; | |
226 | }; | |
227 | }; | |
228 | ||
229 | regulators { | |
230 | compatible = "simple-bus"; | |
352d318c SG |
231 | #address-cells = <1>; |
232 | #size-cells = <0>; | |
e0ec2f39 | 233 | |
352d318c | 234 | reg_3p3v: regulator@0 { |
e0ec2f39 | 235 | compatible = "regulator-fixed"; |
352d318c | 236 | reg = <0>; |
e0ec2f39 MV |
237 | regulator-name = "3P3V"; |
238 | regulator-min-microvolt = <3300000>; | |
239 | regulator-max-microvolt = <3300000>; | |
240 | regulator-always-on; | |
241 | }; | |
242 | ||
352d318c | 243 | reg_vddio_sd0: regulator@1 { |
e0ec2f39 | 244 | compatible = "regulator-fixed"; |
352d318c | 245 | reg = <1>; |
e0ec2f39 MV |
246 | regulator-name = "vddio-sd0"; |
247 | regulator-min-microvolt = <3300000>; | |
248 | regulator-max-microvolt = <3300000>; | |
249 | gpio = <&gpio3 29 0>; | |
250 | }; | |
251 | ||
352d318c | 252 | reg_vddio_sd1: regulator@2 { |
e0ec2f39 | 253 | compatible = "regulator-fixed"; |
352d318c | 254 | reg = <2>; |
e0ec2f39 MV |
255 | regulator-name = "vddio-sd1"; |
256 | regulator-min-microvolt = <3300000>; | |
257 | regulator-max-microvolt = <3300000>; | |
258 | gpio = <&gpio2 19 0>; | |
259 | }; | |
260 | ||
352d318c | 261 | reg_usb1_vbus: regulator@3 { |
e0ec2f39 | 262 | compatible = "regulator-fixed"; |
352d318c | 263 | reg = <3>; |
e0ec2f39 MV |
264 | regulator-name = "usb1_vbus"; |
265 | regulator-min-microvolt = <5000000>; | |
266 | regulator-max-microvolt = <5000000>; | |
267 | gpio = <&gpio3 8 0>; | |
268 | enable-active-high; | |
269 | }; | |
270 | }; | |
271 | }; |