• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Samsung's Exynos4412 SoCs pin-mux and pin-config device tree source
3 *
4 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 *		http://www.samsung.com
6 *
7 * Samsung's Exynos4412 SoCs pin-mux and pin-config optiosn are listed as device
8 * tree nodes are listed 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#include <dt-bindings/pinctrl/samsung.h>
16
17#define PIN_SLP(_pin, _mode, _pull)					\
18	_pin {								\
19		samsung,pins = #_pin;					\
20		samsung,pin-con-pdn = <EXYNOS_PIN_PDN_ ##_mode>;	\
21		samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_ ##_pull>;	\
22	}
23
24/ {
25	pinctrl_0: pinctrl@11400000 {
26		gpa0: gpa0 {
27			gpio-controller;
28			#gpio-cells = <2>;
29
30			interrupt-controller;
31			#interrupt-cells = <2>;
32		};
33
34		gpa1: gpa1 {
35			gpio-controller;
36			#gpio-cells = <2>;
37
38			interrupt-controller;
39			#interrupt-cells = <2>;
40		};
41
42		gpb: gpb {
43			gpio-controller;
44			#gpio-cells = <2>;
45
46			interrupt-controller;
47			#interrupt-cells = <2>;
48		};
49
50		gpc0: gpc0 {
51			gpio-controller;
52			#gpio-cells = <2>;
53
54			interrupt-controller;
55			#interrupt-cells = <2>;
56		};
57
58		gpc1: gpc1 {
59			gpio-controller;
60			#gpio-cells = <2>;
61
62			interrupt-controller;
63			#interrupt-cells = <2>;
64		};
65
66		gpd0: gpd0 {
67			gpio-controller;
68			#gpio-cells = <2>;
69
70			interrupt-controller;
71			#interrupt-cells = <2>;
72		};
73
74		gpd1: gpd1 {
75			gpio-controller;
76			#gpio-cells = <2>;
77
78			interrupt-controller;
79			#interrupt-cells = <2>;
80		};
81
82		gpf0: gpf0 {
83			gpio-controller;
84			#gpio-cells = <2>;
85
86			interrupt-controller;
87			#interrupt-cells = <2>;
88		};
89
90		gpf1: gpf1 {
91			gpio-controller;
92			#gpio-cells = <2>;
93
94			interrupt-controller;
95			#interrupt-cells = <2>;
96		};
97
98		gpf2: gpf2 {
99			gpio-controller;
100			#gpio-cells = <2>;
101
102			interrupt-controller;
103			#interrupt-cells = <2>;
104		};
105
106		gpf3: gpf3 {
107			gpio-controller;
108			#gpio-cells = <2>;
109
110			interrupt-controller;
111			#interrupt-cells = <2>;
112		};
113
114		gpj0: gpj0 {
115			gpio-controller;
116			#gpio-cells = <2>;
117
118			interrupt-controller;
119			#interrupt-cells = <2>;
120		};
121
122		gpj1: gpj1 {
123			gpio-controller;
124			#gpio-cells = <2>;
125
126			interrupt-controller;
127			#interrupt-cells = <2>;
128		};
129
130		uart0_data: uart0-data {
131			samsung,pins = "gpa0-0", "gpa0-1";
132			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
133			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
134			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
135		};
136
137		uart0_fctl: uart0-fctl {
138			samsung,pins = "gpa0-2", "gpa0-3";
139			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
140			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
141			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
142		};
143
144		uart1_data: uart1-data {
145			samsung,pins = "gpa0-4", "gpa0-5";
146			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
147			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
148			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
149		};
150
151		uart1_fctl: uart1-fctl {
152			samsung,pins = "gpa0-6", "gpa0-7";
153			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
154			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
155			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
156		};
157
158		i2c2_bus: i2c2-bus {
159			samsung,pins = "gpa0-6", "gpa0-7";
160			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
161			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
162			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
163		};
164
165		uart2_data: uart2-data {
166			samsung,pins = "gpa1-0", "gpa1-1";
167			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
168			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
169			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
170		};
171
172		uart2_fctl: uart2-fctl {
173			samsung,pins = "gpa1-2", "gpa1-3";
174			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
175			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
176			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
177		};
178
179		uart_audio_a: uart-audio-a {
180			samsung,pins = "gpa1-0", "gpa1-1";
181			samsung,pin-function = <EXYNOS_PIN_FUNC_4>;
182			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
183			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
184		};
185
186		i2c3_bus: i2c3-bus {
187			samsung,pins = "gpa1-2", "gpa1-3";
188			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
189			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
190			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
191		};
192
193		uart3_data: uart3-data {
194			samsung,pins = "gpa1-4", "gpa1-5";
195			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
196			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
197			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
198		};
199
200		uart_audio_b: uart-audio-b {
201			samsung,pins = "gpa1-4", "gpa1-5";
202			samsung,pin-function = <EXYNOS_PIN_FUNC_4>;
203			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
204			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
205		};
206
207		spi0_bus: spi0-bus {
208			samsung,pins = "gpb-0", "gpb-2", "gpb-3";
209			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
210			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
211			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
212		};
213
214		i2c4_bus: i2c4-bus {
215			samsung,pins = "gpb-0", "gpb-1";
216			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
217			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
218			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
219		};
220
221		spi1_bus: spi1-bus {
222			samsung,pins = "gpb-4", "gpb-6", "gpb-7";
223			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
224			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
225			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
226		};
227
228		i2c5_bus: i2c5-bus {
229			samsung,pins = "gpb-2", "gpb-3";
230			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
231			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
232			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
233		};
234
235		i2s1_bus: i2s1-bus {
236			samsung,pins = "gpc0-0", "gpc0-1", "gpc0-2", "gpc0-3",
237					"gpc0-4";
238			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
239			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
240			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
241		};
242
243		pcm1_bus: pcm1-bus {
244			samsung,pins = "gpc0-0", "gpc0-1", "gpc0-2", "gpc0-3",
245					"gpc0-4";
246			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
247			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
248			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
249		};
250
251		ac97_bus: ac97-bus {
252			samsung,pins = "gpc0-0", "gpc0-1", "gpc0-2", "gpc0-3",
253					"gpc0-4";
254			samsung,pin-function = <EXYNOS_PIN_FUNC_4>;
255			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
256			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
257		};
258
259		i2s2_bus: i2s2-bus {
260			samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3",
261					"gpc1-4";
262			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
263			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
264			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
265		};
266
267		pcm2_bus: pcm2-bus {
268			samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3",
269					"gpc1-4";
270			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
271			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
272			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
273		};
274
275		spdif_bus: spdif-bus {
276			samsung,pins = "gpc1-0", "gpc1-1";
277			samsung,pin-function = <EXYNOS_PIN_FUNC_4>;
278			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
279			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
280		};
281
282		i2c6_bus: i2c6-bus {
283			samsung,pins = "gpc1-3", "gpc1-4";
284			samsung,pin-function = <EXYNOS_PIN_FUNC_4>;
285			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
286			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
287		};
288
289		spi2_bus: spi2-bus {
290			samsung,pins = "gpc1-1", "gpc1-3", "gpc1-4";
291			samsung,pin-function = <EXYNOS_PIN_FUNC_5>;
292			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
293			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
294		};
295
296		pwm0_out: pwm0-out {
297			samsung,pins = "gpd0-0";
298			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
299			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
300			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
301		};
302
303		pwm1_out: pwm1-out {
304			samsung,pins = "gpd0-1";
305			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
306			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
307			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
308		};
309
310		lcd_ctrl: lcd-ctrl {
311			samsung,pins = "gpd0-0", "gpd0-1";
312			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
313			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
314			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
315		};
316
317		i2c7_bus: i2c7-bus {
318			samsung,pins = "gpd0-2", "gpd0-3";
319			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
320			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
321			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
322		};
323
324		pwm2_out: pwm2-out {
325			samsung,pins = "gpd0-2";
326			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
327			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
328			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
329		};
330
331		pwm3_out: pwm3-out {
332			samsung,pins = "gpd0-3";
333			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
334			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
335			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
336		};
337
338		i2c0_bus: i2c0-bus {
339			samsung,pins = "gpd1-0", "gpd1-1";
340			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
341			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
342			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
343		};
344
345		mipi0_clk: mipi0-clk {
346			samsung,pins = "gpd1-0", "gpd1-1";
347			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
348			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
349			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
350		};
351
352		i2c1_bus: i2c1-bus {
353			samsung,pins = "gpd1-2", "gpd1-3";
354			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
355			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
356			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
357		};
358
359		mipi1_clk: mipi1-clk {
360			samsung,pins = "gpd1-2", "gpd1-3";
361			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
362			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
363			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
364		};
365
366		lcd_clk: lcd-clk {
367			samsung,pins = "gpf0-0", "gpf0-1", "gpf0-2", "gpf0-3";
368			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
369			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
370			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
371		};
372
373		lcd_data16: lcd-data-width16 {
374			samsung,pins = "gpf0-7", "gpf1-0", "gpf1-1", "gpf1-2",
375					"gpf1-3", "gpf1-6", "gpf1-7", "gpf2-0",
376					"gpf2-1", "gpf2-2", "gpf2-3", "gpf2-7",
377					"gpf3-0", "gpf3-1", "gpf3-2", "gpf3-3";
378			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
379			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
380			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
381		};
382
383		lcd_data18: lcd-data-width18 {
384			samsung,pins = "gpf0-6", "gpf0-7", "gpf1-0", "gpf1-1",
385					"gpf1-2", "gpf1-3", "gpf1-6", "gpf1-7",
386					"gpf2-0", "gpf2-1", "gpf2-2", "gpf2-3",
387					"gpf2-6", "gpf2-7", "gpf3-0", "gpf3-1",
388					"gpf3-2", "gpf3-3";
389			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
390			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
391			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
392		};
393
394		lcd_data24: lcd-data-width24 {
395			samsung,pins = "gpf0-4", "gpf0-5", "gpf0-6", "gpf0-7",
396					"gpf1-0", "gpf1-1", "gpf1-2", "gpf1-3",
397					"gpf1-4", "gpf1-5", "gpf1-6", "gpf1-7",
398					"gpf2-0", "gpf2-1", "gpf2-2", "gpf2-3",
399					"gpf2-4", "gpf2-5", "gpf2-6", "gpf2-7",
400					"gpf3-0", "gpf3-1", "gpf3-2", "gpf3-3";
401			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
402			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
403			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
404		};
405
406		lcd_ldi: lcd-ldi {
407			samsung,pins = "gpf3-4";
408			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
409			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
410			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
411		};
412
413		cam_port_a_io: cam-port-a-io {
414			samsung,pins = "gpj0-0", "gpj0-1", "gpj0-2", "gpj0-3",
415					"gpj0-4", "gpj0-5", "gpj0-6", "gpj0-7",
416					"gpj1-0", "gpj1-1", "gpj1-2", "gpj1-4";
417			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
418			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
419			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
420		};
421
422		cam_port_a_clk_active: cam-port-a-clk-active {
423			samsung,pins = "gpj1-3";
424			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
425			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
426			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
427		};
428
429		cam_port_a_clk_idle: cam-port-a-clk-idle {
430			samsung,pins = "gpj1-3";
431			samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
432			samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
433			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
434		};
435	};
436
437	pinctrl_1: pinctrl@11000000 {
438		gpk0: gpk0 {
439			gpio-controller;
440			#gpio-cells = <2>;
441
442			interrupt-controller;
443			#interrupt-cells = <2>;
444		};
445
446		gpk1: gpk1 {
447			gpio-controller;
448			#gpio-cells = <2>;
449
450			interrupt-controller;
451			#interrupt-cells = <2>;
452		};
453
454		gpk2: gpk2 {
455			gpio-controller;
456			#gpio-cells = <2>;
457
458			interrupt-controller;
459			#interrupt-cells = <2>;
460		};
461
462		gpk3: gpk3 {
463			gpio-controller;
464			#gpio-cells = <2>;
465
466			interrupt-controller;
467			#interrupt-cells = <2>;
468		};
469
470		gpl0: gpl0 {
471			gpio-controller;
472			#gpio-cells = <2>;
473
474			interrupt-controller;
475			#interrupt-cells = <2>;
476		};
477
478		gpl1: gpl1 {
479			gpio-controller;
480			#gpio-cells = <2>;
481
482			interrupt-controller;
483			#interrupt-cells = <2>;
484		};
485
486		gpl2: gpl2 {
487			gpio-controller;
488			#gpio-cells = <2>;
489
490			interrupt-controller;
491			#interrupt-cells = <2>;
492		};
493
494		gpm0: gpm0 {
495			gpio-controller;
496			#gpio-cells = <2>;
497
498			interrupt-controller;
499			#interrupt-cells = <2>;
500		};
501
502		gpm1: gpm1 {
503			gpio-controller;
504			#gpio-cells = <2>;
505
506			interrupt-controller;
507			#interrupt-cells = <2>;
508		};
509
510		gpm2: gpm2 {
511			gpio-controller;
512			#gpio-cells = <2>;
513
514			interrupt-controller;
515			#interrupt-cells = <2>;
516		};
517
518		gpm3: gpm3 {
519			gpio-controller;
520			#gpio-cells = <2>;
521
522			interrupt-controller;
523			#interrupt-cells = <2>;
524		};
525
526		gpm4: gpm4 {
527			gpio-controller;
528			#gpio-cells = <2>;
529
530			interrupt-controller;
531			#interrupt-cells = <2>;
532		};
533
534		gpy0: gpy0 {
535			gpio-controller;
536			#gpio-cells = <2>;
537		};
538
539		gpy1: gpy1 {
540			gpio-controller;
541			#gpio-cells = <2>;
542		};
543
544		gpy2: gpy2 {
545			gpio-controller;
546			#gpio-cells = <2>;
547		};
548
549		gpy3: gpy3 {
550			gpio-controller;
551			#gpio-cells = <2>;
552		};
553
554		gpy4: gpy4 {
555			gpio-controller;
556			#gpio-cells = <2>;
557		};
558
559		gpy5: gpy5 {
560			gpio-controller;
561			#gpio-cells = <2>;
562		};
563
564		gpy6: gpy6 {
565			gpio-controller;
566			#gpio-cells = <2>;
567		};
568
569		gpx0: gpx0 {
570			gpio-controller;
571			#gpio-cells = <2>;
572
573			interrupt-controller;
574			interrupt-parent = <&gic>;
575			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
576				     <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
577				     <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
578				     <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
579				     <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
580				     <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
581				     <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
582				     <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
583			#interrupt-cells = <2>;
584		};
585
586		gpx1: gpx1 {
587			gpio-controller;
588			#gpio-cells = <2>;
589
590			interrupt-controller;
591			interrupt-parent = <&gic>;
592			interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>,
593				     <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,
594				     <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
595				     <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
596				     <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>,
597				     <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>,
598				     <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
599				     <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
600			#interrupt-cells = <2>;
601		};
602
603		gpx2: gpx2 {
604			gpio-controller;
605			#gpio-cells = <2>;
606
607			interrupt-controller;
608			#interrupt-cells = <2>;
609		};
610
611		gpx3: gpx3 {
612			gpio-controller;
613			#gpio-cells = <2>;
614
615			interrupt-controller;
616			#interrupt-cells = <2>;
617		};
618
619		sd0_clk: sd0-clk {
620			samsung,pins = "gpk0-0";
621			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
622			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
623			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
624		};
625
626		sd0_cmd: sd0-cmd {
627			samsung,pins = "gpk0-1";
628			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
629			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
630			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
631		};
632
633		sd0_cd: sd0-cd {
634			samsung,pins = "gpk0-2";
635			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
636			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
637			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
638		};
639
640		sd0_bus1: sd0-bus-width1 {
641			samsung,pins = "gpk0-3";
642			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
643			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
644			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
645		};
646
647		sd0_bus4: sd0-bus-width4 {
648			samsung,pins = "gpk0-3", "gpk0-4", "gpk0-5", "gpk0-6";
649			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
650			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
651			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
652		};
653
654		sd0_bus8: sd0-bus-width8 {
655			samsung,pins = "gpk1-3", "gpk1-4", "gpk1-5", "gpk1-6";
656			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
657			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
658			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
659		};
660
661		sd4_clk: sd4-clk {
662			samsung,pins = "gpk0-0";
663			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
664			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
665			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
666		};
667
668		sd4_cmd: sd4-cmd {
669			samsung,pins = "gpk0-1";
670			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
671			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
672			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
673		};
674
675		sd4_cd: sd4-cd {
676			samsung,pins = "gpk0-2";
677			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
678			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
679			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
680		};
681
682		sd4_bus1: sd4-bus-width1 {
683			samsung,pins = "gpk0-3";
684			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
685			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
686			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
687		};
688
689		sd4_bus4: sd4-bus-width4 {
690			samsung,pins = "gpk0-3", "gpk0-4", "gpk0-5", "gpk0-6";
691			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
692			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
693			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
694		};
695
696		sd4_bus8: sd4-bus-width8 {
697			samsung,pins = "gpk1-3", "gpk1-4", "gpk1-5", "gpk1-6";
698			samsung,pin-function = <EXYNOS_PIN_FUNC_4>;
699			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
700			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
701		};
702
703		sd1_clk: sd1-clk {
704			samsung,pins = "gpk1-0";
705			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
706			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
707			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
708		};
709
710		sd1_cmd: sd1-cmd {
711			samsung,pins = "gpk1-1";
712			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
713			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
714			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
715		};
716
717		sd1_cd: sd1-cd {
718			samsung,pins = "gpk1-2";
719			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
720			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
721			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
722		};
723
724		sd1_bus1: sd1-bus-width1 {
725			samsung,pins = "gpk1-3";
726			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
727			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
728			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
729		};
730
731		sd1_bus4: sd1-bus-width4 {
732			samsung,pins = "gpk1-3", "gpk1-4", "gpk1-5", "gpk1-6";
733			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
734			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
735			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
736		};
737
738		sd2_clk: sd2-clk {
739			samsung,pins = "gpk2-0";
740			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
741			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
742			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
743		};
744
745		sd2_cmd: sd2-cmd {
746			samsung,pins = "gpk2-1";
747			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
748			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
749			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
750		};
751
752		sd2_cd: sd2-cd {
753			samsung,pins = "gpk2-2";
754			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
755			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
756			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
757		};
758
759		sd2_bus1: sd2-bus-width1 {
760			samsung,pins = "gpk2-3";
761			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
762			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
763			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
764		};
765
766		sd2_bus4: sd2-bus-width4 {
767			samsung,pins = "gpk2-3", "gpk2-4", "gpk2-5", "gpk2-6";
768			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
769			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
770			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
771		};
772
773		sd2_bus8: sd2-bus-width8 {
774			samsung,pins = "gpk3-3", "gpk3-4", "gpk3-5", "gpk3-6";
775			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
776			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
777			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
778		};
779
780		sd3_clk: sd3-clk {
781			samsung,pins = "gpk3-0";
782			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
783			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
784			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
785		};
786
787		sd3_cmd: sd3-cmd {
788			samsung,pins = "gpk3-1";
789			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
790			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
791			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
792		};
793
794		sd3_cd: sd3-cd {
795			samsung,pins = "gpk3-2";
796			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
797			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
798			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
799		};
800
801		sd3_bus1: sd3-bus-width1 {
802			samsung,pins = "gpk3-3";
803			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
804			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
805			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
806		};
807
808		sd3_bus4: sd3-bus-width4 {
809			samsung,pins = "gpk3-3", "gpk3-4", "gpk3-5", "gpk3-6";
810			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
811			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
812			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
813		};
814
815		cam_port_b_io: cam-port-b-io {
816			samsung,pins = "gpm0-0", "gpm0-1", "gpm0-2", "gpm0-3",
817					"gpm0-4", "gpm0-5", "gpm0-6", "gpm0-7",
818					"gpm1-0", "gpm1-1", "gpm2-0", "gpm2-1";
819			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
820			samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
821			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
822		};
823
824		cam_port_b_clk_active: cam-port-b-clk-active {
825			samsung,pins = "gpm2-2";
826			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
827			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
828			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
829		};
830
831		cam_port_b_clk_idle: cam-port-b-clk-idle {
832			samsung,pins = "gpm2-2";
833			samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
834			samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
835			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
836		};
837
838		eint0: ext-int0 {
839			samsung,pins = "gpx0-0";
840			samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
841			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
842			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
843		};
844
845		eint8: ext-int8 {
846			samsung,pins = "gpx1-0";
847			samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
848			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
849			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
850		};
851
852		eint15: ext-int15 {
853			samsung,pins = "gpx1-7";
854			samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
855			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
856			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
857		};
858
859		eint16: ext-int16 {
860			samsung,pins = "gpx2-0";
861			samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
862			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
863			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
864		};
865
866		eint31: ext-int31 {
867			samsung,pins = "gpx3-7";
868			samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
869			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
870			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
871		};
872
873		fimc_is_i2c0: fimc-is-i2c0 {
874			samsung,pins = "gpm4-0", "gpm4-1";
875			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
876			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
877			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
878		};
879
880		fimc_is_i2c1: fimc-is-i2c1 {
881			samsung,pins = "gpm4-2", "gpm4-3";
882			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
883			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
884			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
885		};
886
887		fimc_is_uart: fimc-is-uart {
888			samsung,pins = "gpm3-5", "gpm3-7";
889			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
890			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
891			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
892		};
893
894		hdmi_cec: hdmi-cec {
895			samsung,pins = "gpx3-6";
896			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
897			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
898			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
899		};
900	};
901
902	pinctrl_2: pinctrl@03860000 {
903		gpz: gpz {
904			gpio-controller;
905			#gpio-cells = <2>;
906
907			interrupt-controller;
908			#interrupt-cells = <2>;
909		};
910
911		i2s0_bus: i2s0-bus {
912			samsung,pins = "gpz-0", "gpz-1", "gpz-2", "gpz-3",
913					"gpz-4", "gpz-5", "gpz-6";
914			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
915			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
916			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
917		};
918
919		pcm0_bus: pcm0-bus {
920			samsung,pins = "gpz-0", "gpz-1", "gpz-2", "gpz-3",
921					"gpz-4";
922			samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
923			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
924			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
925		};
926	};
927
928	pinctrl_3: pinctrl@106E0000 {
929		gpv0: gpv0 {
930			gpio-controller;
931			#gpio-cells = <2>;
932
933			interrupt-controller;
934			#interrupt-cells = <2>;
935		};
936
937		gpv1: gpv1 {
938			gpio-controller;
939			#gpio-cells = <2>;
940
941			interrupt-controller;
942			#interrupt-cells = <2>;
943		};
944
945		gpv2: gpv2 {
946			gpio-controller;
947			#gpio-cells = <2>;
948
949			interrupt-controller;
950			#interrupt-cells = <2>;
951		};
952
953		gpv3: gpv3 {
954			gpio-controller;
955			#gpio-cells = <2>;
956
957			interrupt-controller;
958			#interrupt-cells = <2>;
959		};
960
961		gpv4: gpv4 {
962			gpio-controller;
963			#gpio-cells = <2>;
964
965			interrupt-controller;
966			#interrupt-cells = <2>;
967		};
968
969		c2c_bus: c2c-bus {
970			samsung,pins = "gpv0-0", "gpv0-1", "gpv0-2", "gpv0-3",
971					"gpv0-4", "gpv0-5", "gpv0-6", "gpv0-7",
972					"gpv1-0", "gpv1-1", "gpv1-2", "gpv1-3",
973					"gpv1-4", "gpv1-5", "gpv1-6", "gpv1-7",
974					"gpv2-0", "gpv2-1", "gpv2-2", "gpv2-3",
975					"gpv2-4", "gpv2-5", "gpv2-6", "gpv2-7",
976					"gpv3-0", "gpv3-1", "gpv3-2", "gpv3-3",
977					"gpv3-4", "gpv3-5", "gpv3-6", "gpv3-7",
978					"gpv4-0", "gpv4-1";
979			samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
980			samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
981			samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
982		};
983	};
984};
985