arm: dts: rk3288-evb: 32.768K clk node for BT
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / exynos3250-pinctrl.dtsi
1 /*
2  * Samsung's Exynos3250 SoCs 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 Exynos3250 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 #define PIN_PULL_NONE           0
16 #define PIN_PULL_DOWN           1
17 #define PIN_PULL_UP             3
18
19 #define PIN_PDN_OUT0            0
20 #define PIN_PDN_OUT1            1
21 #define PIN_PDN_INPUT           2
22 #define PIN_PDN_PREV            3
23
24 #define PIN_SLP(_pin, _mode, _pull)                             \
25         _pin {                                                  \
26                 samsung,pins = #_pin;                           \
27                 samsung,pin-con-pdn = <PIN_PDN_ ##_mode>;       \
28                 samsung,pin-pud-pdn = <PIN_PULL_ ##_pull>;      \
29         }
30
31 &pinctrl_0 {
32         gpa0: gpa0 {
33                 gpio-controller;
34                 #gpio-cells = <2>;
35
36                 interrupt-controller;
37                 #interrupt-cells = <2>;
38         };
39
40         gpa1: gpa1 {
41                 gpio-controller;
42                 #gpio-cells = <2>;
43
44                 interrupt-controller;
45                 #interrupt-cells = <2>;
46         };
47
48         gpb: gpb {
49                 gpio-controller;
50                 #gpio-cells = <2>;
51
52                 interrupt-controller;
53                 #interrupt-cells = <2>;
54         };
55
56         gpc0: gpc0 {
57                 gpio-controller;
58                 #gpio-cells = <2>;
59
60                 interrupt-controller;
61                 #interrupt-cells = <2>;
62         };
63
64         gpc1: gpc1 {
65                 gpio-controller;
66                 #gpio-cells = <2>;
67
68                 interrupt-controller;
69                 #interrupt-cells = <2>;
70         };
71
72         gpd0: gpd0 {
73                 gpio-controller;
74                 #gpio-cells = <2>;
75
76                 interrupt-controller;
77                 #interrupt-cells = <2>;
78         };
79
80         gpd1: gpd1 {
81                 gpio-controller;
82                 #gpio-cells = <2>;
83
84                 interrupt-controller;
85                 #interrupt-cells = <2>;
86         };
87
88         uart0_data: uart0-data {
89                 samsung,pins = "gpa0-0", "gpa0-1";
90                 samsung,pin-function = <0x2>;
91                 samsung,pin-pud = <0>;
92                 samsung,pin-drv = <0>;
93         };
94
95         uart0_fctl: uart0-fctl {
96                 samsung,pins = "gpa0-2", "gpa0-3";
97                 samsung,pin-function = <2>;
98                 samsung,pin-pud = <0>;
99                 samsung,pin-drv = <0>;
100         };
101
102         uart1_data: uart1-data {
103                 samsung,pins = "gpa0-4", "gpa0-5";
104                 samsung,pin-function = <2>;
105                 samsung,pin-pud = <0>;
106                 samsung,pin-drv = <0>;
107         };
108
109         uart1_fctl: uart1-fctl {
110                 samsung,pins = "gpa0-6", "gpa0-7";
111                 samsung,pin-function = <2>;
112                 samsung,pin-pud = <0>;
113                 samsung,pin-drv = <0>;
114         };
115
116         i2c2_bus: i2c2-bus {
117                 samsung,pins = "gpa0-6", "gpa0-7";
118                 samsung,pin-function = <3>;
119                 samsung,pin-pud = <3>;
120                 samsung,pin-drv = <0>;
121         };
122
123         i2c3_bus: i2c3-bus {
124                 samsung,pins = "gpa1-2", "gpa1-3";
125                 samsung,pin-function = <3>;
126                 samsung,pin-pud = <3>;
127                 samsung,pin-drv = <0>;
128         };
129
130         spi0_bus: spi0-bus {
131                 samsung,pins = "gpb-0", "gpb-2", "gpb-3";
132                 samsung,pin-function = <2>;
133                 samsung,pin-pud = <3>;
134                 samsung,pin-drv = <0>;
135         };
136
137         i2c4_bus: i2c4-bus {
138                 samsung,pins = "gpb-0", "gpb-1";
139                 samsung,pin-function = <3>;
140                 samsung,pin-pud = <3>;
141                 samsung,pin-drv = <0>;
142         };
143
144         spi1_bus: spi1-bus {
145                 samsung,pins = "gpb-4", "gpb-6", "gpb-7";
146                 samsung,pin-function = <2>;
147                 samsung,pin-pud = <3>;
148                 samsung,pin-drv = <0>;
149         };
150
151         i2c5_bus: i2c5-bus {
152                 samsung,pins = "gpb-2", "gpb-3";
153                 samsung,pin-function = <3>;
154                 samsung,pin-pud = <3>;
155                 samsung,pin-drv = <0>;
156         };
157
158         i2s2_bus: i2s2-bus {
159                 samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3",
160                                 "gpc1-4";
161                 samsung,pin-function = <2>;
162                 samsung,pin-pud = <0>;
163                 samsung,pin-drv = <0>;
164         };
165
166         pcm2_bus: pcm2-bus {
167                 samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3",
168                                 "gpc1-4";
169                 samsung,pin-function = <3>;
170                 samsung,pin-pud = <0>;
171                 samsung,pin-drv = <0>;
172         };
173
174         i2c6_bus: i2c6-bus {
175                 samsung,pins = "gpc1-3", "gpc1-4";
176                 samsung,pin-function = <4>;
177                 samsung,pin-pud = <3>;
178                 samsung,pin-drv = <0>;
179         };
180
181         pwm0_out: pwm0-out {
182                 samsung,pins = "gpd0-0";
183                 samsung,pin-function = <2>;
184                 samsung,pin-pud = <0>;
185                 samsung,pin-drv = <0>;
186         };
187
188         pwm1_out: pwm1-out {
189                 samsung,pins = "gpd0-1";
190                 samsung,pin-function = <2>;
191                 samsung,pin-pud = <0>;
192                 samsung,pin-drv = <0>;
193         };
194
195         i2c7_bus: i2c7-bus {
196                 samsung,pins = "gpd0-2", "gpd0-3";
197                 samsung,pin-function = <3>;
198                 samsung,pin-pud = <3>;
199                 samsung,pin-drv = <0>;
200         };
201
202         pwm2_out: pwm2-out {
203                 samsung,pins = "gpd0-2";
204                 samsung,pin-function = <2>;
205                 samsung,pin-pud = <0>;
206                 samsung,pin-drv = <0>;
207         };
208
209         pwm3_out: pwm3-out {
210                 samsung,pins = "gpd0-3";
211                 samsung,pin-function = <2>;
212                 samsung,pin-pud = <0>;
213                 samsung,pin-drv = <0>;
214         };
215
216         i2c0_bus: i2c0-bus {
217                 samsung,pins = "gpd1-0", "gpd1-1";
218                 samsung,pin-function = <2>;
219                 samsung,pin-pud = <3>;
220                 samsung,pin-drv = <0>;
221         };
222
223         mipi0_clk: mipi0-clk {
224                 samsung,pins = "gpd1-0", "gpd1-1";
225                 samsung,pin-function = <3>;
226                 samsung,pin-pud = <0>;
227                 samsung,pin-drv = <0>;
228         };
229
230         i2c1_bus: i2c1-bus {
231                 samsung,pins = "gpd1-2", "gpd1-3";
232                 samsung,pin-function = <2>;
233                 samsung,pin-pud = <3>;
234                 samsung,pin-drv = <0>;
235         };
236 };
237
238 &pinctrl_1 {
239         gpe0: gpe0 {
240                 gpio-controller;
241                 #gpio-cells = <2>;
242         };
243
244         gpe1: gpe1 {
245                 gpio-controller;
246                 #gpio-cells = <2>;
247         };
248
249         gpe2: gpe2 {
250                 gpio-controller;
251                 #gpio-cells = <2>;
252         };
253
254         gpk0: gpk0 {
255                 gpio-controller;
256                 #gpio-cells = <2>;
257
258                 interrupt-controller;
259                 #interrupt-cells = <2>;
260         };
261
262         gpk1: gpk1 {
263                 gpio-controller;
264                 #gpio-cells = <2>;
265
266                 interrupt-controller;
267                 #interrupt-cells = <2>;
268         };
269
270         gpk2: gpk2 {
271                 gpio-controller;
272                 #gpio-cells = <2>;
273
274                 interrupt-controller;
275                 #interrupt-cells = <2>;
276         };
277
278         gpl0: gpl0 {
279                 gpio-controller;
280                 #gpio-cells = <2>;
281
282                 interrupt-controller;
283                 #interrupt-cells = <2>;
284         };
285
286         gpm0: gpm0 {
287                 gpio-controller;
288                 #gpio-cells = <2>;
289
290                 interrupt-controller;
291                 #interrupt-cells = <2>;
292         };
293
294         gpm1: gpm1 {
295                 gpio-controller;
296                 #gpio-cells = <2>;
297
298                 interrupt-controller;
299                 #interrupt-cells = <2>;
300         };
301
302         gpm2: gpm2 {
303                 gpio-controller;
304                 #gpio-cells = <2>;
305
306                 interrupt-controller;
307                 #interrupt-cells = <2>;
308         };
309
310         gpm3: gpm3 {
311                 gpio-controller;
312                 #gpio-cells = <2>;
313
314                 interrupt-controller;
315                 #interrupt-cells = <2>;
316         };
317
318         gpm4: gpm4 {
319                 gpio-controller;
320                 #gpio-cells = <2>;
321
322                 interrupt-controller;
323                 #interrupt-cells = <2>;
324         };
325
326         gpx0: gpx0 {
327                 gpio-controller;
328                 #gpio-cells = <2>;
329
330                 interrupt-controller;
331                 interrupt-parent = <&gic>;
332                 interrupts = <0 32 0>, <0 33 0>, <0 34 0>, <0 35 0>,
333                                 <0 36 0>, <0 37 0>, <0 38 0>, <0 39 0>;
334                 #interrupt-cells = <2>;
335         };
336
337         gpx1: gpx1 {
338                 gpio-controller;
339                 #gpio-cells = <2>;
340
341                 interrupt-controller;
342                 interrupt-parent = <&gic>;
343                 interrupts = <0 40 0>, <0 41 0>, <0 42 0>, <0 43 0>,
344                                 <0 44 0>, <0 45 0>, <0 46 0>, <0 47 0>;
345                 #interrupt-cells = <2>;
346         };
347
348         gpx2: gpx2 {
349                 gpio-controller;
350                 #gpio-cells = <2>;
351
352                 interrupt-controller;
353                 #interrupt-cells = <2>;
354         };
355
356         gpx3: gpx3 {
357                 gpio-controller;
358                 #gpio-cells = <2>;
359
360                 interrupt-controller;
361                 #interrupt-cells = <2>;
362         };
363
364         sd0_clk: sd0-clk {
365                 samsung,pins = "gpk0-0";
366                 samsung,pin-function = <2>;
367                 samsung,pin-pud = <0>;
368                 samsung,pin-drv = <3>;
369         };
370
371         sd0_cmd: sd0-cmd {
372                 samsung,pins = "gpk0-1";
373                 samsung,pin-function = <2>;
374                 samsung,pin-pud = <0>;
375                 samsung,pin-drv = <3>;
376         };
377
378         sd0_cd: sd0-cd {
379                 samsung,pins = "gpk0-2";
380                 samsung,pin-function = <2>;
381                 samsung,pin-pud = <3>;
382                 samsung,pin-drv = <3>;
383         };
384
385         sd0_rdqs: sd0-rdqs {
386                 samsung,pins = "gpk0-7";
387                 samsung,pin-function = <2>;
388                 samsung,pin-pud = <0>;
389                 samsung,pin-drv = <3>;
390         };
391
392         sd0_bus1: sd0-bus-width1 {
393                 samsung,pins = "gpk0-3";
394                 samsung,pin-function = <2>;
395                 samsung,pin-pud = <3>;
396                 samsung,pin-drv = <3>;
397         };
398
399         sd0_bus4: sd0-bus-width4 {
400                 samsung,pins = "gpk0-4", "gpk0-5", "gpk0-6";
401                 samsung,pin-function = <2>;
402                 samsung,pin-pud = <3>;
403                 samsung,pin-drv = <3>;
404         };
405
406         sd0_bus8: sd0-bus-width8 {
407                 samsung,pins = "gpl0-0", "gpl0-1", "gpl0-2", "gpl0-3";
408                 samsung,pin-function = <2>;
409                 samsung,pin-pud = <3>;
410                 samsung,pin-drv = <3>;
411         };
412
413         sd1_clk: sd1-clk {
414                 samsung,pins = "gpk1-0";
415                 samsung,pin-function = <2>;
416                 samsung,pin-pud = <0>;
417                 samsung,pin-drv = <3>;
418         };
419
420         sd1_cmd: sd1-cmd {
421                 samsung,pins = "gpk1-1";
422                 samsung,pin-function = <2>;
423                 samsung,pin-pud = <0>;
424                 samsung,pin-drv = <3>;
425         };
426
427         sd1_cd: sd1-cd {
428                 samsung,pins = "gpk1-2";
429                 samsung,pin-function = <2>;
430                 samsung,pin-pud = <3>;
431                 samsung,pin-drv = <3>;
432         };
433
434         sd1_bus1: sd1-bus-width1 {
435                 samsung,pins = "gpk1-3";
436                 samsung,pin-function = <2>;
437                 samsung,pin-pud = <3>;
438                 samsung,pin-drv = <3>;
439         };
440
441         sd1_bus4: sd1-bus-width4 {
442                 samsung,pins = "gpk1-4", "gpk1-5", "gpk1-6";
443                 samsung,pin-function = <2>;
444                 samsung,pin-pud = <3>;
445                 samsung,pin-drv = <3>;
446         };
447
448         cam_port_b_io: cam-port-b-io {
449                 samsung,pins = "gpm0-0", "gpm0-1", "gpm0-2", "gpm0-3",
450                                 "gpm0-4", "gpm0-5", "gpm0-6", "gpm0-7",
451                                 "gpm1-0", "gpm1-1", "gpm2-0", "gpm2-1";
452                 samsung,pin-function = <3>;
453                 samsung,pin-pud = <3>;
454                 samsung,pin-drv = <0>;
455         };
456
457         cam_port_b_clk_active: cam-port-b-clk-active {
458                 samsung,pins = "gpm2-2";
459                 samsung,pin-function = <3>;
460                 samsung,pin-pud = <0>;
461                 samsung,pin-drv = <3>;
462         };
463
464         cam_port_b_clk_idle: cam-port-b-clk-idle {
465                 samsung,pins = "gpm2-2";
466                 samsung,pin-function = <0>;
467                 samsung,pin-pud = <0>;
468                 samsung,pin-drv = <0>;
469         };
470
471         fimc_is_i2c0: fimc-is-i2c0 {
472                 samsung,pins = "gpm4-0", "gpm4-1";
473                 samsung,pin-function = <2>;
474                 samsung,pin-pud = <0>;
475                 samsung,pin-drv = <0>;
476         };
477
478         fimc_is_i2c1: fimc-is-i2c1 {
479                 samsung,pins = "gpm4-2", "gpm4-3";
480                 samsung,pin-function = <2>;
481                 samsung,pin-pud = <0>;
482                 samsung,pin-drv = <0>;
483         };
484
485         fimc_is_uart: fimc-is-uart {
486                 samsung,pins = "gpm3-5", "gpm3-7";
487                 samsung,pin-function = <3>;
488                 samsung,pin-pud = <0>;
489                 samsung,pin-drv = <0>;
490         };
491 };