Merge tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / qcom-apq8064-arrow-sd-600eval.dts
1 #include "qcom-apq8064-v2.0.dtsi"
2 #include "qcom-apq8064-arrow-sd-600eval-pins.dtsi"
3 #include <dt-bindings/gpio/gpio.h>
4 #include <dt-bindings/mfd/qcom-rpm.h>
5
6 / {
7         model = "Arrow Electronics, APQ8064 SD_600eval";
8         compatible = "arrow,sd_600eval", "qcom,apq8064";
9
10         aliases {
11                 serial0 = &gsbi7_serial;
12                 serial1 = &gsbi1_serial;
13                 i2c0 = &gsbi2_i2c;
14                 i2c1 = &gsbi3_i2c;
15                 i2c2 = &gsbi4_i2c;
16                 i2c3 = &gsbi7_i2c;
17                 spi0 = &gsbi5_spi;
18         };
19
20         regulators {
21                 compatible = "simple-bus";
22                 vph: regulator-fixed@1 {
23                         compatible = "regulator-fixed";
24                         regulator-min-microvolt = <4500000>;
25                         regulator-max-microvolt = <4500000>;
26                         regulator-name = "VPH";
27                         regulator-type = "voltage";
28                         regulator-boot-on;
29                 };
30
31                 /* on board fixed 3.3v supply */
32                 vcc3v3: vcc3v3 {
33                         compatible = "regulator-fixed";
34                         regulator-name = "VCC3V3";
35                         regulator-min-microvolt = <3300000>;
36                         regulator-max-microvolt = <3300000>;
37                         regulator-always-on;
38                 };
39
40         };
41
42         hdmi-out {
43                 compatible = "hdmi-connector";
44                 type = "a";
45
46                 port {
47                         hdmi_con: endpoint {
48                                 remote-endpoint = <&hdmi_out>;
49                         };
50                 };
51         };
52
53         soc {
54                 rpm@108000 {
55                         regulators {
56                                 vdd_s1-supply = <&vph>;
57                                 vdd_s2-supply = <&vph>;
58                                 vdd_s3-supply = <&vph>;
59                                 vdd_s4-supply = <&vph>;
60                                 vdd_s5-supply = <&vph>;
61                                 vdd_s6-supply = <&vph>;
62                                 vdd_s7-supply = <&vph>;
63                                 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
64                                 vdd_l3_l15_l17-supply = <&vph>;
65                                 vdd_l4_l14-supply = <&vph>;
66                                 vdd_l5_l8_l16-supply = <&vph>;
67                                 vdd_l6_l7-supply = <&vph>;
68                                 vdd_l9_l11-supply = <&vph>;
69                                 vdd_l10_l22-supply = <&vph>;
70                                 vdd_l21_l23_l29-supply = <&vph>;
71                                 vdd_l24-supply = <&pm8921_s1>;
72                                 vdd_l25-supply = <&pm8921_s1>;
73                                 vdd_l26-supply = <&pm8921_s7>;
74                                 vdd_l27-supply = <&pm8921_s7>;
75                                 vdd_l28-supply = <&pm8921_s7>;
76                                 vin_lvs1_3_6-supply = <&pm8921_s4>;
77                                 vin_lvs2-supply = <&pm8921_s1>;
78                                 vin_lvs4_5_7-supply = <&pm8921_s4>;
79
80                                 s1 {
81                                         regulator-always-on;
82                                         regulator-min-microvolt = <1225000>;
83                                         regulator-max-microvolt = <1225000>;
84                                         qcom,switch-mode-frequency = <3200000>;
85                                         bias-pull-down;
86                                 };
87
88                                 s2 {
89                                         regulator-min-microvolt = <1300000>;
90                                         regulator-max-microvolt = <1300000>;
91                                         qcom,switch-mode-frequency = <1600000>;
92                                         bias-pull-down;
93                                         regulator-always-on;
94                                 };
95
96                                 s3 {
97                                         regulator-min-microvolt = <1000000>;
98                                         regulator-max-microvolt = <1400000>;
99                                         qcom,switch-mode-frequency = <4800000>;
100                                 };
101
102                                 s4 {
103                                         regulator-min-microvolt = <1800000>;
104                                         regulator-max-microvolt = <1800000>;
105                                         qcom,switch-mode-frequency = <1600000>;
106                                         qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
107                                         bias-pull-down;
108                                         regulator-always-on;
109                                 };
110
111                                 s7 {
112                                         regulator-min-microvolt = <1300000>;
113                                         regulator-max-microvolt = <1300000>;
114                                         qcom,switch-mode-frequency = <3200000>;
115                                  };
116
117                                 l3 {
118                                         regulator-min-microvolt = <3050000>;
119                                         regulator-max-microvolt = <3300000>;
120                                         bias-pull-down;
121                                 };
122
123                                 l4 {
124                                         regulator-min-microvolt = <1000000>;
125                                         regulator-max-microvolt = <1800000>;
126                                         bias-pull-down;
127                                 };
128
129                                 l5 {
130                                         regulator-min-microvolt = <2750000>;
131                                         regulator-max-microvolt = <3000000>;
132                                         bias-pull-down;
133                                         regulator-boot-on;
134                                         regulator-always-on;
135                                 };
136
137                                 l6 {
138                                         regulator-min-microvolt = <2950000>;
139                                         regulator-max-microvolt = <2950000>;
140                                         bias-pull-down;
141                                 };
142
143                                 /**
144                                  * 1.8v required on LS expansion
145                                  * for mezzanine boards
146                                  */
147                                 l15 {
148                                         regulator-min-microvolt = <1800000>;
149                                         regulator-max-microvolt = <1800000>;
150                                         regulator-always-on;
151                                 };
152
153                                 l23 {
154                                         regulator-min-microvolt = <1700000>;
155                                         regulator-max-microvolt = <1900000>;
156                                         bias-pull-down;
157                                 };
158
159                                 lvs6 {
160                                         bias-pull-down;
161                                 };
162
163                                 lvs7 {
164                                         bias-pull-down;
165                                 };
166                         };
167                 };
168
169                 gsbi@12440000 {
170                         status = "okay";
171                         qcom,mode = <GSBI_PROT_UART_W_FC>;
172                         serial@12450000 {
173                                 label = "LS-UART1";
174                                 status = "okay";
175                                 pinctrl-names = "default";
176                                 pinctrl-0 = <&gsbi1_uart_4pins>;
177                         };
178                 };
179
180                 gsbi@12480000 {
181                         status = "okay";
182                         qcom,mode = <GSBI_PROT_I2C>;
183                         i2c@124a0000 {
184                                 /* On Low speed expansion and Sensors */
185                                 label = "LS-I2C0";
186                                 status = "okay";
187                                 lis3mdl_mag@1e {
188                                         compatible = "st,lis3mdl-magn";
189                                         reg = <0x1e>;
190                                         vdd-supply = <&vcc3v3>;
191                                         vddio-supply = <&pm8921_s4>;
192                                         pinctrl-names = "default";
193                                         pinctrl-0 = <&magneto_pins>;
194                                         interrupt-parent = <&tlmm_pinmux>;
195
196                                         st,drdy-int-pin = <2>;
197                                         interrupts = <48 IRQ_TYPE_EDGE_RISING>, /* DRDY line */
198                                                      <31 IRQ_TYPE_EDGE_RISING>; /* INT */
199                                 };
200                         };
201                 };
202
203                 gsbi@16200000 {
204                         status = "okay";
205                         qcom,mode = <GSBI_PROT_I2C>;
206                         i2c@16280000 {
207                         /* On Low speed expansion */
208                                 status = "okay";
209                                 label = "LS-I2C1";
210                                 clock-frequency = <200000>;
211                                 eeprom@52 {
212                                         compatible = "atmel,24c128";
213                                         reg = <0x52>;
214                                         pagesize = <64>;
215                                 };
216                         };
217                 };
218
219                 gsbi@16300000 {
220                         status = "okay";
221                         qcom,mode = <GSBI_PROT_I2C>;
222                         i2c@16380000 {
223                                 /* On High speed expansion */
224                                 label = "HS-CAM-I2C3";
225                                 status = "okay";
226                         };
227                 };
228
229                 gsbi@1a200000 {
230                         status = "okay";
231                         spi@1a280000 {
232                                 /* On Low speed expansion */
233                                 label = "LS-SPI0";
234                                 status = "okay";
235                         };
236                 };
237
238                 /* DEBUG UART  */
239                 gsbi@16600000 {
240                         status = "okay";
241                         qcom,mode = <GSBI_PROT_I2C_UART>;
242                         serial@16640000 {
243                                 label = "LS-UART0";
244                                 status = "okay";
245                                 pinctrl-names = "default";
246                                 pinctrl-0 = <&gsbi7_uart_2pins>;
247                         };
248
249                         i2c@16680000 {
250                                 /* On High speed expansion */
251                                 status = "okay";
252                                 label = "HS-CAM-I2C2";
253                         };
254                 };
255
256                 leds {
257                         pinctrl-names = "default";
258                         pinctrl-0 = <&user_leds>, <&mpp_leds>;
259
260                         compatible = "gpio-leds";
261
262                         user-led0 {
263                                 label = "user0-led";
264                                 gpios = <&tlmm_pinmux 3 GPIO_ACTIVE_HIGH>;
265                                 linux,default-trigger = "heartbeat";
266                                 default-state = "off";
267                         };
268
269                         user-led1 {
270                                 label = "user1-led";
271                                 gpios = <&tlmm_pinmux 7 GPIO_ACTIVE_HIGH>;
272                                 linux,default-trigger = "mmc0";
273                                 default-state = "off";
274                         };
275
276                         user-led2 {
277                                 label = "user2-led";
278                                 gpios = <&tlmm_pinmux 10 GPIO_ACTIVE_HIGH>;
279                                 linux,default-trigger = "mmc1";
280                                 default-state = "off";
281                         };
282
283                         user-led3 {
284                                 label = "user3-led";
285                                 gpios = <&tlmm_pinmux 11 GPIO_ACTIVE_HIGH>;
286                                 linux,default-trigger = "none";
287                                 default-state = "off";
288                         };
289
290                         wifi-led {
291                                 label = "WiFi-led";
292                                 gpios = <&pm8921_mpps 7 GPIO_ACTIVE_HIGH>;
293                                 default-state = "off";
294                         };
295
296                         bt-led {
297                                 label = "BT-led";
298                                 gpios = <&pm8921_mpps 8 GPIO_ACTIVE_HIGH>;
299                                 default-state = "off";
300                         };
301                 };
302
303                 pci@1b500000 {
304                         status = "okay";
305                         vdda-supply = <&pm8921_s3>;
306                         vdda_phy-supply = <&pm8921_lvs6>;
307                         vdda_refclk-supply = <&vcc3v3>;
308                         pinctrl-0 = <&pcie_pins>;
309                         pinctrl-names = "default";
310                         perst-gpio = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>;
311                 };
312
313                 phy@1b400000 {
314                         status = "okay";
315                 };
316
317                 sata@29000000 {
318                         status  = "okay";
319                         target-supply   = <&pm8921_lvs7>;
320                 };
321
322                 /* OTG */
323                 phy@12500000 {
324                         status          = "okay";
325                         dr_mode         = "peripheral";
326                         vddcx-supply    = <&pm8921_s3>;
327                         v3p3-supply     = <&pm8921_l3>;
328                         v1p8-supply     = <&pm8921_l4>;
329                 };
330
331                 phy@12520000 {
332                         status          = "okay";
333                         vddcx-supply    = <&pm8921_s3>;
334                         v3p3-supply     = <&pm8921_l3>;
335                         v1p8-supply     = <&pm8921_l23>;
336                 };
337
338                 phy@12530000 {
339                         status          = "okay";
340                         vddcx-supply    = <&pm8921_s3>;
341                         v3p3-supply     = <&pm8921_l3>;
342                         v1p8-supply     = <&pm8921_l23>;
343                 };
344
345                 gadget@12500000 {
346                         status = "okay";
347                 };
348
349                 /* OTG */
350                 usb@12500000 {
351                         status = "okay";
352                 };
353
354                 usb@12520000 {
355                         status = "okay";
356                 };
357
358                 usb@12530000 {
359                         status = "okay";
360                 };
361
362                 amba {
363                         /* eMMC */
364                         sdcc@12400000 {
365                                 status = "okay";
366                                 vmmc-supply = <&pm8921_l5>;
367                                 vqmmc-supply = <&pm8921_s4>;
368                         };
369
370                         /* External micro SD card */
371                         sdcc@12180000 {
372                                 status = "okay";
373                                 vmmc-supply = <&pm8921_l6>;
374                                 pinctrl-names   = "default";
375                                 pinctrl-0       = <&card_detect>;
376                                 cd-gpios        = <&tlmm_pinmux 26 GPIO_ACTIVE_HIGH>;
377                         };
378                 };
379
380                 riva-pil@3204000 {
381                         status = "okay";
382
383                         pinctrl-names = "default";
384                         pinctrl-0 = <&riva_wlan_pin_a>, <&riva_bt_pin_a>, <&riva_fm_pin_a>;
385                 };
386
387                 hdmi-tx@4a00000 {
388                         status = "okay";
389                         core-vdda-supply = <&pm8921_hdmi_switch>;
390                         hdmi-mux-supply = <&vcc3v3>;
391
392                         hpd-gpio = <&tlmm_pinmux 72 GPIO_ACTIVE_HIGH>;
393
394                         ports {
395                                 port@1 {
396                                         endpoint {
397                                                 remote-endpoint = <&hdmi_con>;
398                                         };
399                                 };
400                         };
401                 };
402
403                 hdmi-phy@4a00400 {
404                         status = "okay";
405                         core-vdda-supply = <&pm8921_hdmi_switch>;
406                 };
407
408                 mdp@5100000 {
409                         status = "okay";
410
411                         ports {
412                                 port@3 {
413                                         endpoint {
414                                                 remote-endpoint = <&hdmi_in>;
415                                         };
416                                 };
417                         };
418                 };
419         };
420 };