1/*
2 * Samsung's Exynos7 SoC pin-mux and pin-config device tree source
3 *
4 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
5 *		http://www.samsung.com
6 *
7 * Samsung's Exynos7 SoC pin-mux and pin-config options are listed as
8 * device tree nodes in this file.
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14
15&pinctrl_alive {
16	gpa0: gpa0 {
17		gpio-controller;
18		#gpio-cells = <2>;
19
20		interrupt-controller;
21		interrupt-parent = <&gic>;
22		#interrupt-cells = <2>;
23		interrupts = <0 0 0>, <0 1 0>, <0 2 0>, <0 3 0>,
24			     <0 4 0>, <0 5 0>, <0 6 0>, <0 7 0>;
25	};
26
27	gpa1: gpa1 {
28		gpio-controller;
29		#gpio-cells = <2>;
30
31		interrupt-controller;
32		interrupt-parent = <&gic>;
33		#interrupt-cells = <2>;
34		interrupts = <0 8 0>, <0 9 0>, <0 10 0>, <0 11 0>,
35			     <0 12 0>, <0 13 0>, <0 14 0>, <0 15 0>;
36	};
37
38	gpa2: gpa2 {
39		gpio-controller;
40		#gpio-cells = <2>;
41
42		interrupt-controller;
43		#interrupt-cells = <2>;
44	};
45
46	gpa3: gpa3 {
47		gpio-controller;
48		#gpio-cells = <2>;
49
50		interrupt-controller;
51		#interrupt-cells = <2>;
52	};
53};
54
55&pinctrl_bus0 {
56	gpb0: gpb0 {
57		gpio-controller;
58		#gpio-cells = <2>;
59
60		interrupt-controller;
61		#interrupt-cells = <2>;
62	};
63
64	gpc0: gpc0 {
65		gpio-controller;
66		#gpio-cells = <2>;
67
68		interrupt-controller;
69		#interrupt-cells = <2>;
70	};
71
72	gpc1: gpc1 {
73		gpio-controller;
74		#gpio-cells = <2>;
75
76		interrupt-controller;
77		#interrupt-cells = <2>;
78	};
79
80	gpc2: gpc2 {
81		gpio-controller;
82		#gpio-cells = <2>;
83
84		interrupt-controller;
85		#interrupt-cells = <2>;
86	};
87
88	gpc3: gpc3 {
89		gpio-controller;
90		#gpio-cells = <2>;
91
92		interrupt-controller;
93		#interrupt-cells = <2>;
94	};
95
96	gpd0: gpd0 {
97		gpio-controller;
98		#gpio-cells = <2>;
99
100		interrupt-controller;
101		#interrupt-cells = <2>;
102	};
103
104	gpd1: gpd1 {
105		gpio-controller;
106		#gpio-cells = <2>;
107
108		interrupt-controller;
109		#interrupt-cells = <2>;
110	};
111
112	gpd2: gpd2 {
113		gpio-controller;
114		#gpio-cells = <2>;
115
116		interrupt-controller;
117		#interrupt-cells = <2>;
118	};
119
120	gpd4: gpd4 {
121		gpio-controller;
122		#gpio-cells = <2>;
123
124		interrupt-controller;
125		#interrupt-cells = <2>;
126	};
127
128	gpd5: gpd5 {
129		gpio-controller;
130		#gpio-cells = <2>;
131
132		interrupt-controller;
133		#interrupt-cells = <2>;
134	};
135
136	gpd6: gpd6 {
137		gpio-controller;
138		#gpio-cells = <2>;
139
140		interrupt-controller;
141		#interrupt-cells = <2>;
142	};
143
144	gpd7: gpd7 {
145		gpio-controller;
146		#gpio-cells = <2>;
147
148		interrupt-controller;
149		#interrupt-cells = <2>;
150	};
151
152	gpd8: gpd8 {
153		gpio-controller;
154		#gpio-cells = <2>;
155
156		interrupt-controller;
157		#interrupt-cells = <2>;
158	};
159
160	gpg0: gpg0 {
161		gpio-controller;
162		#gpio-cells = <2>;
163
164		interrupt-controller;
165		#interrupt-cells = <2>;
166	};
167
168	gpg3: gpg3 {
169		gpio-controller;
170		#gpio-cells = <2>;
171
172		interrupt-controller;
173		#interrupt-cells = <2>;
174	};
175
176	hs_i2c10_bus: hs-i2c10-bus {
177		samsung,pins = "gpb0-1", "gpb0-0";
178		samsung,pin-function = <2>;
179		samsung,pin-pud = <3>;
180		samsung,pin-drv = <0>;
181	};
182
183	hs_i2c11_bus: hs-i2c11-bus {
184		samsung,pins = "gpb0-3", "gpb0-2";
185		samsung,pin-function = <2>;
186		samsung,pin-pud = <3>;
187		samsung,pin-drv = <0>;
188	};
189
190	hs_i2c2_bus: hs-i2c2-bus {
191		samsung,pins = "gpd0-3", "gpd0-2";
192		samsung,pin-function = <3>;
193		samsung,pin-pud = <3>;
194		samsung,pin-drv = <0>;
195	};
196
197	uart0_data: uart0-data {
198		samsung,pins = "gpd0-0", "gpd0-1";
199		samsung,pin-function = <2>;
200		samsung,pin-pud = <0>;
201		samsung,pin-drv = <0>;
202	};
203
204	uart0_fctl: uart0-fctl {
205		samsung,pins = "gpd0-2", "gpd0-3";
206		samsung,pin-function = <2>;
207		samsung,pin-pud = <0>;
208		samsung,pin-drv = <0>;
209	};
210
211	uart2_data: uart2-data {
212		samsung,pins = "gpd1-4", "gpd1-5";
213		samsung,pin-function = <2>;
214		samsung,pin-pud = <0>;
215		samsung,pin-drv = <0>;
216	};
217
218	hs_i2c3_bus: hs-i2c3-bus {
219		samsung,pins = "gpd1-3", "gpd1-2";
220		samsung,pin-function = <3>;
221		samsung,pin-pud = <3>;
222		samsung,pin-drv = <0>;
223	};
224
225	uart1_data: uart1-data {
226		samsung,pins = "gpd1-0", "gpd1-1";
227		samsung,pin-function = <2>;
228		samsung,pin-pud = <0>;
229		samsung,pin-drv = <0>;
230	};
231
232	uart1_fctl: uart1-fctl {
233		samsung,pins = "gpd1-2", "gpd1-3";
234		samsung,pin-function = <2>;
235		samsung,pin-pud = <0>;
236		samsung,pin-drv = <0>;
237	};
238
239	hs_i2c0_bus: hs-i2c0-bus {
240		samsung,pins = "gpd2-1", "gpd2-0";
241		samsung,pin-function = <2>;
242		samsung,pin-pud = <3>;
243		samsung,pin-drv = <0>;
244	};
245
246	hs_i2c1_bus: hs-i2c1-bus {
247		samsung,pins = "gpd2-3", "gpd2-2";
248		samsung,pin-function = <2>;
249		samsung,pin-pud = <3>;
250		samsung,pin-drv = <0>;
251	};
252
253	hs_i2c9_bus: hs-i2c9-bus {
254		samsung,pins = "gpd2-7", "gpd2-6";
255		samsung,pin-function = <3>;
256		samsung,pin-pud = <3>;
257		samsung,pin-drv = <0>;
258	};
259
260	pwm0_out: pwm0-out {
261		samsung,pins = "gpd2-4";
262		samsung,pin-function = <2>;
263		samsung,pin-pud = <0>;
264		samsung,pin-drv = <0>;
265	};
266
267	pwm1_out: pwm1-out {
268		samsung,pins = "gpd2-5";
269		samsung,pin-function = <2>;
270		samsung,pin-pud = <0>;
271		samsung,pin-drv = <0>;
272	};
273
274	pwm2_out: pwm2-out {
275		samsung,pins = "gpd2-6";
276		samsung,pin-function = <2>;
277		samsung,pin-pud = <0>;
278		samsung,pin-drv = <0>;
279	};
280
281	pwm3_out: pwm3-out {
282		samsung,pins = "gpd2-7";
283		samsung,pin-function = <2>;
284		samsung,pin-pud = <0>;
285		samsung,pin-drv = <0>;
286	};
287
288	hs_i2c8_bus: hs-i2c8-bus {
289		samsung,pins = "gpd5-3", "gpd5-2";
290		samsung,pin-function = <3>;
291		samsung,pin-pud = <3>;
292		samsung,pin-drv = <0>;
293	};
294
295	uart3_data: uart3-data {
296		samsung,pins = "gpd5-0", "gpd5-1";
297		samsung,pin-function = <3>;
298		samsung,pin-pud = <0>;
299		samsung,pin-drv = <0>;
300	};
301
302	spi2_bus: spi2-bus {
303		samsung,pins = "gpd5-0", "gpd5-1", "gpd5-2", "gpd5-3";
304		samsung,pin-function = <2>;
305		samsung,pin-pud = <3>;
306		samsung,pin-drv = <0>;
307	};
308
309	spi1_bus: spi1-bus {
310		samsung,pins = "gpd6-2", "gpd6-3", "gpd6-4", "gpd6-5";
311		samsung,pin-function = <2>;
312		samsung,pin-pud = <3>;
313		samsung,pin-drv = <0>;
314	};
315
316	spi0_bus: spi0-bus {
317		samsung,pins = "gpd8-0", "gpd8-1", "gpd6-0", "gpd6-1";
318		samsung,pin-function = <2>;
319		samsung,pin-pud = <3>;
320		samsung,pin-drv = <0>;
321	};
322
323	hs_i2c4_bus: hs-i2c4-bus {
324		samsung,pins = "gpg3-1", "gpg3-0";
325		samsung,pin-function = <2>;
326		samsung,pin-pud = <3>;
327		samsung,pin-drv = <0>;
328	};
329
330	hs_i2c5_bus: hs-i2c5-bus {
331		samsung,pins = "gpg3-3", "gpg3-2";
332		samsung,pin-function = <2>;
333		samsung,pin-pud = <3>;
334		samsung,pin-drv = <0>;
335	};
336};
337
338&pinctrl_nfc {
339	gpj0: gpj0 {
340		gpio-controller;
341		#gpio-cells = <2>;
342
343		interrupt-controller;
344		#interrupt-cells = <2>;
345	};
346
347	hs_i2c6_bus: hs-i2c6-bus {
348		samsung,pins = "gpj0-1", "gpj0-0";
349		samsung,pin-function = <2>;
350		samsung,pin-pud = <3>;
351		samsung,pin-drv = <0>;
352	};
353};
354
355&pinctrl_touch {
356	gpj1: gpj1 {
357		gpio-controller;
358		#gpio-cells = <2>;
359
360		interrupt-controller;
361		#interrupt-cells = <2>;
362	};
363
364	hs_i2c7_bus: hs-i2c7-bus {
365		samsung,pins = "gpj1-1", "gpj1-0";
366		samsung,pin-function = <2>;
367		samsung,pin-pud = <3>;
368		samsung,pin-drv = <0>;
369	};
370};
371
372&pinctrl_ff {
373	gpg4: gpg4 {
374		gpio-controller;
375		#gpio-cells = <2>;
376
377		interrupt-controller;
378		#interrupt-cells = <2>;
379	};
380
381	spi3_bus: spi3-bus {
382		samsung,pins = "gpg4-0", "gpg4-1", "gpg4-2", "gpg4-3";
383		samsung,pin-function = <2>;
384		samsung,pin-pud = <3>;
385		samsung,pin-drv = <0>;
386	};
387};
388
389&pinctrl_ese {
390	gpv7: gpv7 {
391		gpio-controller;
392		#gpio-cells = <2>;
393
394		interrupt-controller;
395		#interrupt-cells = <2>;
396	};
397
398	spi4_bus: spi4-bus {
399		samsung,pins = "gpv7-0", "gpv7-1", "gpv7-2", "gpv7-3";
400		samsung,pin-function = <2>;
401		samsung,pin-pud = <3>;
402		samsung,pin-drv = <0>;
403	};
404};
405
406&pinctrl_fsys0 {
407	gpr4: gpr4 {
408		gpio-controller;
409		#gpio-cells = <2>;
410
411		interrupt-controller;
412		#interrupt-cells = <2>;
413	};
414
415	sd2_clk: sd2-clk {
416		samsung,pins = "gpr4-0";
417		samsung,pin-function = <2>;
418		samsung,pin-pud = <0>;
419		samsung,pin-drv = <3>;
420	};
421
422	sd2_cmd: sd2-cmd {
423		samsung,pins = "gpr4-1";
424		samsung,pin-function = <2>;
425		samsung,pin-pud = <0>;
426		samsung,pin-drv = <3>;
427	};
428
429	sd2_cd: sd2-cd {
430		samsung,pins = "gpr4-2";
431		samsung,pin-function = <2>;
432		samsung,pin-pud = <3>;
433		samsung,pin-drv = <3>;
434	};
435
436	sd2_bus1: sd2-bus-width1 {
437		samsung,pins = "gpr4-3";
438		samsung,pin-function = <2>;
439		samsung,pin-pud = <3>;
440		samsung,pin-drv = <3>;
441	};
442
443	sd2_bus4: sd2-bus-width4 {
444		samsung,pins = "gpr4-4", "gpr4-5", "gpr4-6";
445		samsung,pin-function = <2>;
446		samsung,pin-pud = <3>;
447		samsung,pin-drv = <3>;
448	};
449};
450
451&pinctrl_fsys1 {
452	gpr0: gpr0 {
453		gpio-controller;
454		#gpio-cells = <2>;
455
456		interrupt-controller;
457		#interrupt-cells = <2>;
458	};
459
460	gpr1: gpr1 {
461		gpio-controller;
462		#gpio-cells = <2>;
463
464		interrupt-controller;
465		#interrupt-cells = <2>;
466	};
467
468	gpr2: gpr2 {
469		gpio-controller;
470		#gpio-cells = <2>;
471
472		interrupt-controller;
473		#interrupt-cells = <2>;
474	};
475
476	gpr3: gpr3 {
477		gpio-controller;
478		#gpio-cells = <2>;
479
480		interrupt-controller;
481		#interrupt-cells = <2>;
482	};
483
484	sd0_clk: sd0-clk {
485		samsung,pins = "gpr0-0";
486		samsung,pin-function = <2>;
487		samsung,pin-pud = <0>;
488		samsung,pin-drv = <3>;
489	};
490
491	sd0_cmd: sd0-cmd {
492		samsung,pins = "gpr0-1";
493		samsung,pin-function = <2>;
494		samsung,pin-pud = <3>;
495		samsung,pin-drv = <3>;
496	};
497
498	sd0_ds: sd0-ds {
499		samsung,pins = "gpr0-2";
500		samsung,pin-function = <2>;
501		samsung,pin-pud = <1>;
502		samsung,pin-drv = <3>;
503	};
504
505	sd0_qrdy: sd0-qrdy {
506		samsung,pins = "gpr0-3";
507		samsung,pin-function = <2>;
508		samsung,pin-pud = <1>;
509		samsung,pin-drv = <3>;
510	};
511
512	sd0_bus1: sd0-bus-width1 {
513		samsung,pins = "gpr1-0";
514		samsung,pin-function = <2>;
515		samsung,pin-pud = <3>;
516		samsung,pin-drv = <3>;
517	};
518
519	sd0_bus4: sd0-bus-width4 {
520		samsung,pins = "gpr1-1", "gpr1-2", "gpr1-3";
521		samsung,pin-function = <2>;
522		samsung,pin-pud = <3>;
523		samsung,pin-drv = <3>;
524	};
525
526	sd0_bus8: sd0-bus-width8 {
527		samsung,pins = "gpr1-4", "gpr1-5", "gpr1-6", "gpr1-7";
528		samsung,pin-function = <2>;
529		samsung,pin-pud = <3>;
530		samsung,pin-drv = <3>;
531	};
532
533	sd1_clk: sd1-clk {
534		samsung,pins = "gpr2-0";
535		samsung,pin-function = <2>;
536		samsung,pin-pud = <0>;
537		samsung,pin-drv = <2>;
538	};
539
540	sd1_cmd: sd1-cmd {
541		samsung,pins = "gpr2-1";
542		samsung,pin-function = <2>;
543		samsung,pin-pud = <0>;
544		samsung,pin-drv = <2>;
545	};
546
547	sd1_ds: sd1-ds {
548		samsung,pins = "gpr2-2";
549		samsung,pin-function = <2>;
550		samsung,pin-pud = <1>;
551		samsung,pin-drv = <6>;
552	};
553
554	sd1_qrdy: sd1-qrdy {
555		samsung,pins = "gpr2-3";
556		samsung,pin-function = <2>;
557		samsung,pin-pud = <1>;
558		samsung,pin-drv = <6>;
559	};
560
561	sd1_int: sd1-int {
562		samsung,pins = "gpr2-4";
563		samsung,pin-function = <2>;
564		samsung,pin-pud = <1>;
565		samsung,pin-drv = <6>;
566	};
567
568	sd1_bus1: sd1-bus-width1 {
569		samsung,pins = "gpr3-0";
570		samsung,pin-function = <2>;
571		samsung,pin-pud = <3>;
572		samsung,pin-drv = <2>;
573	};
574
575	sd1_bus4: sd1-bus-width4 {
576		samsung,pins = "gpr3-1", "gpr3-2", "gpr3-3";
577		samsung,pin-function = <2>;
578		samsung,pin-pud = <3>;
579		samsung,pin-drv = <2>;
580	};
581
582	sd1_bus8: sd1-bus-width8 {
583		samsung,pins = "gpr3-4", "gpr3-5", "gpr3-6", "gpr3-7";
584		samsung,pin-function = <2>;
585		samsung,pin-pud = <3>;
586		samsung,pin-drv = <2>;
587	};
588};
589
590&pinctrl_bus1 {
591	gpf0: gpf0 {
592		gpio-controller;
593		#gpio-cells = <2>;
594
595		interrupt-controller;
596		#interrupt-cells = <2>;
597	};
598
599	gpf1: gpf1 {
600		gpio-controller;
601		#gpio-cells = <2>;
602
603		interrupt-controller;
604		#interrupt-cells = <2>;
605	};
606
607	gpf2: gpf2 {
608		gpio-controller;
609		#gpio-cells = <2>;
610
611		interrupt-controller;
612		#interrupt-cells = <2>;
613	};
614
615	gpf3: gpf3 {
616		gpio-controller;
617		#gpio-cells = <2>;
618
619		interrupt-controller;
620		#interrupt-cells = <2>;
621	};
622
623	gpf4: gpf4 {
624		gpio-controller;
625		#gpio-cells = <2>;
626
627		interrupt-controller;
628		#interrupt-cells = <2>;
629	};
630
631	gpf5: gpf5 {
632		gpio-controller;
633		#gpio-cells = <2>;
634
635		interrupt-controller;
636		#interrupt-cells = <2>;
637	};
638
639	gpg1: gpg1 {
640		gpio-controller;
641		#gpio-cells = <2>;
642
643		interrupt-controller;
644		#interrupt-cells = <2>;
645	};
646
647	gpg2: gpg2 {
648		gpio-controller;
649		#gpio-cells = <2>;
650
651		interrupt-controller;
652		#interrupt-cells = <2>;
653	};
654
655	gph1: gph1 {
656		gpio-controller;
657		#gpio-cells = <2>;
658
659		interrupt-controller;
660		#interrupt-cells = <2>;
661	};
662
663	gpv6: gpv6 {
664		gpio-controller;
665		#gpio-cells = <2>;
666
667		interrupt-controller;
668		#interrupt-cells = <2>;
669	};
670
671	spi5_bus: spi5-bus {
672		samsung,pins = "gpf2-0", "gpf2-1", "gpf2-2", "gpf2-3";
673		samsung,pin-function = <2>;
674		samsung,pin-pud = <3>;
675		samsung,pin-drv = <0>;
676	};
677
678	ufs_refclk_out: ufs-refclk-out {
679		samsung,pins = "gpg2-4";
680		samsung,pin-function = <2>;
681		samsung,pin-pud = <0>;
682		samsung,pin-drv = <2>;
683	};
684
685	ufs_rst_n: ufs-rst-n {
686		samsung,pins = "gph1-5";
687		samsung,pin-function = <2>;
688		samsung,pin-pud = <3>;
689		samsung,pin-drv = <0>;
690	};
691};
692