2 * Samsung's Exynos3250 SoCs pin-mux and pin-config device tree source
4 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
5 * http://www.samsung.com
7 * Samsung's Exynos3250 SoCs pin-mux and pin-config optiosn are listed as device
8 * tree nodes are listed in this file.
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.
15 #define PIN_PULL_NONE 0
16 #define PIN_PULL_DOWN 1
24 #define PIN_PDN_OUT0 0
25 #define PIN_PDN_OUT1 1
26 #define PIN_PDN_INPUT 2
27 #define PIN_PDN_PREV 3
29 #define PIN_IN(_pin, _pull, _drv) \
31 samsung,pins = #_pin; \
32 samsung,pin-function = <0>; \
33 samsung,pin-pud = <PIN_PULL_ ##_pull>; \
34 samsung,pin-drv = <PIN_DRV_ ##_drv>; \
37 #define PIN_OUT(_pin, _drv) \
39 samsung,pins = #_pin; \
40 samsung,pin-function = <1>; \
41 samsung,pin-pud = <0>; \
42 samsung,pin-drv = <PIN_DRV_ ##_drv>; \
45 #define PIN_OUT_SET(_pin, _val, _drv) \
47 samsung,pins = #_pin; \
48 samsung,pin-function = <1>; \
49 samsung,pin-pud = <0>; \
50 samsung,pin-drv = <PIN_DRV_ ##_drv>; \
51 samsung,pin-val = <_val>; \
54 #define PIN_CFG(_pin, _sel, _pull, _drv) \
56 samsung,pins = #_pin; \
57 samsung,pin-function = <_sel>; \
58 samsung,pin-pud = <PIN_PULL_ ##_pull>; \
59 samsung,pin-drv = <PIN_DRV_ ##_drv>; \
62 #define PIN_SLP(_pin, _mode, _pull) \
64 samsung,pins = #_pin; \
65 samsung,pin-con-pdn = <PIN_PDN_ ##_mode>; \
66 samsung,pin-pud-pdn = <PIN_PULL_ ##_pull>; \
75 #interrupt-cells = <2>;
83 #interrupt-cells = <2>;
91 #interrupt-cells = <2>;
99 #interrupt-cells = <2>;
106 interrupt-controller;
107 #interrupt-cells = <2>;
114 interrupt-controller;
115 #interrupt-cells = <2>;
122 interrupt-controller;
123 #interrupt-cells = <2>;
126 uart0_data: uart0-data {
127 samsung,pins = "gpa0-0", "gpa0-1";
128 samsung,pin-function = <0x2>;
129 samsung,pin-pud = <0>;
130 samsung,pin-drv = <0>;
133 uart0_fctl: uart0-fctl {
134 samsung,pins = "gpa0-2", "gpa0-3";
135 samsung,pin-function = <2>;
136 samsung,pin-pud = <0>;
137 samsung,pin-drv = <0>;
140 uart1_data: uart1-data {
141 samsung,pins = "gpa0-4", "gpa0-5";
142 samsung,pin-function = <2>;
143 samsung,pin-pud = <0>;
144 samsung,pin-drv = <0>;
147 uart1_fctl: uart1-fctl {
148 samsung,pins = "gpa0-6", "gpa0-7";
149 samsung,pin-function = <2>;
150 samsung,pin-pud = <0>;
151 samsung,pin-drv = <0>;
155 samsung,pins = "gpa0-6", "gpa0-7";
156 samsung,pin-function = <3>;
157 samsung,pin-pud = <3>;
158 samsung,pin-drv = <0>;
161 uart2_data: uart2-data {
162 samsung,pins = "gpa1-0", "gpa1-1";
163 samsung,pin-function = <2>;
164 samsung,pin-pud = <0>;
165 samsung,pin-drv = <0>;
169 samsung,pins = "gpa1-2", "gpa1-3";
170 samsung,pin-function = <3>;
171 samsung,pin-pud = <3>;
172 samsung,pin-drv = <0>;
176 samsung,pins = "gpb-0", "gpb-2", "gpb-3";
177 samsung,pin-function = <2>;
178 samsung,pin-pud = <3>;
179 samsung,pin-drv = <0>;
183 samsung,pins = "gpb-0", "gpb-1";
184 samsung,pin-function = <3>;
185 samsung,pin-pud = <3>;
186 samsung,pin-drv = <0>;
190 samsung,pins = "gpb-4", "gpb-6", "gpb-7";
191 samsung,pin-function = <2>;
192 samsung,pin-pud = <3>;
193 samsung,pin-drv = <0>;
197 samsung,pins = "gpb-2", "gpb-3";
198 samsung,pin-function = <3>;
199 samsung,pin-pud = <3>;
200 samsung,pin-drv = <0>;
204 samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3",
206 samsung,pin-function = <2>;
207 samsung,pin-pud = <0>;
208 samsung,pin-drv = <0>;
212 samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3",
214 samsung,pin-function = <3>;
215 samsung,pin-pud = <0>;
216 samsung,pin-drv = <0>;
220 samsung,pins = "gpc1-3", "gpc1-4";
221 samsung,pin-function = <4>;
222 samsung,pin-pud = <3>;
223 samsung,pin-drv = <0>;
227 samsung,pins = "gpd0-0";
228 samsung,pin-function = <2>;
229 samsung,pin-pud = <0>;
230 samsung,pin-drv = <0>;
234 samsung,pins = "gpd0-1";
235 samsung,pin-function = <2>;
236 samsung,pin-pud = <0>;
237 samsung,pin-drv = <0>;
241 samsung,pins = "gpd0-2", "gpd0-3";
242 samsung,pin-function = <3>;
243 samsung,pin-pud = <3>;
244 samsung,pin-drv = <0>;
248 samsung,pins = "gpd0-2";
249 samsung,pin-function = <2>;
250 samsung,pin-pud = <0>;
251 samsung,pin-drv = <0>;
255 samsung,pins = "gpd0-3";
256 samsung,pin-function = <2>;
257 samsung,pin-pud = <0>;
258 samsung,pin-drv = <0>;
262 samsung,pins = "gpd1-0", "gpd1-1";
263 samsung,pin-function = <2>;
264 samsung,pin-pud = <3>;
265 samsung,pin-drv = <0>;
268 mipi0_clk: mipi0-clk {
269 samsung,pins = "gpd1-0", "gpd1-1";
270 samsung,pin-function = <3>;
271 samsung,pin-pud = <0>;
272 samsung,pin-drv = <0>;
276 samsung,pins = "gpd1-2", "gpd1-3";
277 samsung,pin-function = <2>;
278 samsung,pin-pud = <3>;
279 samsung,pin-drv = <0>;
303 interrupt-controller;
304 #interrupt-cells = <2>;
311 interrupt-controller;
312 #interrupt-cells = <2>;
319 interrupt-controller;
320 #interrupt-cells = <2>;
327 interrupt-controller;
328 #interrupt-cells = <2>;
335 interrupt-controller;
336 #interrupt-cells = <2>;
343 interrupt-controller;
344 #interrupt-cells = <2>;
351 interrupt-controller;
352 #interrupt-cells = <2>;
359 interrupt-controller;
360 #interrupt-cells = <2>;
367 interrupt-controller;
368 #interrupt-cells = <2>;
375 interrupt-controller;
376 interrupt-parent = <&gic>;
377 interrupts = <0 32 0>, <0 33 0>, <0 34 0>, <0 35 0>,
378 <0 36 0>, <0 37 0>, <0 38 0>, <0 39 0>;
379 #interrupt-cells = <2>;
386 interrupt-controller;
387 interrupt-parent = <&gic>;
388 interrupts = <0 40 0>, <0 41 0>, <0 42 0>, <0 43 0>,
389 <0 44 0>, <0 45 0>, <0 46 0>, <0 47 0>;
390 #interrupt-cells = <2>;
397 interrupt-controller;
398 #interrupt-cells = <2>;
405 interrupt-controller;
406 #interrupt-cells = <2>;
410 samsung,pins = "gpk0-0";
411 samsung,pin-function = <2>;
412 samsung,pin-pud = <0>;
413 samsung,pin-drv = <3>;
417 samsung,pins = "gpk0-1";
418 samsung,pin-function = <2>;
419 samsung,pin-pud = <0>;
420 samsung,pin-drv = <3>;
424 samsung,pins = "gpk0-2";
425 samsung,pin-function = <2>;
426 samsung,pin-pud = <3>;
427 samsung,pin-drv = <3>;
431 samsung,pins = "gpk0-7";
432 samsung,pin-function = <2>;
433 samsung,pin-pud = <0>;
434 samsung,pin-drv = <3>;
437 sd0_bus1: sd0-bus-width1 {
438 samsung,pins = "gpk0-3";
439 samsung,pin-function = <2>;
440 samsung,pin-pud = <3>;
441 samsung,pin-drv = <3>;
444 sd0_bus4: sd0-bus-width4 {
445 samsung,pins = "gpk0-4", "gpk0-5", "gpk0-6";
446 samsung,pin-function = <2>;
447 samsung,pin-pud = <3>;
448 samsung,pin-drv = <3>;
451 sd0_bus8: sd0-bus-width8 {
452 samsung,pins = "gpl0-0", "gpl0-1", "gpl0-2", "gpl0-3";
453 samsung,pin-function = <2>;
454 samsung,pin-pud = <3>;
455 samsung,pin-drv = <3>;
459 samsung,pins = "gpk1-0";
460 samsung,pin-function = <2>;
461 samsung,pin-pud = <0>;
462 samsung,pin-drv = <3>;
466 samsung,pins = "gpk1-1";
467 samsung,pin-function = <2>;
468 samsung,pin-pud = <0>;
469 samsung,pin-drv = <3>;
473 samsung,pins = "gpk1-2";
474 samsung,pin-function = <2>;
475 samsung,pin-pud = <3>;
476 samsung,pin-drv = <3>;
479 sd1_bus1: sd1-bus-width1 {
480 samsung,pins = "gpk1-3";
481 samsung,pin-function = <2>;
482 samsung,pin-pud = <3>;
483 samsung,pin-drv = <3>;
486 sd1_bus4: sd1-bus-width4 {
487 samsung,pins = "gpk1-4", "gpk1-5", "gpk1-6";
488 samsung,pin-function = <2>;
489 samsung,pin-pud = <3>;
490 samsung,pin-drv = <3>;
494 samsung,pins = "gpk2-0";
495 samsung,pin-function = <2>;
496 samsung,pin-pud = <0>;
497 samsung,pin-drv = <3>;
501 samsung,pins = "gpk2-1";
502 samsung,pin-function = <2>;
503 samsung,pin-pud = <0>;
504 samsung,pin-drv = <3>;
508 samsung,pins = "gpk2-2";
509 samsung,pin-function = <2>;
510 samsung,pin-pud = <3>;
511 samsung,pin-drv = <3>;
514 sd2_bus1: sd2-bus-width1 {
515 samsung,pins = "gpk2-3";
516 samsung,pin-function = <2>;
517 samsung,pin-pud = <3>;
518 samsung,pin-drv = <3>;
521 sd2_bus4: sd2-bus-width4 {
522 samsung,pins = "gpk2-4", "gpk2-5", "gpk2-6";
523 samsung,pin-function = <2>;
524 samsung,pin-pud = <3>;
525 samsung,pin-drv = <3>;
528 cam_port_b_io: cam-port-b-io {
529 samsung,pins = "gpm0-0", "gpm0-1", "gpm0-2", "gpm0-3",
530 "gpm0-4", "gpm0-5", "gpm0-6", "gpm0-7",
531 "gpm1-0", "gpm1-1", "gpm2-0", "gpm2-1";
532 samsung,pin-function = <3>;
533 samsung,pin-pud = <3>;
534 samsung,pin-drv = <0>;
537 cam_port_b_clk_active: cam-port-b-clk-active {
538 samsung,pins = "gpm2-2";
539 samsung,pin-function = <3>;
540 samsung,pin-pud = <0>;
541 samsung,pin-drv = <3>;
544 cam_port_b_clk_idle: cam-port-b-clk-idle {
545 samsung,pins = "gpm2-2";
546 samsung,pin-function = <0>;
547 samsung,pin-pud = <0>;
548 samsung,pin-drv = <0>;
551 fimc_is_i2c0: fimc-is-i2c0 {
552 samsung,pins = "gpm4-0", "gpm4-1";
553 samsung,pin-function = <2>;
554 samsung,pin-pud = <0>;
555 samsung,pin-drv = <0>;
558 fimc_is_i2c1: fimc-is-i2c1 {
559 samsung,pins = "gpm4-2", "gpm4-3";
560 samsung,pin-function = <2>;
561 samsung,pin-pud = <0>;
562 samsung,pin-drv = <0>;
565 fimc_is_uart: fimc-is-uart {
566 samsung,pins = "gpm3-5", "gpm3-7";
567 samsung,pin-function = <3>;
568 samsung,pin-pud = <0>;
569 samsung,pin-drv = <0>;