Merge branch 'for-4.8/hid-led' into for-linus
[sfrench/cifs-2.6.git] / arch / arc / boot / dts / abilis_tb101.dtsi
1 /*
2  * Abilis Systems TB101 SOC device tree
3  *
4  * Copyright (C) Abilis Systems 2013
5  *
6  * Author: Christian Ruppert <christian.ruppert@abilis.com>
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as
10  * published by the Free Software Foundation.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
20  */
21
22 /include/ "abilis_tb10x.dtsi"
23
24
25 / {
26         soc100 {
27                 bus-frequency   = <166666666>;
28
29                 pll0: oscillator {
30                         clock-frequency  = <1000000000>;
31                 };
32                 cpu_clk: clkdiv_cpu {
33                         clock-mult = <1>;
34                         clock-div = <2>;
35                 };
36                 ahb_clk: clkdiv_ahb {
37                         clock-mult = <1>;
38                         clock-div = <6>;
39                 };
40
41                 iomux: iomux@FF10601c {
42                         /* Port 1 */
43                         pctl_tsin_s0: pctl-tsin-s0 {   /* Serial TS-in 0 */
44                                 abilis,function = "mis0";
45                         };
46                         pctl_tsin_s1: pctl-tsin-s1 {   /* Serial TS-in 1 */
47                                 abilis,function = "mis1";
48                         };
49                         pctl_gpio_a: pctl-gpio-a {     /* GPIO bank A */
50                                 abilis,function = "gpioa";
51                         };
52                         pctl_tsin_p1: pctl-tsin-p1 {   /* Parallel TS-in 1 */
53                                 abilis,function = "mip1";
54                         };
55                         /* Port 2 */
56                         pctl_tsin_s2: pctl-tsin-s2 {   /* Serial TS-in 2 */
57                                 abilis,function = "mis2";
58                         };
59                         pctl_tsin_s3: pctl-tsin-s3 {   /* Serial TS-in 3 */
60                                 abilis,function = "mis3";
61                         };
62                         pctl_gpio_c: pctl-gpio-c {     /* GPIO bank C */
63                                 abilis,function = "gpioc";
64                         };
65                         pctl_tsin_p3: pctl-tsin-p3 {   /* Parallel TS-in 3 */
66                                 abilis,function = "mip3";
67                         };
68                         /* Port 3 */
69                         pctl_tsin_s4: pctl-tsin-s4 {   /* Serial TS-in 4 */
70                                 abilis,function = "mis4";
71                         };
72                         pctl_tsin_s5: pctl-tsin-s5 {   /* Serial TS-in 5 */
73                                 abilis,function = "mis5";
74                         };
75                         pctl_gpio_e: pctl-gpio-e {     /* GPIO bank E */
76                                 abilis,function = "gpioe";
77                         };
78                         pctl_tsin_p5: pctl-tsin-p5 {   /* Parallel TS-in 5 */
79                                 abilis,function = "mip5";
80                         };
81                         /* Port 4 */
82                         pctl_tsin_s6: pctl-tsin-s6 {   /* Serial TS-in 6 */
83                                 abilis,function = "mis6";
84                         };
85                         pctl_tsin_s7: pctl-tsin-s7 {   /* Serial TS-in 7 */
86                                 abilis,function = "mis7";
87                         };
88                         pctl_gpio_g: pctl-gpio-g {     /* GPIO bank G */
89                                 abilis,function = "gpiog";
90                         };
91                         pctl_tsin_p7: pctl-tsin-p7 {   /* Parallel TS-in 7 */
92                                 abilis,function = "mip7";
93                         };
94                         /* Port 5 */
95                         pctl_gpio_j: pctl-gpio-j {     /* GPIO bank J */
96                                 abilis,function = "gpioj";
97                         };
98                         pctl_gpio_k: pctl-gpio-k {     /* GPIO bank K */
99                                 abilis,function = "gpiok";
100                         };
101                         pctl_ciplus: pctl-ciplus {     /* CI+ interface */
102                                 abilis,function = "ciplus";
103                         };
104                         pctl_mcard: pctl-mcard {       /* M-Card interface */
105                                 abilis,function = "mcard";
106                         };
107                         pctl_stc0: pctl-stc0 {         /* Smart card I/F 0 */
108                                 abilis,function = "stc0";
109                         };
110                         pctl_stc1: pctl-stc1 {         /* Smart card I/F 1 */
111                                 abilis,function = "stc1";
112                         };
113                         /* Port 6 */
114                         pctl_tsout_p: pctl-tsout-p {   /* Parallel TS-out */
115                                 abilis,function = "mop";
116                         };
117                         pctl_tsout_s0: pctl-tsout-s0 { /* Serial TS-out 0 */
118                                 abilis,function = "mos0";
119                         };
120                         pctl_tsout_s1: pctl-tsout-s1 { /* Serial TS-out 1 */
121                                 abilis,function = "mos1";
122                         };
123                         pctl_tsout_s2: pctl-tsout-s2 { /* Serial TS-out 2 */
124                                 abilis,function = "mos2";
125                         };
126                         pctl_tsout_s3: pctl-tsout-s3 { /* Serial TS-out 3 */
127                                 abilis,function = "mos3";
128                         };
129                         /* Port 7 */
130                         pctl_uart0: pctl-uart0 {       /* UART 0 */
131                                 abilis,function = "uart0";
132                         };
133                         pctl_uart1: pctl-uart1 {       /* UART 1 */
134                                 abilis,function = "uart1";
135                         };
136                         pctl_gpio_l: pctl-gpio-l {     /* GPIO bank L */
137                                 abilis,function = "gpiol";
138                         };
139                         pctl_gpio_m: pctl-gpio-m {     /* GPIO bank M */
140                                 abilis,function = "gpiom";
141                         };
142                         /* Port 8 */
143                         pctl_spi3: pctl-spi3 {
144                                 abilis,function = "spi3";
145                         };
146                         pctl_jtag: pctl-jtag {
147                                 abilis,function = "jtag";
148                         };
149                         /* Port 9 */
150                         pctl_spi1: pctl-spi1 {
151                                 abilis,function = "spi1";
152                         };
153                         pctl_gpio_n: pctl-gpio-n {
154                                 abilis,function = "gpion";
155                         };
156                         /* Unmuxed GPIOs */
157                         pctl_gpio_b: pctl-gpio-b {
158                                 abilis,function = "gpiob";
159                         };
160                         pctl_gpio_d: pctl-gpio-d {
161                                 abilis,function = "gpiod";
162                         };
163                         pctl_gpio_f: pctl-gpio-f {
164                                 abilis,function = "gpiof";
165                         };
166                         pctl_gpio_h: pctl-gpio-h {
167                                 abilis,function = "gpioh";
168                         };
169                         pctl_gpio_i: pctl-gpio-i {
170                                 abilis,function = "gpioi";
171                         };
172                 };
173
174                 gpioa: gpio@FF140000 {
175                         compatible = "abilis,tb10x-gpio";
176                         interrupt-controller;
177                         #interrupt-cells = <1>;
178                         interrupt-parent = <&tb10x_ictl>;
179                         interrupts = <27 2>;
180                         reg = <0xFF140000 0x1000>;
181                         gpio-controller;
182                         #gpio-cells = <2>;
183                         abilis,ngpio = <3>;
184                         gpio-ranges = <&iomux 0 0 0>;
185                         gpio-ranges-group-names = "gpioa";
186                 };
187                 gpiob: gpio@FF141000 {
188                         compatible = "abilis,tb10x-gpio";
189                         interrupt-controller;
190                         #interrupt-cells = <1>;
191                         interrupt-parent = <&tb10x_ictl>;
192                         interrupts = <27 2>;
193                         reg = <0xFF141000 0x1000>;
194                         gpio-controller;
195                         #gpio-cells = <2>;
196                         abilis,ngpio = <2>;
197                         gpio-ranges = <&iomux 0 0 0>;
198                         gpio-ranges-group-names = "gpiob";
199                 };
200                 gpioc: gpio@FF142000 {
201                         compatible = "abilis,tb10x-gpio";
202                         interrupt-controller;
203                         #interrupt-cells = <1>;
204                         interrupt-parent = <&tb10x_ictl>;
205                         interrupts = <27 2>;
206                         reg = <0xFF142000 0x1000>;
207                         gpio-controller;
208                         #gpio-cells = <2>;
209                         abilis,ngpio = <3>;
210                         gpio-ranges = <&iomux 0 0 0>;
211                         gpio-ranges-group-names = "gpioc";
212                 };
213                 gpiod: gpio@FF143000 {
214                         compatible = "abilis,tb10x-gpio";
215                         interrupt-controller;
216                         #interrupt-cells = <1>;
217                         interrupt-parent = <&tb10x_ictl>;
218                         interrupts = <27 2>;
219                         reg = <0xFF143000 0x1000>;
220                         gpio-controller;
221                         #gpio-cells = <2>;
222                         abilis,ngpio = <2>;
223                         gpio-ranges = <&iomux 0 0 0>;
224                         gpio-ranges-group-names = "gpiod";
225                 };
226                 gpioe: gpio@FF144000 {
227                         compatible = "abilis,tb10x-gpio";
228                         interrupt-controller;
229                         #interrupt-cells = <1>;
230                         interrupt-parent = <&tb10x_ictl>;
231                         interrupts = <27 2>;
232                         reg = <0xFF144000 0x1000>;
233                         gpio-controller;
234                         #gpio-cells = <2>;
235                         abilis,ngpio = <3>;
236                         gpio-ranges = <&iomux 0 0 0>;
237                         gpio-ranges-group-names = "gpioe";
238                 };
239                 gpiof: gpio@FF145000 {
240                         compatible = "abilis,tb10x-gpio";
241                         interrupt-controller;
242                         #interrupt-cells = <1>;
243                         interrupt-parent = <&tb10x_ictl>;
244                         interrupts = <27 2>;
245                         reg = <0xFF145000 0x1000>;
246                         gpio-controller;
247                         #gpio-cells = <2>;
248                         abilis,ngpio = <2>;
249                         gpio-ranges = <&iomux 0 0 0>;
250                         gpio-ranges-group-names = "gpiof";
251                 };
252                 gpiog: gpio@FF146000 {
253                         compatible = "abilis,tb10x-gpio";
254                         interrupt-controller;
255                         #interrupt-cells = <1>;
256                         interrupt-parent = <&tb10x_ictl>;
257                         interrupts = <27 2>;
258                         reg = <0xFF146000 0x1000>;
259                         gpio-controller;
260                         #gpio-cells = <2>;
261                         abilis,ngpio = <3>;
262                         gpio-ranges = <&iomux 0 0 0>;
263                         gpio-ranges-group-names = "gpiog";
264                 };
265                 gpioh: gpio@FF147000 {
266                         compatible = "abilis,tb10x-gpio";
267                         interrupt-controller;
268                         #interrupt-cells = <1>;
269                         interrupt-parent = <&tb10x_ictl>;
270                         interrupts = <27 2>;
271                         reg = <0xFF147000 0x1000>;
272                         gpio-controller;
273                         #gpio-cells = <2>;
274                         abilis,ngpio = <2>;
275                         gpio-ranges = <&iomux 0 0 0>;
276                         gpio-ranges-group-names = "gpioh";
277                 };
278                 gpioi: gpio@FF148000 {
279                         compatible = "abilis,tb10x-gpio";
280                         interrupt-controller;
281                         #interrupt-cells = <1>;
282                         interrupt-parent = <&tb10x_ictl>;
283                         interrupts = <27 2>;
284                         reg = <0xFF148000 0x1000>;
285                         gpio-controller;
286                         #gpio-cells = <2>;
287                         abilis,ngpio = <12>;
288                         gpio-ranges = <&iomux 0 0 0>;
289                         gpio-ranges-group-names = "gpioi";
290                 };
291                 gpioj: gpio@FF149000 {
292                         compatible = "abilis,tb10x-gpio";
293                         interrupt-controller;
294                         #interrupt-cells = <1>;
295                         interrupt-parent = <&tb10x_ictl>;
296                         interrupts = <27 2>;
297                         reg = <0xFF149000 0x1000>;
298                         gpio-controller;
299                         #gpio-cells = <2>;
300                         abilis,ngpio = <32>;
301                         gpio-ranges = <&iomux 0 0 0>;
302                         gpio-ranges-group-names = "gpioj";
303                 };
304                 gpiok: gpio@FF14a000 {
305                         compatible = "abilis,tb10x-gpio";
306                         interrupt-controller;
307                         #interrupt-cells = <1>;
308                         interrupt-parent = <&tb10x_ictl>;
309                         interrupts = <27 2>;
310                         reg = <0xFF14A000 0x1000>;
311                         gpio-controller;
312                         #gpio-cells = <2>;
313                         abilis,ngpio = <22>;
314                         gpio-ranges = <&iomux 0 0 0>;
315                         gpio-ranges-group-names = "gpiok";
316                 };
317                 gpiol: gpio@FF14b000 {
318                         compatible = "abilis,tb10x-gpio";
319                         interrupt-controller;
320                         #interrupt-cells = <1>;
321                         interrupt-parent = <&tb10x_ictl>;
322                         interrupts = <27 2>;
323                         reg = <0xFF14B000 0x1000>;
324                         gpio-controller;
325                         #gpio-cells = <2>;
326                         abilis,ngpio = <4>;
327                         gpio-ranges = <&iomux 0 0 0>;
328                         gpio-ranges-group-names = "gpiol";
329                 };
330                 gpiom: gpio@FF14c000 {
331                         compatible = "abilis,tb10x-gpio";
332                         interrupt-controller;
333                         #interrupt-cells = <1>;
334                         interrupt-parent = <&tb10x_ictl>;
335                         interrupts = <27 2>;
336                         reg = <0xFF14C000 0x1000>;
337                         gpio-controller;
338                         #gpio-cells = <2>;
339                         abilis,ngpio = <4>;
340                         gpio-ranges = <&iomux 0 0 0>;
341                         gpio-ranges-group-names = "gpiom";
342                 };
343                 gpion: gpio@FF14d000 {
344                         compatible = "abilis,tb10x-gpio";
345                         interrupt-controller;
346                         #interrupt-cells = <1>;
347                         interrupt-parent = <&tb10x_ictl>;
348                         interrupts = <27 2>;
349                         reg = <0xFF14D000 0x1000>;
350                         gpio-controller;
351                         #gpio-cells = <2>;
352                         abilis,ngpio = <5>;
353                         gpio-ranges = <&iomux 0 0 0>;
354                         gpio-ranges-group-names = "gpion";
355                 };
356         };
357 };