ARM: dts: imx6: Add support for imx6q wandboard
[cascardo/linux.git] / arch / arm / boot / dts / imx6qdl-wandboard.dtsi
1 /*
2  * Copyright 2013 Freescale Semiconductor, Inc.
3  *
4  * Author: Fabio Estevam <fabio.estevam@freescale.com>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  *
10  */
11
12 / {
13         regulators {
14                 compatible = "simple-bus";
15
16                 reg_2p5v: 2p5v {
17                         compatible = "regulator-fixed";
18                         regulator-name = "2P5V";
19                         regulator-min-microvolt = <2500000>;
20                         regulator-max-microvolt = <2500000>;
21                         regulator-always-on;
22                 };
23
24                 reg_3p3v: 3p3v {
25                         compatible = "regulator-fixed";
26                         regulator-name = "3P3V";
27                         regulator-min-microvolt = <3300000>;
28                         regulator-max-microvolt = <3300000>;
29                         regulator-always-on;
30                 };
31         };
32
33         sound {
34                 compatible = "fsl,imx6-wandboard-sgtl5000",
35                              "fsl,imx-audio-sgtl5000";
36                 model = "imx6-wandboard-sgtl5000";
37                 ssi-controller = <&ssi1>;
38                 audio-codec = <&codec>;
39                 audio-routing =
40                         "MIC_IN", "Mic Jack",
41                         "Mic Jack", "Mic Bias",
42                         "Headphone Jack", "HP_OUT";
43                 mux-int-port = <1>;
44                 mux-ext-port = <3>;
45         };
46 };
47
48 &audmux {
49         pinctrl-names = "default";
50         pinctrl-0 = <&pinctrl_audmux_2>;
51         status = "okay";
52 };
53
54 &i2c2 {
55         clock-frequency = <100000>;
56         pinctrl-names = "default";
57         pinctrl-0 = <&pinctrl_i2c2_2>;
58         status = "okay";
59
60         codec: sgtl5000@0a {
61                 compatible = "fsl,sgtl5000";
62                 reg = <0x0a>;
63                 clocks = <&clks 169>;
64                 VDDA-supply = <&reg_2p5v>;
65                 VDDIO-supply = <&reg_3p3v>;
66         };
67 };
68
69 &iomuxc {
70         pinctrl-names = "default";
71         pinctrl-0 = <&pinctrl_hog>;
72
73         hog {
74                 pinctrl_hog: hoggrp {
75                         fsl,pins = <
76                                 MX6QDL_PAD_GPIO_0__CCM_CLKO1    0x130b0
77                                 MX6QDL_PAD_GPIO_2__GPIO1_IO02   0x80000000
78                                 MX6QDL_PAD_EIM_DA9__GPIO3_IO09  0x80000000
79                         >;
80                 };
81         };
82 };
83
84 &fec {
85         pinctrl-names = "default";
86         pinctrl-0 = <&pinctrl_enet_1>;
87         phy-mode = "rgmii";
88         status = "okay";
89 };
90
91 &ssi1 {
92         fsl,mode = "i2s-slave";
93         status = "okay";
94 };
95
96 &uart1 {
97         pinctrl-names = "default";
98         pinctrl-0 = <&pinctrl_uart1_1>;
99         status = "okay";
100 };
101
102 &uart3 {
103         pinctrl-names = "default";
104         pinctrl-0 = <&pinctrl_uart3_2>;
105         fsl,uart-has-rtscts;
106         status = "okay";
107 };
108
109 &usbh1 {
110         status = "okay";
111 };
112
113 &usdhc1 {
114         pinctrl-names = "default";
115         pinctrl-0 = <&pinctrl_usdhc1_2>;
116         cd-gpios = <&gpio1 2 0>;
117         status = "okay";
118 };
119
120 &usdhc2 {
121         pinctrl-names = "default";
122         pinctrl-0 = <&pinctrl_usdhc2_2>;
123         non-removable;
124         status = "okay";
125 };
126
127 &usdhc3 {
128         pinctrl-names = "default";
129         pinctrl-0 = <&pinctrl_usdhc3_2>;
130         cd-gpios = <&gpio3 9 0>;
131         status = "okay";
132 };