]> Pileus Git - ~andy/linux/blob - arch/arm/boot/dts/imx6dl-hummingboard.dts
ALSA: usb-audio: Add quirk for Logitech Webcam C500
[~andy/linux] / arch / arm / boot / dts / imx6dl-hummingboard.dts
1 /*
2  * Copyright (C) 2013,2014 Russell King
3  */
4 /dts-v1/;
5
6 #include "imx6dl.dtsi"
7 #include "imx6qdl-microsom.dtsi"
8 #include "imx6qdl-microsom-ar8035.dtsi"
9
10 / {
11         model = "SolidRun HummingBoard DL/Solo";
12         compatible = "solidrun,hummingboard", "fsl,imx6dl";
13
14         ir_recv: ir-receiver {
15                 compatible = "gpio-ir-receiver";
16                 gpios = <&gpio1 2 1>;
17                 pinctrl-names = "default";
18                 pinctrl-0 = <&pinctrl_hummingboard_gpio1_2>;
19         };
20
21         regulators {
22                 compatible = "simple-bus";
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                 reg_usbh1_vbus: usb-h1-vbus {
33                         compatible = "regulator-fixed";
34                         enable-active-high;
35                         gpio = <&gpio1 0 0>;
36                         pinctrl-names = "default";
37                         pinctrl-0 = <&pinctrl_hummingboard_usbh1_vbus>;
38                         regulator-name = "usb_h1_vbus";
39                         regulator-min-microvolt = <5000000>;
40                         regulator-max-microvolt = <5000000>;
41                 };
42
43                 reg_usbotg_vbus: usb-otg-vbus {
44                         compatible = "regulator-fixed";
45                         enable-active-high;
46                         gpio = <&gpio3 22 0>;
47                         pinctrl-names = "default";
48                         pinctrl-0 = <&pinctrl_hummingboard_usbotg_vbus>;
49                         regulator-name = "usb_otg_vbus";
50                         regulator-min-microvolt = <5000000>;
51                         regulator-max-microvolt = <5000000>;
52                 };
53         };
54
55         codec: spdif-transmitter {
56                 compatible = "linux,spdif-dit";
57                 pinctrl-names = "default";
58                 pinctrl-0 = <&pinctrl_hummingboard_spdif>;
59         };
60
61         sound-spdif {
62                 compatible = "fsl,imx-audio-spdif";
63                 model = "imx-spdif";
64                 /* IMX6 doesn't implement this yet */
65                 spdif-controller = <&spdif>;
66                 spdif-out;
67         };
68 };
69
70 &can1 {
71         pinctrl-names = "default";
72         pinctrl-0 = <&pinctrl_hummingboard_flexcan1>;
73         status = "okay";
74 };
75
76 &i2c1 {
77         pinctrl-names = "default";
78         pinctrl-0 = <&pinctrl_hummingboard_i2c1>;
79
80         /*
81          * Not fitted on Carrier-1 board... yet
82         status = "okay";
83
84         rtc: pcf8523@68 {
85                 compatible = "nxp,pcf8523";
86                 reg = <0x68>;
87         };
88          */
89 };
90
91 &iomuxc {
92         hummingboard {
93                 pinctrl_hummingboard_flexcan1: hummingboard-flexcan1 {
94                         fsl,pins = <
95                                 MX6QDL_PAD_SD3_CLK__FLEXCAN1_RX 0x80000000
96                                 MX6QDL_PAD_SD3_CMD__FLEXCAN1_TX 0x80000000
97                         >;
98                 };
99
100                 pinctrl_hummingboard_gpio1_2: hummingboard-gpio1_2 {
101                         fsl,pins = <
102                                 MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000
103                         >;
104                 };
105
106                 pinctrl_hummingboard_i2c1: hummingboard-i2c1 {
107                         fsl,pins = <
108                                 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
109                                 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
110                         >;
111                 };
112
113                 pinctrl_hummingboard_spdif: hummingboard-spdif {
114                         fsl,pins = <MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x1b0b0>;
115                 };
116
117                 pinctrl_hummingboard_usbh1_vbus: hummingboard-usbh1-vbus {
118                         fsl,pins = <MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0>;
119                 };
120
121                 pinctrl_hummingboard_usbotg_vbus: hummingboard-usbotg-vbus {
122                         fsl,pins = <MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0>;
123                 };
124
125                 pinctrl_hummingboard_usdhc2_aux: hummingboard-usdhc2-aux {
126                         fsl,pins = <
127                                 MX6QDL_PAD_GPIO_4__GPIO1_IO04    0x1f071
128                         >;
129                 };
130
131                 pinctrl_hummingboard_usdhc2: hummingboard-usdhc2 {
132                         fsl,pins = <
133                                 MX6QDL_PAD_SD2_CMD__SD2_CMD    0x17059
134                                 MX6QDL_PAD_SD2_CLK__SD2_CLK    0x10059
135                                 MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059
136                                 MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
137                                 MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
138                                 MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x13059
139                         >;
140                 };
141         };
142 };
143
144 &spdif {
145         status = "okay";
146 };
147
148 &usbh1 {
149         vbus-supply = <&reg_usbh1_vbus>;
150         status = "okay";
151 };
152
153 &usbotg {
154         vbus-supply = <&reg_usbotg_vbus>;
155         status = "okay";
156 };
157
158 &usdhc2 {
159         pinctrl-names = "default";
160         pinctrl-0 = <
161                 &pinctrl_hummingboard_usdhc2_aux
162                 &pinctrl_hummingboard_usdhc2
163         >;
164         vmmc-supply = <&reg_3p3v>;
165         cd-gpios = <&gpio1 4 0>;
166         status = "okay";
167 };