blob: 041ab1ba02217538caafb530352923078e1f1edf [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Abilis Systems TB101 SOC device tree
4 *
5 * Copyright (C) Abilis Systems 2013
6 *
7 * Author: Christian Ruppert <christian.ruppert@abilis.com>
8 */
9
10/include/ "abilis_tb10x.dtsi"
11
12
13/ {
14 soc100 {
15 bus-frequency = <166666666>;
16
17 pll0: oscillator {
18 clock-frequency = <1000000000>;
19 };
20 cpu_clk: clkdiv_cpu {
21 clock-mult = <1>;
22 clock-div = <2>;
23 };
24 ahb_clk: clkdiv_ahb {
25 clock-mult = <1>;
26 clock-div = <6>;
27 };
28
29 iomux: iomux@ff10601c {
30 /* Port 1 */
31 pctl_tsin_s0: pctl-tsin-s0 { /* Serial TS-in 0 */
32 abilis,function = "mis0";
33 };
34 pctl_tsin_s1: pctl-tsin-s1 { /* Serial TS-in 1 */
35 abilis,function = "mis1";
36 };
37 pctl_gpio_a: pctl-gpio-a { /* GPIO bank A */
38 abilis,function = "gpioa";
39 };
40 pctl_tsin_p1: pctl-tsin-p1 { /* Parallel TS-in 1 */
41 abilis,function = "mip1";
42 };
43 /* Port 2 */
44 pctl_tsin_s2: pctl-tsin-s2 { /* Serial TS-in 2 */
45 abilis,function = "mis2";
46 };
47 pctl_tsin_s3: pctl-tsin-s3 { /* Serial TS-in 3 */
48 abilis,function = "mis3";
49 };
50 pctl_gpio_c: pctl-gpio-c { /* GPIO bank C */
51 abilis,function = "gpioc";
52 };
53 pctl_tsin_p3: pctl-tsin-p3 { /* Parallel TS-in 3 */
54 abilis,function = "mip3";
55 };
56 /* Port 3 */
57 pctl_tsin_s4: pctl-tsin-s4 { /* Serial TS-in 4 */
58 abilis,function = "mis4";
59 };
60 pctl_tsin_s5: pctl-tsin-s5 { /* Serial TS-in 5 */
61 abilis,function = "mis5";
62 };
63 pctl_gpio_e: pctl-gpio-e { /* GPIO bank E */
64 abilis,function = "gpioe";
65 };
66 pctl_tsin_p5: pctl-tsin-p5 { /* Parallel TS-in 5 */
67 abilis,function = "mip5";
68 };
69 /* Port 4 */
70 pctl_tsin_s6: pctl-tsin-s6 { /* Serial TS-in 6 */
71 abilis,function = "mis6";
72 };
73 pctl_tsin_s7: pctl-tsin-s7 { /* Serial TS-in 7 */
74 abilis,function = "mis7";
75 };
76 pctl_gpio_g: pctl-gpio-g { /* GPIO bank G */
77 abilis,function = "gpiog";
78 };
79 pctl_tsin_p7: pctl-tsin-p7 { /* Parallel TS-in 7 */
80 abilis,function = "mip7";
81 };
82 /* Port 5 */
83 pctl_gpio_j: pctl-gpio-j { /* GPIO bank J */
84 abilis,function = "gpioj";
85 };
86 pctl_gpio_k: pctl-gpio-k { /* GPIO bank K */
87 abilis,function = "gpiok";
88 };
89 pctl_ciplus: pctl-ciplus { /* CI+ interface */
90 abilis,function = "ciplus";
91 };
92 pctl_mcard: pctl-mcard { /* M-Card interface */
93 abilis,function = "mcard";
94 };
95 pctl_stc0: pctl-stc0 { /* Smart card I/F 0 */
96 abilis,function = "stc0";
97 };
98 pctl_stc1: pctl-stc1 { /* Smart card I/F 1 */
99 abilis,function = "stc1";
100 };
101 /* Port 6 */
102 pctl_tsout_p: pctl-tsout-p { /* Parallel TS-out */
103 abilis,function = "mop";
104 };
105 pctl_tsout_s0: pctl-tsout-s0 { /* Serial TS-out 0 */
106 abilis,function = "mos0";
107 };
108 pctl_tsout_s1: pctl-tsout-s1 { /* Serial TS-out 1 */
109 abilis,function = "mos1";
110 };
111 pctl_tsout_s2: pctl-tsout-s2 { /* Serial TS-out 2 */
112 abilis,function = "mos2";
113 };
114 pctl_tsout_s3: pctl-tsout-s3 { /* Serial TS-out 3 */
115 abilis,function = "mos3";
116 };
117 /* Port 7 */
118 pctl_uart0: pctl-uart0 { /* UART 0 */
119 abilis,function = "uart0";
120 };
121 pctl_uart1: pctl-uart1 { /* UART 1 */
122 abilis,function = "uart1";
123 };
124 pctl_gpio_l: pctl-gpio-l { /* GPIO bank L */
125 abilis,function = "gpiol";
126 };
127 pctl_gpio_m: pctl-gpio-m { /* GPIO bank M */
128 abilis,function = "gpiom";
129 };
130 /* Port 8 */
131 pctl_spi3: pctl-spi3 {
132 abilis,function = "spi3";
133 };
134 pctl_jtag: pctl-jtag {
135 abilis,function = "jtag";
136 };
137 /* Port 9 */
138 pctl_spi1: pctl-spi1 {
139 abilis,function = "spi1";
140 };
141 pctl_gpio_n: pctl-gpio-n {
142 abilis,function = "gpion";
143 };
144 /* Unmuxed GPIOs */
145 pctl_gpio_b: pctl-gpio-b {
146 abilis,function = "gpiob";
147 };
148 pctl_gpio_d: pctl-gpio-d {
149 abilis,function = "gpiod";
150 };
151 pctl_gpio_f: pctl-gpio-f {
152 abilis,function = "gpiof";
153 };
154 pctl_gpio_h: pctl-gpio-h {
155 abilis,function = "gpioh";
156 };
157 pctl_gpio_i: pctl-gpio-i {
158 abilis,function = "gpioi";
159 };
160 };
161
162 gpioa: gpio@ff140000 {
163 compatible = "abilis,tb10x-gpio";
164 interrupt-controller;
165 #interrupt-cells = <1>;
166 interrupt-parent = <&tb10x_ictl>;
167 interrupts = <27 2>;
168 reg = <0xff140000 0x1000>;
169 gpio-controller;
170 #gpio-cells = <2>;
171 abilis,ngpio = <3>;
172 gpio-ranges = <&iomux 0 0 0>;
173 gpio-ranges-group-names = "gpioa";
174 };
175 gpiob: gpio@ff141000 {
176 compatible = "abilis,tb10x-gpio";
177 interrupt-controller;
178 #interrupt-cells = <1>;
179 interrupt-parent = <&tb10x_ictl>;
180 interrupts = <27 2>;
181 reg = <0xff141000 0x1000>;
182 gpio-controller;
183 #gpio-cells = <2>;
184 abilis,ngpio = <2>;
185 gpio-ranges = <&iomux 0 0 0>;
186 gpio-ranges-group-names = "gpiob";
187 };
188 gpioc: gpio@ff142000 {
189 compatible = "abilis,tb10x-gpio";
190 interrupt-controller;
191 #interrupt-cells = <1>;
192 interrupt-parent = <&tb10x_ictl>;
193 interrupts = <27 2>;
194 reg = <0xff142000 0x1000>;
195 gpio-controller;
196 #gpio-cells = <2>;
197 abilis,ngpio = <3>;
198 gpio-ranges = <&iomux 0 0 0>;
199 gpio-ranges-group-names = "gpioc";
200 };
201 gpiod: gpio@ff143000 {
202 compatible = "abilis,tb10x-gpio";
203 interrupt-controller;
204 #interrupt-cells = <1>;
205 interrupt-parent = <&tb10x_ictl>;
206 interrupts = <27 2>;
207 reg = <0xff143000 0x1000>;
208 gpio-controller;
209 #gpio-cells = <2>;
210 abilis,ngpio = <2>;
211 gpio-ranges = <&iomux 0 0 0>;
212 gpio-ranges-group-names = "gpiod";
213 };
214 gpioe: gpio@ff144000 {
215 compatible = "abilis,tb10x-gpio";
216 interrupt-controller;
217 #interrupt-cells = <1>;
218 interrupt-parent = <&tb10x_ictl>;
219 interrupts = <27 2>;
220 reg = <0xff144000 0x1000>;
221 gpio-controller;
222 #gpio-cells = <2>;
223 abilis,ngpio = <3>;
224 gpio-ranges = <&iomux 0 0 0>;
225 gpio-ranges-group-names = "gpioe";
226 };
227 gpiof: gpio@ff145000 {
228 compatible = "abilis,tb10x-gpio";
229 interrupt-controller;
230 #interrupt-cells = <1>;
231 interrupt-parent = <&tb10x_ictl>;
232 interrupts = <27 2>;
233 reg = <0xff145000 0x1000>;
234 gpio-controller;
235 #gpio-cells = <2>;
236 abilis,ngpio = <2>;
237 gpio-ranges = <&iomux 0 0 0>;
238 gpio-ranges-group-names = "gpiof";
239 };
240 gpiog: gpio@ff146000 {
241 compatible = "abilis,tb10x-gpio";
242 interrupt-controller;
243 #interrupt-cells = <1>;
244 interrupt-parent = <&tb10x_ictl>;
245 interrupts = <27 2>;
246 reg = <0xff146000 0x1000>;
247 gpio-controller;
248 #gpio-cells = <2>;
249 abilis,ngpio = <3>;
250 gpio-ranges = <&iomux 0 0 0>;
251 gpio-ranges-group-names = "gpiog";
252 };
253 gpioh: gpio@ff147000 {
254 compatible = "abilis,tb10x-gpio";
255 interrupt-controller;
256 #interrupt-cells = <1>;
257 interrupt-parent = <&tb10x_ictl>;
258 interrupts = <27 2>;
259 reg = <0xff147000 0x1000>;
260 gpio-controller;
261 #gpio-cells = <2>;
262 abilis,ngpio = <2>;
263 gpio-ranges = <&iomux 0 0 0>;
264 gpio-ranges-group-names = "gpioh";
265 };
266 gpioi: gpio@ff148000 {
267 compatible = "abilis,tb10x-gpio";
268 interrupt-controller;
269 #interrupt-cells = <1>;
270 interrupt-parent = <&tb10x_ictl>;
271 interrupts = <27 2>;
272 reg = <0xff148000 0x1000>;
273 gpio-controller;
274 #gpio-cells = <2>;
275 abilis,ngpio = <12>;
276 gpio-ranges = <&iomux 0 0 0>;
277 gpio-ranges-group-names = "gpioi";
278 };
279 gpioj: gpio@ff149000 {
280 compatible = "abilis,tb10x-gpio";
281 interrupt-controller;
282 #interrupt-cells = <1>;
283 interrupt-parent = <&tb10x_ictl>;
284 interrupts = <27 2>;
285 reg = <0xff149000 0x1000>;
286 gpio-controller;
287 #gpio-cells = <2>;
288 abilis,ngpio = <32>;
289 gpio-ranges = <&iomux 0 0 0>;
290 gpio-ranges-group-names = "gpioj";
291 };
292 gpiok: gpio@ff14a000 {
293 compatible = "abilis,tb10x-gpio";
294 interrupt-controller;
295 #interrupt-cells = <1>;
296 interrupt-parent = <&tb10x_ictl>;
297 interrupts = <27 2>;
298 reg = <0xff14a000 0x1000>;
299 gpio-controller;
300 #gpio-cells = <2>;
301 abilis,ngpio = <22>;
302 gpio-ranges = <&iomux 0 0 0>;
303 gpio-ranges-group-names = "gpiok";
304 };
305 gpiol: gpio@ff14b000 {
306 compatible = "abilis,tb10x-gpio";
307 interrupt-controller;
308 #interrupt-cells = <1>;
309 interrupt-parent = <&tb10x_ictl>;
310 interrupts = <27 2>;
311 reg = <0xff14b000 0x1000>;
312 gpio-controller;
313 #gpio-cells = <2>;
314 abilis,ngpio = <4>;
315 gpio-ranges = <&iomux 0 0 0>;
316 gpio-ranges-group-names = "gpiol";
317 };
318 gpiom: gpio@ff14c000 {
319 compatible = "abilis,tb10x-gpio";
320 interrupt-controller;
321 #interrupt-cells = <1>;
322 interrupt-parent = <&tb10x_ictl>;
323 interrupts = <27 2>;
324 reg = <0xff14c000 0x1000>;
325 gpio-controller;
326 #gpio-cells = <2>;
327 abilis,ngpio = <4>;
328 gpio-ranges = <&iomux 0 0 0>;
329 gpio-ranges-group-names = "gpiom";
330 };
331 gpion: gpio@ff14d000 {
332 compatible = "abilis,tb10x-gpio";
333 interrupt-controller;
334 #interrupt-cells = <1>;
335 interrupt-parent = <&tb10x_ictl>;
336 interrupts = <27 2>;
337 reg = <0xff14d000 0x1000>;
338 gpio-controller;
339 #gpio-cells = <2>;
340 abilis,ngpio = <5>;
341 gpio-ranges = <&iomux 0 0 0>;
342 gpio-ranges-group-names = "gpion";
343 };
344 };
345};