diff options
-rw-r--r-- | arch/blackfin/boot/.gitignore | 1 | ||||
-rw-r--r-- | arch/blackfin/include/asm/scb.h | 21 | ||||
-rw-r--r-- | arch/blackfin/kernel/setup.c | 6 | ||||
-rw-r--r-- | arch/blackfin/mach-bf609/Kconfig | 1655 | ||||
-rw-r--r-- | arch/blackfin/mach-bf609/Makefile | 1 | ||||
-rw-r--r-- | arch/blackfin/mach-bf609/boards/ezkit.c | 91 | ||||
-rw-r--r-- | arch/blackfin/mach-bf609/clock.c | 17 | ||||
-rw-r--r-- | arch/blackfin/mach-bf609/include/mach/defBF60x_base.h | 10 | ||||
-rw-r--r-- | arch/blackfin/mach-bf609/scb.c | 363 | ||||
-rw-r--r-- | arch/blackfin/mach-common/Makefile | 1 | ||||
-rw-r--r-- | arch/blackfin/mach-common/scb-init.c | 53 |
11 files changed, 2219 insertions, 0 deletions
diff --git a/arch/blackfin/boot/.gitignore b/arch/blackfin/boot/.gitignore index 229e50808677..1287a5487e7d 100644 --- a/arch/blackfin/boot/.gitignore +++ b/arch/blackfin/boot/.gitignore | |||
@@ -1,2 +1,3 @@ | |||
1 | vmImage* | 1 | vmImage* |
2 | vmlinux* | 2 | vmlinux* |
3 | uImage* | ||
diff --git a/arch/blackfin/include/asm/scb.h b/arch/blackfin/include/asm/scb.h new file mode 100644 index 000000000000..a294cc0d1a4a --- /dev/null +++ b/arch/blackfin/include/asm/scb.h | |||
@@ -0,0 +1,21 @@ | |||
1 | /* | ||
2 | * arch/blackfin/mach-common/scb-init.c - reprogram system cross bar priority | ||
3 | * | ||
4 | * Copyright 2012 Analog Devices Inc. | ||
5 | * | ||
6 | * Licensed under the GPL-2 or later. | ||
7 | */ | ||
8 | |||
9 | #define SCB_SLOT_OFFSET 24 | ||
10 | #define SCB_MI_MAX_SLOT 32 | ||
11 | |||
12 | struct scb_mi_prio { | ||
13 | unsigned long scb_mi_arbr; | ||
14 | unsigned long scb_mi_arbw; | ||
15 | unsigned char scb_mi_slots; | ||
16 | unsigned char scb_mi_prio[SCB_MI_MAX_SLOT]; | ||
17 | }; | ||
18 | |||
19 | extern struct scb_mi_prio scb_data[]; | ||
20 | |||
21 | extern void init_scb(void); | ||
diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c index 19ad0637e8ff..396193042127 100644 --- a/arch/blackfin/kernel/setup.c +++ b/arch/blackfin/kernel/setup.c | |||
@@ -35,6 +35,9 @@ | |||
35 | #ifdef CONFIG_BF60x | 35 | #ifdef CONFIG_BF60x |
36 | #include <mach/pm.h> | 36 | #include <mach/pm.h> |
37 | #endif | 37 | #endif |
38 | #ifdef CONFIG_SCB_PRIORITY | ||
39 | #include <asm/scb.h> | ||
40 | #endif | ||
38 | 41 | ||
39 | u16 _bfin_swrst; | 42 | u16 _bfin_swrst; |
40 | EXPORT_SYMBOL(_bfin_swrst); | 43 | EXPORT_SYMBOL(_bfin_swrst); |
@@ -1101,6 +1104,9 @@ void __init setup_arch(char **cmdline_p) | |||
1101 | #endif | 1104 | #endif |
1102 | init_exception_vectors(); | 1105 | init_exception_vectors(); |
1103 | bfin_cache_init(); /* Initialize caches for the boot CPU */ | 1106 | bfin_cache_init(); /* Initialize caches for the boot CPU */ |
1107 | #ifdef CONFIG_SCB_PRIORITY | ||
1108 | init_scb(); | ||
1109 | #endif | ||
1104 | } | 1110 | } |
1105 | 1111 | ||
1106 | static int __init topology_init(void) | 1112 | static int __init topology_init(void) |
diff --git a/arch/blackfin/mach-bf609/Kconfig b/arch/blackfin/mach-bf609/Kconfig index 95a4f1b676ce..2bcbf94b1edf 100644 --- a/arch/blackfin/mach-bf609/Kconfig +++ b/arch/blackfin/mach-bf609/Kconfig | |||
@@ -59,6 +59,1661 @@ config SEC_IRQ_PRIORITY_LEVELS | |||
59 | Divide the total number of interrupt priority levels into sub-levels. | 59 | Divide the total number of interrupt priority levels into sub-levels. |
60 | There is 2 ^ (SEC_IRQ_PRIORITY_LEVELS + 1) different levels. | 60 | There is 2 ^ (SEC_IRQ_PRIORITY_LEVELS + 1) different levels. |
61 | 61 | ||
62 | |||
63 | comment "System Cross Bar Priority Assignment" | ||
64 | |||
65 | config SCB_PRIORITY | ||
66 | bool "Init System Cross Bar Priority" | ||
67 | default n | ||
68 | |||
69 | menuconfig SCB0_MI0 | ||
70 | bool "SCB0 Master Interface 0 (DDR)" | ||
71 | default n | ||
72 | depends on SCB_PRIORITY | ||
73 | help | ||
74 | The slave interface id of each slot should be set according following table. | ||
75 | Core 0 -- 0 | ||
76 | Core 1 -- 2 | ||
77 | SCB1 -- 9 | ||
78 | SCB2 -- 10 | ||
79 | SCB3 -- 11 | ||
80 | SCB4 -- 12 | ||
81 | SCB5 -- 5 | ||
82 | SCB6 -- 6 | ||
83 | SCB7 -- 8 | ||
84 | SCB8 -- 7 | ||
85 | SCB9 -- 4 | ||
86 | USB -- 13 | ||
87 | |||
88 | if SCB0_MI0 | ||
89 | |||
90 | config SCB0_MI0_SLOT0 | ||
91 | int "Slot 0 slave interface id" | ||
92 | default 0 | ||
93 | range 0 13 | ||
94 | |||
95 | config SCB0_MI0_SLOT1 | ||
96 | int "Slot 1 slave interface id" | ||
97 | default 2 | ||
98 | range 0 13 | ||
99 | |||
100 | config SCB0_MI0_SLOT2 | ||
101 | int "Slot 2 slave interface id" | ||
102 | default 4 | ||
103 | range 0 13 | ||
104 | |||
105 | config SCB0_MI0_SLOT3 | ||
106 | int "Slot 3 slave interface id" | ||
107 | default 5 | ||
108 | range 0 13 | ||
109 | |||
110 | config SCB0_MI0_SLOT4 | ||
111 | int "Slot 4 slave interface id" | ||
112 | default 6 | ||
113 | range 0 13 | ||
114 | |||
115 | config SCB0_MI0_SLOT5 | ||
116 | int "Slot 5 slave interface id" | ||
117 | default 7 | ||
118 | range 0 13 | ||
119 | |||
120 | config SCB0_MI0_SLOT6 | ||
121 | int "Slot 6 slave interface id" | ||
122 | default 8 | ||
123 | range 0 13 | ||
124 | |||
125 | config SCB0_MI0_SLOT7 | ||
126 | int "Slot 7 slave interface id" | ||
127 | default 9 | ||
128 | range 0 13 | ||
129 | |||
130 | config SCB0_MI0_SLOT8 | ||
131 | int "Slot 8 slave interface id" | ||
132 | default 10 | ||
133 | range 0 13 | ||
134 | |||
135 | config SCB0_MI0_SLOT9 | ||
136 | int "Slot 9 slave interface id" | ||
137 | default 11 | ||
138 | range 0 13 | ||
139 | |||
140 | config SCB0_MI0_SLOT10 | ||
141 | int "Slot 10 slave interface id" | ||
142 | default 13 | ||
143 | range 0 13 | ||
144 | |||
145 | config SCB0_MI0_SLOT11 | ||
146 | int "Slot 11 slave interface id" | ||
147 | default 12 | ||
148 | range 0 13 | ||
149 | |||
150 | config SCB0_MI0_SLOT12 | ||
151 | int "Slot 12 slave interface id" | ||
152 | default 0 | ||
153 | range 0 13 | ||
154 | |||
155 | config SCB0_MI0_SLOT13 | ||
156 | int "Slot 13 slave interface id" | ||
157 | default 2 | ||
158 | range 0 13 | ||
159 | |||
160 | config SCB0_MI0_SLOT14 | ||
161 | int "Slot 14 slave interface id" | ||
162 | default 4 | ||
163 | range 0 13 | ||
164 | |||
165 | config SCB0_MI0_SLOT15 | ||
166 | int "Slot 15 slave interface id" | ||
167 | default 5 | ||
168 | range 0 13 | ||
169 | |||
170 | config SCB0_MI0_SLOT16 | ||
171 | int "Slot 16 slave interface id" | ||
172 | default 6 | ||
173 | range 0 13 | ||
174 | |||
175 | config SCB0_MI0_SLOT17 | ||
176 | int "Slot 17 slave interface id" | ||
177 | default 7 | ||
178 | range 0 13 | ||
179 | |||
180 | config SCB0_MI0_SLOT18 | ||
181 | int "Slot 18 slave interface id" | ||
182 | default 8 | ||
183 | range 0 13 | ||
184 | |||
185 | config SCB0_MI0_SLOT19 | ||
186 | int "Slot 19 slave interface id" | ||
187 | default 9 | ||
188 | range 0 13 | ||
189 | |||
190 | config SCB0_MI0_SLOT20 | ||
191 | int "Slot 20 slave interface id" | ||
192 | default 10 | ||
193 | range 0 13 | ||
194 | |||
195 | config SCB0_MI0_SLOT21 | ||
196 | int "Slot 21 slave interface id" | ||
197 | default 11 | ||
198 | range 0 13 | ||
199 | |||
200 | config SCB0_MI0_SLOT22 | ||
201 | int "Slot 22 slave interface id" | ||
202 | default 13 | ||
203 | range 0 13 | ||
204 | |||
205 | config SCB0_MI0_SLOT23 | ||
206 | int "Slot 23 slave interface id" | ||
207 | default 12 | ||
208 | range 0 13 | ||
209 | |||
210 | config SCB0_MI0_SLOT24 | ||
211 | int "Slot 24 slave interface id" | ||
212 | default 0 | ||
213 | range 0 13 | ||
214 | |||
215 | config SCB0_MI0_SLOT25 | ||
216 | int "Slot 25 slave interface id" | ||
217 | default 2 | ||
218 | range 0 13 | ||
219 | |||
220 | config SCB0_MI0_SLOT26 | ||
221 | int "Slot 26 slave interface id" | ||
222 | default 4 | ||
223 | range 0 13 | ||
224 | |||
225 | config SCB0_MI0_SLOT27 | ||
226 | int "Slot 27 slave interface id" | ||
227 | default 5 | ||
228 | range 0 13 | ||
229 | |||
230 | config SCB0_MI0_SLOT28 | ||
231 | int "Slot 28 slave interface id" | ||
232 | default 6 | ||
233 | range 0 13 | ||
234 | |||
235 | config SCB0_MI0_SLOT29 | ||
236 | int "Slot 29 slave interface id" | ||
237 | default 7 | ||
238 | range 0 13 | ||
239 | |||
240 | config SCB0_MI0_SLOT30 | ||
241 | int "Slot 30 slave interface id" | ||
242 | default 8 | ||
243 | range 0 13 | ||
244 | |||
245 | config SCB0_MI0_SLOT31 | ||
246 | int "Slot 31 slave interface id" | ||
247 | default 13 | ||
248 | range 0 13 | ||
249 | |||
250 | endif # SCB0_MI0 | ||
251 | |||
252 | menuconfig SCB0_MI1 | ||
253 | bool "SCB0 Master Interface 1 (SMC)" | ||
254 | default n | ||
255 | depends on SCB_PRIORITY | ||
256 | help | ||
257 | The slave interface id of each slot should be set according following table. | ||
258 | Core 0 -- 0 | ||
259 | Core 1 -- 2 | ||
260 | SCB1 -- 9 | ||
261 | SCB2 -- 10 | ||
262 | SCB3 -- 11 | ||
263 | SCB4 -- 12 | ||
264 | SCB5 -- 5 | ||
265 | SCB6 -- 6 | ||
266 | SCB7 -- 8 | ||
267 | SCB8 -- 7 | ||
268 | SCB9 -- 4 | ||
269 | USB -- 13 | ||
270 | |||
271 | if SCB0_MI1 | ||
272 | |||
273 | config SCB0_MI1_SLOT0 | ||
274 | int "Slot 0 slave interface id" | ||
275 | default 0 | ||
276 | range 0 13 | ||
277 | |||
278 | config SCB0_MI1_SLOT1 | ||
279 | int "Slot 1 slave interface id" | ||
280 | default 2 | ||
281 | range 0 13 | ||
282 | |||
283 | config SCB0_MI1_SLOT2 | ||
284 | int "Slot 2 slave interface id" | ||
285 | default 4 | ||
286 | range 0 13 | ||
287 | |||
288 | config SCB0_MI1_SLOT3 | ||
289 | int "Slot 3 slave interface id" | ||
290 | default 5 | ||
291 | range 0 13 | ||
292 | |||
293 | config SCB0_MI1_SLOT4 | ||
294 | int "Slot 4 slave interface id" | ||
295 | default 6 | ||
296 | range 0 13 | ||
297 | |||
298 | config SCB0_MI1_SLOT5 | ||
299 | int "Slot 5 slave interface id" | ||
300 | default 7 | ||
301 | range 0 13 | ||
302 | |||
303 | config SCB0_MI1_SLOT6 | ||
304 | int "Slot 6 slave interface id" | ||
305 | default 8 | ||
306 | range 0 13 | ||
307 | |||
308 | config SCB0_MI1_SLOT7 | ||
309 | int "Slot 7 slave interface id" | ||
310 | default 9 | ||
311 | range 0 13 | ||
312 | |||
313 | config SCB0_MI1_SLOT8 | ||
314 | int "Slot 8 slave interface id" | ||
315 | default 10 | ||
316 | range 0 13 | ||
317 | |||
318 | config SCB0_MI1_SLOT9 | ||
319 | int "Slot 9 slave interface id" | ||
320 | default 11 | ||
321 | range 0 13 | ||
322 | |||
323 | config SCB0_MI1_SLOT10 | ||
324 | int "Slot 10 slave interface id" | ||
325 | default 13 | ||
326 | range 0 13 | ||
327 | |||
328 | config SCB0_MI1_SLOT11 | ||
329 | int "Slot 11 slave interface id" | ||
330 | default 12 | ||
331 | range 0 13 | ||
332 | |||
333 | config SCB0_MI1_SLOT12 | ||
334 | int "Slot 12 slave interface id" | ||
335 | default 0 | ||
336 | range 0 13 | ||
337 | |||
338 | config SCB0_MI1_SLOT13 | ||
339 | int "Slot 13 slave interface id" | ||
340 | default 2 | ||
341 | range 0 13 | ||
342 | |||
343 | config SCB0_MI1_SLOT14 | ||
344 | int "Slot 14 slave interface id" | ||
345 | default 4 | ||
346 | range 0 13 | ||
347 | |||
348 | config SCB0_MI1_SLOT15 | ||
349 | int "Slot 15 slave interface id" | ||
350 | default 5 | ||
351 | range 0 13 | ||
352 | |||
353 | config SCB0_MI1_SLOT16 | ||
354 | int "Slot 16 slave interface id" | ||
355 | default 6 | ||
356 | range 0 13 | ||
357 | |||
358 | config SCB0_MI1_SLOT17 | ||
359 | int "Slot 17 slave interface id" | ||
360 | default 7 | ||
361 | range 0 13 | ||
362 | |||
363 | config SCB0_MI1_SLOT18 | ||
364 | int "Slot 18 slave interface id" | ||
365 | default 8 | ||
366 | range 0 13 | ||
367 | |||
368 | config SCB0_MI1_SLOT19 | ||
369 | int "Slot 19 slave interface id" | ||
370 | default 9 | ||
371 | range 0 13 | ||
372 | |||
373 | config SCB0_MI1_SLOT20 | ||
374 | int "Slot 20 slave interface id" | ||
375 | default 10 | ||
376 | range 0 13 | ||
377 | |||
378 | config SCB0_MI1_SLOT21 | ||
379 | int "Slot 21 slave interface id" | ||
380 | default 11 | ||
381 | range 0 13 | ||
382 | |||
383 | config SCB0_MI1_SLOT22 | ||
384 | int "Slot 22 slave interface id" | ||
385 | default 13 | ||
386 | range 0 13 | ||
387 | |||
388 | config SCB0_MI1_SLOT23 | ||
389 | int "Slot 23 slave interface id" | ||
390 | default 12 | ||
391 | range 0 13 | ||
392 | |||
393 | config SCB0_MI1_SLOT24 | ||
394 | int "Slot 24 slave interface id" | ||
395 | default 0 | ||
396 | range 0 13 | ||
397 | |||
398 | config SCB0_MI1_SLOT25 | ||
399 | int "Slot 25 slave interface id" | ||
400 | default 2 | ||
401 | range 0 13 | ||
402 | |||
403 | config SCB0_MI1_SLOT26 | ||
404 | int "Slot 26 slave interface id" | ||
405 | default 4 | ||
406 | range 0 13 | ||
407 | |||
408 | config SCB0_MI1_SLOT27 | ||
409 | int "Slot 27 slave interface id" | ||
410 | default 5 | ||
411 | range 0 13 | ||
412 | |||
413 | config SCB0_MI1_SLOT28 | ||
414 | int "Slot 28 slave interface id" | ||
415 | default 6 | ||
416 | range 0 13 | ||
417 | |||
418 | config SCB0_MI1_SLOT29 | ||
419 | int "Slot 29 slave interface id" | ||
420 | default 7 | ||
421 | range 0 13 | ||
422 | |||
423 | config SCB0_MI1_SLOT30 | ||
424 | int "Slot 30 slave interface id" | ||
425 | default 8 | ||
426 | range 0 13 | ||
427 | |||
428 | config SCB0_MI1_SLOT31 | ||
429 | int "Slot 31 slave interface id" | ||
430 | default 13 | ||
431 | range 0 13 | ||
432 | |||
433 | endif # SCB0_MI1 | ||
434 | |||
435 | menuconfig SCB0_MI2 | ||
436 | bool "SCB0 Master Interface 2 (Data L2)" | ||
437 | default n | ||
438 | depends on SCB_PRIORITY | ||
439 | help | ||
440 | The slave interface id of each slot should be set according following table. | ||
441 | Core 0 -- 0 | ||
442 | Core 1 -- 2 | ||
443 | SCB1 -- 9 | ||
444 | SCB2 -- 10 | ||
445 | SCB3 -- 11 | ||
446 | SCB4 -- 12 | ||
447 | SCB5 -- 5 | ||
448 | SCB6 -- 6 | ||
449 | SCB7 -- 8 | ||
450 | SCB8 -- 7 | ||
451 | SCB9 -- 4 | ||
452 | USB -- 13 | ||
453 | |||
454 | if SCB0_MI2 | ||
455 | |||
456 | config SCB0_MI2_SLOT0 | ||
457 | int "Slot 0 slave interface id" | ||
458 | default 4 | ||
459 | range 0 13 | ||
460 | |||
461 | config SCB0_MI2_SLOT1 | ||
462 | int "Slot 1 slave interface id" | ||
463 | default 5 | ||
464 | range 0 13 | ||
465 | |||
466 | config SCB0_MI2_SLOT2 | ||
467 | int "Slot 2 slave interface id" | ||
468 | default 6 | ||
469 | range 0 13 | ||
470 | |||
471 | config SCB0_MI2_SLOT3 | ||
472 | int "Slot 3 slave interface id" | ||
473 | default 7 | ||
474 | range 0 13 | ||
475 | |||
476 | config SCB0_MI2_SLOT4 | ||
477 | int "Slot 4 slave interface id" | ||
478 | default 8 | ||
479 | range 0 13 | ||
480 | |||
481 | config SCB0_MI2_SLOT5 | ||
482 | int "Slot 5 slave interface id" | ||
483 | default 9 | ||
484 | range 0 13 | ||
485 | |||
486 | config SCB0_MI2_SLOT6 | ||
487 | int "Slot 6 slave interface id" | ||
488 | default 10 | ||
489 | range 0 13 | ||
490 | |||
491 | config SCB0_MI2_SLOT7 | ||
492 | int "Slot 7 slave interface id" | ||
493 | default 11 | ||
494 | range 0 13 | ||
495 | |||
496 | config SCB0_MI2_SLOT8 | ||
497 | int "Slot 8 slave interface id" | ||
498 | default 13 | ||
499 | range 0 13 | ||
500 | |||
501 | config SCB0_MI2_SLOT9 | ||
502 | int "Slot 9 slave interface id" | ||
503 | default 12 | ||
504 | range 0 13 | ||
505 | |||
506 | config SCB0_MI2_SLOT10 | ||
507 | int "Slot 10 slave interface id" | ||
508 | default 4 | ||
509 | range 0 13 | ||
510 | |||
511 | config SCB0_MI2_SLOT11 | ||
512 | int "Slot 11 slave interface id" | ||
513 | default 5 | ||
514 | range 0 13 | ||
515 | |||
516 | config SCB0_MI2_SLOT12 | ||
517 | int "Slot 12 slave interface id" | ||
518 | default 6 | ||
519 | range 0 13 | ||
520 | |||
521 | config SCB0_MI2_SLOT13 | ||
522 | int "Slot 13 slave interface id" | ||
523 | default 7 | ||
524 | range 0 13 | ||
525 | |||
526 | config SCB0_MI2_SLOT14 | ||
527 | int "Slot 14 slave interface id" | ||
528 | default 8 | ||
529 | range 0 13 | ||
530 | |||
531 | config SCB0_MI2_SLOT15 | ||
532 | int "Slot 15 slave interface id" | ||
533 | default 9 | ||
534 | range 0 13 | ||
535 | |||
536 | config SCB0_MI2_SLOT16 | ||
537 | int "Slot 16 slave interface id" | ||
538 | default 10 | ||
539 | range 0 13 | ||
540 | |||
541 | config SCB0_MI2_SLOT17 | ||
542 | int "Slot 17 slave interface id" | ||
543 | default 11 | ||
544 | range 0 13 | ||
545 | |||
546 | config SCB0_MI2_SLOT18 | ||
547 | int "Slot 18 slave interface id" | ||
548 | default 13 | ||
549 | range 0 13 | ||
550 | |||
551 | config SCB0_MI2_SLOT19 | ||
552 | int "Slot 19 slave interface id" | ||
553 | default 12 | ||
554 | range 0 13 | ||
555 | |||
556 | config SCB0_MI2_SLOT20 | ||
557 | int "Slot 20 slave interface id" | ||
558 | default 4 | ||
559 | range 0 13 | ||
560 | |||
561 | config SCB0_MI2_SLOT21 | ||
562 | int "Slot 21 slave interface id" | ||
563 | default 5 | ||
564 | range 0 13 | ||
565 | |||
566 | config SCB0_MI2_SLOT22 | ||
567 | int "Slot 22 slave interface id" | ||
568 | default 6 | ||
569 | range 0 13 | ||
570 | |||
571 | config SCB0_MI2_SLOT23 | ||
572 | int "Slot 23 slave interface id" | ||
573 | default 7 | ||
574 | range 0 13 | ||
575 | |||
576 | config SCB0_MI2_SLOT24 | ||
577 | int "Slot 24 slave interface id" | ||
578 | default 8 | ||
579 | range 0 13 | ||
580 | |||
581 | config SCB0_MI2_SLOT25 | ||
582 | int "Slot 25 slave interface id" | ||
583 | default 9 | ||
584 | range 0 13 | ||
585 | |||
586 | config SCB0_MI2_SLOT26 | ||
587 | int "Slot 26 slave interface id" | ||
588 | default 10 | ||
589 | range 0 13 | ||
590 | |||
591 | config SCB0_MI2_SLOT27 | ||
592 | int "Slot 27 slave interface id" | ||
593 | default 11 | ||
594 | range 0 13 | ||
595 | |||
596 | config SCB0_MI2_SLOT28 | ||
597 | int "Slot 28 slave interface id" | ||
598 | default 13 | ||
599 | range 0 13 | ||
600 | |||
601 | config SCB0_MI2_SLOT29 | ||
602 | int "Slot 29 slave interface id" | ||
603 | default 12 | ||
604 | range 0 13 | ||
605 | |||
606 | config SCB0_MI2_SLOT30 | ||
607 | int "Slot 30 slave interface id" | ||
608 | default 4 | ||
609 | range 0 13 | ||
610 | |||
611 | config SCB0_MI2_SLOT31 | ||
612 | int "Slot 31 slave interface id" | ||
613 | default 7 | ||
614 | range 0 13 | ||
615 | |||
616 | endif # SCB0_MI2 | ||
617 | |||
618 | menuconfig SCB0_MI3 | ||
619 | bool "SCB0 Master Interface 3 (L1A)" | ||
620 | default n | ||
621 | depends on SCB_PRIORITY | ||
622 | help | ||
623 | The slave interface id of each slot should be set according following table. | ||
624 | Core 0 -- 0 | ||
625 | Core 1 -- 2 | ||
626 | SCB1 -- 9 | ||
627 | SCB2 -- 10 | ||
628 | SCB3 -- 11 | ||
629 | SCB4 -- 12 | ||
630 | SCB5 -- 5 | ||
631 | SCB6 -- 6 | ||
632 | SCB7 -- 8 | ||
633 | SCB8 -- 7 | ||
634 | SCB9 -- 4 | ||
635 | USB -- 13 | ||
636 | |||
637 | if SCB0_MI3 | ||
638 | |||
639 | config SCB0_MI3_SLOT0 | ||
640 | int "Slot 0 slave interface id" | ||
641 | default 4 | ||
642 | range 0 13 | ||
643 | |||
644 | config SCB0_MI3_SLOT1 | ||
645 | int "Slot 1 slave interface id" | ||
646 | default 5 | ||
647 | range 0 13 | ||
648 | |||
649 | config SCB0_MI3_SLOT2 | ||
650 | int "Slot 2 slave interface id" | ||
651 | default 6 | ||
652 | range 0 13 | ||
653 | |||
654 | config SCB0_MI3_SLOT3 | ||
655 | int "Slot 3 slave interface id" | ||
656 | default 7 | ||
657 | range 0 13 | ||
658 | |||
659 | config SCB0_MI3_SLOT4 | ||
660 | int "Slot 4 slave interface id" | ||
661 | default 8 | ||
662 | range 0 13 | ||
663 | |||
664 | config SCB0_MI3_SLOT5 | ||
665 | int "Slot 5 slave interface id" | ||
666 | default 9 | ||
667 | range 0 13 | ||
668 | |||
669 | config SCB0_MI3_SLOT6 | ||
670 | int "Slot 6 slave interface id" | ||
671 | default 10 | ||
672 | range 0 13 | ||
673 | |||
674 | config SCB0_MI3_SLOT7 | ||
675 | int "Slot 7 slave interface id" | ||
676 | default 11 | ||
677 | range 0 13 | ||
678 | |||
679 | config SCB0_MI3_SLOT8 | ||
680 | int "Slot 8 slave interface id" | ||
681 | default 13 | ||
682 | range 0 13 | ||
683 | |||
684 | config SCB0_MI3_SLOT9 | ||
685 | int "Slot 9 slave interface id" | ||
686 | default 12 | ||
687 | range 0 13 | ||
688 | |||
689 | config SCB0_MI3_SLOT10 | ||
690 | int "Slot 10 slave interface id" | ||
691 | default 4 | ||
692 | range 0 13 | ||
693 | |||
694 | config SCB0_MI3_SLOT11 | ||
695 | int "Slot 11 slave interface id" | ||
696 | default 5 | ||
697 | range 0 13 | ||
698 | |||
699 | config SCB0_MI3_SLOT12 | ||
700 | int "Slot 12 slave interface id" | ||
701 | default 6 | ||
702 | range 0 13 | ||
703 | |||
704 | config SCB0_MI3_SLOT13 | ||
705 | int "Slot 13 slave interface id" | ||
706 | default 7 | ||
707 | range 0 13 | ||
708 | |||
709 | config SCB0_MI3_SLOT14 | ||
710 | int "Slot 14 slave interface id" | ||
711 | default 8 | ||
712 | range 0 13 | ||
713 | |||
714 | config SCB0_MI3_SLOT15 | ||
715 | int "Slot 15 slave interface id" | ||
716 | default 9 | ||
717 | range 0 13 | ||
718 | |||
719 | config SCB0_MI3_SLOT16 | ||
720 | int "Slot 16 slave interface id" | ||
721 | default 10 | ||
722 | range 0 13 | ||
723 | |||
724 | config SCB0_MI3_SLOT17 | ||
725 | int "Slot 17 slave interface id" | ||
726 | default 11 | ||
727 | range 0 13 | ||
728 | |||
729 | config SCB0_MI3_SLOT18 | ||
730 | int "Slot 18 slave interface id" | ||
731 | default 13 | ||
732 | range 0 13 | ||
733 | |||
734 | config SCB0_MI3_SLOT19 | ||
735 | int "Slot 19 slave interface id" | ||
736 | default 12 | ||
737 | range 0 13 | ||
738 | |||
739 | config SCB0_MI3_SLOT20 | ||
740 | int "Slot 20 slave interface id" | ||
741 | default 4 | ||
742 | range 0 13 | ||
743 | |||
744 | config SCB0_MI3_SLOT21 | ||
745 | int "Slot 21 slave interface id" | ||
746 | default 5 | ||
747 | range 0 13 | ||
748 | |||
749 | config SCB0_MI3_SLOT22 | ||
750 | int "Slot 22 slave interface id" | ||
751 | default 6 | ||
752 | range 0 13 | ||
753 | |||
754 | config SCB0_MI3_SLOT23 | ||
755 | int "Slot 23 slave interface id" | ||
756 | default 7 | ||
757 | range 0 13 | ||
758 | |||
759 | config SCB0_MI3_SLOT24 | ||
760 | int "Slot 24 slave interface id" | ||
761 | default 8 | ||
762 | range 0 13 | ||
763 | |||
764 | config SCB0_MI3_SLOT25 | ||
765 | int "Slot 25 slave interface id" | ||
766 | default 9 | ||
767 | range 0 13 | ||
768 | |||
769 | config SCB0_MI3_SLOT26 | ||
770 | int "Slot 26 slave interface id" | ||
771 | default 10 | ||
772 | range 0 13 | ||
773 | |||
774 | config SCB0_MI3_SLOT27 | ||
775 | int "Slot 27 slave interface id" | ||
776 | default 11 | ||
777 | range 0 13 | ||
778 | |||
779 | config SCB0_MI3_SLOT28 | ||
780 | int "Slot 28 slave interface id" | ||
781 | default 13 | ||
782 | range 0 13 | ||
783 | |||
784 | config SCB0_MI3_SLOT29 | ||
785 | int "Slot 29 slave interface id" | ||
786 | default 12 | ||
787 | range 0 13 | ||
788 | |||
789 | config SCB0_MI3_SLOT30 | ||
790 | int "Slot 30 slave interface id" | ||
791 | default 4 | ||
792 | range 0 13 | ||
793 | |||
794 | config SCB0_MI3_SLOT31 | ||
795 | int "Slot 31 slave interface id" | ||
796 | default 7 | ||
797 | range 0 13 | ||
798 | |||
799 | endif # SCB0_MI3 | ||
800 | |||
801 | menuconfig SCB0_MI4 | ||
802 | bool "SCB0 Master Interface 4 (L1B)" | ||
803 | default n | ||
804 | depends on SCB_PRIORITY | ||
805 | help | ||
806 | The slave interface id of each slot should be set according following table. | ||
807 | Core 0 -- 0 | ||
808 | Core 1 -- 2 | ||
809 | SCB1 -- 9 | ||
810 | SCB2 -- 10 | ||
811 | SCB3 -- 11 | ||
812 | SCB4 -- 12 | ||
813 | SCB5 -- 5 | ||
814 | SCB6 -- 6 | ||
815 | SCB7 -- 8 | ||
816 | SCB8 -- 7 | ||
817 | SCB9 -- 4 | ||
818 | USB -- 13 | ||
819 | |||
820 | if SCB0_MI4 | ||
821 | |||
822 | config SCB0_MI4_SLOT0 | ||
823 | int "Slot 0 slave interface id" | ||
824 | default 4 | ||
825 | range 0 13 | ||
826 | |||
827 | config SCB0_MI4_SLOT1 | ||
828 | int "Slot 1 slave interface id" | ||
829 | default 5 | ||
830 | range 0 13 | ||
831 | |||
832 | config SCB0_MI4_SLOT2 | ||
833 | int "Slot 2 slave interface id" | ||
834 | default 6 | ||
835 | range 0 13 | ||
836 | |||
837 | config SCB0_MI4_SLOT3 | ||
838 | int "Slot 3 slave interface id" | ||
839 | default 7 | ||
840 | range 0 13 | ||
841 | |||
842 | config SCB0_MI4_SLOT4 | ||
843 | int "Slot 4 slave interface id" | ||
844 | default 8 | ||
845 | range 0 13 | ||
846 | |||
847 | config SCB0_MI4_SLOT5 | ||
848 | int "Slot 5 slave interface id" | ||
849 | default 9 | ||
850 | range 0 13 | ||
851 | |||
852 | config SCB0_MI4_SLOT6 | ||
853 | int "Slot 6 slave interface id" | ||
854 | default 10 | ||
855 | range 0 13 | ||
856 | |||
857 | config SCB0_MI4_SLOT7 | ||
858 | int "Slot 7 slave interface id" | ||
859 | default 11 | ||
860 | range 0 13 | ||
861 | |||
862 | config SCB0_MI4_SLOT8 | ||
863 | int "Slot 8 slave interface id" | ||
864 | default 13 | ||
865 | range 0 13 | ||
866 | |||
867 | config SCB0_MI4_SLOT9 | ||
868 | int "Slot 9 slave interface id" | ||
869 | default 12 | ||
870 | range 0 13 | ||
871 | |||
872 | config SCB0_MI4_SLOT10 | ||
873 | int "Slot 10 slave interface id" | ||
874 | default 4 | ||
875 | range 0 13 | ||
876 | |||
877 | config SCB0_MI4_SLOT11 | ||
878 | int "Slot 11 slave interface id" | ||
879 | default 5 | ||
880 | range 0 13 | ||
881 | |||
882 | config SCB0_MI4_SLOT12 | ||
883 | int "Slot 12 slave interface id" | ||
884 | default 6 | ||
885 | range 0 13 | ||
886 | |||
887 | config SCB0_MI4_SLOT13 | ||
888 | int "Slot 13 slave interface id" | ||
889 | default 7 | ||
890 | range 0 13 | ||
891 | |||
892 | config SCB0_MI4_SLOT14 | ||
893 | int "Slot 14 slave interface id" | ||
894 | default 8 | ||
895 | range 0 13 | ||
896 | |||
897 | config SCB0_MI4_SLOT15 | ||
898 | int "Slot 15 slave interface id" | ||
899 | default 9 | ||
900 | range 0 13 | ||
901 | |||
902 | config SCB0_MI4_SLOT16 | ||
903 | int "Slot 16 slave interface id" | ||
904 | default 10 | ||
905 | range 0 13 | ||
906 | |||
907 | config SCB0_MI4_SLOT17 | ||
908 | int "Slot 17 slave interface id" | ||
909 | default 11 | ||
910 | range 0 13 | ||
911 | |||
912 | config SCB0_MI4_SLOT18 | ||
913 | int "Slot 18 slave interface id" | ||
914 | default 13 | ||
915 | range 0 13 | ||
916 | |||
917 | config SCB0_MI4_SLOT19 | ||
918 | int "Slot 19 slave interface id" | ||
919 | default 12 | ||
920 | range 0 13 | ||
921 | |||
922 | config SCB0_MI4_SLOT20 | ||
923 | int "Slot 20 slave interface id" | ||
924 | default 4 | ||
925 | range 0 13 | ||
926 | |||
927 | config SCB0_MI4_SLOT21 | ||
928 | int "Slot 21 slave interface id" | ||
929 | default 5 | ||
930 | range 0 13 | ||
931 | |||
932 | config SCB0_MI4_SLOT22 | ||
933 | int "Slot 22 slave interface id" | ||
934 | default 6 | ||
935 | range 0 13 | ||
936 | |||
937 | config SCB0_MI4_SLOT23 | ||
938 | int "Slot 23 slave interface id" | ||
939 | default 7 | ||
940 | range 0 13 | ||
941 | |||
942 | config SCB0_MI4_SLOT24 | ||
943 | int "Slot 24 slave interface id" | ||
944 | default 8 | ||
945 | range 0 13 | ||
946 | |||
947 | config SCB0_MI4_SLOT25 | ||
948 | int "Slot 25 slave interface id" | ||
949 | default 9 | ||
950 | range 0 13 | ||
951 | |||
952 | config SCB0_MI4_SLOT26 | ||
953 | int "Slot 26 slave interface id" | ||
954 | default 10 | ||
955 | range 0 13 | ||
956 | |||
957 | config SCB0_MI4_SLOT27 | ||
958 | int "Slot 27 slave interface id" | ||
959 | default 11 | ||
960 | range 0 13 | ||
961 | |||
962 | config SCB0_MI4_SLOT28 | ||
963 | int "Slot 28 slave interface id" | ||
964 | default 13 | ||
965 | range 0 13 | ||
966 | |||
967 | config SCB0_MI4_SLOT29 | ||
968 | int "Slot 29 slave interface id" | ||
969 | default 12 | ||
970 | range 0 13 | ||
971 | |||
972 | config SCB0_MI4_SLOT30 | ||
973 | int "Slot 30 slave interface id" | ||
974 | default 4 | ||
975 | range 0 13 | ||
976 | |||
977 | config SCB0_MI4_SLOT31 | ||
978 | int "Slot 31 slave interface id" | ||
979 | default 7 | ||
980 | range 0 13 | ||
981 | |||
982 | endif # SCB0_MI4 | ||
983 | |||
984 | menuconfig SCB0_MI5 | ||
985 | bool "SCB0 Master Interface 5 (SMMR)" | ||
986 | default n | ||
987 | depends on SCB_PRIORITY | ||
988 | help | ||
989 | The slave interface id of each slot should be set according following table. | ||
990 | MMR0 -- 1 | ||
991 | MMR1 -- 3 | ||
992 | SCB2 -- 10 | ||
993 | SCB4 -- 12 | ||
994 | |||
995 | if SCB0_MI5 | ||
996 | |||
997 | config SCB0_MI5_SLOT0 | ||
998 | int "Slot 0 slave interface id" | ||
999 | default 1 | ||
1000 | range 0 13 | ||
1001 | |||
1002 | config SCB0_MI5_SLOT1 | ||
1003 | int "Slot 1 slave interface id" | ||
1004 | default 3 | ||
1005 | range 0 13 | ||
1006 | |||
1007 | config SCB0_MI5_SLOT2 | ||
1008 | int "Slot 2 slave interface id" | ||
1009 | default 10 | ||
1010 | range 0 13 | ||
1011 | |||
1012 | config SCB0_MI5_SLOT3 | ||
1013 | int "Slot 3 slave interface id" | ||
1014 | default 12 | ||
1015 | range 0 13 | ||
1016 | |||
1017 | config SCB0_MI5_SLOT4 | ||
1018 | int "Slot 4 slave interface id" | ||
1019 | default 1 | ||
1020 | range 0 13 | ||
1021 | |||
1022 | config SCB0_MI5_SLOT5 | ||
1023 | int "Slot 5 slave interface id" | ||
1024 | default 3 | ||
1025 | range 0 13 | ||
1026 | |||
1027 | config SCB0_MI5_SLOT6 | ||
1028 | int "Slot 6 slave interface id" | ||
1029 | default 10 | ||
1030 | range 0 13 | ||
1031 | |||
1032 | config SCB0_MI5_SLOT7 | ||
1033 | int "Slot 7 slave interface id" | ||
1034 | default 12 | ||
1035 | range 0 13 | ||
1036 | |||
1037 | config SCB0_MI5_SLOT8 | ||
1038 | int "Slot 8 slave interface id" | ||
1039 | default 1 | ||
1040 | range 0 13 | ||
1041 | |||
1042 | config SCB0_MI5_SLOT9 | ||
1043 | int "Slot 9 slave interface id" | ||
1044 | default 3 | ||
1045 | range 0 13 | ||
1046 | |||
1047 | config SCB0_MI5_SLOT10 | ||
1048 | int "Slot 10 slave interface id" | ||
1049 | default 10 | ||
1050 | range 0 13 | ||
1051 | |||
1052 | config SCB0_MI5_SLOT11 | ||
1053 | int "Slot 11 slave interface id" | ||
1054 | default 12 | ||
1055 | range 0 13 | ||
1056 | |||
1057 | config SCB0_MI5_SLOT12 | ||
1058 | int "Slot 12 slave interface id" | ||
1059 | default 1 | ||
1060 | range 0 13 | ||
1061 | |||
1062 | config SCB0_MI5_SLOT13 | ||
1063 | int "Slot 13 slave interface id" | ||
1064 | default 3 | ||
1065 | range 0 13 | ||
1066 | |||
1067 | config SCB0_MI5_SLOT14 | ||
1068 | int "Slot 14 slave interface id" | ||
1069 | default 10 | ||
1070 | range 0 13 | ||
1071 | |||
1072 | config SCB0_MI5_SLOT15 | ||
1073 | int "Slot 15 slave interface id" | ||
1074 | default 12 | ||
1075 | range 0 13 | ||
1076 | |||
1077 | endif # SCB0_MI5 | ||
1078 | |||
1079 | menuconfig SCB1_MI0 | ||
1080 | bool "SCB1 Master Interface 0" | ||
1081 | default n | ||
1082 | depends on SCB_PRIORITY | ||
1083 | help | ||
1084 | The slave interface id of each slot should be set according following table. | ||
1085 | SPORT0A -- 0 | ||
1086 | SPORT0B -- 1 | ||
1087 | SPORT1A -- 2 | ||
1088 | SPORT1B -- 3 | ||
1089 | SPORT2A -- 4 | ||
1090 | SPORT2B -- 5 | ||
1091 | SPI0TX -- 6 | ||
1092 | SPI0RX -- 7 | ||
1093 | SPI1TX -- 8 | ||
1094 | SPI1RX -- 9 | ||
1095 | |||
1096 | if SCB1_MI0 | ||
1097 | |||
1098 | config SCB1_MI0_SLOT0 | ||
1099 | int "Slot 0 slave interface id" | ||
1100 | default 0 | ||
1101 | range 0 9 | ||
1102 | |||
1103 | config SCB1_MI0_SLOT1 | ||
1104 | int "Slot 1 slave interface id" | ||
1105 | default 1 | ||
1106 | range 0 9 | ||
1107 | |||
1108 | config SCB1_MI0_SLOT2 | ||
1109 | int "Slot 2 slave interface id" | ||
1110 | default 2 | ||
1111 | range 0 9 | ||
1112 | |||
1113 | config SCB1_MI0_SLOT3 | ||
1114 | int "Slot 3 slave interface id" | ||
1115 | default 3 | ||
1116 | range 0 9 | ||
1117 | |||
1118 | config SCB1_MI0_SLOT4 | ||
1119 | int "Slot 4 slave interface id" | ||
1120 | default 4 | ||
1121 | range 0 9 | ||
1122 | |||
1123 | config SCB1_MI0_SLOT5 | ||
1124 | int "Slot 5 slave interface id" | ||
1125 | default 5 | ||
1126 | range 0 9 | ||
1127 | |||
1128 | config SCB1_MI0_SLOT6 | ||
1129 | int "Slot 6 slave interface id" | ||
1130 | default 6 | ||
1131 | range 0 9 | ||
1132 | |||
1133 | config SCB1_MI0_SLOT7 | ||
1134 | int "Slot 7 slave interface id" | ||
1135 | default 7 | ||
1136 | range 0 9 | ||
1137 | |||
1138 | config SCB1_MI0_SLOT8 | ||
1139 | int "Slot 8 slave interface id" | ||
1140 | default 8 | ||
1141 | range 0 9 | ||
1142 | |||
1143 | config SCB1_MI0_SLOT9 | ||
1144 | int "Slot 9 slave interface id" | ||
1145 | default 9 | ||
1146 | range 0 9 | ||
1147 | |||
1148 | config SCB1_MI0_SLOT10 | ||
1149 | int "Slot 10 slave interface id" | ||
1150 | default 0 | ||
1151 | range 0 9 | ||
1152 | |||
1153 | config SCB1_MI0_SLOT11 | ||
1154 | int "Slot 11 slave interface id" | ||
1155 | default 1 | ||
1156 | range 0 9 | ||
1157 | |||
1158 | config SCB1_MI0_SLOT12 | ||
1159 | int "Slot 12 slave interface id" | ||
1160 | default 2 | ||
1161 | range 0 9 | ||
1162 | |||
1163 | config SCB1_MI0_SLOT13 | ||
1164 | int "Slot 13 slave interface id" | ||
1165 | default 3 | ||
1166 | range 0 9 | ||
1167 | |||
1168 | config SCB1_MI0_SLOT14 | ||
1169 | int "Slot 14 slave interface id" | ||
1170 | default 4 | ||
1171 | range 0 9 | ||
1172 | |||
1173 | config SCB1_MI0_SLOT15 | ||
1174 | int "Slot 15 slave interface id" | ||
1175 | default 5 | ||
1176 | range 0 9 | ||
1177 | |||
1178 | config SCB1_MI0_SLOT16 | ||
1179 | int "Slot 16 slave interface id" | ||
1180 | default 6 | ||
1181 | range 0 13 | ||
1182 | |||
1183 | config SCB1_MI0_SLOT17 | ||
1184 | int "Slot 17 slave interface id" | ||
1185 | default 7 | ||
1186 | range 0 13 | ||
1187 | |||
1188 | config SCB1_MI0_SLOT18 | ||
1189 | int "Slot 18 slave interface id" | ||
1190 | default 8 | ||
1191 | range 0 13 | ||
1192 | |||
1193 | config SCB1_MI0_SLOT19 | ||
1194 | int "Slot 19 slave interface id" | ||
1195 | default 9 | ||
1196 | range 0 13 | ||
1197 | |||
1198 | endif # SCB1_MI0 | ||
1199 | |||
1200 | menuconfig SCB2_MI0 | ||
1201 | bool "SCB2 Master Interface 0" | ||
1202 | default n | ||
1203 | depends on SCB_PRIORITY | ||
1204 | help | ||
1205 | The slave interface id of each slot should be set according following table. | ||
1206 | RSI -- 0 | ||
1207 | SDU DMA -- 1 | ||
1208 | SDU -- 2 | ||
1209 | EMAC0 -- 3 | ||
1210 | EMAC1 -- 4 | ||
1211 | |||
1212 | if SCB2_MI0 | ||
1213 | |||
1214 | config SCB2_MI0_SLOT0 | ||
1215 | int "Slot 0 slave interface id" | ||
1216 | default 0 | ||
1217 | range 0 4 | ||
1218 | |||
1219 | config SCB2_MI0_SLOT1 | ||
1220 | int "Slot 1 slave interface id" | ||
1221 | default 1 | ||
1222 | range 0 4 | ||
1223 | |||
1224 | config SCB2_MI0_SLOT2 | ||
1225 | int "Slot 2 slave interface id" | ||
1226 | default 2 | ||
1227 | range 0 4 | ||
1228 | |||
1229 | config SCB2_MI0_SLOT3 | ||
1230 | int "Slot 3 slave interface id" | ||
1231 | default 3 | ||
1232 | range 0 4 | ||
1233 | |||
1234 | config SCB2_MI0_SLOT4 | ||
1235 | int "Slot 4 slave interface id" | ||
1236 | default 4 | ||
1237 | range 0 4 | ||
1238 | |||
1239 | config SCB2_MI0_SLOT5 | ||
1240 | int "Slot 5 slave interface id" | ||
1241 | default 0 | ||
1242 | range 0 4 | ||
1243 | |||
1244 | config SCB2_MI0_SLOT6 | ||
1245 | int "Slot 6 slave interface id" | ||
1246 | default 1 | ||
1247 | range 0 4 | ||
1248 | |||
1249 | config SCB2_MI0_SLOT7 | ||
1250 | int "Slot 7 slave interface id" | ||
1251 | default 2 | ||
1252 | range 0 4 | ||
1253 | |||
1254 | config SCB2_MI0_SLOT8 | ||
1255 | int "Slot 8 slave interface id" | ||
1256 | default 3 | ||
1257 | range 0 4 | ||
1258 | |||
1259 | config SCB2_MI0_SLOT9 | ||
1260 | int "Slot 9 slave interface id" | ||
1261 | default 4 | ||
1262 | range 0 4 | ||
1263 | |||
1264 | endif # SCB2_MI0 | ||
1265 | |||
1266 | menuconfig SCB3_MI0 | ||
1267 | bool "SCB3 Master Interface 0" | ||
1268 | default n | ||
1269 | depends on SCB_PRIORITY | ||
1270 | help | ||
1271 | The slave interface id of each slot should be set according following table. | ||
1272 | LP0 -- 0 | ||
1273 | LP1 -- 1 | ||
1274 | LP2 -- 2 | ||
1275 | LP3 -- 3 | ||
1276 | UART0TX -- 4 | ||
1277 | UART0RX -- 5 | ||
1278 | UART1TX -- 4 | ||
1279 | UART1RX -- 5 | ||
1280 | |||
1281 | if SCB3_MI0 | ||
1282 | |||
1283 | config SCB3_MI0_SLOT0 | ||
1284 | int "Slot 0 slave interface id" | ||
1285 | default 0 | ||
1286 | range 0 7 | ||
1287 | |||
1288 | config SCB3_MI0_SLOT1 | ||
1289 | int "Slot 1 slave interface id" | ||
1290 | default 1 | ||
1291 | range 0 7 | ||
1292 | |||
1293 | config SCB3_MI0_SLOT2 | ||
1294 | int "Slot 2 slave interface id" | ||
1295 | default 2 | ||
1296 | range 0 7 | ||
1297 | |||
1298 | config SCB3_MI0_SLOT3 | ||
1299 | int "Slot 3 slave interface id" | ||
1300 | default 3 | ||
1301 | range 0 7 | ||
1302 | |||
1303 | config SCB3_MI0_SLOT4 | ||
1304 | int "Slot 4 slave interface id" | ||
1305 | default 4 | ||
1306 | range 0 7 | ||
1307 | |||
1308 | config SCB3_MI0_SLOT5 | ||
1309 | int "Slot 5 slave interface id" | ||
1310 | default 5 | ||
1311 | range 0 7 | ||
1312 | |||
1313 | config SCB3_MI0_SLOT6 | ||
1314 | int "Slot 6 slave interface id" | ||
1315 | default 6 | ||
1316 | range 0 7 | ||
1317 | |||
1318 | config SCB3_MI0_SLOT7 | ||
1319 | int "Slot 7 slave interface id" | ||
1320 | default 7 | ||
1321 | range 0 7 | ||
1322 | |||
1323 | config SCB3_MI0_SLOT8 | ||
1324 | int "Slot 8 slave interface id" | ||
1325 | default 0 | ||
1326 | range 0 7 | ||
1327 | |||
1328 | config SCB3_MI0_SLOT9 | ||
1329 | int "Slot 9 slave interface id" | ||
1330 | default 1 | ||
1331 | range 0 7 | ||
1332 | |||
1333 | config SCB3_MI0_SLOT10 | ||
1334 | int "Slot 10 slave interface id" | ||
1335 | default 2 | ||
1336 | range 0 7 | ||
1337 | |||
1338 | config SCB3_MI0_SLOT11 | ||
1339 | int "Slot 11 slave interface id" | ||
1340 | default 3 | ||
1341 | range 0 7 | ||
1342 | |||
1343 | config SCB3_MI0_SLOT12 | ||
1344 | int "Slot 12 slave interface id" | ||
1345 | default 4 | ||
1346 | range 0 7 | ||
1347 | |||
1348 | config SCB3_MI0_SLOT13 | ||
1349 | int "Slot 13 slave interface id" | ||
1350 | default 5 | ||
1351 | range 0 7 | ||
1352 | |||
1353 | config SCB3_MI0_SLOT14 | ||
1354 | int "Slot 14 slave interface id" | ||
1355 | default 6 | ||
1356 | range 0 7 | ||
1357 | |||
1358 | config SCB3_MI0_SLOT15 | ||
1359 | int "Slot 15 slave interface id" | ||
1360 | default 7 | ||
1361 | range 0 7 | ||
1362 | |||
1363 | endif # SCB3_MI0 | ||
1364 | |||
1365 | menuconfig SCB4_MI0 | ||
1366 | bool "SCB4 Master Interface 0" | ||
1367 | default n | ||
1368 | depends on SCB_PRIORITY | ||
1369 | help | ||
1370 | The slave interface id of each slot should be set according following table. | ||
1371 | MDA21 -- 0 | ||
1372 | MDA22 -- 1 | ||
1373 | MDA23 -- 2 | ||
1374 | MDA24 -- 3 | ||
1375 | MDA25 -- 4 | ||
1376 | MDA26 -- 5 | ||
1377 | MDA27 -- 6 | ||
1378 | MDA28 -- 7 | ||
1379 | |||
1380 | if SCB4_MI0 | ||
1381 | |||
1382 | config SCB4_MI0_SLOT0 | ||
1383 | int "Slot 0 slave interface id" | ||
1384 | default 0 | ||
1385 | range 0 7 | ||
1386 | |||
1387 | config SCB4_MI0_SLOT1 | ||
1388 | int "Slot 1 slave interface id" | ||
1389 | default 1 | ||
1390 | range 0 7 | ||
1391 | |||
1392 | config SCB4_MI0_SLOT2 | ||
1393 | int "Slot 2 slave interface id" | ||
1394 | default 2 | ||
1395 | range 0 7 | ||
1396 | |||
1397 | config SCB4_MI0_SLOT3 | ||
1398 | int "Slot 3 slave interface id" | ||
1399 | default 3 | ||
1400 | range 0 7 | ||
1401 | |||
1402 | config SCB4_MI0_SLOT4 | ||
1403 | int "Slot 4 slave interface id" | ||
1404 | default 4 | ||
1405 | range 0 7 | ||
1406 | |||
1407 | config SCB4_MI0_SLOT5 | ||
1408 | int "Slot 5 slave interface id" | ||
1409 | default 5 | ||
1410 | range 0 7 | ||
1411 | |||
1412 | config SCB4_MI0_SLOT6 | ||
1413 | int "Slot 6 slave interface id" | ||
1414 | default 6 | ||
1415 | range 0 7 | ||
1416 | |||
1417 | config SCB4_MI0_SLOT7 | ||
1418 | int "Slot 7 slave interface id" | ||
1419 | default 7 | ||
1420 | range 0 7 | ||
1421 | |||
1422 | config SCB4_MI0_SLOT8 | ||
1423 | int "Slot 8 slave interface id" | ||
1424 | default 0 | ||
1425 | range 0 7 | ||
1426 | |||
1427 | config SCB4_MI0_SLOT9 | ||
1428 | int "Slot 9 slave interface id" | ||
1429 | default 1 | ||
1430 | range 0 7 | ||
1431 | |||
1432 | config SCB4_MI0_SLOT10 | ||
1433 | int "Slot 10 slave interface id" | ||
1434 | default 2 | ||
1435 | range 0 7 | ||
1436 | |||
1437 | config SCB4_MI0_SLOT11 | ||
1438 | int "Slot 11 slave interface id" | ||
1439 | default 3 | ||
1440 | range 0 7 | ||
1441 | |||
1442 | config SCB4_MI0_SLOT12 | ||
1443 | int "Slot 12 slave interface id" | ||
1444 | default 4 | ||
1445 | range 0 7 | ||
1446 | |||
1447 | config SCB4_MI0_SLOT13 | ||
1448 | int "Slot 13 slave interface id" | ||
1449 | default 5 | ||
1450 | range 0 7 | ||
1451 | |||
1452 | config SCB4_MI0_SLOT14 | ||
1453 | int "Slot 14 slave interface id" | ||
1454 | default 6 | ||
1455 | range 0 7 | ||
1456 | |||
1457 | config SCB4_MI0_SLOT15 | ||
1458 | int "Slot 15 slave interface id" | ||
1459 | default 7 | ||
1460 | range 0 7 | ||
1461 | |||
1462 | endif # SCB4_MI0 | ||
1463 | |||
1464 | menuconfig SCB5_MI0 | ||
1465 | bool "SCB5 Master Interface 0" | ||
1466 | default n | ||
1467 | depends on SCB_PRIORITY | ||
1468 | help | ||
1469 | The slave interface id of each slot should be set according following table. | ||
1470 | PPI0 MDA29 -- 0 | ||
1471 | PPI0 MDA30 -- 1 | ||
1472 | PPI2 MDA31 -- 2 | ||
1473 | PPI2 MDA32 -- 3 | ||
1474 | |||
1475 | if SCB5_MI0 | ||
1476 | |||
1477 | config SCB5_MI0_SLOT0 | ||
1478 | int "Slot 0 slave interface id" | ||
1479 | default 0 | ||
1480 | range 0 3 | ||
1481 | |||
1482 | config SCB5_MI0_SLOT1 | ||
1483 | int "Slot 1 slave interface id" | ||
1484 | default 1 | ||
1485 | range 0 3 | ||
1486 | |||
1487 | config SCB5_MI0_SLOT2 | ||
1488 | int "Slot 2 slave interface id" | ||
1489 | default 2 | ||
1490 | range 0 3 | ||
1491 | |||
1492 | config SCB5_MI0_SLOT3 | ||
1493 | int "Slot 3 slave interface id" | ||
1494 | default 3 | ||
1495 | range 0 3 | ||
1496 | |||
1497 | config SCB5_MI0_SLOT4 | ||
1498 | int "Slot 4 slave interface id" | ||
1499 | default 0 | ||
1500 | range 0 3 | ||
1501 | |||
1502 | config SCB5_MI0_SLOT5 | ||
1503 | int "Slot 5 slave interface id" | ||
1504 | default 1 | ||
1505 | range 0 3 | ||
1506 | |||
1507 | config SCB5_MI0_SLOT6 | ||
1508 | int "Slot 6 slave interface id" | ||
1509 | default 2 | ||
1510 | range 0 3 | ||
1511 | |||
1512 | config SCB5_MI0_SLOT7 | ||
1513 | int "Slot 7 slave interface id" | ||
1514 | default 3 | ||
1515 | range 0 3 | ||
1516 | |||
1517 | endif # SCB5_MI0 | ||
1518 | |||
1519 | menuconfig SCB6_MI0 | ||
1520 | bool "SCB6 Master Interface 0" | ||
1521 | default n | ||
1522 | depends on SCB_PRIORITY | ||
1523 | help | ||
1524 | The slave interface id of each slot should be set according following table. | ||
1525 | PPI1 MDA33 -- 0 | ||
1526 | PPI1 MDA34 -- 1 | ||
1527 | |||
1528 | if SCB6_MI0 | ||
1529 | |||
1530 | config SCB6_MI0_SLOT0 | ||
1531 | int "Slot 0 slave interface id" | ||
1532 | default 0 | ||
1533 | range 0 1 | ||
1534 | |||
1535 | config SCB6_MI0_SLOT1 | ||
1536 | int "Slot 1 slave interface id" | ||
1537 | default 1 | ||
1538 | range 0 1 | ||
1539 | |||
1540 | config SCB6_MI0_SLOT2 | ||
1541 | int "Slot 2 slave interface id" | ||
1542 | default 0 | ||
1543 | range 0 1 | ||
1544 | |||
1545 | config SCB6_MI0_SLOT3 | ||
1546 | int "Slot 3 slave interface id" | ||
1547 | default 1 | ||
1548 | range 0 1 | ||
1549 | |||
1550 | endif # SCB6_MI0 | ||
1551 | |||
1552 | menuconfig SCB7_MI0 | ||
1553 | bool "SCB7 Master Interface 0" | ||
1554 | default n | ||
1555 | depends on SCB_PRIORITY | ||
1556 | help | ||
1557 | The slave interface id of each slot should be set according following table. | ||
1558 | PIXC0 -- 0 | ||
1559 | PIXC1 -- 1 | ||
1560 | PIXC2 -- 2 | ||
1561 | |||
1562 | if SCB7_MI0 | ||
1563 | |||
1564 | config SCB7_MI0_SLOT0 | ||
1565 | int "Slot 0 slave interface id" | ||
1566 | default 0 | ||
1567 | range 0 2 | ||
1568 | |||
1569 | config SCB7_MI0_SLOT1 | ||
1570 | int "Slot 1 slave interface id" | ||
1571 | default 1 | ||
1572 | range 0 2 | ||
1573 | |||
1574 | config SCB7_MI0_SLOT2 | ||
1575 | int "Slot 2 slave interface id" | ||
1576 | default 2 | ||
1577 | range 0 2 | ||
1578 | |||
1579 | config SCB7_MI0_SLOT3 | ||
1580 | int "Slot 3 slave interface id" | ||
1581 | default 0 | ||
1582 | range 0 2 | ||
1583 | |||
1584 | config SCB7_MI0_SLOT4 | ||
1585 | int "Slot 4 slave interface id" | ||
1586 | default 1 | ||
1587 | range 0 2 | ||
1588 | |||
1589 | config SCB7_MI0_SLOT5 | ||
1590 | int "Slot 5 slave interface id" | ||
1591 | default 2 | ||
1592 | range 0 2 | ||
1593 | |||
1594 | endif # SCB7_MI0 | ||
1595 | |||
1596 | menuconfig SCB8_MI0 | ||
1597 | bool "SCB8 Master Interface 0" | ||
1598 | default n | ||
1599 | depends on SCB_PRIORITY | ||
1600 | help | ||
1601 | The slave interface id of each slot should be set according following table. | ||
1602 | PVP CPDOB -- 0 | ||
1603 | PVP CPDOC -- 1 | ||
1604 | PVP CPCO -- 2 | ||
1605 | PVP CPCI -- 3 | ||
1606 | |||
1607 | if SCB8_MI0 | ||
1608 | |||
1609 | config SCB8_MI0_SLOT0 | ||
1610 | int "Slot 0 slave interface id" | ||
1611 | default 0 | ||
1612 | range 0 3 | ||
1613 | |||
1614 | config SCB8_MI0_SLOT1 | ||
1615 | int "Slot 1 slave interface id" | ||
1616 | default 1 | ||
1617 | range 0 3 | ||
1618 | |||
1619 | config SCB8_MI0_SLOT2 | ||
1620 | int "Slot 2 slave interface id" | ||
1621 | default 2 | ||
1622 | range 0 3 | ||
1623 | |||
1624 | config SCB8_MI0_SLOT3 | ||
1625 | int "Slot 3 slave interface id" | ||
1626 | default 3 | ||
1627 | range 0 3 | ||
1628 | |||
1629 | config SCB8_MI0_SLOT4 | ||
1630 | int "Slot 4 slave interface id" | ||
1631 | default 0 | ||
1632 | range 0 3 | ||
1633 | |||
1634 | config SCB8_MI0_SLOT5 | ||
1635 | int "Slot 5 slave interface id" | ||
1636 | default 1 | ||
1637 | range 0 3 | ||
1638 | |||
1639 | config SCB8_MI0_SLOT6 | ||
1640 | int "Slot 6 slave interface id" | ||
1641 | default 2 | ||
1642 | range 0 3 | ||
1643 | |||
1644 | config SCB8_MI0_SLOT7 | ||
1645 | int "Slot 7 slave interface id" | ||
1646 | default 3 | ||
1647 | range 0 3 | ||
1648 | |||
1649 | endif # SCB8_MI0 | ||
1650 | |||
1651 | menuconfig SCB9_MI0 | ||
1652 | bool "SCB9 Master Interface 0" | ||
1653 | default n | ||
1654 | depends on SCB_PRIORITY | ||
1655 | help | ||
1656 | The slave interface id of each slot should be set according following table. | ||
1657 | PVP MPDO -- 0 | ||
1658 | PVP MPDI -- 1 | ||
1659 | PVP MPCO -- 2 | ||
1660 | PVP MPCI -- 3 | ||
1661 | PVP CPDOA -- 4 | ||
1662 | |||
1663 | if SCB9_MI0 | ||
1664 | |||
1665 | config SCB9_MI0_SLOT0 | ||
1666 | int "Slot 0 slave interface id" | ||
1667 | default 0 | ||
1668 | range 0 4 | ||
1669 | |||
1670 | config SCB9_MI0_SLOT1 | ||
1671 | int "Slot 1 slave interface id" | ||
1672 | default 1 | ||
1673 | range 0 4 | ||
1674 | |||
1675 | config SCB9_MI0_SLOT2 | ||
1676 | int "Slot 2 slave interface id" | ||
1677 | default 2 | ||
1678 | range 0 4 | ||
1679 | |||
1680 | config SCB9_MI0_SLOT3 | ||
1681 | int "Slot 3 slave interface id" | ||
1682 | default 3 | ||
1683 | range 0 4 | ||
1684 | |||
1685 | config SCB9_MI0_SLOT4 | ||
1686 | int "Slot 4 slave interface id" | ||
1687 | default 4 | ||
1688 | range 0 4 | ||
1689 | |||
1690 | config SCB9_MI0_SLOT5 | ||
1691 | int "Slot 5 slave interface id" | ||
1692 | default 0 | ||
1693 | range 0 4 | ||
1694 | |||
1695 | config SCB9_MI0_SLOT6 | ||
1696 | int "Slot 6 slave interface id" | ||
1697 | default 1 | ||
1698 | range 0 4 | ||
1699 | |||
1700 | config SCB9_MI0_SLOT7 | ||
1701 | int "Slot 7 slave interface id" | ||
1702 | default 2 | ||
1703 | range 0 4 | ||
1704 | |||
1705 | config SCB9_MI0_SLOT8 | ||
1706 | int "Slot 8 slave interface id" | ||
1707 | default 3 | ||
1708 | range 0 4 | ||
1709 | |||
1710 | config SCB9_MI0_SLOT9 | ||
1711 | int "Slot 9 slave interface id" | ||
1712 | default 4 | ||
1713 | range 0 4 | ||
1714 | |||
1715 | endif # SCB9_MI0 | ||
1716 | |||
62 | endmenu | 1717 | endmenu |
63 | 1718 | ||
64 | endif | 1719 | endif |
diff --git a/arch/blackfin/mach-bf609/Makefile b/arch/blackfin/mach-bf609/Makefile index 234fe1b4bb0e..60ffaf85d303 100644 --- a/arch/blackfin/mach-bf609/Makefile +++ b/arch/blackfin/mach-bf609/Makefile | |||
@@ -4,3 +4,4 @@ | |||
4 | 4 | ||
5 | obj-y := dma.o clock.o ints-priority.o | 5 | obj-y := dma.o clock.o ints-priority.o |
6 | obj-$(CONFIG_PM) += pm.o dpm.o | 6 | obj-$(CONFIG_PM) += pm.o dpm.o |
7 | obj-$(CONFIG_SCB_PRIORITY) += scb.o | ||
diff --git a/arch/blackfin/mach-bf609/boards/ezkit.c b/arch/blackfin/mach-bf609/boards/ezkit.c index 0bc47231540b..d56a55ad83a7 100644 --- a/arch/blackfin/mach-bf609/boards/ezkit.c +++ b/arch/blackfin/mach-bf609/boards/ezkit.c | |||
@@ -104,6 +104,7 @@ static struct platform_device bfin_rotary_device = { | |||
104 | 104 | ||
105 | #if defined(CONFIG_STMMAC_ETH) || defined(CONFIG_STMMAC_ETH_MODULE) | 105 | #if defined(CONFIG_STMMAC_ETH) || defined(CONFIG_STMMAC_ETH_MODULE) |
106 | #include <linux/stmmac.h> | 106 | #include <linux/stmmac.h> |
107 | #include <linux/phy.h> | ||
107 | 108 | ||
108 | static unsigned short pins[] = P_RMII0; | 109 | static unsigned short pins[] = P_RMII0; |
109 | 110 | ||
@@ -111,11 +112,26 @@ static struct stmmac_mdio_bus_data phy_private_data = { | |||
111 | .phy_mask = 1, | 112 | .phy_mask = 1, |
112 | }; | 113 | }; |
113 | 114 | ||
115 | static struct stmmac_dma_cfg eth_dma_cfg = { | ||
116 | .pbl = 2, | ||
117 | }; | ||
118 | |||
119 | int stmmac_ptp_clk_init(struct platform_device *pdev) | ||
120 | { | ||
121 | bfin_write32(PADS0_EMAC_PTP_CLKSEL, 0); | ||
122 | return 0; | ||
123 | } | ||
124 | |||
114 | static struct plat_stmmacenet_data eth_private_data = { | 125 | static struct plat_stmmacenet_data eth_private_data = { |
126 | .has_gmac = 1, | ||
115 | .bus_id = 0, | 127 | .bus_id = 0, |
116 | .enh_desc = 1, | 128 | .enh_desc = 1, |
117 | .phy_addr = 1, | 129 | .phy_addr = 1, |
118 | .mdio_bus_data = &phy_private_data, | 130 | .mdio_bus_data = &phy_private_data, |
131 | .dma_cfg = ð_dma_cfg, | ||
132 | .force_thresh_dma_mode = 1, | ||
133 | .interface = PHY_INTERFACE_MODE_RMII, | ||
134 | .init = stmmac_ptp_clk_init, | ||
119 | }; | 135 | }; |
120 | 136 | ||
121 | static struct platform_device bfin_eth_device = { | 137 | static struct platform_device bfin_eth_device = { |
@@ -1107,6 +1123,81 @@ static struct bfin_display_config bfin_display_data = { | |||
1107 | }; | 1123 | }; |
1108 | #endif | 1124 | #endif |
1109 | 1125 | ||
1126 | #if IS_ENABLED(CONFIG_VIDEO_ADV7343) | ||
1127 | #include <media/adv7343.h> | ||
1128 | |||
1129 | static struct v4l2_output adv7343_outputs[] = { | ||
1130 | { | ||
1131 | .index = 0, | ||
1132 | .name = "Composite", | ||
1133 | .type = V4L2_OUTPUT_TYPE_ANALOG, | ||
1134 | .std = V4L2_STD_ALL, | ||
1135 | .capabilities = V4L2_OUT_CAP_STD, | ||
1136 | }, | ||
1137 | { | ||
1138 | .index = 1, | ||
1139 | .name = "S-Video", | ||
1140 | .type = V4L2_OUTPUT_TYPE_ANALOG, | ||
1141 | .std = V4L2_STD_ALL, | ||
1142 | .capabilities = V4L2_OUT_CAP_STD, | ||
1143 | }, | ||
1144 | { | ||
1145 | .index = 2, | ||
1146 | .name = "Component", | ||
1147 | .type = V4L2_OUTPUT_TYPE_ANALOG, | ||
1148 | .std = V4L2_STD_ALL, | ||
1149 | .capabilities = V4L2_OUT_CAP_STD, | ||
1150 | }, | ||
1151 | |||
1152 | }; | ||
1153 | |||
1154 | static struct disp_route adv7343_routes[] = { | ||
1155 | { | ||
1156 | .output = ADV7343_COMPOSITE_ID, | ||
1157 | }, | ||
1158 | { | ||
1159 | .output = ADV7343_SVIDEO_ID, | ||
1160 | }, | ||
1161 | { | ||
1162 | .output = ADV7343_COMPONENT_ID, | ||
1163 | }, | ||
1164 | }; | ||
1165 | |||
1166 | static struct adv7343_platform_data adv7343_data = { | ||
1167 | .mode_config = { | ||
1168 | .sleep_mode = false, | ||
1169 | .pll_control = false, | ||
1170 | .dac_1 = true, | ||
1171 | .dac_2 = true, | ||
1172 | .dac_3 = true, | ||
1173 | .dac_4 = true, | ||
1174 | .dac_5 = true, | ||
1175 | .dac_6 = true, | ||
1176 | }, | ||
1177 | .sd_config = { | ||
1178 | .sd_dac_out1 = false, | ||
1179 | .sd_dac_out2 = false, | ||
1180 | }, | ||
1181 | }; | ||
1182 | |||
1183 | static struct bfin_display_config bfin_display_data = { | ||
1184 | .card_name = "BF609", | ||
1185 | .outputs = adv7343_outputs, | ||
1186 | .num_outputs = ARRAY_SIZE(adv7343_outputs), | ||
1187 | .routes = adv7343_routes, | ||
1188 | .i2c_adapter_id = 0, | ||
1189 | .board_info = { | ||
1190 | .type = "adv7343", | ||
1191 | .addr = 0x2b, | ||
1192 | .platform_data = (void *)&adv7343_data, | ||
1193 | }, | ||
1194 | .ppi_info = &ppi_info_disp, | ||
1195 | .ppi_control = (PACK_EN | DLEN_8 | EPPI_CTL_FS1LO_FS2LO | ||
1196 | | EPPI_CTL_POLC3 | EPPI_CTL_BLANKGEN | EPPI_CTL_SYNC2 | ||
1197 | | EPPI_CTL_NON656 | EPPI_CTL_DIR), | ||
1198 | }; | ||
1199 | #endif | ||
1200 | |||
1110 | static struct platform_device bfin_display_device = { | 1201 | static struct platform_device bfin_display_device = { |
1111 | .name = "bfin_display", | 1202 | .name = "bfin_display", |
1112 | .dev = { | 1203 | .dev = { |
diff --git a/arch/blackfin/mach-bf609/clock.c b/arch/blackfin/mach-bf609/clock.c index 437d56c82281..dab8849af884 100644 --- a/arch/blackfin/mach-bf609/clock.c +++ b/arch/blackfin/mach-bf609/clock.c | |||
@@ -220,6 +220,12 @@ unsigned long sys_clk_get_rate(struct clk *clk) | |||
220 | } | 220 | } |
221 | } | 221 | } |
222 | 222 | ||
223 | unsigned long dummy_get_rate(struct clk *clk) | ||
224 | { | ||
225 | clk->parent->rate = clk_get_rate(clk->parent); | ||
226 | return clk->parent->rate; | ||
227 | } | ||
228 | |||
223 | unsigned long sys_clk_round_rate(struct clk *clk, unsigned long rate) | 229 | unsigned long sys_clk_round_rate(struct clk *clk, unsigned long rate) |
224 | { | 230 | { |
225 | unsigned long max_rate; | 231 | unsigned long max_rate; |
@@ -283,6 +289,10 @@ static struct clk_ops sys_clk_ops = { | |||
283 | .round_rate = sys_clk_round_rate, | 289 | .round_rate = sys_clk_round_rate, |
284 | }; | 290 | }; |
285 | 291 | ||
292 | static struct clk_ops dummy_clk_ops = { | ||
293 | .get_rate = dummy_get_rate, | ||
294 | }; | ||
295 | |||
286 | static struct clk sys_clkin = { | 296 | static struct clk sys_clkin = { |
287 | .name = "SYS_CLKIN", | 297 | .name = "SYS_CLKIN", |
288 | .rate = CONFIG_CLKIN_HZ, | 298 | .rate = CONFIG_CLKIN_HZ, |
@@ -364,6 +374,12 @@ static struct clk oclk = { | |||
364 | .parent = &pll_clk, | 374 | .parent = &pll_clk, |
365 | }; | 375 | }; |
366 | 376 | ||
377 | static struct clk ethclk = { | ||
378 | .name = "stmmaceth", | ||
379 | .parent = &sclk0, | ||
380 | .ops = &dummy_clk_ops, | ||
381 | }; | ||
382 | |||
367 | static struct clk_lookup bf609_clks[] = { | 383 | static struct clk_lookup bf609_clks[] = { |
368 | CLK(sys_clkin, NULL, "SYS_CLKIN"), | 384 | CLK(sys_clkin, NULL, "SYS_CLKIN"), |
369 | CLK(pll_clk, NULL, "PLLCLK"), | 385 | CLK(pll_clk, NULL, "PLLCLK"), |
@@ -375,6 +391,7 @@ static struct clk_lookup bf609_clks[] = { | |||
375 | CLK(sclk1, NULL, "SCLK1"), | 391 | CLK(sclk1, NULL, "SCLK1"), |
376 | CLK(dclk, NULL, "DCLK"), | 392 | CLK(dclk, NULL, "DCLK"), |
377 | CLK(oclk, NULL, "OCLK"), | 393 | CLK(oclk, NULL, "OCLK"), |
394 | CLK(ethclk, NULL, "stmmaceth"), | ||
378 | }; | 395 | }; |
379 | 396 | ||
380 | int __init clk_init(void) | 397 | int __init clk_init(void) |
diff --git a/arch/blackfin/mach-bf609/include/mach/defBF60x_base.h b/arch/blackfin/mach-bf609/include/mach/defBF60x_base.h index f1a6afae1a71..35caa7bc192c 100644 --- a/arch/blackfin/mach-bf609/include/mach/defBF60x_base.h +++ b/arch/blackfin/mach-bf609/include/mach/defBF60x_base.h | |||
@@ -839,6 +839,16 @@ | |||
839 | #define PORTG_LOCK 0xFFC03344 /* PORTG Port x GPIO Lock Register */ | 839 | #define PORTG_LOCK 0xFFC03344 /* PORTG Port x GPIO Lock Register */ |
840 | #define PORTG_REVID 0xFFC0337C /* PORTG Port x GPIO Revision ID */ | 840 | #define PORTG_REVID 0xFFC0337C /* PORTG Port x GPIO Revision ID */ |
841 | 841 | ||
842 | /* ================================================== | ||
843 | Pads Controller Registers | ||
844 | ================================================== */ | ||
845 | |||
846 | /* ========================= | ||
847 | PADS0 | ||
848 | ========================= */ | ||
849 | #define PADS0_EMAC_PTP_CLKSEL 0xFFC03404 /* PADS0 Clock Selection for EMAC and PTP */ | ||
850 | #define PADS0_TWI_VSEL 0xFFC03408 /* PADS0 TWI Voltage Selection */ | ||
851 | #define PADS0_PORTS_HYST 0xFFC03440 /* PADS0 Hysteresis Enable Register */ | ||
842 | 852 | ||
843 | /* ========================= | 853 | /* ========================= |
844 | PINT Registers | 854 | PINT Registers |
diff --git a/arch/blackfin/mach-bf609/scb.c b/arch/blackfin/mach-bf609/scb.c new file mode 100644 index 000000000000..ac1f07c33594 --- /dev/null +++ b/arch/blackfin/mach-bf609/scb.c | |||
@@ -0,0 +1,363 @@ | |||
1 | /* | ||
2 | * arch/blackfin/mach-common/scb-init.c - reprogram system cross bar priority | ||
3 | * | ||
4 | * Copyright 2012 Analog Devices Inc. | ||
5 | * | ||
6 | * Licensed under the GPL-2 or later. | ||
7 | */ | ||
8 | |||
9 | #include <asm/blackfin.h> | ||
10 | #include <asm/scb.h> | ||
11 | |||
12 | struct scb_mi_prio scb_data[] = { | ||
13 | #ifdef CONFIG_SCB0_MI0 | ||
14 | { REG_SCB0_ARBR0, REG_SCB0_ARBW0, 32, { | ||
15 | CONFIG_SCB0_MI0_SLOT0, | ||
16 | CONFIG_SCB0_MI0_SLOT1, | ||
17 | CONFIG_SCB0_MI0_SLOT2, | ||
18 | CONFIG_SCB0_MI0_SLOT3, | ||
19 | CONFIG_SCB0_MI0_SLOT4, | ||
20 | CONFIG_SCB0_MI0_SLOT5, | ||
21 | CONFIG_SCB0_MI0_SLOT6, | ||
22 | CONFIG_SCB0_MI0_SLOT7, | ||
23 | CONFIG_SCB0_MI0_SLOT8, | ||
24 | CONFIG_SCB0_MI0_SLOT9, | ||
25 | CONFIG_SCB0_MI0_SLOT10, | ||
26 | CONFIG_SCB0_MI0_SLOT11, | ||
27 | CONFIG_SCB0_MI0_SLOT12, | ||
28 | CONFIG_SCB0_MI0_SLOT13, | ||
29 | CONFIG_SCB0_MI0_SLOT14, | ||
30 | CONFIG_SCB0_MI0_SLOT15, | ||
31 | CONFIG_SCB0_MI0_SLOT16, | ||
32 | CONFIG_SCB0_MI0_SLOT17, | ||
33 | CONFIG_SCB0_MI0_SLOT18, | ||
34 | CONFIG_SCB0_MI0_SLOT19, | ||
35 | CONFIG_SCB0_MI0_SLOT20, | ||
36 | CONFIG_SCB0_MI0_SLOT21, | ||
37 | CONFIG_SCB0_MI0_SLOT22, | ||
38 | CONFIG_SCB0_MI0_SLOT23, | ||
39 | CONFIG_SCB0_MI0_SLOT24, | ||
40 | CONFIG_SCB0_MI0_SLOT25, | ||
41 | CONFIG_SCB0_MI0_SLOT26, | ||
42 | CONFIG_SCB0_MI0_SLOT27, | ||
43 | CONFIG_SCB0_MI0_SLOT28, | ||
44 | CONFIG_SCB0_MI0_SLOT29, | ||
45 | CONFIG_SCB0_MI0_SLOT30, | ||
46 | CONFIG_SCB0_MI0_SLOT31 | ||
47 | }, | ||
48 | }, | ||
49 | #endif | ||
50 | #ifdef CONFIG_SCB0_MI1 | ||
51 | { REG_SCB0_ARBR1, REG_SCB0_ARBW1, 32, { | ||
52 | CONFIG_SCB0_MI1_SLOT0, | ||
53 | CONFIG_SCB0_MI1_SLOT1, | ||
54 | CONFIG_SCB0_MI1_SLOT2, | ||
55 | CONFIG_SCB0_MI1_SLOT3, | ||
56 | CONFIG_SCB0_MI1_SLOT4, | ||
57 | CONFIG_SCB0_MI1_SLOT5, | ||
58 | CONFIG_SCB0_MI1_SLOT6, | ||
59 | CONFIG_SCB0_MI1_SLOT7, | ||
60 | CONFIG_SCB0_MI1_SLOT8, | ||
61 | CONFIG_SCB0_MI1_SLOT9, | ||
62 | CONFIG_SCB0_MI1_SLOT10, | ||
63 | CONFIG_SCB0_MI1_SLOT11, | ||
64 | CONFIG_SCB0_MI1_SLOT12, | ||
65 | CONFIG_SCB0_MI1_SLOT13, | ||
66 | CONFIG_SCB0_MI1_SLOT14, | ||
67 | CONFIG_SCB0_MI1_SLOT15, | ||
68 | CONFIG_SCB0_MI1_SLOT16, | ||
69 | CONFIG_SCB0_MI1_SLOT17, | ||
70 | CONFIG_SCB0_MI1_SLOT18, | ||
71 | CONFIG_SCB0_MI1_SLOT19, | ||
72 | CONFIG_SCB0_MI1_SLOT20, | ||
73 | CONFIG_SCB0_MI1_SLOT21, | ||
74 | CONFIG_SCB0_MI1_SLOT22, | ||
75 | CONFIG_SCB0_MI1_SLOT23, | ||
76 | CONFIG_SCB0_MI1_SLOT24, | ||
77 | CONFIG_SCB0_MI1_SLOT25, | ||
78 | CONFIG_SCB0_MI1_SLOT26, | ||
79 | CONFIG_SCB0_MI1_SLOT27, | ||
80 | CONFIG_SCB0_MI1_SLOT28, | ||
81 | CONFIG_SCB0_MI1_SLOT29, | ||
82 | CONFIG_SCB0_MI1_SLOT30, | ||
83 | CONFIG_SCB0_MI1_SLOT31 | ||
84 | }, | ||
85 | }, | ||
86 | #endif | ||
87 | #ifdef CONFIG_SCB0_MI2 | ||
88 | { REG_SCB0_ARBR2, REG_SCB0_ARBW2, 32, { | ||
89 | CONFIG_SCB0_MI2_SLOT0, | ||
90 | CONFIG_SCB0_MI2_SLOT1, | ||
91 | CONFIG_SCB0_MI2_SLOT2, | ||
92 | CONFIG_SCB0_MI2_SLOT3, | ||
93 | CONFIG_SCB0_MI2_SLOT4, | ||
94 | CONFIG_SCB0_MI2_SLOT5, | ||
95 | CONFIG_SCB0_MI2_SLOT6, | ||
96 | CONFIG_SCB0_MI2_SLOT7, | ||
97 | CONFIG_SCB0_MI2_SLOT8, | ||
98 | CONFIG_SCB0_MI2_SLOT9, | ||
99 | CONFIG_SCB0_MI2_SLOT10, | ||
100 | CONFIG_SCB0_MI2_SLOT11, | ||
101 | CONFIG_SCB0_MI2_SLOT12, | ||
102 | CONFIG_SCB0_MI2_SLOT13, | ||
103 | CONFIG_SCB0_MI2_SLOT14, | ||
104 | CONFIG_SCB0_MI2_SLOT15, | ||
105 | CONFIG_SCB0_MI2_SLOT16, | ||
106 | CONFIG_SCB0_MI2_SLOT17, | ||
107 | CONFIG_SCB0_MI2_SLOT18, | ||
108 | CONFIG_SCB0_MI2_SLOT19, | ||
109 | CONFIG_SCB0_MI2_SLOT20, | ||
110 | CONFIG_SCB0_MI2_SLOT21, | ||
111 | CONFIG_SCB0_MI2_SLOT22, | ||
112 | CONFIG_SCB0_MI2_SLOT23, | ||
113 | CONFIG_SCB0_MI2_SLOT24, | ||
114 | CONFIG_SCB0_MI2_SLOT25, | ||
115 | CONFIG_SCB0_MI2_SLOT26, | ||
116 | CONFIG_SCB0_MI2_SLOT27, | ||
117 | CONFIG_SCB0_MI2_SLOT28, | ||
118 | CONFIG_SCB0_MI2_SLOT29, | ||
119 | CONFIG_SCB0_MI2_SLOT30, | ||
120 | CONFIG_SCB0_MI2_SLOT31 | ||
121 | }, | ||
122 | }, | ||
123 | #endif | ||
124 | #ifdef CONFIG_SCB0_MI3 | ||
125 | { REG_SCB0_ARBR3, REG_SCB0_ARBW3, 32, { | ||
126 | CONFIG_SCB0_MI3_SLOT0, | ||
127 | CONFIG_SCB0_MI3_SLOT1, | ||
128 | CONFIG_SCB0_MI3_SLOT2, | ||
129 | CONFIG_SCB0_MI3_SLOT3, | ||
130 | CONFIG_SCB0_MI3_SLOT4, | ||
131 | CONFIG_SCB0_MI3_SLOT5, | ||
132 | CONFIG_SCB0_MI3_SLOT6, | ||
133 | CONFIG_SCB0_MI3_SLOT7, | ||
134 | CONFIG_SCB0_MI3_SLOT8, | ||
135 | CONFIG_SCB0_MI3_SLOT9, | ||
136 | CONFIG_SCB0_MI3_SLOT10, | ||
137 | CONFIG_SCB0_MI3_SLOT11, | ||
138 | CONFIG_SCB0_MI3_SLOT12, | ||
139 | CONFIG_SCB0_MI3_SLOT13, | ||
140 | CONFIG_SCB0_MI3_SLOT14, | ||
141 | CONFIG_SCB0_MI3_SLOT15, | ||
142 | CONFIG_SCB0_MI3_SLOT16, | ||
143 | CONFIG_SCB0_MI3_SLOT17, | ||
144 | CONFIG_SCB0_MI3_SLOT18, | ||
145 | CONFIG_SCB0_MI3_SLOT19, | ||
146 | CONFIG_SCB0_MI3_SLOT20, | ||
147 | CONFIG_SCB0_MI3_SLOT21, | ||
148 | CONFIG_SCB0_MI3_SLOT22, | ||
149 | CONFIG_SCB0_MI3_SLOT23, | ||
150 | CONFIG_SCB0_MI3_SLOT24, | ||
151 | CONFIG_SCB0_MI3_SLOT25, | ||
152 | CONFIG_SCB0_MI3_SLOT26, | ||
153 | CONFIG_SCB0_MI3_SLOT27, | ||
154 | CONFIG_SCB0_MI3_SLOT28, | ||
155 | CONFIG_SCB0_MI3_SLOT29, | ||
156 | CONFIG_SCB0_MI3_SLOT30, | ||
157 | CONFIG_SCB0_MI3_SLOT31 | ||
158 | }, | ||
159 | }, | ||
160 | #endif | ||
161 | #ifdef CONFIG_SCB0_MI4 | ||
162 | { REG_SCB0_ARBR4, REG_SCB4_ARBW0, 32, { | ||
163 | CONFIG_SCB0_MI4_SLOT0, | ||
164 | CONFIG_SCB0_MI4_SLOT1, | ||
165 | CONFIG_SCB0_MI4_SLOT2, | ||
166 | CONFIG_SCB0_MI4_SLOT3, | ||
167 | CONFIG_SCB0_MI4_SLOT4, | ||
168 | CONFIG_SCB0_MI4_SLOT5, | ||
169 | CONFIG_SCB0_MI4_SLOT6, | ||
170 | CONFIG_SCB0_MI4_SLOT7, | ||
171 | CONFIG_SCB0_MI4_SLOT8, | ||
172 | CONFIG_SCB0_MI4_SLOT9, | ||
173 | CONFIG_SCB0_MI4_SLOT10, | ||
174 | CONFIG_SCB0_MI4_SLOT11, | ||
175 | CONFIG_SCB0_MI4_SLOT12, | ||
176 | CONFIG_SCB0_MI4_SLOT13, | ||
177 | CONFIG_SCB0_MI4_SLOT14, | ||
178 | CONFIG_SCB0_MI4_SLOT15, | ||
179 | CONFIG_SCB0_MI4_SLOT16, | ||
180 | CONFIG_SCB0_MI4_SLOT17, | ||
181 | CONFIG_SCB0_MI4_SLOT18, | ||
182 | CONFIG_SCB0_MI4_SLOT19, | ||
183 | CONFIG_SCB0_MI4_SLOT20, | ||
184 | CONFIG_SCB0_MI4_SLOT21, | ||
185 | CONFIG_SCB0_MI4_SLOT22, | ||
186 | CONFIG_SCB0_MI4_SLOT23, | ||
187 | CONFIG_SCB0_MI4_SLOT24, | ||
188 | CONFIG_SCB0_MI4_SLOT25, | ||
189 | CONFIG_SCB0_MI4_SLOT26, | ||
190 | CONFIG_SCB0_MI4_SLOT27, | ||
191 | CONFIG_SCB0_MI4_SLOT28, | ||
192 | CONFIG_SCB0_MI4_SLOT29, | ||
193 | CONFIG_SCB0_MI4_SLOT30, | ||
194 | CONFIG_SCB0_MI4_SLOT31 | ||
195 | }, | ||
196 | }, | ||
197 | #endif | ||
198 | #ifdef CONFIG_SCB0_MI5 | ||
199 | { REG_SCB0_ARBR5, REG_SCB0_ARBW5, 16, { | ||
200 | CONFIG_SCB0_MI5_SLOT0, | ||
201 | CONFIG_SCB0_MI5_SLOT1, | ||
202 | CONFIG_SCB0_MI5_SLOT2, | ||
203 | CONFIG_SCB0_MI5_SLOT3, | ||
204 | CONFIG_SCB0_MI5_SLOT4, | ||
205 | CONFIG_SCB0_MI5_SLOT5, | ||
206 | CONFIG_SCB0_MI5_SLOT6, | ||
207 | CONFIG_SCB0_MI5_SLOT7, | ||
208 | CONFIG_SCB0_MI5_SLOT8, | ||
209 | CONFIG_SCB0_MI5_SLOT9, | ||
210 | CONFIG_SCB0_MI5_SLOT10, | ||
211 | CONFIG_SCB0_MI5_SLOT11, | ||
212 | CONFIG_SCB0_MI5_SLOT12, | ||
213 | CONFIG_SCB0_MI5_SLOT13, | ||
214 | CONFIG_SCB0_MI5_SLOT14, | ||
215 | CONFIG_SCB0_MI5_SLOT15 | ||
216 | }, | ||
217 | }, | ||
218 | #endif | ||
219 | #ifdef CONFIG_SCB1_MI0 | ||
220 | { REG_SCB1_ARBR0, REG_SCB1_ARBW0, 20, { | ||
221 | CONFIG_SCB1_MI0_SLOT0, | ||
222 | CONFIG_SCB1_MI0_SLOT1, | ||
223 | CONFIG_SCB1_MI0_SLOT2, | ||
224 | CONFIG_SCB1_MI0_SLOT3, | ||
225 | CONFIG_SCB1_MI0_SLOT4, | ||
226 | CONFIG_SCB1_MI0_SLOT5, | ||
227 | CONFIG_SCB1_MI0_SLOT6, | ||
228 | CONFIG_SCB1_MI0_SLOT7, | ||
229 | CONFIG_SCB1_MI0_SLOT8, | ||
230 | CONFIG_SCB1_MI0_SLOT9, | ||
231 | CONFIG_SCB1_MI0_SLOT10, | ||
232 | CONFIG_SCB1_MI0_SLOT11, | ||
233 | CONFIG_SCB1_MI0_SLOT12, | ||
234 | CONFIG_SCB1_MI0_SLOT13, | ||
235 | CONFIG_SCB1_MI0_SLOT14, | ||
236 | CONFIG_SCB1_MI0_SLOT15, | ||
237 | CONFIG_SCB1_MI0_SLOT16, | ||
238 | CONFIG_SCB1_MI0_SLOT17, | ||
239 | CONFIG_SCB1_MI0_SLOT18, | ||
240 | CONFIG_SCB1_MI0_SLOT19 | ||
241 | }, | ||
242 | }, | ||
243 | #endif | ||
244 | #ifdef CONFIG_SCB2_MI0 | ||
245 | { REG_SCB2_ARBR0, REG_SCB2_ARBW0, 10, { | ||
246 | CONFIG_SCB2_MI0_SLOT0, | ||
247 | CONFIG_SCB2_MI0_SLOT1, | ||
248 | CONFIG_SCB2_MI0_SLOT2, | ||
249 | CONFIG_SCB2_MI0_SLOT3, | ||
250 | CONFIG_SCB2_MI0_SLOT4, | ||
251 | CONFIG_SCB2_MI0_SLOT5, | ||
252 | CONFIG_SCB2_MI0_SLOT6, | ||
253 | CONFIG_SCB2_MI0_SLOT7, | ||
254 | CONFIG_SCB2_MI0_SLOT8, | ||
255 | CONFIG_SCB2_MI0_SLOT9 | ||
256 | }, | ||
257 | }, | ||
258 | #endif | ||
259 | #ifdef CONFIG_SCB3_MI0 | ||
260 | { REG_SCB3_ARBR0, REG_SCB3_ARBW0, 16, { | ||
261 | CONFIG_SCB3_MI0_SLOT0, | ||
262 | CONFIG_SCB3_MI0_SLOT1, | ||
263 | CONFIG_SCB3_MI0_SLOT2, | ||
264 | CONFIG_SCB3_MI0_SLOT3, | ||
265 | CONFIG_SCB3_MI0_SLOT4, | ||
266 | CONFIG_SCB3_MI0_SLOT5, | ||
267 | CONFIG_SCB3_MI0_SLOT6, | ||
268 | CONFIG_SCB3_MI0_SLOT7, | ||
269 | CONFIG_SCB3_MI0_SLOT8, | ||
270 | CONFIG_SCB3_MI0_SLOT9, | ||
271 | CONFIG_SCB3_MI0_SLOT10, | ||
272 | CONFIG_SCB3_MI0_SLOT11, | ||
273 | CONFIG_SCB3_MI0_SLOT12, | ||
274 | CONFIG_SCB3_MI0_SLOT13, | ||
275 | CONFIG_SCB3_MI0_SLOT14, | ||
276 | CONFIG_SCB3_MI0_SLOT15 | ||
277 | }, | ||
278 | }, | ||
279 | #endif | ||
280 | #ifdef CONFIG_SCB4_MI0 | ||
281 | { REG_SCB4_ARBR0, REG_SCB4_ARBW0, 16, { | ||
282 | CONFIG_SCB4_MI0_SLOT0, | ||
283 | CONFIG_SCB4_MI0_SLOT1, | ||
284 | CONFIG_SCB4_MI0_SLOT2, | ||
285 | CONFIG_SCB4_MI0_SLOT3, | ||
286 | CONFIG_SCB4_MI0_SLOT4, | ||
287 | CONFIG_SCB4_MI0_SLOT5, | ||
288 | CONFIG_SCB4_MI0_SLOT6, | ||
289 | CONFIG_SCB4_MI0_SLOT7, | ||
290 | CONFIG_SCB4_MI0_SLOT8, | ||
291 | CONFIG_SCB4_MI0_SLOT9, | ||
292 | CONFIG_SCB4_MI0_SLOT10, | ||
293 | CONFIG_SCB4_MI0_SLOT11, | ||
294 | CONFIG_SCB4_MI0_SLOT12, | ||
295 | CONFIG_SCB4_MI0_SLOT13, | ||
296 | CONFIG_SCB4_MI0_SLOT14, | ||
297 | CONFIG_SCB4_MI0_SLOT15 | ||
298 | }, | ||
299 | }, | ||
300 | #endif | ||
301 | #ifdef CONFIG_SCB5_MI0 | ||
302 | { REG_SCB5_ARBR0, REG_SCB5_ARBW0, 8, { | ||
303 | CONFIG_SCB5_MI0_SLOT0, | ||
304 | CONFIG_SCB5_MI0_SLOT1, | ||
305 | CONFIG_SCB5_MI0_SLOT2, | ||
306 | CONFIG_SCB5_MI0_SLOT3, | ||
307 | CONFIG_SCB5_MI0_SLOT4, | ||
308 | CONFIG_SCB5_MI0_SLOT5, | ||
309 | CONFIG_SCB5_MI0_SLOT6, | ||
310 | CONFIG_SCB5_MI0_SLOT7 | ||
311 | }, | ||
312 | }, | ||
313 | #endif | ||
314 | #ifdef CONFIG_SCB6_MI0 | ||
315 | { REG_SCB6_ARBR0, REG_SCB6_ARBW0, 4, { | ||
316 | CONFIG_SCB6_MI0_SLOT0, | ||
317 | CONFIG_SCB6_MI0_SLOT1, | ||
318 | CONFIG_SCB6_MI0_SLOT2, | ||
319 | CONFIG_SCB6_MI0_SLOT3 | ||
320 | }, | ||
321 | }, | ||
322 | #endif | ||
323 | #ifdef CONFIG_SCB7_MI0 | ||
324 | { REG_SCB7_ARBR0, REG_SCB7_ARBW0, 6, { | ||
325 | CONFIG_SCB7_MI0_SLOT0, | ||
326 | CONFIG_SCB7_MI0_SLOT1, | ||
327 | CONFIG_SCB7_MI0_SLOT2, | ||
328 | CONFIG_SCB7_MI0_SLOT3, | ||
329 | CONFIG_SCB7_MI0_SLOT4, | ||
330 | CONFIG_SCB7_MI0_SLOT5 | ||
331 | }, | ||
332 | }, | ||
333 | #endif | ||
334 | #ifdef CONFIG_SCB8_MI0 | ||
335 | { REG_SCB8_ARBR0, REG_SCB8_ARBW0, 8, { | ||
336 | CONFIG_SCB8_MI0_SLOT0, | ||
337 | CONFIG_SCB8_MI0_SLOT1, | ||
338 | CONFIG_SCB8_MI0_SLOT2, | ||
339 | CONFIG_SCB8_MI0_SLOT3, | ||
340 | CONFIG_SCB8_MI0_SLOT4, | ||
341 | CONFIG_SCB8_MI0_SLOT5, | ||
342 | CONFIG_SCB8_MI0_SLOT6, | ||
343 | CONFIG_SCB8_MI0_SLOT7 | ||
344 | }, | ||
345 | }, | ||
346 | #endif | ||
347 | #ifdef CONFIG_SCB9_MI0 | ||
348 | { REG_SCB9_ARBR0, REG_SCB9_ARBW0, 10, { | ||
349 | CONFIG_SCB9_MI0_SLOT0, | ||
350 | CONFIG_SCB9_MI0_SLOT1, | ||
351 | CONFIG_SCB9_MI0_SLOT2, | ||
352 | CONFIG_SCB9_MI0_SLOT3, | ||
353 | CONFIG_SCB9_MI0_SLOT4, | ||
354 | CONFIG_SCB9_MI0_SLOT5, | ||
355 | CONFIG_SCB9_MI0_SLOT6, | ||
356 | CONFIG_SCB9_MI0_SLOT7, | ||
357 | CONFIG_SCB9_MI0_SLOT8, | ||
358 | CONFIG_SCB9_MI0_SLOT9 | ||
359 | }, | ||
360 | }, | ||
361 | #endif | ||
362 | { 0, } | ||
363 | }; | ||
diff --git a/arch/blackfin/mach-common/Makefile b/arch/blackfin/mach-common/Makefile index 675466d490d4..f09979204040 100644 --- a/arch/blackfin/mach-common/Makefile +++ b/arch/blackfin/mach-common/Makefile | |||
@@ -10,6 +10,7 @@ obj-$(CONFIG_PM) += pm.o | |||
10 | ifneq ($(CONFIG_BF60x),y) | 10 | ifneq ($(CONFIG_BF60x),y) |
11 | obj-$(CONFIG_PM) += dpmc_modes.o | 11 | obj-$(CONFIG_PM) += dpmc_modes.o |
12 | endif | 12 | endif |
13 | obj-$(CONFIG_SCB_PRIORITY) += scb-init.o | ||
13 | obj-$(CONFIG_CPU_VOLTAGE) += dpmc.o | 14 | obj-$(CONFIG_CPU_VOLTAGE) += dpmc.o |
14 | obj-$(CONFIG_SMP) += smp.o | 15 | obj-$(CONFIG_SMP) += smp.o |
15 | obj-$(CONFIG_BFIN_KERNEL_CLOCK) += clocks-init.o | 16 | obj-$(CONFIG_BFIN_KERNEL_CLOCK) += clocks-init.o |
diff --git a/arch/blackfin/mach-common/scb-init.c b/arch/blackfin/mach-common/scb-init.c new file mode 100644 index 000000000000..2cbfb0b5679e --- /dev/null +++ b/arch/blackfin/mach-common/scb-init.c | |||
@@ -0,0 +1,53 @@ | |||
1 | /* | ||
2 | * arch/blackfin/mach-common/scb-init.c - reprogram system cross bar priority | ||
3 | * | ||
4 | * Copyright 2012 Analog Devices Inc. | ||
5 | * | ||
6 | * Licensed under the GPL-2 or later. | ||
7 | */ | ||
8 | |||
9 | #include <linux/init.h> | ||
10 | #include <linux/errno.h> | ||
11 | #include <linux/kernel.h> | ||
12 | #include <asm/scb.h> | ||
13 | |||
14 | __attribute__((l1_text)) | ||
15 | inline void scb_mi_write(unsigned long scb_mi_arbw, unsigned int slots, | ||
16 | unsigned char *scb_mi_prio) | ||
17 | { | ||
18 | unsigned int i; | ||
19 | |||
20 | for (i = 0; i < slots; ++i) | ||
21 | bfin_write32(scb_mi_arbw, (i << SCB_SLOT_OFFSET) | scb_mi_prio[i]); | ||
22 | } | ||
23 | |||
24 | __attribute__((l1_text)) | ||
25 | inline void scb_mi_read(unsigned long scb_mi_arbw, unsigned int slots, | ||
26 | unsigned char *scb_mi_prio) | ||
27 | { | ||
28 | unsigned int i; | ||
29 | |||
30 | for (i = 0; i < slots; ++i) { | ||
31 | bfin_write32(scb_mi_arbw, (0xFF << SCB_SLOT_OFFSET) | i); | ||
32 | scb_mi_prio[i] = bfin_read32(scb_mi_arbw); | ||
33 | } | ||
34 | } | ||
35 | |||
36 | __attribute__((l1_text)) | ||
37 | void init_scb(void) | ||
38 | { | ||
39 | unsigned int i, j; | ||
40 | unsigned char scb_tmp_prio[32]; | ||
41 | |||
42 | pr_info("Init System Crossbar\n"); | ||
43 | for (i = 0; scb_data[i].scb_mi_arbr > 0; ++i) { | ||
44 | |||
45 | scb_mi_write(scb_data[i].scb_mi_arbw, scb_data[i].scb_mi_slots, scb_data[i].scb_mi_prio); | ||
46 | |||
47 | pr_debug("scb priority at 0x%lx:\n", scb_data[i].scb_mi_arbr); | ||
48 | scb_mi_read(scb_data[i].scb_mi_arbw, scb_data[i].scb_mi_slots, scb_tmp_prio); | ||
49 | for (j = 0; j < scb_data[i].scb_mi_slots; ++j) | ||
50 | pr_debug("slot %d = %d\n", j, scb_tmp_prio[j]); | ||
51 | } | ||
52 | |||
53 | } | ||