ARM: mvebu: Netgear RN102: Use Hardware BCH ECC
[cascardo/linux.git] / arch / arm / boot / dts / imx6qdl-cubox-i.dtsi
1 /*
2  * Copyright (C) 2014 Russell King
3  */
4 #include "imx6qdl-microsom.dtsi"
5 #include "imx6qdl-microsom-ar8035.dtsi"
6
7 / {
8         ir_recv: ir-receiver {
9                 compatible = "gpio-ir-receiver";
10                 gpios = <&gpio3 9 1>;
11                 pinctrl-names = "default";
12                 pinctrl-0 = <&pinctrl_cubox_i_ir>;
13         };
14
15         pwmleds {
16                 compatible = "pwm-leds";
17                 pinctrl-names = "default";
18                 pinctrl-0 = <&pinctrl_cubox_i_pwm1>;
19
20                 front {
21                         active-low;
22                         label = "imx6:red:front";
23                         max-brightness = <248>;
24                         pwms = <&pwm1 0 50000>;
25                 };
26         };
27
28         regulators {
29                 compatible = "simple-bus";
30
31                 reg_3p3v: 3p3v {
32                         compatible = "regulator-fixed";
33                         regulator-name = "3P3V";
34                         regulator-min-microvolt = <3300000>;
35                         regulator-max-microvolt = <3300000>;
36                         regulator-always-on;
37                 };
38
39                 reg_usbh1_vbus: usb-h1-vbus {
40                         compatible = "regulator-fixed";
41                         enable-active-high;
42                         gpio = <&gpio1 0 0>;
43                         pinctrl-names = "default";
44                         pinctrl-0 = <&pinctrl_cubox_i_usbh1_vbus>;
45                         regulator-name = "usb_h1_vbus";
46                         regulator-min-microvolt = <5000000>;
47                         regulator-max-microvolt = <5000000>;
48                 };
49
50                 reg_usbotg_vbus: usb-otg-vbus {
51                         compatible = "regulator-fixed";
52                         enable-active-high;
53                         gpio = <&gpio3 22 0>;
54                         pinctrl-names = "default";
55                         pinctrl-0 = <&pinctrl_cubox_i_usbotg_vbus>;
56                         regulator-name = "usb_otg_vbus";
57                         regulator-min-microvolt = <5000000>;
58                         regulator-max-microvolt = <5000000>;
59                 };
60         };
61
62         sound-spdif {
63                 compatible = "fsl,imx-audio-spdif";
64                 model = "imx-spdif";
65                 /* IMX6 doesn't implement this yet */
66                 spdif-controller = <&spdif>;
67                 spdif-out;
68         };
69 };
70
71 &hdmi {
72         pinctrl-names = "default";
73         pinctrl-0 = <&pinctrl_cubox_i_hdmi>;
74         ddc-i2c-bus = <&i2c2>;
75         status = "okay";
76 };
77
78 &i2c2 {
79         clock-frequency = <100000>;
80         pinctrl-names = "default";
81         pinctrl-0 = <&pinctrl_cubox_i_i2c2>;
82         status = "okay";
83 };
84
85 &i2c3 {
86         pinctrl-names = "default";
87         pinctrl-0 = <&pinctrl_cubox_i_i2c3>;
88
89         status = "okay";
90
91         rtc: pcf8523@68 {
92                 compatible = "nxp,pcf8523";
93                 reg = <0x68>;
94         };
95 };
96
97 &iomuxc {
98         cubox_i {
99                 pinctrl_cubox_i_hdmi: cubox-i-hdmi {
100                         fsl,pins = <
101                                 MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0
102                         >;
103                 };
104
105                 pinctrl_cubox_i_i2c2: cubox-i-i2c2 {
106                         fsl,pins = <
107                                 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
108                                 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
109                         >;
110                 };
111
112                 pinctrl_cubox_i_i2c3: cubox-i-i2c3 {
113                         fsl,pins = <
114                                 MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1
115                                 MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1
116                         >;
117                 };
118
119                 pinctrl_cubox_i_ir: cubox-i-ir {
120                         fsl,pins = <
121                                 MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x80000000
122                         >;
123                 };
124
125                 pinctrl_cubox_i_pwm1: cubox-i-pwm1-front-led {
126                         fsl,pins = <MX6QDL_PAD_DISP0_DAT8__PWM1_OUT 0x1b0b0>;
127                 };
128
129                 pinctrl_cubox_i_spdif: cubox-i-spdif {
130                         fsl,pins = <MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x13091>;
131                 };
132
133                 pinctrl_cubox_i_usbh1_vbus: cubox-i-usbh1-vbus {
134                         fsl,pins = <MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x4001b0b0>;
135                 };
136
137                 pinctrl_cubox_i_usbotg_id: cubox-i-usbotg-id {
138                         /*
139                          * The Cubox-i pulls this low, but as it's pointless
140                          * leaving it as a pull-up, even if it is just 10uA.
141                          */
142                         fsl,pins = <MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x13059>;
143                 };
144
145                 pinctrl_cubox_i_usbotg_vbus: cubox-i-usbotg-vbus {
146                         fsl,pins = <MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x4001b0b0>;
147                 };
148
149                 pinctrl_cubox_i_usdhc2_aux: cubox-i-usdhc2-aux {
150                         fsl,pins = <
151                                 MX6QDL_PAD_GPIO_4__GPIO1_IO04    0x1f071
152                                 MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x1b071
153                         >;
154                 };
155
156                 pinctrl_cubox_i_usdhc2: cubox-i-usdhc2 {
157                         fsl,pins = <
158                                 MX6QDL_PAD_SD2_CMD__SD2_CMD    0x17059
159                                 MX6QDL_PAD_SD2_CLK__SD2_CLK    0x10059
160                                 MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059
161                                 MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
162                                 MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
163                                 MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x13059
164                         >;
165                 };
166         };
167 };
168
169 &spdif {
170         pinctrl-names = "default";
171         pinctrl-0 = <&pinctrl_cubox_i_spdif>;
172         status = "okay";
173 };
174
175 &usbh1 {
176         vbus-supply = <&reg_usbh1_vbus>;
177         status = "okay";
178 };
179
180 &usbotg {
181         pinctrl-names = "default";
182         pinctrl-0 = <&pinctrl_cubox_i_usbotg_id>;
183         vbus-supply = <&reg_usbotg_vbus>;
184         status = "okay";
185 };
186
187 &usdhc2 {
188         pinctrl-names = "default";
189         pinctrl-0 = <&pinctrl_cubox_i_usdhc2_aux &pinctrl_cubox_i_usdhc2>;
190         vmmc-supply = <&reg_3p3v>;
191         cd-gpios = <&gpio1 4 0>;
192         status = "okay";
193 };