1menu "BATS setup"
2
3menuconfig BAT0
4	bool "BAT0"
5
6if BAT0
7
8config BAT0_NAME
9	string "Identifier"
10
11config BAT0_BASE
12	hex "Base"
13
14choice
15	prompt "Block length"
16
17config BAT0_LENGTH_128_KBYTES
18	bool "128 kb"
19
20config BAT0_LENGTH_256_KBYTES
21	bool "256 kb"
22
23config BAT0_LENGTH_512_KBYTES
24	bool "512 kb"
25
26config BAT0_LENGTH_1_MBYTES
27	bool "1 mb"
28
29config BAT0_LENGTH_2_MBYTES
30	bool "2 mb"
31
32config BAT0_LENGTH_4_MBYTES
33	bool "4 mb"
34
35config BAT0_LENGTH_8_MBYTES
36	bool "8 mb"
37
38config BAT0_LENGTH_16_MBYTES
39	bool "16 mb"
40
41config BAT0_LENGTH_32_MBYTES
42	bool "32 mb"
43
44config BAT0_LENGTH_64_MBYTES
45	bool "64 mb"
46
47config BAT0_LENGTH_128_MBYTES
48	bool "128 mb"
49
50config BAT0_LENGTH_256_MBYTES
51	bool "256 mb"
52endchoice
53
54choice
55	prompt "Protection mode"
56
57config BAT0_ACCESS_NONE
58	bool "No access"
59
60config BAT0_ACCESS_RO
61	bool "Read-only"
62
63config BAT0_ACCESS_RW
64	bool "Read-write"
65
66endchoice
67
68config BAT0_ICACHE_INHIBITED
69	bool "I-cache Inhibited"
70
71config BAT0_ICACHE_MEMORYCOHERENCE
72	bool "I-cache Memory coherence"
73
74config BAT0_DCACHE_WRITETHROUGH
75	bool "D-cache Write-through"
76
77config BAT0_DCACHE_INHIBITED
78	bool "D-cache Inhibited"
79
80config BAT0_DCACHE_MEMORYCOHERENCE
81	bool "D-cache Memory coherence"
82
83config BAT0_DCACHE_GUARDED
84	bool "D-cache Guarded"
85
86config BAT0_USER_MODE_VALID
87	bool "User mode valid"
88
89config BAT0_SUPERVISOR_MODE_VALID
90	bool "Supervisor mode valid"
91
92endif
93
94config BAT0_LENGTH
95	hex
96	default 0x00000000 if BAT0_LENGTH_128_KBYTES
97	default 0x00000004 if BAT0_LENGTH_256_KBYTES
98	default 0x0000000c if BAT0_LENGTH_512_KBYTES
99	default 0x0000001c if BAT0_LENGTH_1_MBYTES
100	default 0x0000003c if BAT0_LENGTH_2_MBYTES
101	default 0x0000007c if BAT0_LENGTH_4_MBYTES
102	default 0x000000fc if BAT0_LENGTH_8_MBYTES
103	default 0x000001fc if BAT0_LENGTH_16_MBYTES
104	default 0x000003fc if BAT0_LENGTH_32_MBYTES
105	default 0x000007fc if BAT0_LENGTH_64_MBYTES
106	default 0x00000ffc if BAT0_LENGTH_128_MBYTES
107	default 0x00001ffc if BAT0_LENGTH_256_MBYTES
108
109config BAT0_PAGE_PROTECTION
110	hex
111	default 0x0 if BAT0_ACCESS_NONE
112	default 0x1 if BAT0_ACCESS_RO
113	default 0x2 if BAT0_ACCESS_RW
114
115config BAT0_WIMG_ICACHE
116	hex
117	default 0x0 if !BAT0_ICACHE_INHIBITED && !BAT0_ICACHE_MEMORYCOHERENCE
118	default 0x10 if !BAT0_ICACHE_INHIBITED && BAT0_ICACHE_MEMORYCOHERENCE
119	default 0x20 if BAT0_ICACHE_INHIBITED && !BAT0_ICACHE_MEMORYCOHERENCE
120	default 0x30 if BAT0_ICACHE_INHIBITED && BAT0_ICACHE_MEMORYCOHERENCE
121
122config BAT0_WIMG_DCACHE
123	hex
124	default 0x0 if !BAT0_DCACHE_WRITETHROUGH && !BAT0_DCACHE_INHIBITED && !BAT0_DCACHE_MEMORYCOHERENCE && !BAT0_DCACHE_GUARDED
125	default 0x8 if !BAT0_DCACHE_WRITETHROUGH && !BAT0_DCACHE_INHIBITED && !BAT0_DCACHE_MEMORYCOHERENCE && BAT0_DCACHE_GUARDED
126	default 0x10 if !BAT0_DCACHE_WRITETHROUGH && !BAT0_DCACHE_INHIBITED && BAT0_DCACHE_MEMORYCOHERENCE && !BAT0_DCACHE_GUARDED
127	default 0x18 if !BAT0_DCACHE_WRITETHROUGH && !BAT0_DCACHE_INHIBITED && BAT0_DCACHE_MEMORYCOHERENCE && BAT0_DCACHE_GUARDED
128	default 0x20 if !BAT0_DCACHE_WRITETHROUGH && BAT0_DCACHE_INHIBITED && !BAT0_DCACHE_MEMORYCOHERENCE && !BAT0_DCACHE_GUARDED
129	default 0x28 if !BAT0_DCACHE_WRITETHROUGH && BAT0_DCACHE_INHIBITED && !BAT0_DCACHE_MEMORYCOHERENCE && BAT0_DCACHE_GUARDED
130	default 0x30 if !BAT0_DCACHE_WRITETHROUGH && BAT0_DCACHE_INHIBITED && BAT0_DCACHE_MEMORYCOHERENCE && !BAT0_DCACHE_GUARDED
131	default 0x38 if !BAT0_DCACHE_WRITETHROUGH && BAT0_DCACHE_INHIBITED && BAT0_DCACHE_MEMORYCOHERENCE && BAT0_DCACHE_GUARDED
132	default 0x40 if BAT0_DCACHE_WRITETHROUGH && !BAT0_DCACHE_INHIBITED && !BAT0_DCACHE_MEMORYCOHERENCE && !BAT0_DCACHE_GUARDED
133	default 0x48 if BAT0_DCACHE_WRITETHROUGH && !BAT0_DCACHE_INHIBITED && !BAT0_DCACHE_MEMORYCOHERENCE && BAT0_DCACHE_GUARDED
134	default 0x50 if BAT0_DCACHE_WRITETHROUGH && !BAT0_DCACHE_INHIBITED && BAT0_DCACHE_MEMORYCOHERENCE && !BAT0_DCACHE_GUARDED
135	default 0x58 if BAT0_DCACHE_WRITETHROUGH && !BAT0_DCACHE_INHIBITED && BAT0_DCACHE_MEMORYCOHERENCE && BAT0_DCACHE_GUARDED
136	default 0x60 if BAT0_DCACHE_WRITETHROUGH && BAT0_DCACHE_INHIBITED && !BAT0_DCACHE_MEMORYCOHERENCE && !BAT0_DCACHE_GUARDED
137	default 0x68 if BAT0_DCACHE_WRITETHROUGH && BAT0_DCACHE_INHIBITED && !BAT0_DCACHE_MEMORYCOHERENCE && BAT0_DCACHE_GUARDED
138	default 0x70 if BAT0_DCACHE_WRITETHROUGH && BAT0_DCACHE_INHIBITED && BAT0_DCACHE_MEMORYCOHERENCE && !BAT0_DCACHE_GUARDED
139	default 0x78 if BAT0_DCACHE_WRITETHROUGH && BAT0_DCACHE_INHIBITED && BAT0_DCACHE_MEMORYCOHERENCE && BAT0_DCACHE_GUARDED
140
141config BAT0_VALID_BITS
142	hex
143	default 0x0 if !BAT0_SUPERVISOR_MODE_VALID && !BAT0_USER_MODE_VALID
144	default 0x1 if !BAT0_SUPERVISOR_MODE_VALID && BAT0_USER_MODE_VALID
145	default 0x2 if BAT0_SUPERVISOR_MODE_VALID && !BAT0_USER_MODE_VALID
146	default 0x3 if BAT0_SUPERVISOR_MODE_VALID && BAT0_USER_MODE_VALID
147
148menuconfig BAT1
149	bool "BAT1"
150
151if BAT1
152
153config BAT1_NAME
154	string "Identifier"
155
156config BAT1_BASE
157	hex "Base"
158
159choice
160	prompt "Block length"
161
162config BAT1_LENGTH_128_KBYTES
163	bool "128 kb"
164
165config BAT1_LENGTH_256_KBYTES
166	bool "256 kb"
167
168config BAT1_LENGTH_512_KBYTES
169	bool "512 kb"
170
171config BAT1_LENGTH_1_MBYTES
172	bool "1 mb"
173
174config BAT1_LENGTH_2_MBYTES
175	bool "2 mb"
176
177config BAT1_LENGTH_4_MBYTES
178	bool "4 mb"
179
180config BAT1_LENGTH_8_MBYTES
181	bool "8 mb"
182
183config BAT1_LENGTH_16_MBYTES
184	bool "16 mb"
185
186config BAT1_LENGTH_32_MBYTES
187	bool "32 mb"
188
189config BAT1_LENGTH_64_MBYTES
190	bool "64 mb"
191
192config BAT1_LENGTH_128_MBYTES
193	bool "128 mb"
194
195config BAT1_LENGTH_256_MBYTES
196	bool "256 mb"
197endchoice
198
199choice
200	prompt "Protection mode"
201
202config BAT1_ACCESS_NONE
203	bool "No access"
204
205config BAT1_ACCESS_RO
206	bool "Read-only"
207
208config BAT1_ACCESS_RW
209	bool "Read-write"
210
211endchoice
212
213config BAT1_ICACHE_INHIBITED
214	bool "I-cache Inhibited"
215
216config BAT1_ICACHE_MEMORYCOHERENCE
217	bool "I-cache Memory coherence"
218
219config BAT1_DCACHE_WRITETHROUGH
220	bool "D-cache Write-through"
221
222config BAT1_DCACHE_INHIBITED
223	bool "D-cache Inhibited"
224
225config BAT1_DCACHE_MEMORYCOHERENCE
226	bool "D-cache Memory coherence"
227
228config BAT1_DCACHE_GUARDED
229	bool "D-cache Guarded"
230
231config BAT1_USER_MODE_VALID
232	bool "User mode valid"
233
234config BAT1_SUPERVISOR_MODE_VALID
235	bool "Supervisor mode valid"
236
237endif
238
239config BAT1_LENGTH
240	hex
241	default 0x00000000 if BAT1_LENGTH_128_KBYTES
242	default 0x00000004 if BAT1_LENGTH_256_KBYTES
243	default 0x0000000c if BAT1_LENGTH_512_KBYTES
244	default 0x0000001c if BAT1_LENGTH_1_MBYTES
245	default 0x0000003c if BAT1_LENGTH_2_MBYTES
246	default 0x0000007c if BAT1_LENGTH_4_MBYTES
247	default 0x000000fc if BAT1_LENGTH_8_MBYTES
248	default 0x000001fc if BAT1_LENGTH_16_MBYTES
249	default 0x000003fc if BAT1_LENGTH_32_MBYTES
250	default 0x000007fc if BAT1_LENGTH_64_MBYTES
251	default 0x00000ffc if BAT1_LENGTH_128_MBYTES
252	default 0x00001ffc if BAT1_LENGTH_256_MBYTES
253
254config BAT1_PAGE_PROTECTION
255	hex
256	default 0x0 if BAT1_ACCESS_NONE
257	default 0x1 if BAT1_ACCESS_RO
258	default 0x2 if BAT1_ACCESS_RW
259
260config BAT1_WIMG_ICACHE
261	hex
262	default 0x0 if !BAT1_ICACHE_INHIBITED && !BAT1_ICACHE_MEMORYCOHERENCE
263	default 0x10 if !BAT1_ICACHE_INHIBITED && BAT1_ICACHE_MEMORYCOHERENCE
264	default 0x20 if BAT1_ICACHE_INHIBITED && !BAT1_ICACHE_MEMORYCOHERENCE
265	default 0x30 if BAT1_ICACHE_INHIBITED && BAT1_ICACHE_MEMORYCOHERENCE
266
267config BAT1_WIMG_DCACHE
268	hex
269	default 0x0 if !BAT1_DCACHE_WRITETHROUGH && !BAT1_DCACHE_INHIBITED && !BAT1_DCACHE_MEMORYCOHERENCE && !BAT1_DCACHE_GUARDED
270	default 0x8 if !BAT1_DCACHE_WRITETHROUGH && !BAT1_DCACHE_INHIBITED && !BAT1_DCACHE_MEMORYCOHERENCE && BAT1_DCACHE_GUARDED
271	default 0x10 if !BAT1_DCACHE_WRITETHROUGH && !BAT1_DCACHE_INHIBITED && BAT1_DCACHE_MEMORYCOHERENCE && !BAT1_DCACHE_GUARDED
272	default 0x18 if !BAT1_DCACHE_WRITETHROUGH && !BAT1_DCACHE_INHIBITED && BAT1_DCACHE_MEMORYCOHERENCE && BAT1_DCACHE_GUARDED
273	default 0x20 if !BAT1_DCACHE_WRITETHROUGH && BAT1_DCACHE_INHIBITED && !BAT1_DCACHE_MEMORYCOHERENCE && !BAT1_DCACHE_GUARDED
274	default 0x28 if !BAT1_DCACHE_WRITETHROUGH && BAT1_DCACHE_INHIBITED && !BAT1_DCACHE_MEMORYCOHERENCE && BAT1_DCACHE_GUARDED
275	default 0x30 if !BAT1_DCACHE_WRITETHROUGH && BAT1_DCACHE_INHIBITED && BAT1_DCACHE_MEMORYCOHERENCE && !BAT1_DCACHE_GUARDED
276	default 0x38 if !BAT1_DCACHE_WRITETHROUGH && BAT1_DCACHE_INHIBITED && BAT1_DCACHE_MEMORYCOHERENCE && BAT1_DCACHE_GUARDED
277	default 0x40 if BAT1_DCACHE_WRITETHROUGH && !BAT1_DCACHE_INHIBITED && !BAT1_DCACHE_MEMORYCOHERENCE && !BAT1_DCACHE_GUARDED
278	default 0x48 if BAT1_DCACHE_WRITETHROUGH && !BAT1_DCACHE_INHIBITED && !BAT1_DCACHE_MEMORYCOHERENCE && BAT1_DCACHE_GUARDED
279	default 0x50 if BAT1_DCACHE_WRITETHROUGH && !BAT1_DCACHE_INHIBITED && BAT1_DCACHE_MEMORYCOHERENCE && !BAT1_DCACHE_GUARDED
280	default 0x58 if BAT1_DCACHE_WRITETHROUGH && !BAT1_DCACHE_INHIBITED && BAT1_DCACHE_MEMORYCOHERENCE && BAT1_DCACHE_GUARDED
281	default 0x60 if BAT1_DCACHE_WRITETHROUGH && BAT1_DCACHE_INHIBITED && !BAT1_DCACHE_MEMORYCOHERENCE && !BAT1_DCACHE_GUARDED
282	default 0x68 if BAT1_DCACHE_WRITETHROUGH && BAT1_DCACHE_INHIBITED && !BAT1_DCACHE_MEMORYCOHERENCE && BAT1_DCACHE_GUARDED
283	default 0x70 if BAT1_DCACHE_WRITETHROUGH && BAT1_DCACHE_INHIBITED && BAT1_DCACHE_MEMORYCOHERENCE && !BAT1_DCACHE_GUARDED
284	default 0x78 if BAT1_DCACHE_WRITETHROUGH && BAT1_DCACHE_INHIBITED && BAT1_DCACHE_MEMORYCOHERENCE && BAT1_DCACHE_GUARDED
285
286config BAT1_VALID_BITS
287	hex
288	default 0x0 if !BAT1_SUPERVISOR_MODE_VALID && !BAT1_USER_MODE_VALID
289	default 0x1 if !BAT1_SUPERVISOR_MODE_VALID && BAT1_USER_MODE_VALID
290	default 0x2 if BAT1_SUPERVISOR_MODE_VALID && !BAT1_USER_MODE_VALID
291	default 0x3 if BAT1_SUPERVISOR_MODE_VALID && BAT1_USER_MODE_VALID
292
293menuconfig BAT2
294	bool "BAT2"
295
296if BAT2
297
298config BAT2_NAME
299	string "Identifier"
300
301config BAT2_BASE
302	hex "Base"
303
304choice
305	prompt "Block length"
306
307config BAT2_LENGTH_128_KBYTES
308	bool "128 kb"
309
310config BAT2_LENGTH_256_KBYTES
311	bool "256 kb"
312
313config BAT2_LENGTH_512_KBYTES
314	bool "512 kb"
315
316config BAT2_LENGTH_1_MBYTES
317	bool "1 mb"
318
319config BAT2_LENGTH_2_MBYTES
320	bool "2 mb"
321
322config BAT2_LENGTH_4_MBYTES
323	bool "4 mb"
324
325config BAT2_LENGTH_8_MBYTES
326	bool "8 mb"
327
328config BAT2_LENGTH_16_MBYTES
329	bool "16 mb"
330
331config BAT2_LENGTH_32_MBYTES
332	bool "32 mb"
333
334config BAT2_LENGTH_64_MBYTES
335	bool "64 mb"
336
337config BAT2_LENGTH_128_MBYTES
338	bool "128 mb"
339
340config BAT2_LENGTH_256_MBYTES
341	bool "256 mb"
342endchoice
343
344choice
345	prompt "Protection mode"
346
347config BAT2_ACCESS_NONE
348	bool "No access"
349
350config BAT2_ACCESS_RO
351	bool "Read-only"
352
353config BAT2_ACCESS_RW
354	bool "Read-write"
355
356endchoice
357
358config BAT2_ICACHE_INHIBITED
359	bool "I-cache Inhibited"
360
361config BAT2_ICACHE_MEMORYCOHERENCE
362	bool "I-cache Memory coherence"
363
364config BAT2_DCACHE_WRITETHROUGH
365	bool "D-cache Write-through"
366
367config BAT2_DCACHE_INHIBITED
368	bool "D-cache Inhibited"
369
370config BAT2_DCACHE_MEMORYCOHERENCE
371	bool "D-cache Memory coherence"
372
373config BAT2_DCACHE_GUARDED
374	bool "D-cache Guarded"
375
376config BAT2_USER_MODE_VALID
377	bool "User mode valid"
378
379config BAT2_SUPERVISOR_MODE_VALID
380	bool "Supervisor mode valid"
381
382endif
383
384config BAT2_LENGTH
385	hex
386	default 0x00000000 if BAT2_LENGTH_128_KBYTES
387	default 0x00000004 if BAT2_LENGTH_256_KBYTES
388	default 0x0000000c if BAT2_LENGTH_512_KBYTES
389	default 0x0000001c if BAT2_LENGTH_1_MBYTES
390	default 0x0000003c if BAT2_LENGTH_2_MBYTES
391	default 0x0000007c if BAT2_LENGTH_4_MBYTES
392	default 0x000000fc if BAT2_LENGTH_8_MBYTES
393	default 0x000001fc if BAT2_LENGTH_16_MBYTES
394	default 0x000003fc if BAT2_LENGTH_32_MBYTES
395	default 0x000007fc if BAT2_LENGTH_64_MBYTES
396	default 0x00000ffc if BAT2_LENGTH_128_MBYTES
397	default 0x00001ffc if BAT2_LENGTH_256_MBYTES
398
399config BAT2_PAGE_PROTECTION
400	hex
401	default 0x0 if BAT2_ACCESS_NONE
402	default 0x1 if BAT2_ACCESS_RO
403	default 0x2 if BAT2_ACCESS_RW
404
405config BAT2_WIMG_ICACHE
406	hex
407	default 0x0 if !BAT2_ICACHE_INHIBITED && !BAT2_ICACHE_MEMORYCOHERENCE
408	default 0x10 if !BAT2_ICACHE_INHIBITED && BAT2_ICACHE_MEMORYCOHERENCE
409	default 0x20 if BAT2_ICACHE_INHIBITED && !BAT2_ICACHE_MEMORYCOHERENCE
410	default 0x30 if BAT2_ICACHE_INHIBITED && BAT2_ICACHE_MEMORYCOHERENCE
411
412config BAT2_WIMG_DCACHE
413	hex
414	default 0x0 if !BAT2_DCACHE_WRITETHROUGH && !BAT2_DCACHE_INHIBITED && !BAT2_DCACHE_MEMORYCOHERENCE && !BAT2_DCACHE_GUARDED
415	default 0x8 if !BAT2_DCACHE_WRITETHROUGH && !BAT2_DCACHE_INHIBITED && !BAT2_DCACHE_MEMORYCOHERENCE && BAT2_DCACHE_GUARDED
416	default 0x10 if !BAT2_DCACHE_WRITETHROUGH && !BAT2_DCACHE_INHIBITED && BAT2_DCACHE_MEMORYCOHERENCE && !BAT2_DCACHE_GUARDED
417	default 0x18 if !BAT2_DCACHE_WRITETHROUGH && !BAT2_DCACHE_INHIBITED && BAT2_DCACHE_MEMORYCOHERENCE && BAT2_DCACHE_GUARDED
418	default 0x20 if !BAT2_DCACHE_WRITETHROUGH && BAT2_DCACHE_INHIBITED && !BAT2_DCACHE_MEMORYCOHERENCE && !BAT2_DCACHE_GUARDED
419	default 0x28 if !BAT2_DCACHE_WRITETHROUGH && BAT2_DCACHE_INHIBITED && !BAT2_DCACHE_MEMORYCOHERENCE && BAT2_DCACHE_GUARDED
420	default 0x30 if !BAT2_DCACHE_WRITETHROUGH && BAT2_DCACHE_INHIBITED && BAT2_DCACHE_MEMORYCOHERENCE && !BAT2_DCACHE_GUARDED
421	default 0x38 if !BAT2_DCACHE_WRITETHROUGH && BAT2_DCACHE_INHIBITED && BAT2_DCACHE_MEMORYCOHERENCE && BAT2_DCACHE_GUARDED
422	default 0x40 if BAT2_DCACHE_WRITETHROUGH && !BAT2_DCACHE_INHIBITED && !BAT2_DCACHE_MEMORYCOHERENCE && !BAT2_DCACHE_GUARDED
423	default 0x48 if BAT2_DCACHE_WRITETHROUGH && !BAT2_DCACHE_INHIBITED && !BAT2_DCACHE_MEMORYCOHERENCE && BAT2_DCACHE_GUARDED
424	default 0x50 if BAT2_DCACHE_WRITETHROUGH && !BAT2_DCACHE_INHIBITED && BAT2_DCACHE_MEMORYCOHERENCE && !BAT2_DCACHE_GUARDED
425	default 0x58 if BAT2_DCACHE_WRITETHROUGH && !BAT2_DCACHE_INHIBITED && BAT2_DCACHE_MEMORYCOHERENCE && BAT2_DCACHE_GUARDED
426	default 0x60 if BAT2_DCACHE_WRITETHROUGH && BAT2_DCACHE_INHIBITED && !BAT2_DCACHE_MEMORYCOHERENCE && !BAT2_DCACHE_GUARDED
427	default 0x68 if BAT2_DCACHE_WRITETHROUGH && BAT2_DCACHE_INHIBITED && !BAT2_DCACHE_MEMORYCOHERENCE && BAT2_DCACHE_GUARDED
428	default 0x70 if BAT2_DCACHE_WRITETHROUGH && BAT2_DCACHE_INHIBITED && BAT2_DCACHE_MEMORYCOHERENCE && !BAT2_DCACHE_GUARDED
429	default 0x78 if BAT2_DCACHE_WRITETHROUGH && BAT2_DCACHE_INHIBITED && BAT2_DCACHE_MEMORYCOHERENCE && BAT2_DCACHE_GUARDED
430
431config BAT2_VALID_BITS
432	hex
433	default 0x0 if !BAT2_SUPERVISOR_MODE_VALID && !BAT2_USER_MODE_VALID
434	default 0x1 if !BAT2_SUPERVISOR_MODE_VALID && BAT2_USER_MODE_VALID
435	default 0x2 if BAT2_SUPERVISOR_MODE_VALID && !BAT2_USER_MODE_VALID
436	default 0x3 if BAT2_SUPERVISOR_MODE_VALID && BAT2_USER_MODE_VALID
437
438menuconfig BAT3
439	bool "BAT3"
440
441if BAT3
442
443config BAT3_NAME
444	string "Identifier"
445
446config BAT3_BASE
447	hex "Base"
448
449choice
450	prompt "Block length"
451
452config BAT3_LENGTH_128_KBYTES
453	bool "128 kb"
454
455config BAT3_LENGTH_256_KBYTES
456	bool "256 kb"
457
458config BAT3_LENGTH_512_KBYTES
459	bool "512 kb"
460
461config BAT3_LENGTH_1_MBYTES
462	bool "1 mb"
463
464config BAT3_LENGTH_2_MBYTES
465	bool "2 mb"
466
467config BAT3_LENGTH_4_MBYTES
468	bool "4 mb"
469
470config BAT3_LENGTH_8_MBYTES
471	bool "8 mb"
472
473config BAT3_LENGTH_16_MBYTES
474	bool "16 mb"
475
476config BAT3_LENGTH_32_MBYTES
477	bool "32 mb"
478
479config BAT3_LENGTH_64_MBYTES
480	bool "64 mb"
481
482config BAT3_LENGTH_128_MBYTES
483	bool "128 mb"
484
485config BAT3_LENGTH_256_MBYTES
486	bool "256 mb"
487endchoice
488
489choice
490	prompt "Protection mode"
491
492config BAT3_ACCESS_NONE
493	bool "No access"
494
495config BAT3_ACCESS_RO
496	bool "Read-only"
497
498config BAT3_ACCESS_RW
499	bool "Read-write"
500
501endchoice
502
503config BAT3_ICACHE_INHIBITED
504	bool "I-cache Inhibited"
505
506config BAT3_ICACHE_MEMORYCOHERENCE
507	bool "I-cache Memory coherence"
508
509config BAT3_DCACHE_WRITETHROUGH
510	bool "D-cache Write-through"
511
512config BAT3_DCACHE_INHIBITED
513	bool "D-cache Inhibited"
514
515config BAT3_DCACHE_MEMORYCOHERENCE
516	bool "D-cache Memory coherence"
517
518config BAT3_DCACHE_GUARDED
519	bool "D-cache Guarded"
520
521config BAT3_USER_MODE_VALID
522	bool "User mode valid"
523
524config BAT3_SUPERVISOR_MODE_VALID
525	bool "Supervisor mode valid"
526
527endif
528
529config BAT3_LENGTH
530	hex
531	default 0x00000000 if BAT3_LENGTH_128_KBYTES
532	default 0x00000004 if BAT3_LENGTH_256_KBYTES
533	default 0x0000000c if BAT3_LENGTH_512_KBYTES
534	default 0x0000001c if BAT3_LENGTH_1_MBYTES
535	default 0x0000003c if BAT3_LENGTH_2_MBYTES
536	default 0x0000007c if BAT3_LENGTH_4_MBYTES
537	default 0x000000fc if BAT3_LENGTH_8_MBYTES
538	default 0x000001fc if BAT3_LENGTH_16_MBYTES
539	default 0x000003fc if BAT3_LENGTH_32_MBYTES
540	default 0x000007fc if BAT3_LENGTH_64_MBYTES
541	default 0x00000ffc if BAT3_LENGTH_128_MBYTES
542	default 0x00001ffc if BAT3_LENGTH_256_MBYTES
543
544config BAT3_PAGE_PROTECTION
545	hex
546	default 0x0 if BAT3_ACCESS_NONE
547	default 0x1 if BAT3_ACCESS_RO
548	default 0x2 if BAT3_ACCESS_RW
549
550config BAT3_WIMG_ICACHE
551	hex
552	default 0x0 if !BAT3_ICACHE_INHIBITED && !BAT3_ICACHE_MEMORYCOHERENCE
553	default 0x10 if !BAT3_ICACHE_INHIBITED && BAT3_ICACHE_MEMORYCOHERENCE
554	default 0x20 if BAT3_ICACHE_INHIBITED && !BAT3_ICACHE_MEMORYCOHERENCE
555	default 0x30 if BAT3_ICACHE_INHIBITED && BAT3_ICACHE_MEMORYCOHERENCE
556
557config BAT3_WIMG_DCACHE
558	hex
559	default 0x0 if !BAT3_DCACHE_WRITETHROUGH && !BAT3_DCACHE_INHIBITED && !BAT3_DCACHE_MEMORYCOHERENCE && !BAT3_DCACHE_GUARDED
560	default 0x8 if !BAT3_DCACHE_WRITETHROUGH && !BAT3_DCACHE_INHIBITED && !BAT3_DCACHE_MEMORYCOHERENCE && BAT3_DCACHE_GUARDED
561	default 0x10 if !BAT3_DCACHE_WRITETHROUGH && !BAT3_DCACHE_INHIBITED && BAT3_DCACHE_MEMORYCOHERENCE && !BAT3_DCACHE_GUARDED
562	default 0x18 if !BAT3_DCACHE_WRITETHROUGH && !BAT3_DCACHE_INHIBITED && BAT3_DCACHE_MEMORYCOHERENCE && BAT3_DCACHE_GUARDED
563	default 0x20 if !BAT3_DCACHE_WRITETHROUGH && BAT3_DCACHE_INHIBITED && !BAT3_DCACHE_MEMORYCOHERENCE && !BAT3_DCACHE_GUARDED
564	default 0x28 if !BAT3_DCACHE_WRITETHROUGH && BAT3_DCACHE_INHIBITED && !BAT3_DCACHE_MEMORYCOHERENCE && BAT3_DCACHE_GUARDED
565	default 0x30 if !BAT3_DCACHE_WRITETHROUGH && BAT3_DCACHE_INHIBITED && BAT3_DCACHE_MEMORYCOHERENCE && !BAT3_DCACHE_GUARDED
566	default 0x38 if !BAT3_DCACHE_WRITETHROUGH && BAT3_DCACHE_INHIBITED && BAT3_DCACHE_MEMORYCOHERENCE && BAT3_DCACHE_GUARDED
567	default 0x40 if BAT3_DCACHE_WRITETHROUGH && !BAT3_DCACHE_INHIBITED && !BAT3_DCACHE_MEMORYCOHERENCE && !BAT3_DCACHE_GUARDED
568	default 0x48 if BAT3_DCACHE_WRITETHROUGH && !BAT3_DCACHE_INHIBITED && !BAT3_DCACHE_MEMORYCOHERENCE && BAT3_DCACHE_GUARDED
569	default 0x50 if BAT3_DCACHE_WRITETHROUGH && !BAT3_DCACHE_INHIBITED && BAT3_DCACHE_MEMORYCOHERENCE && !BAT3_DCACHE_GUARDED
570	default 0x58 if BAT3_DCACHE_WRITETHROUGH && !BAT3_DCACHE_INHIBITED && BAT3_DCACHE_MEMORYCOHERENCE && BAT3_DCACHE_GUARDED
571	default 0x60 if BAT3_DCACHE_WRITETHROUGH && BAT3_DCACHE_INHIBITED && !BAT3_DCACHE_MEMORYCOHERENCE && !BAT3_DCACHE_GUARDED
572	default 0x68 if BAT3_DCACHE_WRITETHROUGH && BAT3_DCACHE_INHIBITED && !BAT3_DCACHE_MEMORYCOHERENCE && BAT3_DCACHE_GUARDED
573	default 0x70 if BAT3_DCACHE_WRITETHROUGH && BAT3_DCACHE_INHIBITED && BAT3_DCACHE_MEMORYCOHERENCE && !BAT3_DCACHE_GUARDED
574	default 0x78 if BAT3_DCACHE_WRITETHROUGH && BAT3_DCACHE_INHIBITED && BAT3_DCACHE_MEMORYCOHERENCE && BAT3_DCACHE_GUARDED
575
576config BAT3_VALID_BITS
577	hex
578	default 0x0 if !BAT3_SUPERVISOR_MODE_VALID && !BAT3_USER_MODE_VALID
579	default 0x1 if !BAT3_SUPERVISOR_MODE_VALID && BAT3_USER_MODE_VALID
580	default 0x2 if BAT3_SUPERVISOR_MODE_VALID && !BAT3_USER_MODE_VALID
581	default 0x3 if BAT3_SUPERVISOR_MODE_VALID && BAT3_USER_MODE_VALID
582
583if HIGH_BATS
584
585menuconfig BAT4
586	bool "BAT4"
587
588if BAT4
589
590config BAT4_NAME
591	string "Identifier"
592
593config BAT4_BASE
594	hex "Base"
595
596choice
597	prompt "Block length"
598
599config BAT4_LENGTH_128_KBYTES
600	bool "128 kb"
601
602config BAT4_LENGTH_256_KBYTES
603	bool "256 kb"
604
605config BAT4_LENGTH_512_KBYTES
606	bool "512 kb"
607
608config BAT4_LENGTH_1_MBYTES
609	bool "1 mb"
610
611config BAT4_LENGTH_2_MBYTES
612	bool "2 mb"
613
614config BAT4_LENGTH_4_MBYTES
615	bool "4 mb"
616
617config BAT4_LENGTH_8_MBYTES
618	bool "8 mb"
619
620config BAT4_LENGTH_16_MBYTES
621	bool "16 mb"
622
623config BAT4_LENGTH_32_MBYTES
624	bool "32 mb"
625
626config BAT4_LENGTH_64_MBYTES
627	bool "64 mb"
628
629config BAT4_LENGTH_128_MBYTES
630	bool "128 mb"
631
632config BAT4_LENGTH_256_MBYTES
633	bool "256 mb"
634endchoice
635
636choice
637	prompt "Protection mode"
638
639config BAT4_ACCESS_NONE
640	bool "No access"
641
642config BAT4_ACCESS_RO
643	bool "Read-only"
644
645config BAT4_ACCESS_RW
646	bool "Read-write"
647
648endchoice
649
650config BAT4_ICACHE_INHIBITED
651	bool "I-cache Inhibited"
652
653config BAT4_ICACHE_MEMORYCOHERENCE
654	bool "I-cache Memory coherence"
655
656config BAT4_DCACHE_WRITETHROUGH
657	bool "D-cache Write-through"
658
659config BAT4_DCACHE_INHIBITED
660	bool "D-cache Inhibited"
661
662config BAT4_DCACHE_MEMORYCOHERENCE
663	bool "D-cache Memory coherence"
664
665config BAT4_DCACHE_GUARDED
666	bool "D-cache Guarded"
667
668config BAT4_USER_MODE_VALID
669	bool "User mode valid"
670
671config BAT4_SUPERVISOR_MODE_VALID
672	bool "Supervisor mode valid"
673
674endif
675
676config BAT4_LENGTH
677	hex
678	default 0x00000000 if BAT4_LENGTH_128_KBYTES
679	default 0x00000004 if BAT4_LENGTH_256_KBYTES
680	default 0x0000000c if BAT4_LENGTH_512_KBYTES
681	default 0x0000001c if BAT4_LENGTH_1_MBYTES
682	default 0x0000003c if BAT4_LENGTH_2_MBYTES
683	default 0x0000007c if BAT4_LENGTH_4_MBYTES
684	default 0x000000fc if BAT4_LENGTH_8_MBYTES
685	default 0x000001fc if BAT4_LENGTH_16_MBYTES
686	default 0x000003fc if BAT4_LENGTH_32_MBYTES
687	default 0x000007fc if BAT4_LENGTH_64_MBYTES
688	default 0x00000ffc if BAT4_LENGTH_128_MBYTES
689	default 0x00001ffc if BAT4_LENGTH_256_MBYTES
690
691config BAT4_PAGE_PROTECTION
692	hex
693	default 0x0 if BAT4_ACCESS_NONE
694	default 0x1 if BAT4_ACCESS_RO
695	default 0x2 if BAT4_ACCESS_RW
696
697config BAT4_WIMG_ICACHE
698	hex
699	default 0x0 if !BAT4_ICACHE_INHIBITED && !BAT4_ICACHE_MEMORYCOHERENCE
700	default 0x10 if !BAT4_ICACHE_INHIBITED && BAT4_ICACHE_MEMORYCOHERENCE
701	default 0x20 if BAT4_ICACHE_INHIBITED && !BAT4_ICACHE_MEMORYCOHERENCE
702	default 0x30 if BAT4_ICACHE_INHIBITED && BAT4_ICACHE_MEMORYCOHERENCE
703
704config BAT4_WIMG_DCACHE
705	hex
706	default 0x0 if !BAT4_DCACHE_WRITETHROUGH && !BAT4_DCACHE_INHIBITED && !BAT4_DCACHE_MEMORYCOHERENCE && !BAT4_DCACHE_GUARDED
707	default 0x8 if !BAT4_DCACHE_WRITETHROUGH && !BAT4_DCACHE_INHIBITED && !BAT4_DCACHE_MEMORYCOHERENCE && BAT4_DCACHE_GUARDED
708	default 0x10 if !BAT4_DCACHE_WRITETHROUGH && !BAT4_DCACHE_INHIBITED && BAT4_DCACHE_MEMORYCOHERENCE && !BAT4_DCACHE_GUARDED
709	default 0x18 if !BAT4_DCACHE_WRITETHROUGH && !BAT4_DCACHE_INHIBITED && BAT4_DCACHE_MEMORYCOHERENCE && BAT4_DCACHE_GUARDED
710	default 0x20 if !BAT4_DCACHE_WRITETHROUGH && BAT4_DCACHE_INHIBITED && !BAT4_DCACHE_MEMORYCOHERENCE && !BAT4_DCACHE_GUARDED
711	default 0x28 if !BAT4_DCACHE_WRITETHROUGH && BAT4_DCACHE_INHIBITED && !BAT4_DCACHE_MEMORYCOHERENCE && BAT4_DCACHE_GUARDED
712	default 0x30 if !BAT4_DCACHE_WRITETHROUGH && BAT4_DCACHE_INHIBITED && BAT4_DCACHE_MEMORYCOHERENCE && !BAT4_DCACHE_GUARDED
713	default 0x38 if !BAT4_DCACHE_WRITETHROUGH && BAT4_DCACHE_INHIBITED && BAT4_DCACHE_MEMORYCOHERENCE && BAT4_DCACHE_GUARDED
714	default 0x40 if BAT4_DCACHE_WRITETHROUGH && !BAT4_DCACHE_INHIBITED && !BAT4_DCACHE_MEMORYCOHERENCE && !BAT4_DCACHE_GUARDED
715	default 0x48 if BAT4_DCACHE_WRITETHROUGH && !BAT4_DCACHE_INHIBITED && !BAT4_DCACHE_MEMORYCOHERENCE && BAT4_DCACHE_GUARDED
716	default 0x50 if BAT4_DCACHE_WRITETHROUGH && !BAT4_DCACHE_INHIBITED && BAT4_DCACHE_MEMORYCOHERENCE && !BAT4_DCACHE_GUARDED
717	default 0x58 if BAT4_DCACHE_WRITETHROUGH && !BAT4_DCACHE_INHIBITED && BAT4_DCACHE_MEMORYCOHERENCE && BAT4_DCACHE_GUARDED
718	default 0x60 if BAT4_DCACHE_WRITETHROUGH && BAT4_DCACHE_INHIBITED && !BAT4_DCACHE_MEMORYCOHERENCE && !BAT4_DCACHE_GUARDED
719	default 0x68 if BAT4_DCACHE_WRITETHROUGH && BAT4_DCACHE_INHIBITED && !BAT4_DCACHE_MEMORYCOHERENCE && BAT4_DCACHE_GUARDED
720	default 0x70 if BAT4_DCACHE_WRITETHROUGH && BAT4_DCACHE_INHIBITED && BAT4_DCACHE_MEMORYCOHERENCE && !BAT4_DCACHE_GUARDED
721	default 0x78 if BAT4_DCACHE_WRITETHROUGH && BAT4_DCACHE_INHIBITED && BAT4_DCACHE_MEMORYCOHERENCE && BAT4_DCACHE_GUARDED
722
723config BAT4_VALID_BITS
724	hex
725	default 0x0 if !BAT4_SUPERVISOR_MODE_VALID && !BAT4_USER_MODE_VALID
726	default 0x1 if !BAT4_SUPERVISOR_MODE_VALID && BAT4_USER_MODE_VALID
727	default 0x2 if BAT4_SUPERVISOR_MODE_VALID && !BAT4_USER_MODE_VALID
728	default 0x3 if BAT4_SUPERVISOR_MODE_VALID && BAT4_USER_MODE_VALID
729
730menuconfig BAT5
731	bool "BAT5"
732
733if BAT5
734
735config BAT5_NAME
736	string "Identifier"
737
738config BAT5_BASE
739	hex "Base"
740
741choice
742	prompt "Block length"
743
744config BAT5_LENGTH_128_KBYTES
745	bool "128 kb"
746
747config BAT5_LENGTH_256_KBYTES
748	bool "256 kb"
749
750config BAT5_LENGTH_512_KBYTES
751	bool "512 kb"
752
753config BAT5_LENGTH_1_MBYTES
754	bool "1 mb"
755
756config BAT5_LENGTH_2_MBYTES
757	bool "2 mb"
758
759config BAT5_LENGTH_4_MBYTES
760	bool "4 mb"
761
762config BAT5_LENGTH_8_MBYTES
763	bool "8 mb"
764
765config BAT5_LENGTH_16_MBYTES
766	bool "16 mb"
767
768config BAT5_LENGTH_32_MBYTES
769	bool "32 mb"
770
771config BAT5_LENGTH_64_MBYTES
772	bool "64 mb"
773
774config BAT5_LENGTH_128_MBYTES
775	bool "128 mb"
776
777config BAT5_LENGTH_256_MBYTES
778	bool "256 mb"
779endchoice
780
781choice
782	prompt "Protection mode"
783
784config BAT5_ACCESS_NONE
785	bool "No access"
786
787config BAT5_ACCESS_RO
788	bool "Read-only"
789
790config BAT5_ACCESS_RW
791	bool "Read-write"
792
793endchoice
794
795config BAT5_ICACHE_INHIBITED
796	bool "I-cache Inhibited"
797
798config BAT5_ICACHE_MEMORYCOHERENCE
799	bool "I-cache Memory coherence"
800
801config BAT5_DCACHE_WRITETHROUGH
802	bool "D-cache Write-through"
803
804config BAT5_DCACHE_INHIBITED
805	bool "D-cache Inhibited"
806
807config BAT5_DCACHE_MEMORYCOHERENCE
808	bool "D-cache Memory coherence"
809
810config BAT5_DCACHE_GUARDED
811	bool "D-cache Guarded"
812
813config BAT5_USER_MODE_VALID
814	bool "User mode valid"
815
816config BAT5_SUPERVISOR_MODE_VALID
817	bool "Supervisor mode valid"
818
819endif
820
821config BAT5_LENGTH
822	hex
823	default 0x00000000 if BAT5_LENGTH_128_KBYTES
824	default 0x00000004 if BAT5_LENGTH_256_KBYTES
825	default 0x0000000c if BAT5_LENGTH_512_KBYTES
826	default 0x0000001c if BAT5_LENGTH_1_MBYTES
827	default 0x0000003c if BAT5_LENGTH_2_MBYTES
828	default 0x0000007c if BAT5_LENGTH_4_MBYTES
829	default 0x000000fc if BAT5_LENGTH_8_MBYTES
830	default 0x000001fc if BAT5_LENGTH_16_MBYTES
831	default 0x000003fc if BAT5_LENGTH_32_MBYTES
832	default 0x000007fc if BAT5_LENGTH_64_MBYTES
833	default 0x00000ffc if BAT5_LENGTH_128_MBYTES
834	default 0x00001ffc if BAT5_LENGTH_256_MBYTES
835
836config BAT5_PAGE_PROTECTION
837	hex
838	default 0x0 if BAT5_ACCESS_NONE
839	default 0x1 if BAT5_ACCESS_RO
840	default 0x2 if BAT5_ACCESS_RW
841
842config BAT5_WIMG_ICACHE
843	hex
844	default 0x0 if !BAT5_ICACHE_INHIBITED && !BAT5_ICACHE_MEMORYCOHERENCE
845	default 0x10 if !BAT5_ICACHE_INHIBITED && BAT5_ICACHE_MEMORYCOHERENCE
846	default 0x20 if BAT5_ICACHE_INHIBITED && !BAT5_ICACHE_MEMORYCOHERENCE
847	default 0x30 if BAT5_ICACHE_INHIBITED && BAT5_ICACHE_MEMORYCOHERENCE
848
849config BAT5_WIMG_DCACHE
850	hex
851	default 0x0 if !BAT5_DCACHE_WRITETHROUGH && !BAT5_DCACHE_INHIBITED && !BAT5_DCACHE_MEMORYCOHERENCE && !BAT5_DCACHE_GUARDED
852	default 0x8 if !BAT5_DCACHE_WRITETHROUGH && !BAT5_DCACHE_INHIBITED && !BAT5_DCACHE_MEMORYCOHERENCE && BAT5_DCACHE_GUARDED
853	default 0x10 if !BAT5_DCACHE_WRITETHROUGH && !BAT5_DCACHE_INHIBITED && BAT5_DCACHE_MEMORYCOHERENCE && !BAT5_DCACHE_GUARDED
854	default 0x18 if !BAT5_DCACHE_WRITETHROUGH && !BAT5_DCACHE_INHIBITED && BAT5_DCACHE_MEMORYCOHERENCE && BAT5_DCACHE_GUARDED
855	default 0x20 if !BAT5_DCACHE_WRITETHROUGH && BAT5_DCACHE_INHIBITED && !BAT5_DCACHE_MEMORYCOHERENCE && !BAT5_DCACHE_GUARDED
856	default 0x28 if !BAT5_DCACHE_WRITETHROUGH && BAT5_DCACHE_INHIBITED && !BAT5_DCACHE_MEMORYCOHERENCE && BAT5_DCACHE_GUARDED
857	default 0x30 if !BAT5_DCACHE_WRITETHROUGH && BAT5_DCACHE_INHIBITED && BAT5_DCACHE_MEMORYCOHERENCE && !BAT5_DCACHE_GUARDED
858	default 0x38 if !BAT5_DCACHE_WRITETHROUGH && BAT5_DCACHE_INHIBITED && BAT5_DCACHE_MEMORYCOHERENCE && BAT5_DCACHE_GUARDED
859	default 0x40 if BAT5_DCACHE_WRITETHROUGH && !BAT5_DCACHE_INHIBITED && !BAT5_DCACHE_MEMORYCOHERENCE && !BAT5_DCACHE_GUARDED
860	default 0x48 if BAT5_DCACHE_WRITETHROUGH && !BAT5_DCACHE_INHIBITED && !BAT5_DCACHE_MEMORYCOHERENCE && BAT5_DCACHE_GUARDED
861	default 0x50 if BAT5_DCACHE_WRITETHROUGH && !BAT5_DCACHE_INHIBITED && BAT5_DCACHE_MEMORYCOHERENCE && !BAT5_DCACHE_GUARDED
862	default 0x58 if BAT5_DCACHE_WRITETHROUGH && !BAT5_DCACHE_INHIBITED && BAT5_DCACHE_MEMORYCOHERENCE && BAT5_DCACHE_GUARDED
863	default 0x60 if BAT5_DCACHE_WRITETHROUGH && BAT5_DCACHE_INHIBITED && !BAT5_DCACHE_MEMORYCOHERENCE && !BAT5_DCACHE_GUARDED
864	default 0x68 if BAT5_DCACHE_WRITETHROUGH && BAT5_DCACHE_INHIBITED && !BAT5_DCACHE_MEMORYCOHERENCE && BAT5_DCACHE_GUARDED
865	default 0x70 if BAT5_DCACHE_WRITETHROUGH && BAT5_DCACHE_INHIBITED && BAT5_DCACHE_MEMORYCOHERENCE && !BAT5_DCACHE_GUARDED
866	default 0x78 if BAT5_DCACHE_WRITETHROUGH && BAT5_DCACHE_INHIBITED && BAT5_DCACHE_MEMORYCOHERENCE && BAT5_DCACHE_GUARDED
867
868config BAT5_VALID_BITS
869	hex
870	default 0x0 if !BAT5_SUPERVISOR_MODE_VALID && !BAT5_USER_MODE_VALID
871	default 0x1 if !BAT5_SUPERVISOR_MODE_VALID && BAT5_USER_MODE_VALID
872	default 0x2 if BAT5_SUPERVISOR_MODE_VALID && !BAT5_USER_MODE_VALID
873	default 0x3 if BAT5_SUPERVISOR_MODE_VALID && BAT5_USER_MODE_VALID
874
875menuconfig BAT6
876	bool "BAT6"
877
878if BAT6
879
880config BAT6_NAME
881	string "Identifier"
882
883config BAT6_BASE
884	hex "Base"
885
886choice
887	prompt "Block length"
888
889config BAT6_LENGTH_128_KBYTES
890	bool "128 kb"
891
892config BAT6_LENGTH_256_KBYTES
893	bool "256 kb"
894
895config BAT6_LENGTH_512_KBYTES
896	bool "512 kb"
897
898config BAT6_LENGTH_1_MBYTES
899	bool "1 mb"
900
901config BAT6_LENGTH_2_MBYTES
902	bool "2 mb"
903
904config BAT6_LENGTH_4_MBYTES
905	bool "4 mb"
906
907config BAT6_LENGTH_8_MBYTES
908	bool "8 mb"
909
910config BAT6_LENGTH_16_MBYTES
911	bool "16 mb"
912
913config BAT6_LENGTH_32_MBYTES
914	bool "32 mb"
915
916config BAT6_LENGTH_64_MBYTES
917	bool "64 mb"
918
919config BAT6_LENGTH_128_MBYTES
920	bool "128 mb"
921
922config BAT6_LENGTH_256_MBYTES
923	bool "256 mb"
924endchoice
925
926choice
927	prompt "Protection mode"
928
929config BAT6_ACCESS_NONE
930	bool "No access"
931
932config BAT6_ACCESS_RO
933	bool "Read-only"
934
935config BAT6_ACCESS_RW
936	bool "Read-write"
937
938endchoice
939
940config BAT6_ICACHE_INHIBITED
941	bool "I-cache Inhibited"
942
943config BAT6_ICACHE_MEMORYCOHERENCE
944	bool "I-cache Memory coherence"
945
946config BAT6_DCACHE_WRITETHROUGH
947	bool "D-cache Write-through"
948
949config BAT6_DCACHE_INHIBITED
950	bool "D-cache Inhibited"
951
952config BAT6_DCACHE_MEMORYCOHERENCE
953	bool "D-cache Memory coherence"
954
955config BAT6_DCACHE_GUARDED
956	bool "D-cache Guarded"
957
958config BAT6_USER_MODE_VALID
959	bool "User mode valid"
960
961config BAT6_SUPERVISOR_MODE_VALID
962	bool "Supervisor mode valid"
963
964endif
965
966config BAT6_LENGTH
967	hex
968	default 0x00000000 if BAT6_LENGTH_128_KBYTES
969	default 0x00000004 if BAT6_LENGTH_256_KBYTES
970	default 0x0000000c if BAT6_LENGTH_512_KBYTES
971	default 0x0000001c if BAT6_LENGTH_1_MBYTES
972	default 0x0000003c if BAT6_LENGTH_2_MBYTES
973	default 0x0000007c if BAT6_LENGTH_4_MBYTES
974	default 0x000000fc if BAT6_LENGTH_8_MBYTES
975	default 0x000001fc if BAT6_LENGTH_16_MBYTES
976	default 0x000003fc if BAT6_LENGTH_32_MBYTES
977	default 0x000007fc if BAT6_LENGTH_64_MBYTES
978	default 0x00000ffc if BAT6_LENGTH_128_MBYTES
979	default 0x00001ffc if BAT6_LENGTH_256_MBYTES
980
981config BAT6_PAGE_PROTECTION
982	hex
983	default 0x0 if BAT6_ACCESS_NONE
984	default 0x1 if BAT6_ACCESS_RO
985	default 0x2 if BAT6_ACCESS_RW
986
987config BAT6_WIMG_ICACHE
988	hex
989	default 0x0 if !BAT6_ICACHE_INHIBITED && !BAT6_ICACHE_MEMORYCOHERENCE
990	default 0x10 if !BAT6_ICACHE_INHIBITED && BAT6_ICACHE_MEMORYCOHERENCE
991	default 0x20 if BAT6_ICACHE_INHIBITED && !BAT6_ICACHE_MEMORYCOHERENCE
992	default 0x30 if BAT6_ICACHE_INHIBITED && BAT6_ICACHE_MEMORYCOHERENCE
993
994config BAT6_WIMG_DCACHE
995	hex
996	default 0x0 if !BAT6_DCACHE_WRITETHROUGH && !BAT6_DCACHE_INHIBITED && !BAT6_DCACHE_MEMORYCOHERENCE && !BAT6_DCACHE_GUARDED
997	default 0x8 if !BAT6_DCACHE_WRITETHROUGH && !BAT6_DCACHE_INHIBITED && !BAT6_DCACHE_MEMORYCOHERENCE && BAT6_DCACHE_GUARDED
998	default 0x10 if !BAT6_DCACHE_WRITETHROUGH && !BAT6_DCACHE_INHIBITED && BAT6_DCACHE_MEMORYCOHERENCE && !BAT6_DCACHE_GUARDED
999	default 0x18 if !BAT6_DCACHE_WRITETHROUGH && !BAT6_DCACHE_INHIBITED && BAT6_DCACHE_MEMORYCOHERENCE && BAT6_DCACHE_GUARDED
1000	default 0x20 if !BAT6_DCACHE_WRITETHROUGH && BAT6_DCACHE_INHIBITED && !BAT6_DCACHE_MEMORYCOHERENCE && !BAT6_DCACHE_GUARDED
1001	default 0x28 if !BAT6_DCACHE_WRITETHROUGH && BAT6_DCACHE_INHIBITED && !BAT6_DCACHE_MEMORYCOHERENCE && BAT6_DCACHE_GUARDED
1002	default 0x30 if !BAT6_DCACHE_WRITETHROUGH && BAT6_DCACHE_INHIBITED && BAT6_DCACHE_MEMORYCOHERENCE && !BAT6_DCACHE_GUARDED
1003	default 0x38 if !BAT6_DCACHE_WRITETHROUGH && BAT6_DCACHE_INHIBITED && BAT6_DCACHE_MEMORYCOHERENCE && BAT6_DCACHE_GUARDED
1004	default 0x40 if BAT6_DCACHE_WRITETHROUGH && !BAT6_DCACHE_INHIBITED && !BAT6_DCACHE_MEMORYCOHERENCE && !BAT6_DCACHE_GUARDED
1005	default 0x48 if BAT6_DCACHE_WRITETHROUGH && !BAT6_DCACHE_INHIBITED && !BAT6_DCACHE_MEMORYCOHERENCE && BAT6_DCACHE_GUARDED
1006	default 0x50 if BAT6_DCACHE_WRITETHROUGH && !BAT6_DCACHE_INHIBITED && BAT6_DCACHE_MEMORYCOHERENCE && !BAT6_DCACHE_GUARDED
1007	default 0x58 if BAT6_DCACHE_WRITETHROUGH && !BAT6_DCACHE_INHIBITED && BAT6_DCACHE_MEMORYCOHERENCE && BAT6_DCACHE_GUARDED
1008	default 0x60 if BAT6_DCACHE_WRITETHROUGH && BAT6_DCACHE_INHIBITED && !BAT6_DCACHE_MEMORYCOHERENCE && !BAT6_DCACHE_GUARDED
1009	default 0x68 if BAT6_DCACHE_WRITETHROUGH && BAT6_DCACHE_INHIBITED && !BAT6_DCACHE_MEMORYCOHERENCE && BAT6_DCACHE_GUARDED
1010	default 0x70 if BAT6_DCACHE_WRITETHROUGH && BAT6_DCACHE_INHIBITED && BAT6_DCACHE_MEMORYCOHERENCE && !BAT6_DCACHE_GUARDED
1011	default 0x78 if BAT6_DCACHE_WRITETHROUGH && BAT6_DCACHE_INHIBITED && BAT6_DCACHE_MEMORYCOHERENCE && BAT6_DCACHE_GUARDED
1012
1013config BAT6_VALID_BITS
1014	hex
1015	default 0x0 if !BAT6_SUPERVISOR_MODE_VALID && !BAT6_USER_MODE_VALID
1016	default 0x1 if !BAT6_SUPERVISOR_MODE_VALID && BAT6_USER_MODE_VALID
1017	default 0x2 if BAT6_SUPERVISOR_MODE_VALID && !BAT6_USER_MODE_VALID
1018	default 0x3 if BAT6_SUPERVISOR_MODE_VALID && BAT6_USER_MODE_VALID
1019
1020menuconfig BAT7
1021	bool "BAT7"
1022
1023if BAT7
1024
1025config BAT7_NAME
1026	string "Identifier"
1027
1028config BAT7_BASE
1029	hex "Base"
1030
1031choice
1032	prompt "Block length"
1033
1034config BAT7_LENGTH_128_KBYTES
1035	bool "128 kb"
1036
1037config BAT7_LENGTH_256_KBYTES
1038	bool "256 kb"
1039
1040config BAT7_LENGTH_512_KBYTES
1041	bool "512 kb"
1042
1043config BAT7_LENGTH_1_MBYTES
1044	bool "1 mb"
1045
1046config BAT7_LENGTH_2_MBYTES
1047	bool "2 mb"
1048
1049config BAT7_LENGTH_4_MBYTES
1050	bool "4 mb"
1051
1052config BAT7_LENGTH_8_MBYTES
1053	bool "8 mb"
1054
1055config BAT7_LENGTH_16_MBYTES
1056	bool "16 mb"
1057
1058config BAT7_LENGTH_32_MBYTES
1059	bool "32 mb"
1060
1061config BAT7_LENGTH_64_MBYTES
1062	bool "64 mb"
1063
1064config BAT7_LENGTH_128_MBYTES
1065	bool "128 mb"
1066
1067config BAT7_LENGTH_256_MBYTES
1068	bool "256 mb"
1069endchoice
1070
1071choice
1072	prompt "Protection mode"
1073
1074config BAT7_ACCESS_NONE
1075	bool "No access"
1076
1077config BAT7_ACCESS_RO
1078	bool "Read-only"
1079
1080config BAT7_ACCESS_RW
1081	bool "Read-write"
1082
1083endchoice
1084
1085config BAT7_ICACHE_INHIBITED
1086	bool "I-cache Inhibited"
1087
1088config BAT7_ICACHE_MEMORYCOHERENCE
1089	bool "I-cache Memory coherence"
1090
1091config BAT7_DCACHE_WRITETHROUGH
1092	bool "D-cache Write-through"
1093
1094config BAT7_DCACHE_INHIBITED
1095	bool "D-cache Inhibited"
1096
1097config BAT7_DCACHE_MEMORYCOHERENCE
1098	bool "D-cache Memory coherence"
1099
1100config BAT7_DCACHE_GUARDED
1101	bool "D-cache Guarded"
1102
1103config BAT7_USER_MODE_VALID
1104	bool "User mode valid"
1105
1106config BAT7_SUPERVISOR_MODE_VALID
1107	bool "Supervisor mode valid"
1108
1109endif
1110
1111config BAT7_LENGTH
1112	hex
1113	default 0x00000000 if BAT7_LENGTH_128_KBYTES
1114	default 0x00000004 if BAT7_LENGTH_256_KBYTES
1115	default 0x0000000c if BAT7_LENGTH_512_KBYTES
1116	default 0x0000001c if BAT7_LENGTH_1_MBYTES
1117	default 0x0000003c if BAT7_LENGTH_2_MBYTES
1118	default 0x0000007c if BAT7_LENGTH_4_MBYTES
1119	default 0x000000fc if BAT7_LENGTH_8_MBYTES
1120	default 0x000001fc if BAT7_LENGTH_16_MBYTES
1121	default 0x000003fc if BAT7_LENGTH_32_MBYTES
1122	default 0x000007fc if BAT7_LENGTH_64_MBYTES
1123	default 0x00000ffc if BAT7_LENGTH_128_MBYTES
1124	default 0x00001ffc if BAT7_LENGTH_256_MBYTES
1125
1126config BAT7_PAGE_PROTECTION
1127	hex
1128	default 0x0 if BAT7_ACCESS_NONE
1129	default 0x1 if BAT7_ACCESS_RO
1130	default 0x2 if BAT7_ACCESS_RW
1131
1132config BAT7_WIMG_ICACHE
1133	hex
1134	default 0x0 if !BAT7_ICACHE_INHIBITED && !BAT7_ICACHE_MEMORYCOHERENCE
1135	default 0x10 if !BAT7_ICACHE_INHIBITED && BAT7_ICACHE_MEMORYCOHERENCE
1136	default 0x20 if BAT7_ICACHE_INHIBITED && !BAT7_ICACHE_MEMORYCOHERENCE
1137	default 0x30 if BAT7_ICACHE_INHIBITED && BAT7_ICACHE_MEMORYCOHERENCE
1138
1139config BAT7_WIMG_DCACHE
1140	hex
1141	default 0x0 if !BAT7_DCACHE_WRITETHROUGH && !BAT7_DCACHE_INHIBITED && !BAT7_DCACHE_MEMORYCOHERENCE && !BAT7_DCACHE_GUARDED
1142	default 0x8 if !BAT7_DCACHE_WRITETHROUGH && !BAT7_DCACHE_INHIBITED && !BAT7_DCACHE_MEMORYCOHERENCE && BAT7_DCACHE_GUARDED
1143	default 0x10 if !BAT7_DCACHE_WRITETHROUGH && !BAT7_DCACHE_INHIBITED && BAT7_DCACHE_MEMORYCOHERENCE && !BAT7_DCACHE_GUARDED
1144	default 0x18 if !BAT7_DCACHE_WRITETHROUGH && !BAT7_DCACHE_INHIBITED && BAT7_DCACHE_MEMORYCOHERENCE && BAT7_DCACHE_GUARDED
1145	default 0x20 if !BAT7_DCACHE_WRITETHROUGH && BAT7_DCACHE_INHIBITED && !BAT7_DCACHE_MEMORYCOHERENCE && !BAT7_DCACHE_GUARDED
1146	default 0x28 if !BAT7_DCACHE_WRITETHROUGH && BAT7_DCACHE_INHIBITED && !BAT7_DCACHE_MEMORYCOHERENCE && BAT7_DCACHE_GUARDED
1147	default 0x30 if !BAT7_DCACHE_WRITETHROUGH && BAT7_DCACHE_INHIBITED && BAT7_DCACHE_MEMORYCOHERENCE && !BAT7_DCACHE_GUARDED
1148	default 0x38 if !BAT7_DCACHE_WRITETHROUGH && BAT7_DCACHE_INHIBITED && BAT7_DCACHE_MEMORYCOHERENCE && BAT7_DCACHE_GUARDED
1149	default 0x40 if BAT7_DCACHE_WRITETHROUGH && !BAT7_DCACHE_INHIBITED && !BAT7_DCACHE_MEMORYCOHERENCE && !BAT7_DCACHE_GUARDED
1150	default 0x48 if BAT7_DCACHE_WRITETHROUGH && !BAT7_DCACHE_INHIBITED && !BAT7_DCACHE_MEMORYCOHERENCE && BAT7_DCACHE_GUARDED
1151	default 0x50 if BAT7_DCACHE_WRITETHROUGH && !BAT7_DCACHE_INHIBITED && BAT7_DCACHE_MEMORYCOHERENCE && !BAT7_DCACHE_GUARDED
1152	default 0x58 if BAT7_DCACHE_WRITETHROUGH && !BAT7_DCACHE_INHIBITED && BAT7_DCACHE_MEMORYCOHERENCE && BAT7_DCACHE_GUARDED
1153	default 0x60 if BAT7_DCACHE_WRITETHROUGH && BAT7_DCACHE_INHIBITED && !BAT7_DCACHE_MEMORYCOHERENCE && !BAT7_DCACHE_GUARDED
1154	default 0x68 if BAT7_DCACHE_WRITETHROUGH && BAT7_DCACHE_INHIBITED && !BAT7_DCACHE_MEMORYCOHERENCE && BAT7_DCACHE_GUARDED
1155	default 0x70 if BAT7_DCACHE_WRITETHROUGH && BAT7_DCACHE_INHIBITED && BAT7_DCACHE_MEMORYCOHERENCE && !BAT7_DCACHE_GUARDED
1156	default 0x78 if BAT7_DCACHE_WRITETHROUGH && BAT7_DCACHE_INHIBITED && BAT7_DCACHE_MEMORYCOHERENCE && BAT7_DCACHE_GUARDED
1157
1158config BAT7_VALID_BITS
1159	hex
1160	default 0x0 if !BAT7_SUPERVISOR_MODE_VALID && !BAT7_USER_MODE_VALID
1161	default 0x1 if !BAT7_SUPERVISOR_MODE_VALID && BAT7_USER_MODE_VALID
1162	default 0x2 if BAT7_SUPERVISOR_MODE_VALID && !BAT7_USER_MODE_VALID
1163	default 0x3 if BAT7_SUPERVISOR_MODE_VALID && BAT7_USER_MODE_VALID
1164
1165endif
1166
1167endmenu
1168