]> git.proxmox.com Git - mirror_ubuntu-kernels.git/blob - arch/arc/boot/dts/abilis_tb101.dtsi
Merge branches 'for-5.1/upstream-fixes', 'for-5.2/core', 'for-5.2/ish', 'for-5.2...
[mirror_ubuntu-kernels.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 };