Merge tag 'ntb-3.18' of git://github.com/jonmason/ntb
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / imx6qdl-hummingboard.dtsi
1 /*
2  * Copyright (C) 2013,2014 Russell King
3  */
4 #include "imx6qdl-microsom.dtsi"
5 #include "imx6qdl-microsom-ar8035.dtsi"
6
7 / {
8         chosen {
9                 stdout-path = &uart1;
10         };
11
12         ir_recv: ir-receiver {
13                 compatible = "gpio-ir-receiver";
14                 gpios = <&gpio3 5 1>;
15                 pinctrl-names = "default";
16                 pinctrl-0 = <&pinctrl_hummingboard_gpio3_5>;
17         };
18
19         regulators {
20                 compatible = "simple-bus";
21
22                 reg_3p3v: 3p3v {
23                         compatible = "regulator-fixed";
24                         regulator-name = "3P3V";
25                         regulator-min-microvolt = <3300000>;
26                         regulator-max-microvolt = <3300000>;
27                         regulator-always-on;
28                 };
29
30                 reg_usbh1_vbus: usb-h1-vbus {
31                         compatible = "regulator-fixed";
32                         enable-active-high;
33                         gpio = <&gpio1 0 0>;
34                         pinctrl-names = "default";
35                         pinctrl-0 = <&pinctrl_hummingboard_usbh1_vbus>;
36                         regulator-name = "usb_h1_vbus";
37                         regulator-min-microvolt = <5000000>;
38                         regulator-max-microvolt = <5000000>;
39                 };
40
41                 reg_usbotg_vbus: usb-otg-vbus {
42                         compatible = "regulator-fixed";
43                         enable-active-high;
44                         gpio = <&gpio3 22 0>;
45                         pinctrl-names = "default";
46                         pinctrl-0 = <&pinctrl_hummingboard_usbotg_vbus>;
47                         regulator-name = "usb_otg_vbus";
48                         regulator-min-microvolt = <5000000>;
49                         regulator-max-microvolt = <5000000>;
50                 };
51         };
52
53         sound-spdif {
54                 compatible = "fsl,imx-audio-spdif";
55                 model = "On-board SPDIF";
56                 /* IMX6 doesn't implement this yet */
57                 spdif-controller = <&spdif>;
58                 spdif-out;
59         };
60 };
61
62 &can1 {
63         pinctrl-names = "default";
64         pinctrl-0 = <&pinctrl_hummingboard_flexcan1>;
65         status = "okay";
66 };
67
68 &hdmi {
69         pinctrl-names = "default";
70         pinctrl-0 = <&pinctrl_hummingboard_hdmi>;
71         ddc-i2c-bus = <&i2c2>;
72         status = "okay";
73 };
74
75 &i2c1 {
76         pinctrl-names = "default";
77         pinctrl-0 = <&pinctrl_hummingboard_i2c1>;
78
79         /*
80          * Not fitted on Carrier-1 board... yet
81         status = "okay";
82
83         rtc: pcf8523@68 {
84                 compatible = "nxp,pcf8523";
85                 reg = <0x68>;
86         };
87          */
88 };
89
90 &i2c2 {
91         clock-frequency = <100000>;
92         pinctrl-names = "default";
93         pinctrl-0 = <&pinctrl_hummingboard_i2c2>;
94         status = "okay";
95 };
96
97 &iomuxc {
98         hummingboard {
99                 pinctrl_hummingboard_flexcan1: hummingboard-flexcan1 {
100                         fsl,pins = <
101                                 MX6QDL_PAD_SD3_CLK__FLEXCAN1_RX 0x80000000
102                                 MX6QDL_PAD_SD3_CMD__FLEXCAN1_TX 0x80000000
103                         >;
104                 };
105
106                 pinctrl_hummingboard_gpio3_5: hummingboard-gpio3_5 {
107                         fsl,pins = <
108                                 MX6QDL_PAD_EIM_DA5__GPIO3_IO05 0x1b0b1
109                         >;
110                 };
111
112                 pinctrl_hummingboard_hdmi: hummingboard-hdmi {
113                         fsl,pins = <
114                                 MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0
115                         >;
116                 };
117
118                 pinctrl_hummingboard_i2c1: hummingboard-i2c1 {
119                         fsl,pins = <
120                                 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
121                                 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
122                         >;
123                 };
124
125                 pinctrl_hummingboard_i2c2: hummingboard-i2c2 {
126                         fsl,pins = <
127                                 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
128                                 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
129                         >;
130                 };
131
132                 pinctrl_hummingboard_spdif: hummingboard-spdif {
133                         fsl,pins = <MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x13091>;
134                 };
135
136                 pinctrl_hummingboard_usbh1_vbus: hummingboard-usbh1-vbus {
137                         fsl,pins = <MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0>;
138                 };
139
140                 pinctrl_hummingboard_usbotg_id: hummingboard-usbotg-id {
141                         /*
142                          * Similar to pinctrl_usbotg_2, but we want it
143                          * pulled down for a fixed host connection.
144                          */
145                         fsl,pins = <MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x13059>;
146                 };
147
148                 pinctrl_hummingboard_usbotg_vbus: hummingboard-usbotg-vbus {
149                         fsl,pins = <MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0>;
150                 };
151
152                 pinctrl_hummingboard_usdhc2_aux: hummingboard-usdhc2-aux {
153                         fsl,pins = <
154                                 MX6QDL_PAD_GPIO_4__GPIO1_IO04    0x1f071
155                         >;
156                 };
157
158                 pinctrl_hummingboard_usdhc2: hummingboard-usdhc2 {
159                         fsl,pins = <
160                                 MX6QDL_PAD_SD2_CMD__SD2_CMD    0x17059
161                                 MX6QDL_PAD_SD2_CLK__SD2_CLK    0x10059
162                                 MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059
163                                 MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
164                                 MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
165                                 MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x13059
166                         >;
167                 };
168         };
169 };
170
171 &spdif {
172         pinctrl-names = "default";
173         pinctrl-0 = <&pinctrl_hummingboard_spdif>;
174         status = "okay";
175 };
176
177 &usbh1 {
178         disable-over-current;
179         vbus-supply = <&reg_usbh1_vbus>;
180         status = "okay";
181 };
182
183 &usbotg {
184         disable-over-current;
185         pinctrl-names = "default";
186         pinctrl-0 = <&pinctrl_hummingboard_usbotg_id>;
187         vbus-supply = <&reg_usbotg_vbus>;
188         status = "okay";
189 };
190
191 &usdhc2 {
192         pinctrl-names = "default";
193         pinctrl-0 = <
194                 &pinctrl_hummingboard_usdhc2_aux
195                 &pinctrl_hummingboard_usdhc2
196         >;
197         vmmc-supply = <&reg_3p3v>;
198         cd-gpios = <&gpio1 4 0>;
199         status = "okay";
200 };