Merge tag 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford...
[cascardo/linux.git] / arch / arm64 / boot / dts / qcom / msm8916-pins.dtsi
1 /*
2  * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved.
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 and
6  * only version 2 as published by the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  */
13
14 &msmgpio {
15
16         blsp1_uart1_default: blsp1_uart1_default {
17                 pinmux {
18                         function = "blsp_uart1";
19                         //      TX, RX, CTS_N, RTS_N
20                         pins = "gpio0", "gpio1",
21                                "gpio2", "gpio3";
22                 };
23                 pinconf {
24                         pins = "gpio0", "gpio1",
25                                "gpio2", "gpio3";
26                         drive-strength = <16>;
27                         bias-disable;
28                 };
29         };
30
31         blsp1_uart1_sleep: blsp1_uart1_sleep {
32                 pinmux {
33                         function = "gpio";
34                         pins = "gpio0", "gpio1",
35                                "gpio2", "gpio3";
36                 };
37                 pinconf {
38                         pins = "gpio0", "gpio1",
39                                "gpio2", "gpio3";
40                         drive-strength = <2>;
41                         bias-pull-down;
42                 };
43         };
44
45         blsp1_uart2_default: blsp1_uart2_default {
46                 pinmux {
47                         function = "blsp_uart2";
48                         pins = "gpio4", "gpio5";
49                 };
50                 pinconf {
51                         pins = "gpio4", "gpio5";
52                         drive-strength = <16>;
53                         bias-disable;
54                 };
55         };
56
57         blsp1_uart2_sleep: blsp1_uart2_sleep {
58                 pinmux {
59                         function = "gpio";
60                         pins = "gpio4", "gpio5";
61                 };
62                 pinconf {
63                         pins = "gpio4", "gpio5";
64                         drive-strength = <2>;
65                         bias-pull-down;
66                 };
67         };
68
69         spi1_default: spi1_default {
70                 pinmux {
71                         function = "blsp_spi1";
72                         pins = "gpio0", "gpio1", "gpio3";
73                 };
74                 pinmux_cs {
75                         function = "gpio";
76                         pins = "gpio2";
77                 };
78                 pinconf {
79                         pins = "gpio0", "gpio1", "gpio3";
80                         drive-strength = <12>;
81                         bias-disable;
82                 };
83                 pinconf_cs {
84                         pins = "gpio2";
85                         drive-strength = <16>;
86                         bias-disable;
87                         output-high;
88                 };
89         };
90
91         spi1_sleep: spi1_sleep {
92                 pinmux {
93                         function = "gpio";
94                         pins = "gpio0", "gpio1", "gpio2", "gpio3";
95                 };
96                 pinconf {
97                         pins = "gpio0", "gpio1", "gpio2", "gpio3";
98                         drive-strength = <2>;
99                         bias-pull-down;
100                 };
101         };
102
103         spi2_default: spi2_default {
104                 pinmux {
105                         function = "blsp_spi2";
106                         pins = "gpio4", "gpio5", "gpio7";
107                 };
108                 pinmux_cs {
109                         function = "gpio";
110                         pins = "gpio6";
111                 };
112                 pinconf {
113                         pins = "gpio4", "gpio5", "gpio7";
114                         drive-strength = <12>;
115                         bias-disable;
116                 };
117                 pinconf_cs {
118                         pins = "gpio6";
119                         drive-strength = <16>;
120                         bias-disable;
121                         output-high;
122                 };
123         };
124
125         spi2_sleep: spi2_sleep {
126                 pinmux {
127                         function = "gpio";
128                         pins = "gpio4", "gpio5", "gpio6", "gpio7";
129                 };
130                 pinconf {
131                         pins = "gpio4", "gpio5", "gpio6", "gpio7";
132                         drive-strength = <2>;
133                         bias-pull-down;
134                 };
135         };
136
137         spi3_default: spi3_default {
138                 pinmux {
139                         function = "blsp_spi3";
140                         pins = "gpio8", "gpio9", "gpio11";
141                 };
142                 pinmux_cs {
143                         function = "gpio";
144                         pins = "gpio10";
145                 };
146                 pinconf {
147                         pins = "gpio8", "gpio9", "gpio11";
148                         drive-strength = <12>;
149                         bias-disable;
150                 };
151                 pinconf_cs {
152                         pins = "gpio10";
153                         drive-strength = <16>;
154                         bias-disable;
155                         output-high;
156                 };
157         };
158
159         spi3_sleep: spi3_sleep {
160                 pinmux {
161                         function = "gpio";
162                         pins = "gpio8", "gpio9", "gpio10", "gpio11";
163                 };
164                 pinconf {
165                         pins = "gpio8", "gpio9", "gpio10", "gpio11";
166                         drive-strength = <2>;
167                         bias-pull-down;
168                 };
169         };
170
171         spi4_default: spi4_default {
172                 pinmux {
173                         function = "blsp_spi4";
174                         pins = "gpio12", "gpio13", "gpio15";
175                 };
176                 pinmux_cs {
177                         function = "gpio";
178                         pins = "gpio14";
179                 };
180                 pinconf {
181                         pins = "gpio12", "gpio13", "gpio15";
182                         drive-strength = <12>;
183                         bias-disable;
184                 };
185                 pinconf_cs {
186                         pins = "gpio14";
187                         drive-strength = <16>;
188                         bias-disable;
189                         output-high;
190                 };
191         };
192
193         spi4_sleep: spi4_sleep {
194                 pinmux {
195                         function = "gpio";
196                         pins = "gpio12", "gpio13", "gpio14", "gpio15";
197                 };
198                 pinconf {
199                         pins = "gpio12", "gpio13", "gpio14", "gpio15";
200                         drive-strength = <2>;
201                         bias-pull-down;
202                 };
203         };
204
205         spi5_default: spi5_default {
206                 pinmux {
207                         function = "blsp_spi5";
208                         pins = "gpio16", "gpio17", "gpio19";
209                 };
210                 pinmux_cs {
211                         function = "gpio";
212                         pins = "gpio18";
213                 };
214                 pinconf {
215                         pins = "gpio16", "gpio17", "gpio19";
216                         drive-strength = <12>;
217                         bias-disable;
218                 };
219                 pinconf_cs {
220                         pins = "gpio18";
221                         drive-strength = <16>;
222                         bias-disable;
223                         output-high;
224                 };
225         };
226
227         spi5_sleep: spi5_sleep {
228                 pinmux {
229                         function = "gpio";
230                         pins = "gpio16", "gpio17", "gpio18", "gpio19";
231                 };
232                 pinconf {
233                         pins = "gpio16", "gpio17", "gpio18", "gpio19";
234                         drive-strength = <2>;
235                         bias-pull-down;
236                 };
237         };
238
239         spi6_default: spi6_default {
240                 pinmux {
241                         function = "blsp_spi6";
242                         pins = "gpio20", "gpio21", "gpio23";
243                 };
244                 pinmux_cs {
245                         function = "gpio";
246                         pins = "gpio22";
247                 };
248                 pinconf {
249                         pins = "gpio20", "gpio21", "gpio23";
250                         drive-strength = <12>;
251                         bias-disable;
252                 };
253                 pinconf_cs {
254                         pins = "gpio22";
255                         drive-strength = <16>;
256                         bias-disable;
257                         output-high;
258                 };
259         };
260
261         spi6_sleep: spi6_sleep {
262                 pinmux {
263                         function = "gpio";
264                         pins = "gpio20", "gpio21", "gpio22", "gpio23";
265                 };
266                 pinconf {
267                         pins = "gpio20", "gpio21", "gpio22", "gpio23";
268                         drive-strength = <2>;
269                         bias-pull-down;
270                 };
271         };
272
273         i2c2_default: i2c2_default {
274                 pinmux {
275                         function = "blsp_i2c2";
276                         pins = "gpio6", "gpio7";
277                 };
278                 pinconf {
279                         pins = "gpio6", "gpio7";
280                         drive-strength = <16>;
281                         bias-disable = <0>;
282                 };
283         };
284
285         i2c2_sleep: i2c2_sleep {
286                 pinmux {
287                         function = "gpio";
288                         pins = "gpio6", "gpio7";
289                 };
290                 pinconf {
291                         pins = "gpio6", "gpio7";
292                         drive-strength = <2>;
293                         bias-disable = <0>;
294                 };
295         };
296
297         i2c4_default: i2c4_default {
298                 pinmux {
299                         function = "blsp_i2c4";
300                         pins = "gpio14", "gpio15";
301                 };
302                 pinconf {
303                         pins = "gpio14", "gpio15";
304                         drive-strength = <16>;
305                         bias-disable = <0>;
306                 };
307         };
308
309         i2c4_sleep: i2c4_sleep {
310                 pinmux {
311                         function = "gpio";
312                         pins = "gpio14", "gpio15";
313                 };
314                 pinconf {
315                         pins = "gpio14", "gpio15";
316                         drive-strength = <2>;
317                         bias-disable = <0>;
318                 };
319         };
320
321         i2c6_default: i2c6_default {
322                 pinmux {
323                         function = "blsp_i2c6";
324                         pins = "gpio22", "gpio23";
325                 };
326                 pinconf {
327                         pins = "gpio22", "gpio23";
328                         drive-strength = <16>;
329                         bias-disable = <0>;
330                 };
331         };
332
333         i2c6_sleep: i2c6_sleep {
334                 pinmux {
335                         function = "gpio";
336                         pins = "gpio22", "gpio23";
337                 };
338                 pinconf {
339                         pins = "gpio22", "gpio23";
340                         drive-strength = <2>;
341                         bias-disable = <0>;
342                 };
343         };
344
345         sdhc2_cd_pin {
346                 sdc2_cd_on: cd_on {
347                         pinmux {
348                                 function = "gpio";
349                                 pins = "gpio38";
350                         };
351                         pinconf {
352                                 pins = "gpio38";
353                                 drive-strength = <2>;
354                                 bias-pull-up;
355                         };
356                 };
357                 sdc2_cd_off: cd_off {
358                         pinmux {
359                                 function = "gpio";
360                                 pins = "gpio38";
361                         };
362                         pinconf {
363                                 pins = "gpio38";
364                                 drive-strength = <2>;
365                                 bias-disable;
366                         };
367                 };
368         };
369
370         pmx_sdc1_clk {
371                 sdc1_clk_on: clk_on {
372                         pinmux {
373                                 pins = "sdc1_clk";
374                         };
375                         pinconf {
376                                 pins = "sdc1_clk";
377                                 bias-disable;
378                                 drive-strength = <16>;
379                         };
380                 };
381                 sdc1_clk_off: clk_off {
382                         pinmux {
383                                 pins = "sdc1_clk";
384                         };
385                         pinconf {
386                                 pins = "sdc1_clk";
387                                 bias-disable;
388                                 drive-strength = <2>;
389                         };
390                 };
391         };
392
393         pmx_sdc1_cmd {
394                 sdc1_cmd_on: cmd_on {
395                         pinmux {
396                                 pins = "sdc1_cmd";
397                         };
398                         pinconf {
399                                 pins = "sdc1_cmd";
400                                 bias-pull-up;
401                                 drive-strength = <10>;
402                         };
403                 };
404                 sdc1_cmd_off: cmd_off {
405                         pinmux {
406                                 pins = "sdc1_cmd";
407                         };
408                         pinconf {
409                                 pins = "sdc1_cmd";
410                                 bias-pull-up;
411                                 drive-strength = <2>;
412                         };
413                 };
414         };
415
416         pmx_sdc1_data {
417                 sdc1_data_on: data_on {
418                         pinmux {
419                                 pins = "sdc1_data";
420                         };
421                         pinconf {
422                                 pins = "sdc1_data";
423                                 bias-pull-up;
424                                 drive-strength = <10>;
425                         };
426                 };
427                 sdc1_data_off: data_off {
428                         pinmux {
429                                 pins = "sdc1_data";
430                         };
431                         pinconf {
432                                 pins = "sdc1_data";
433                                 bias-pull-up;
434                                 drive-strength = <2>;
435                         };
436                 };
437         };
438
439         pmx_sdc2_clk {
440                 sdc2_clk_on: clk_on {
441                         pinmux {
442                                 pins = "sdc2_clk";
443                         };
444                         pinconf {
445                                 pins = "sdc2_clk";
446                                 bias-disable;
447                                 drive-strength = <16>;
448                         };
449                 };
450                 sdc2_clk_off: clk_off {
451                         pinmux {
452                                 pins = "sdc2_clk";
453                         };
454                         pinconf {
455                                 pins = "sdc2_clk";
456                                 bias-disable;
457                                 drive-strength = <2>;
458                         };
459                 };
460         };
461
462         pmx_sdc2_cmd {
463                 sdc2_cmd_on: cmd_on {
464                         pinmux {
465                                 pins = "sdc2_cmd";
466                         };
467                         pinconf {
468                                 pins = "sdc2_cmd";
469                                 bias-pull-up;
470                                 drive-strength = <10>;
471                         };
472                 };
473                 sdc2_cmd_off: cmd_off {
474                         pinmux {
475                                 pins = "sdc2_cmd";
476                         };
477                         pinconf {
478                                 pins = "sdc2_cmd";
479                                 bias-pull-up;
480                                 drive-strength = <2>;
481                         };
482                 };
483         };
484
485         pmx_sdc2_data {
486                 sdc2_data_on: data_on {
487                         pinmux {
488                                 pins = "sdc2_data";
489                         };
490                         pinconf {
491                                 pins = "sdc2_data";
492                                 bias-pull-up;
493                                 drive-strength = <10>;
494                         };
495                 };
496                 sdc2_data_off: data_off {
497                         pinmux {
498                                 pins = "sdc2_data";
499                         };
500                         pinconf {
501                                 pins = "sdc2_data";
502                                 bias-pull-up;
503                                 drive-strength = <2>;
504                         };
505                 };
506         };
507
508         ext-codec-lines {
509                 ext_codec_lines_act: lines_on {
510                         pinmux {
511                                 function = "gpio";
512                                 pins = "gpio67";
513                         };
514                         pinconf {
515                                 pins = "gpio67";
516                                 drive-strength = <8>;
517                                 bias-disable;
518                                 output-high;
519                         };
520                 };
521                 ext_codec_lines_sus: lines_off {
522                         pinmux {
523                                 function = "gpio";
524                                 pins = "gpio67";
525                         };
526                         pinconf {
527                                 pins = "gpio67";
528                                 drive-strength = <2>;
529                                 bias-disable;
530                         };
531                 };
532         };
533
534         cdc-pdm-lines {
535                 cdc_pdm_lines_act: pdm_lines_on {
536                         pinmux {
537                                 function = "cdc_pdm0";
538                                 pins = "gpio63", "gpio64", "gpio65", "gpio66",
539                                        "gpio67", "gpio68";
540                         };
541                         pinconf {
542                                 pins = "gpio63", "gpio64", "gpio65", "gpio66",
543                                        "gpio67", "gpio68";
544                                 drive-strength = <8>;
545                                 bias-pull-none;
546                         };
547                 };
548                 cdc_pdm_lines_sus: pdm_lines_off {
549                         pinmux {
550                                 function = "cdc_pdm0";
551                                 pins = "gpio63", "gpio64", "gpio65", "gpio66",
552                                        "gpio67", "gpio68";
553                         };
554                         pinconf {
555                                 pins = "gpio63", "gpio64", "gpio65", "gpio66",
556                                        "gpio67", "gpio68";
557                                 drive-strength = <2>;
558                                 bias-disable;
559                         };
560                 };
561         };
562
563         ext-pri-tlmm-lines {
564                 ext_pri_tlmm_lines_act: ext_pa_on {
565                         pinmux {
566                                 function = "pri_mi2s";
567                                 pins = "gpio113", "gpio114", "gpio115",
568                                        "gpio116";
569                         };
570                         pinconf {
571                                 pins = "gpio113", "gpio114", "gpio115",
572                                        "gpio116";
573                                 drive-strength = <8>;
574                                 bias-pull-none;
575                         };
576                 };
577
578                 ext_pri_tlmm_lines_sus: ext_pa_off {
579                         pinmux {
580                                 function = "pri_mi2s";
581                                 pins = "gpio113", "gpio114", "gpio115",
582                                        "gpio116";
583                         };
584                         pinconf {
585                                 pins = "gpio113", "gpio114", "gpio115",
586                                        "gpio116";
587                                 drive-strength = <2>;
588                                 bias-disable;
589                         };
590                 };
591         };
592
593         ext-pri-ws-line {
594                 ext_pri_ws_act: ext_pa_on {
595                         pinmux {
596                                 function = "pri_mi2s_ws";
597                                 pins = "gpio110";
598                         };
599                         pinconf {
600                                 pins = "gpio110";
601                                 drive-strength = <8>;
602                                 bias-pull-none;
603                         };
604                 };
605
606                 ext_pri_ws_sus: ext_pa_off {
607                         pinmux {
608                                 function = "pri_mi2s_ws";
609                                 pins = "gpio110";
610                         };
611                         pinconf {
612                                 pins = "gpio110";
613                                 drive-strength = <2>;
614                                 bias-disable;
615                         };
616                 };
617         };
618
619         ext-mclk-tlmm-lines {
620                 ext_mclk_tlmm_lines_act: mclk_lines_on {
621                         pinmux {
622                                 function = "pri_mi2s";
623                                 pins = "gpio116";
624                         };
625                         pinconf {
626                                 pins = "gpio116";
627                                 drive-strength = <8>;
628                                 bias-pull-none;
629                         };
630                 };
631                 ext_mclk_tlmm_lines_sus: mclk_lines_off {
632                         pinmux {
633                                 function = "pri_mi2s";
634                                 pins = "gpio116";
635                         };
636                         pinconf {
637                                 pins = "gpio116";
638                                 drive-strength = <2>;
639                                 bias-disable;
640                         };
641                 };
642         };
643
644         /* secondary Mi2S */
645         ext-sec-tlmm-lines {
646                 ext_sec_tlmm_lines_act: tlmm_lines_on {
647                         pinmux {
648                                 function = "sec_mi2s";
649                                 pins = "gpio112", "gpio117", "gpio118",
650                                        "gpio119";
651                         };
652                         pinconf {
653                                 pins = "gpio112", "gpio117", "gpio118",
654                                         "gpio119";
655                                 drive-strength = <8>;
656                                 bias-pull-none;
657                         };
658                 };
659                 ext_sec_tlmm_lines_sus: tlmm_lines_off {
660                         pinmux {
661                                 function = "sec_mi2s";
662                                 pins = "gpio112", "gpio117", "gpio118",
663                                        "gpio119";
664                         };
665                         pinconf {
666                                 pins = "gpio112", "gpio117", "gpio118",
667                                         "gpio119";
668                                 drive-strength = <2>;
669                                 bias-disable;
670                         };
671                 };
672         };
673
674         cdc-dmic-lines {
675                 cdc_dmic_lines_act: dmic_lines_on {
676                         pinmux_dmic0_clk {
677                                 function = "dmic0_clk";
678                                 pins = "gpio0";
679                         };
680                         pinmux_dmic0_data {
681                                 function = "dmic0_data";
682                                 pins = "gpio1";
683                         };
684                         pinconf {
685                                 pins = "gpio0", "gpio1";
686                                 drive-strength = <8>;
687                         };
688                 };
689                 cdc_dmic_lines_sus: dmic_lines_off {
690                         pinconf {
691                                 pins = "gpio0", "gpio1";
692                                 drive-strength = <2>;
693                                 bias-disable;
694                         };
695                 };
696         };
697
698         cross-conn-det {
699                 cross_conn_det_act: lines_on {
700                         pinmux {
701                                 function = "gpio";
702                                 pins = "gpio120";
703                         };
704                         pinconf {
705                                 pins = "gpio120";
706                                 drive-strength = <8>;
707                                 output-low;
708                                 bias-pull-down;
709                         };
710                 };
711                 cross_conn_det_sus: lines_off {
712                         pinmux {
713                                 function = "gpio";
714                                 pins = "gpio120";
715                         };
716                         pinconf {
717                                 pins = "gpio120";
718                                 drive-strength = <2>;
719                                 bias-disable;
720                         };
721                 };
722         };
723 };