Merge branch 'v4.9-shared/soc-hdr' into v4.9-armsoc/dts32
[cascardo/linux.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         soc {
43                 rpm@108000 {
44                         regulators {
45                                 vdd_s1-supply = <&vph>;
46                                 vdd_s2-supply = <&vph>;
47                                 vdd_s3-supply = <&vph>;
48                                 vdd_s4-supply = <&vph>;
49                                 vdd_s5-supply = <&vph>;
50                                 vdd_s6-supply = <&vph>;
51                                 vdd_s7-supply = <&vph>;
52                                 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
53                                 vdd_l3_l15_l17-supply = <&vph>;
54                                 vdd_l4_l14-supply = <&vph>;
55                                 vdd_l5_l8_l16-supply = <&vph>;
56                                 vdd_l6_l7-supply = <&vph>;
57                                 vdd_l9_l11-supply = <&vph>;
58                                 vdd_l10_l22-supply = <&vph>;
59                                 vdd_l21_l23_l29-supply = <&vph>;
60                                 vdd_l24-supply = <&pm8921_s1>;
61                                 vdd_l25-supply = <&pm8921_s1>;
62                                 vdd_l26-supply = <&pm8921_s7>;
63                                 vdd_l27-supply = <&pm8921_s7>;
64                                 vdd_l28-supply = <&pm8921_s7>;
65                                 vin_lvs1_3_6-supply = <&pm8921_s4>;
66                                 vin_lvs2-supply = <&pm8921_s1>;
67                                 vin_lvs4_5_7-supply = <&pm8921_s4>;
68
69                                 s1 {
70                                         regulator-always-on;
71                                         regulator-min-microvolt = <1225000>;
72                                         regulator-max-microvolt = <1225000>;
73                                         qcom,switch-mode-frequency = <3200000>;
74                                         bias-pull-down;
75                                 };
76
77                                 s3 {
78                                         regulator-min-microvolt = <1000000>;
79                                         regulator-max-microvolt = <1400000>;
80                                         qcom,switch-mode-frequency = <4800000>;
81                                 };
82
83                                 s4 {
84                                         regulator-min-microvolt = <1800000>;
85                                         regulator-max-microvolt = <1800000>;
86                                         qcom,switch-mode-frequency = <1600000>;
87                                         qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
88                                         bias-pull-down;
89                                         regulator-always-on;
90                                 };
91
92                                 s7 {
93                                         regulator-min-microvolt = <1300000>;
94                                         regulator-max-microvolt = <1300000>;
95                                         qcom,switch-mode-frequency = <3200000>;
96                                  };
97
98                                 l3 {
99                                         regulator-min-microvolt = <3050000>;
100                                         regulator-max-microvolt = <3300000>;
101                                         bias-pull-down;
102                                 };
103
104                                 l4 {
105                                         regulator-min-microvolt = <1000000>;
106                                         regulator-max-microvolt = <1800000>;
107                                         bias-pull-down;
108                                 };
109
110                                 l5 {
111                                         regulator-min-microvolt = <2750000>;
112                                         regulator-max-microvolt = <3000000>;
113                                         bias-pull-down;
114                                         regulator-boot-on;
115                                         regulator-always-on;
116                                 };
117
118                                 l6 {
119                                         regulator-min-microvolt = <2950000>;
120                                         regulator-max-microvolt = <2950000>;
121                                         bias-pull-down;
122                                 };
123
124                                 l23 {
125                                         regulator-min-microvolt = <1700000>;
126                                         regulator-max-microvolt = <1900000>;
127                                         bias-pull-down;
128                                 };
129
130                                 lvs6 {
131                                         bias-pull-down;
132                                 };
133
134                                 lvs7 {
135                                         bias-pull-down;
136                                 };
137                         };
138                 };
139
140                 gsbi@12440000 {
141                         status = "okay";
142                         qcom,mode = <GSBI_PROT_UART_W_FC>;
143                         serial@12450000 {
144                                 label = "LS-UART1";
145                                 status = "okay";
146                                 pinctrl-names = "default";
147                                 pinctrl-0 = <&gsbi1_uart_4pins>;
148                         };
149                 };
150
151                 gsbi@12480000 {
152                         status = "okay";
153                         qcom,mode = <GSBI_PROT_I2C>;
154                         i2c@124a0000 {
155                                 /* On Low speed expansion and Sensors */
156                                 label = "LS-I2C0";
157                                 status = "okay";
158                                 lis3mdl_mag@1e {
159                                         compatible = "st,lis3mdl-magn";
160                                         reg = <0x1e>;
161                                         vdd-supply = <&vcc3v3>;
162                                         vddio-supply = <&pm8921_s4>;
163                                         pinctrl-names = "default";
164                                         pinctrl-0 = <&magneto_pins>;
165                                         interrupt-parent = <&tlmm_pinmux>;
166
167                                         st,drdy-int-pin = <2>;
168                                         interrupts = <48 IRQ_TYPE_EDGE_RISING>, /* DRDY line */
169                                                      <31 IRQ_TYPE_EDGE_RISING>; /* INT */
170                                 };
171                         };
172                 };
173
174                 gsbi@16200000 {
175                         status = "okay";
176                         qcom,mode = <GSBI_PROT_I2C>;
177                         i2c@16280000 {
178                         /* On Low speed expansion */
179                                 status = "okay";
180                                 label = "LS-I2C1";
181                                 clock-frequency = <200000>;
182                                 eeprom@52 {
183                                         compatible = "atmel,24c128";
184                                         reg = <0x52>;
185                                         pagesize = <64>;
186                                 };
187                         };
188                 };
189
190                 gsbi@16300000 {
191                         status = "okay";
192                         qcom,mode = <GSBI_PROT_I2C>;
193                         i2c@16380000 {
194                                 /* On High speed expansion */
195                                 label = "HS-CAM-I2C3";
196                                 status = "okay";
197                         };
198                 };
199
200                 gsbi@1a200000 {
201                         status = "okay";
202                         spi@1a280000 {
203                                 /* On Low speed expansion */
204                                 label = "LS-SPI0";
205                                 status = "okay";
206                         };
207                 };
208
209                 /* DEBUG UART  */
210                 gsbi@16600000 {
211                         status = "okay";
212                         qcom,mode = <GSBI_PROT_I2C_UART>;
213                         serial@16640000 {
214                                 label = "LS-UART0";
215                                 status = "okay";
216                                 pinctrl-names = "default";
217                                 pinctrl-0 = <&gsbi7_uart_2pins>;
218                         };
219
220                         i2c@16680000 {
221                                 /* On High speed expansion */
222                                 status = "okay";
223                                 label = "HS-CAM-I2C2";
224                         };
225                 };
226
227                 leds {
228                         pinctrl-names = "default";
229                         pinctrl-0 = <&user_leds>, <&mpp_leds>;
230
231                         compatible = "gpio-leds";
232
233                         user-led0 {
234                                 label = "user0-led";
235                                 gpios = <&tlmm_pinmux 3 GPIO_ACTIVE_HIGH>;
236                                 linux,default-trigger = "heartbeat";
237                                 default-state = "off";
238                         };
239
240                         user-led1 {
241                                 label = "user1-led";
242                                 gpios = <&tlmm_pinmux 7 GPIO_ACTIVE_HIGH>;
243                                 linux,default-trigger = "mmc0";
244                                 default-state = "off";
245                         };
246
247                         user-led2 {
248                                 label = "user2-led";
249                                 gpios = <&tlmm_pinmux 10 GPIO_ACTIVE_HIGH>;
250                                 linux,default-trigger = "mmc1";
251                                 default-state = "off";
252                         };
253
254                         user-led3 {
255                                 label = "user3-led";
256                                 gpios = <&tlmm_pinmux 11 GPIO_ACTIVE_HIGH>;
257                                 linux,default-trigger = "none";
258                                 default-state = "off";
259                         };
260
261                         wifi-led {
262                                 label = "WiFi-led";
263                                 gpios = <&pm8921_mpps 7 GPIO_ACTIVE_HIGH>;
264                                 default-state = "off";
265                         };
266
267                         bt-led {
268                                 label = "BT-led";
269                                 gpios = <&pm8921_mpps 8 GPIO_ACTIVE_HIGH>;
270                                 default-state = "off";
271                         };
272                 };
273
274                 pci@1b500000 {
275                         status = "okay";
276                         vdda-supply = <&pm8921_s3>;
277                         vdda_phy-supply = <&pm8921_lvs6>;
278                         vdda_refclk-supply = <&vcc3v3>;
279                         pinctrl-0 = <&pcie_pins>;
280                         pinctrl-names = "default";
281                         perst-gpio = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>;
282                 };
283
284                 phy@1b400000 {
285                         status = "okay";
286                 };
287
288                 sata@29000000 {
289                         status  = "okay";
290                         target-supply   = <&pm8921_lvs7>;
291                 };
292
293                 /* OTG */
294                 phy@12500000 {
295                         status          = "okay";
296                         dr_mode         = "peripheral";
297                         vddcx-supply    = <&pm8921_s3>;
298                         v3p3-supply     = <&pm8921_l3>;
299                         v1p8-supply     = <&pm8921_l4>;
300                 };
301
302                 phy@12520000 {
303                         status          = "okay";
304                         vddcx-supply    = <&pm8921_s3>;
305                         v3p3-supply     = <&pm8921_l3>;
306                         v1p8-supply     = <&pm8921_l23>;
307                 };
308
309                 phy@12530000 {
310                         status          = "okay";
311                         vddcx-supply    = <&pm8921_s3>;
312                         v3p3-supply     = <&pm8921_l3>;
313                         v1p8-supply     = <&pm8921_l23>;
314                 };
315
316                 gadget@12500000 {
317                         status = "okay";
318                 };
319
320                 /* OTG */
321                 usb@12500000 {
322                         status = "okay";
323                 };
324
325                 usb@12520000 {
326                         status = "okay";
327                 };
328
329                 usb@12530000 {
330                         status = "okay";
331                 };
332
333                 amba {
334                         /* eMMC */
335                         sdcc@12400000 {
336                                 status = "okay";
337                                 vmmc-supply = <&pm8921_l5>;
338                                 vqmmc-supply = <&pm8921_s4>;
339                         };
340
341                         /* External micro SD card */
342                         sdcc@12180000 {
343                                 status = "okay";
344                                 vmmc-supply = <&pm8921_l6>;
345                                 pinctrl-names   = "default";
346                                 pinctrl-0       = <&card_detect>;
347                                 cd-gpios        = <&tlmm_pinmux 26 GPIO_ACTIVE_HIGH>;
348                         };
349                 };
350         };
351 };