]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - arch/arm/boot/dts/imx6q-dmo-edmqmx6.dts
Merge branches 'for-4.4/upstream-fixes', 'for-4.5/async-suspend', 'for-4.5/container...
[mirror_ubuntu-artful-kernel.git] / arch / arm / boot / dts / imx6q-dmo-edmqmx6.dts
1 /*
2 * Copyright 2013 Data Modul AG
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
14 #include <dt-bindings/gpio/gpio.h>
15 #include "imx6q.dtsi"
16
17 / {
18 model = "Data Modul eDM-QMX6 Board";
19 compatible = "dmo,imx6q-edmqmx6", "fsl,imx6q";
20
21 chosen {
22 stdout-path = &uart2;
23 };
24
25 aliases {
26 gpio7 = &stmpe_gpio1;
27 gpio8 = &stmpe_gpio2;
28 stmpe-i2c0 = &stmpe1;
29 stmpe-i2c1 = &stmpe2;
30 };
31
32 memory {
33 reg = <0x10000000 0x80000000>;
34 };
35
36 regulators {
37 compatible = "simple-bus";
38 #address-cells = <1>;
39 #size-cells = <0>;
40
41 reg_3p3v: regulator@0 {
42 compatible = "regulator-fixed";
43 reg = <0>;
44 regulator-name = "3P3V";
45 regulator-min-microvolt = <3300000>;
46 regulator-max-microvolt = <3300000>;
47 regulator-always-on;
48 };
49
50 reg_usb_otg_switch: regulator@1 {
51 compatible = "regulator-fixed";
52 reg = <1>;
53 regulator-name = "usb_otg_switch";
54 regulator-min-microvolt = <5000000>;
55 regulator-max-microvolt = <5000000>;
56 gpio = <&gpio7 12 0>;
57 regulator-boot-on;
58 regulator-always-on;
59 };
60
61 reg_usb_host1: regulator@2 {
62 compatible = "regulator-fixed";
63 reg = <2>;
64 regulator-name = "usb_host1_en";
65 regulator-min-microvolt = <3300000>;
66 regulator-max-microvolt = <3300000>;
67 gpio = <&gpio3 31 0>;
68 enable-active-high;
69 };
70 };
71
72 gpio-leds {
73 compatible = "gpio-leds";
74
75 led-blue {
76 label = "blue";
77 gpios = <&stmpe_gpio1 8 GPIO_ACTIVE_HIGH>;
78 linux,default-trigger = "heartbeat";
79 };
80
81 led-green {
82 label = "green";
83 gpios = <&stmpe_gpio1 9 GPIO_ACTIVE_HIGH>;
84 };
85
86 led-pink {
87 label = "pink";
88 gpios = <&stmpe_gpio1 10 GPIO_ACTIVE_HIGH>;
89 };
90
91 led-red {
92 label = "red";
93 gpios = <&stmpe_gpio1 11 GPIO_ACTIVE_HIGH>;
94 };
95 };
96 };
97
98 &can1 {
99 pinctrl-names = "default";
100 pinctrl-0 = <&pinctrl_can1>;
101 status = "okay";
102 };
103
104 &ecspi5 {
105 pinctrl-names = "default";
106 pinctrl-0 = <&pinctrl_ecspi5>;
107 fsl,spi-num-chipselects = <1>;
108 cs-gpios = <&gpio1 12 0>;
109 status = "okay";
110
111 flash: m25p80@0 {
112 compatible = "m25p80", "jedec,spi-nor";
113 spi-max-frequency = <40000000>;
114 reg = <0>;
115 };
116 };
117
118 &fec {
119 pinctrl-names = "default";
120 pinctrl-0 = <&pinctrl_enet>;
121 phy-mode = "rgmii";
122 phy-reset-gpios = <&gpio1 25 0>;
123 phy-supply = <&vgen2_1v2_eth>;
124 status = "okay";
125 };
126
127 &i2c1 {
128 clock-frequency = <100000>;
129 pinctrl-names = "default";
130 pinctrl-0 = <&pinctrl_i2c1>;
131 status = "okay";
132 };
133
134 &i2c2 {
135 clock-frequency = <100000>;
136 pinctrl-names = "default";
137 pinctrl-0 = <&pinctrl_i2c2
138 &pinctrl_stmpe1
139 &pinctrl_stmpe2
140 &pinctrl_pfuze>;
141 status = "okay";
142
143 pmic: pfuze100@08 {
144 compatible = "fsl,pfuze100";
145 reg = <0x08>;
146 interrupt-parent = <&gpio3>;
147 interrupts = <20 8>;
148
149 regulators {
150 sw1a_reg: sw1ab {
151 regulator-min-microvolt = <300000>;
152 regulator-max-microvolt = <1875000>;
153 regulator-boot-on;
154 regulator-always-on;
155 };
156
157 sw1c_reg: sw1c {
158 regulator-min-microvolt = <300000>;
159 regulator-max-microvolt = <1875000>;
160 regulator-boot-on;
161 regulator-always-on;
162 };
163
164 sw2_reg: sw2 {
165 regulator-min-microvolt = <800000>;
166 regulator-max-microvolt = <3300000>;
167 regulator-boot-on;
168 regulator-always-on;
169 };
170
171 sw3a_reg: sw3a {
172 regulator-min-microvolt = <400000>;
173 regulator-max-microvolt = <1975000>;
174 regulator-boot-on;
175 regulator-always-on;
176 };
177
178 sw3b_reg: sw3b {
179 regulator-min-microvolt = <400000>;
180 regulator-max-microvolt = <1975000>;
181 regulator-boot-on;
182 regulator-always-on;
183 };
184
185 sw4_reg: sw4 {
186 regulator-min-microvolt = <400000>;
187 regulator-max-microvolt = <1975000>;
188 regulator-always-on;
189 };
190
191 swbst_reg: swbst {
192 regulator-min-microvolt = <5000000>;
193 regulator-max-microvolt = <5150000>;
194 regulator-always-on;
195 };
196
197 snvs_reg: vsnvs {
198 regulator-min-microvolt = <1000000>;
199 regulator-max-microvolt = <3000000>;
200 regulator-boot-on;
201 regulator-always-on;
202 };
203
204 vref_reg: vrefddr {
205 regulator-boot-on;
206 regulator-always-on;
207 };
208
209 vgen1_reg: vgen1 {
210 regulator-min-microvolt = <800000>;
211 regulator-max-microvolt = <1550000>;
212 };
213
214 vgen2_1v2_eth: vgen2 {
215 regulator-min-microvolt = <800000>;
216 regulator-max-microvolt = <1550000>;
217 };
218
219 vdd_high_in: vgen3 {
220 regulator-min-microvolt = <1800000>;
221 regulator-max-microvolt = <3300000>;
222 regulator-boot-on;
223 regulator-always-on;
224 };
225
226 vgen4_reg: vgen4 {
227 regulator-min-microvolt = <1800000>;
228 regulator-max-microvolt = <3300000>;
229 regulator-always-on;
230 };
231
232 vgen5_reg: vgen5 {
233 regulator-min-microvolt = <1800000>;
234 regulator-max-microvolt = <3300000>;
235 regulator-always-on;
236 };
237
238 vgen6_reg: vgen6 {
239 regulator-min-microvolt = <1800000>;
240 regulator-max-microvolt = <3300000>;
241 regulator-always-on;
242 };
243 };
244 };
245
246 stmpe1: stmpe1601@40 {
247 compatible = "st,stmpe1601";
248 reg = <0x40>;
249 interrupts = <30 0>;
250 interrupt-parent = <&gpio3>;
251 vcc-supply = <&sw2_reg>;
252 vio-supply = <&sw2_reg>;
253
254 stmpe_gpio1: stmpe_gpio {
255 #gpio-cells = <2>;
256 compatible = "st,stmpe-gpio";
257 };
258 };
259
260 stmpe2: stmpe1601@44 {
261 compatible = "st,stmpe1601";
262 reg = <0x44>;
263 interrupts = <2 0>;
264 interrupt-parent = <&gpio5>;
265 vcc-supply = <&sw2_reg>;
266 vio-supply = <&sw2_reg>;
267
268 stmpe_gpio2: stmpe_gpio {
269 #gpio-cells = <2>;
270 compatible = "st,stmpe-gpio";
271 };
272 };
273
274 temp1: ad7414@4c {
275 compatible = "ad,ad7414";
276 reg = <0x4c>;
277 };
278
279 temp2: ad7414@4d {
280 compatible = "ad,ad7414";
281 reg = <0x4d>;
282 };
283
284 rtc: m41t62@68 {
285 compatible = "stm,m41t62";
286 reg = <0x68>;
287 };
288 };
289
290 &i2c3 {
291 clock-frequency = <100000>;
292 pinctrl-names = "default";
293 pinctrl-0 = <&pinctrl_i2c3>;
294 status = "okay";
295 };
296
297 &iomuxc {
298 pinctrl-names = "default";
299 pinctrl-0 = <&pinctrl_hog>;
300
301 imx6q-dmo-edmqmx6 {
302 pinctrl_hog: hoggrp {
303 fsl,pins = <
304 MX6QDL_PAD_EIM_A16__GPIO2_IO22 0x80000000
305 MX6QDL_PAD_EIM_A17__GPIO2_IO21 0x80000000
306 >;
307 };
308
309 pinctrl_can1: can1grp {
310 fsl,pins = <
311 MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x1b0b0
312 MX6QDL_PAD_GPIO_7__FLEXCAN1_TX 0x1b0b0
313 >;
314 };
315
316 pinctrl_ecspi5: ecspi5rp-1 {
317 fsl,pins = <
318 MX6QDL_PAD_SD1_DAT0__ECSPI5_MISO 0x80000000
319 MX6QDL_PAD_SD1_CMD__ECSPI5_MOSI 0x80000000
320 MX6QDL_PAD_SD1_CLK__ECSPI5_SCLK 0x80000000
321 MX6QDL_PAD_SD2_DAT3__GPIO1_IO12 0x80000000
322 >;
323 };
324
325 pinctrl_enet: enetgrp {
326 fsl,pins = <
327 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
328 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
329 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
330 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
331 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
332 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0
333 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0
334 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0
335 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0
336 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0
337 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0
338 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0
339 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
340 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
341 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
342 MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b0b0
343 MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
344 >;
345 };
346
347 pinctrl_i2c1: i2c1grp {
348 fsl,pins = <
349 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
350 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
351 >;
352 };
353
354 pinctrl_i2c2: i2c2grp {
355 fsl,pins = <
356 MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1
357 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
358 >;
359 };
360
361 pinctrl_i2c3: i2c3grp {
362 fsl,pins = <
363 MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1
364 MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1
365 >;
366 };
367
368 pinctrl_pcie: pciegrp {
369 fsl,pins = <
370 MX6QDL_PAD_KEY_COL1__GPIO4_IO08 0x100b1
371 >;
372 };
373
374 pinctrl_pfuze: pfuze100grp1 {
375 fsl,pins = <
376 MX6QDL_PAD_EIM_D20__GPIO3_IO20 0x80000000
377 >;
378 };
379
380 pinctrl_stmpe1: stmpe1grp {
381 fsl,pins = <MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x80000000>;
382 };
383
384 pinctrl_stmpe2: stmpe2grp {
385 fsl,pins = <MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x80000000>;
386 };
387
388 pinctrl_uart1: uart1grp {
389 fsl,pins = <
390 MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
391 MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
392 >;
393 };
394
395 pinctrl_uart2: uart2grp {
396 fsl,pins = <
397 MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1
398 MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1
399 >;
400 };
401
402 pinctrl_usbotg: usbotggrp {
403 fsl,pins = <
404 MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059
405 >;
406 };
407
408 pinctrl_usdhc3: usdhc3grp {
409 fsl,pins = <
410 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
411 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
412 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
413 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
414 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
415 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
416 >;
417 };
418
419 pinctrl_usdhc4: usdhc4grp {
420 fsl,pins = <
421 MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059
422 MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059
423 MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059
424 MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059
425 MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059
426 MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059
427 MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059
428 MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059
429 MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059
430 MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059
431 >;
432 };
433 };
434 };
435
436 &pcie {
437 pinctrl-names = "default";
438 pinctrl-0 = <&pinctrl_pcie>;
439 reset-gpio = <&gpio4 8 0>;
440 status = "okay";
441 };
442
443 &sata {
444 status = "okay";
445 };
446
447 &uart1 {
448 pinctrl-names = "default";
449 pinctrl-0 = <&pinctrl_uart1>;
450 status = "okay";
451 };
452
453 &uart2 {
454 pinctrl-names = "default";
455 pinctrl-0 = <&pinctrl_uart2>;
456 status = "okay";
457 };
458
459 &usbh1 {
460 vbus-supply = <&reg_usb_host1>;
461 disable-over-current;
462 dr_mode = "host";
463 status = "okay";
464 };
465
466 &usbotg {
467 pinctrl-names = "default";
468 pinctrl-0 = <&pinctrl_usbotg>;
469 disable-over-current;
470 status = "okay";
471 };
472
473 &usdhc3 {
474 pinctrl-names = "default";
475 pinctrl-0 = <&pinctrl_usdhc3>;
476 vmmc-supply = <&reg_3p3v>;
477 status = "okay";
478 };
479
480 &usdhc4 {
481 pinctrl-names = "default";
482 pinctrl-0 = <&pinctrl_usdhc4>;
483 vmmc-supply = <&reg_3p3v>;
484 non-removable;
485 bus-width = <8>;
486 status = "okay";
487 };