]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blame - arch/arm/boot/dts/imx6qdl-rex.dtsi
Merge tag 'linux-watchdog-4.17-rc1' of git://www.linux-watchdog.org/linux-watchdog
[mirror_ubuntu-eoan-kernel.git] / arch / arm / boot / dts / imx6qdl-rex.dtsi
CommitLineData
e2047e33
RN
1/*
2 * Copyright 2014 FEDEVEL, Inc.
3 *
4 * Author: Robert Nelson <robertcnelson@gmail.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#include <dt-bindings/gpio/gpio.h>
13#include <dt-bindings/input/input.h>
14
15/ {
16 chosen {
17 stdout-path = &uart1;
18 };
19
20 regulators {
21 compatible = "simple-bus";
22 #address-cells = <1>;
23 #size-cells = <0>;
24
25 reg_3p3v: regulator@0 {
26 compatible = "regulator-fixed";
27 reg = <0>;
28 regulator-name = "3P3V";
29 regulator-min-microvolt = <3300000>;
30 regulator-max-microvolt = <3300000>;
31 regulator-always-on;
32 };
33
34 reg_usbh1_vbus: regulator@1 {
35 compatible = "regulator-fixed";
36 reg = <1>;
37 pinctrl-names = "default";
e2047e33
RN
38 regulator-name = "usbh1_vbus";
39 regulator-min-microvolt = <5000000>;
40 regulator-max-microvolt = <5000000>;
41 gpio = <&gpio3 31 GPIO_ACTIVE_HIGH>;
42 enable-active-high;
43 };
44
45 reg_usb_otg_vbus: regulator@2 {
46 compatible = "regulator-fixed";
47 reg = <2>;
48 pinctrl-names = "default";
e2047e33
RN
49 regulator-name = "usb_otg_vbus";
50 regulator-min-microvolt = <5000000>;
51 regulator-max-microvolt = <5000000>;
52 gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
53 enable-active-high;
54 };
55 };
56
57 leds {
58 compatible = "gpio-leds";
59 pinctrl-names = "default";
60 pinctrl-0 = <&pinctrl_led>;
61
62 led0: usr {
63 label = "usr";
64 gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
65 default-state = "off";
66 linux,default-trigger = "heartbeat";
67 };
68 };
69
70 sound {
71 compatible = "fsl,imx6-rex-sgtl5000",
72 "fsl,imx-audio-sgtl5000";
73 model = "imx6-rex-sgtl5000";
74 ssi-controller = <&ssi1>;
75 audio-codec = <&codec>;
76 audio-routing =
77 "MIC_IN", "Mic Jack",
78 "Mic Jack", "Mic Bias",
79 "Headphone Jack", "HP_OUT";
80 mux-int-port = <1>;
81 mux-ext-port = <3>;
82 };
83};
84
85&audmux {
86 pinctrl-names = "default";
87 pinctrl-0 = <&pinctrl_audmux>;
88 status = "okay";
89};
90
91&ecspi2 {
e2047e33
RN
92 cs-gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
93 pinctrl-names = "default";
94 pinctrl-0 = <&pinctrl_ecspi2>;
95 status = "okay";
96};
97
98&ecspi3 {
e2047e33
RN
99 cs-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
100 pinctrl-names = "default";
101 pinctrl-0 = <&pinctrl_ecspi3>;
102 status = "okay";
103};
104
105&fec {
106 pinctrl-names = "default";
107 pinctrl-0 = <&pinctrl_enet>;
108 phy-mode = "rgmii";
109 phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
110 status = "okay";
111};
112
113&hdmi {
114 ddc-i2c-bus = <&i2c2>;
115 status = "okay";
116};
117
118&i2c1 {
119 clock-frequency = <100000>;
120 pinctrl-names = "default";
121 pinctrl-0 = <&pinctrl_i2c1>;
122 status = "okay";
123
8dccafaa 124 codec: sgtl5000@a {
e2047e33
RN
125 compatible = "fsl,sgtl5000";
126 reg = <0x0a>;
b26a68c1 127 clocks = <&clks IMX6QDL_CLK_CKO>;
e2047e33
RN
128 VDDA-supply = <&reg_3p3v>;
129 VDDIO-supply = <&reg_3p3v>;
130 };
131};
132
133&i2c2 {
134 clock-frequency = <100000>;
135 pinctrl-names = "default";
136 pinctrl-0 = <&pinctrl_i2c2>;
137 status = "okay";
138
139 eeprom@57 {
c37c2089 140 compatible = "atmel,24c02";
e2047e33
RN
141 reg = <0x57>;
142 };
143};
144
145&i2c3 {
146 clock-frequency = <100000>;
147 pinctrl-names = "default";
148 pinctrl-0 = <&pinctrl_i2c3>;
149 status = "okay";
150};
151
152&iomuxc {
153 pinctrl-names = "default";
154 pinctrl-0 = <&pinctrl_hog>;
155
156 imx6qdl-rex {
157 pinctrl_hog: hoggrp {
158 fsl,pins = <
159 /* SGTL5000 sys_mclk */
160 MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x030b0
161 >;
162 };
163
164 pinctrl_audmux: audmuxgrp {
165 fsl,pins = <
166 MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0
167 MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0
168 MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0
169 MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0
170 >;
171 };
172
173 pinctrl_ecspi2: ecspi2grp {
174 fsl,pins = <
175 MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO 0x100b1
176 MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI 0x100b1
177 MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1
178 /* CS */
179 MX6QDL_PAD_DISP0_DAT5__GPIO4_IO26 0x000b1
180 >;
181 };
182
183 pinctrl_ecspi3: ecspi3grp {
184 fsl,pins = <
185 MX6QDL_PAD_DISP0_DAT17__ECSPI2_MISO 0x100b1
186 MX6QDL_PAD_DISP0_DAT16__ECSPI2_MOSI 0x100b1
187 MX6QDL_PAD_DISP0_DAT19__ECSPI2_SCLK 0x100b1
188 /* CS */
189 MX6QDL_PAD_DISP0_DAT18__GPIO5_IO12 0x000b1
190 >;
191 };
192
193 pinctrl_enet: enetgrp {
194 fsl,pins = <
195 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
196 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
c007b3a6
UKK
197 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030
198 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030
199 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030
200 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030
201 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030
202 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030
e2047e33 203 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
c007b3a6
UKK
204 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
205 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030
206 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030
207 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
208 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
209 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
e2047e33
RN
210 MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
211 /* Phy reset */
212 MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x000b0
213 >;
214 };
215
216 pinctrl_i2c1: i2c1grp {
217 fsl,pins = <
218 MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1
219 MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b8b1
220 >;
221 };
222
223 pinctrl_i2c2: i2c2grp {
224 fsl,pins = <
225 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
226 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
227 >;
228 };
229
230 pinctrl_i2c3: i2c3grp {
231 fsl,pins = <
232 MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1
233 MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1
234 >;
235 };
236
237 pinctrl_led: ledgrp {
238 fsl,pins = <
239 /* user led */
240 MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000
241 >;
242 };
243
244 pinctrl_uart1: uart1grp {
245 fsl,pins = <
246 MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
247 MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1
248 >;
249 };
250
251 pinctrl_uart2: uart2grp {
252 fsl,pins = <
253 MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1
254 MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1
255 >;
256 };
257
258 pinctrl_usbh1: usbh1grp {
259 fsl,pins = <
260 /* power enable, high active */
261 MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x10b0
262 >;
263 };
264
265 pinctrl_usbotg: usbotggrp {
266 fsl,pins = <
267 MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
268 MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x1b0b0
269 /* power enable, high active */
270 MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x10b0
271 >;
272 };
273
274 pinctrl_usdhc2: usdhc2grp {
275 fsl,pins = <
276 MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059
277 MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059
278 MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059
279 MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
280 MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
281 MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059
282 /* CD */
283 MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x1b0b0
284 /* WP */
285 MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x1f0b0
286 >;
287 };
288
289 pinctrl_usdhc3: usdhc3grp {
290 fsl,pins = <
291 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
292 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
293 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
294 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
295 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
296 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
297 /* CD */
298 MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x1b0b0
299 /* WP */
300 MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x1f0b0
301 >;
302 };
303 };
304};
305
306&ssi1 {
e2047e33
RN
307 status = "okay";
308};
309
310&uart1 {
311 pinctrl-names = "default";
312 pinctrl-0 = <&pinctrl_uart1>;
313 status = "okay";
314};
315
316&uart2 {
317 pinctrl-names = "default";
318 pinctrl-0 = <&pinctrl_uart2>;
319 status = "okay";
320};
321
322&usbh1 {
323 vbus-supply = <&reg_usbh1_vbus>;
324 pinctrl-names = "default";
325 pinctrl-0 = <&pinctrl_usbh1>;
326 status = "okay";
327};
328
329&usbotg {
330 vbus-supply = <&reg_usb_otg_vbus>;
331 pinctrl-names = "default";
332 pinctrl-0 = <&pinctrl_usbotg>;
333 status = "okay";
334};
335
336&usdhc2 {
337 pinctrl-names = "default";
338 pinctrl-0 = <&pinctrl_usdhc2>;
339 bus-width = <4>;
340 cd-gpios = <&gpio2 2 GPIO_ACTIVE_LOW>;
89c1a8cf 341 wp-gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>;
e2047e33
RN
342 status = "okay";
343};
344
345&usdhc3 {
346 pinctrl-names = "default";
347 pinctrl-0 = <&pinctrl_usdhc3>;
348 bus-width = <4>;
349 cd-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
89c1a8cf 350 wp-gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
e2047e33
RN
351 status = "okay";
352};