Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | # |
2 | # For a description of the syntax of this configuration file, | |
3 | # see Documentation/kbuild/kconfig-language.txt. | |
4 | # | |
5 | ||
6 | mainmenu "Linux/M32R Kernel Configuration" | |
7 | ||
8 | config M32R | |
9 | bool | |
10 | default y | |
42d4b839 | 11 | select HAVE_OPROFILE |
1da177e4 LT |
12 | |
13 | config SBUS | |
14 | bool | |
15 | ||
1da177e4 LT |
16 | config GENERIC_ISA_DMA |
17 | bool | |
18 | default y | |
19 | ||
5ac6da66 CL |
20 | config ZONE_DMA |
21 | bool | |
22 | default y | |
23 | ||
1da177e4 LT |
24 | config GENERIC_HARDIRQS |
25 | bool | |
26 | default y | |
27 | ||
28 | config GENERIC_IRQ_PROBE | |
29 | bool | |
30 | default y | |
31 | ||
5ea81769 AV |
32 | config NO_IOPORT |
33 | def_bool y | |
34 | ||
1b0fac45 DW |
35 | config NO_DMA |
36 | def_bool y | |
37 | ||
b0b933c0 DH |
38 | config ARCH_SUPPORTS_AOUT |
39 | def_bool y | |
40 | ||
1da177e4 LT |
41 | source "init/Kconfig" |
42 | ||
43 | ||
44 | menu "Processor type and features" | |
45 | ||
46 | choice | |
47 | prompt "Platform Type" | |
48 | default PLAT_MAPPI | |
49 | ||
50 | config PLAT_MAPPI | |
51 | bool "Mappi-I" | |
52 | help | |
53 | The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping. | |
54 | You can operate a Linux system on this board by using an M32R | |
55 | softmacro core, which is a fully-synthesizable functional model | |
56 | described in Verilog-HDL. | |
57 | ||
58 | The Mappi-I board was the first platform, which had been used | |
59 | to port and develop a Linux system for the M32R processor. | |
60 | Currently, the Mappi-II, an heir to the Mappi-I, is available. | |
61 | ||
62 | config PLAT_USRV | |
63 | bool "uServer" | |
e070fb74 | 64 | select PLAT_HAS_INT1ICU |
1da177e4 LT |
65 | |
66 | config PLAT_M32700UT | |
67 | bool "M32700UT" | |
e070fb74 HT |
68 | select PLAT_HAS_INT0ICU |
69 | select PLAT_HAS_INT1ICU | |
70 | select PLAT_HAS_INT2ICU | |
1da177e4 LT |
71 | help |
72 | The M3T-M32700UT is an evaluation board based on uT-Engine | |
73 | specification. This board has an M32700 (Chaos) evaluation chip. | |
74 | You can say Y for SMP, because the M32700 is a single chip | |
75 | multiprocessor. | |
76 | ||
77 | config PLAT_OPSPUT | |
78 | bool "OPSPUT" | |
e070fb74 HT |
79 | select PLAT_HAS_INT0ICU |
80 | select PLAT_HAS_INT1ICU | |
81 | select PLAT_HAS_INT2ICU | |
1da177e4 LT |
82 | help |
83 | The OPSPUT is an evaluation board based on uT-Engine | |
84 | specification. This board has a OPSP-REP chip. | |
85 | ||
86 | config PLAT_OAKS32R | |
87 | bool "OAKS32R" | |
88 | help | |
89 | The OAKS32R is a tiny, inexpensive evaluation board. | |
90 | Please note that if you say Y here and choose chip "M32102", | |
91 | say N for MMU and select a no-MMU version kernel, otherwise | |
92 | a kernel with MMU support will not work, because the M32102 | |
93 | is a microcontroller for embedded systems and it has no MMU. | |
94 | ||
95 | config PLAT_MAPPI2 | |
96 | bool "Mappi-II(M3A-ZA36/M3A-ZA52)" | |
97 | ||
23680863 HT |
98 | config PLAT_MAPPI3 |
99 | bool "Mappi-III(M3A-2170)" | |
100 | ||
9287d95e HT |
101 | config PLAT_M32104UT |
102 | bool "M32104UT" | |
e070fb74 | 103 | select PLAT_HAS_INT1ICU |
9287d95e HT |
104 | help |
105 | The M3T-M32104UT is an reference board based on uT-Engine | |
106 | specification. This board has a M32104 chip. | |
107 | ||
1da177e4 LT |
108 | endchoice |
109 | ||
110 | choice | |
111 | prompt "Processor family" | |
112 | default CHIP_M32700 | |
113 | ||
114 | config CHIP_M32700 | |
115 | bool "M32700 (Chaos)" | |
116 | ||
117 | config CHIP_M32102 | |
118 | bool "M32102" | |
119 | ||
9287d95e HT |
120 | config CHIP_M32104 |
121 | bool "M32104" | |
122 | depends on PLAT_M32104UT | |
123 | ||
1da177e4 LT |
124 | config CHIP_VDEC2 |
125 | bool "VDEC2" | |
126 | ||
127 | config CHIP_OPSP | |
128 | bool "OPSP" | |
129 | ||
130 | endchoice | |
131 | ||
132 | config MMU | |
133 | bool "Support for memory management hardware" | |
134 | depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP | |
135 | default y | |
136 | ||
137 | config TLB_ENTRIES | |
138 | int "TLB Entries" | |
139 | depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP | |
140 | default 32 if CHIP_M32700 || CHIP_OPSP | |
141 | default 16 if CHIP_VDEC2 | |
142 | ||
143 | ||
144 | config ISA_M32R | |
145 | bool | |
9287d95e | 146 | depends on CHIP_M32102 || CHIP_M32104 |
1da177e4 LT |
147 | default y |
148 | ||
149 | config ISA_M32R2 | |
150 | bool | |
151 | depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP | |
152 | default y | |
153 | ||
154 | config ISA_DSP_LEVEL2 | |
155 | bool | |
156 | depends on CHIP_M32700 || CHIP_OPSP | |
157 | default y | |
158 | ||
159 | config ISA_DUAL_ISSUE | |
160 | bool | |
161 | depends on CHIP_M32700 || CHIP_OPSP | |
162 | default y | |
163 | ||
e070fb74 HT |
164 | config PLAT_HAS_INT0ICU |
165 | bool | |
166 | default n | |
167 | ||
168 | config PLAT_HAS_INT1ICU | |
169 | bool | |
170 | default n | |
171 | ||
172 | config PLAT_HAS_INT2ICU | |
173 | bool | |
174 | default n | |
175 | ||
1da177e4 LT |
176 | config BUS_CLOCK |
177 | int "Bus Clock [Hz] (integer)" | |
178 | default "70000000" if PLAT_MAPPI | |
179 | default "25000000" if PLAT_USRV | |
23680863 | 180 | default "50000000" if PLAT_MAPPI3 |
1da177e4 LT |
181 | default "50000000" if PLAT_M32700UT |
182 | default "50000000" if PLAT_OPSPUT | |
9287d95e | 183 | default "54000000" if PLAT_M32104UT |
1da177e4 LT |
184 | default "33333333" if PLAT_OAKS32R |
185 | default "20000000" if PLAT_MAPPI2 | |
186 | ||
187 | config TIMER_DIVIDE | |
188 | int "Timer divider (integer)" | |
189 | default "128" | |
190 | ||
191 | config CPU_LITTLE_ENDIAN | |
192 | bool "Generate little endian code" | |
193 | default n | |
194 | ||
195 | config MEMORY_START | |
196 | hex "Physical memory start address (hex)" | |
23680863 | 197 | default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3 |
1da177e4 LT |
198 | default "08000000" if PLAT_USRV |
199 | default "08000000" if PLAT_M32700UT | |
200 | default "08000000" if PLAT_OPSPUT | |
9287d95e | 201 | default "04000000" if PLAT_M32104UT |
1da177e4 LT |
202 | default "01000000" if PLAT_OAKS32R |
203 | ||
204 | config MEMORY_SIZE | |
205 | hex "Physical memory size (hex)" | |
23680863 | 206 | default "08000000" if PLAT_MAPPI3 |
1da177e4 LT |
207 | default "04000000" if PLAT_MAPPI || PLAT_MAPPI2 |
208 | default "02000000" if PLAT_USRV | |
209 | default "01000000" if PLAT_M32700UT | |
210 | default "01000000" if PLAT_OPSPUT | |
9287d95e | 211 | default "01000000" if PLAT_M32104UT |
1da177e4 LT |
212 | default "00800000" if PLAT_OAKS32R |
213 | ||
214 | config NOHIGHMEM | |
215 | bool | |
216 | default y | |
217 | ||
3f22ab27 | 218 | config ARCH_DISCONTIGMEM_ENABLE |
1da177e4 | 219 | bool "Internal RAM Support" |
9287d95e | 220 | depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104 |
1da177e4 LT |
221 | default y |
222 | ||
3f22ab27 DH |
223 | source "mm/Kconfig" |
224 | ||
1da177e4 LT |
225 | config IRAM_START |
226 | hex "Internal memory start address (hex)" | |
9287d95e HT |
227 | default "00f00000" if !CHIP_M32104 |
228 | default "00700000" if CHIP_M32104 | |
229 | depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM | |
1da177e4 LT |
230 | |
231 | config IRAM_SIZE | |
232 | hex "Internal memory size (hex)" | |
9287d95e | 233 | depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM |
1da177e4 | 234 | default "00080000" if CHIP_M32700 |
9287d95e | 235 | default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104 |
1da177e4 LT |
236 | default "00008000" if CHIP_VDEC2 |
237 | ||
238 | # | |
239 | # Define implied options from the CPU selection here | |
240 | # | |
241 | ||
95c354fe NP |
242 | config GENERIC_LOCKBREAK |
243 | bool | |
244 | default y | |
245 | depends on SMP && PREEMPT | |
246 | ||
1da177e4 LT |
247 | config RWSEM_GENERIC_SPINLOCK |
248 | bool | |
249 | depends on M32R | |
250 | default y | |
251 | ||
252 | config RWSEM_XCHGADD_ALGORITHM | |
253 | bool | |
254 | default n | |
255 | ||
f0d1b0b3 DH |
256 | config ARCH_HAS_ILOG2_U32 |
257 | bool | |
258 | default n | |
259 | ||
260 | config ARCH_HAS_ILOG2_U64 | |
261 | bool | |
262 | default n | |
263 | ||
6d9f937b AM |
264 | config GENERIC_FIND_NEXT_BIT |
265 | bool | |
266 | default y | |
267 | ||
268 | config GENERIC_HWEIGHT | |
269 | bool | |
270 | default y | |
271 | ||
1da177e4 LT |
272 | config GENERIC_CALIBRATE_DELAY |
273 | bool | |
274 | default y | |
275 | ||
43c09ce7 HT |
276 | config SCHED_NO_NO_OMIT_FRAME_POINTER |
277 | bool | |
278 | default y | |
279 | ||
1da177e4 LT |
280 | config PREEMPT |
281 | bool "Preemptible Kernel" | |
282 | help | |
283 | This option reduces the latency of the kernel when reacting to | |
284 | real-time or interactive events by allowing a low priority process to | |
285 | be preempted even if it is in kernel mode executing a system call. | |
286 | This allows applications to run more reliably even when the system is | |
287 | under load. | |
288 | ||
289 | Say Y here if you are building a kernel for a desktop, embedded | |
290 | or real-time system. Say N if you are unsure. | |
291 | ||
1da177e4 LT |
292 | config SMP |
293 | bool "Symmetric multi-processing support" | |
294 | ---help--- | |
295 | This enables support for systems with more than one CPU. If you have | |
296 | a system with only one CPU, like most personal computers, say N. If | |
297 | you have a system with more than one CPU, say Y. | |
298 | ||
299 | If you say N here, the kernel will run on single and multiprocessor | |
300 | machines, but will use only one CPU of a multiprocessor machine. If | |
301 | you say Y here, the kernel will run on many, but not all, | |
302 | singleprocessor machines. On a singleprocessor machine, the kernel | |
303 | will run faster if you say N here. | |
304 | ||
305 | People using multiprocessor machines who say Y here should also say | |
306 | Y to "Enhanced Real Time Clock Support", below. The "Advanced Power | |
307 | Management" code will be disabled if you say Y here. | |
308 | ||
03502faa | 309 | See also the SMP-HOWTO available at |
1da177e4 LT |
310 | <http://www.linuxdoc.org/docs.html#howto>. |
311 | ||
312 | If you don't know what to do here, say N. | |
313 | ||
314 | config CHIP_M32700_TS1 | |
315 | bool "Workaround code for the M32700 TS1 chip's bug" | |
316 | depends on (CHIP_M32700 && SMP) | |
317 | default n | |
318 | ||
319 | config NR_CPUS | |
320 | int "Maximum number of CPUs (2-32)" | |
321 | range 2 32 | |
322 | depends on SMP | |
323 | default "2" | |
324 | help | |
325 | This allows you to specify the maximum number of CPUs which this | |
326 | kernel will support. The maximum supported value is 32 and the | |
327 | minimum value which makes sense is 2. | |
328 | ||
329 | This is purely to save memory - each supported CPU adds | |
330 | approximately eight kilobytes to the kernel image. | |
331 | ||
332 | # Common NUMA Features | |
333 | config NUMA | |
334 | bool "Numa Memory Allocation Support" | |
c5596b26 | 335 | depends on SMP && BROKEN |
1da177e4 LT |
336 | default n |
337 | ||
c80d79d7 YG |
338 | config NODES_SHIFT |
339 | int | |
340 | default "1" | |
341 | depends on NEED_MULTIPLE_NODES | |
342 | ||
1da177e4 LT |
343 | # turning this on wastes a bunch of space. |
344 | # Summit needs it only when NUMA is on | |
345 | config BOOT_IOREMAP | |
346 | bool | |
347 | depends on NUMA | |
348 | default n | |
349 | ||
350 | endmenu | |
351 | ||
352 | ||
353 | menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)" | |
354 | ||
355 | config PCI | |
356 | bool "PCI support" | |
c3a0f771 | 357 | depends on BROKEN |
1da177e4 LT |
358 | default n |
359 | help | |
360 | Find out whether you have a PCI motherboard. PCI is the name of a | |
361 | bus system, i.e. the way the CPU talks to the other stuff inside | |
362 | your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or | |
363 | VESA. If you have PCI, say Y, otherwise N. | |
364 | ||
1da177e4 LT |
365 | choice |
366 | prompt "PCI access mode" | |
367 | depends on PCI | |
368 | default PCI_GOANY | |
369 | ||
370 | config PCI_GOBIOS | |
371 | bool "BIOS" | |
372 | ---help--- | |
373 | On PCI systems, the BIOS can be used to detect the PCI devices and | |
374 | determine their configuration. However, some old PCI motherboards | |
375 | have BIOS bugs and may crash if this is done. Also, some embedded | |
376 | PCI-based systems don't have any BIOS at all. Linux can also try to | |
377 | detect the PCI hardware directly without using the BIOS. | |
378 | ||
379 | With this option, you can specify how Linux should detect the PCI | |
380 | devices. If you choose "BIOS", the BIOS will be used, if you choose | |
381 | "Direct", the BIOS won't be used, and if you choose "Any", the | |
382 | kernel will try the direct access method and falls back to the BIOS | |
383 | if that doesn't work. If unsure, go with the default, which is | |
384 | "Any". | |
385 | ||
386 | config PCI_GODIRECT | |
387 | bool "Direct" | |
388 | ||
389 | config PCI_GOANY | |
390 | bool "Any" | |
391 | ||
392 | endchoice | |
393 | ||
394 | config PCI_BIOS | |
395 | bool | |
396 | depends on PCI && (PCI_GOBIOS || PCI_GOANY) | |
397 | default y | |
398 | ||
399 | config PCI_DIRECT | |
400 | bool | |
401 | depends on PCI && (PCI_GODIRECT || PCI_GOANY) | |
402 | default y | |
403 | ||
404 | source "drivers/pci/Kconfig" | |
405 | ||
406 | config ISA | |
407 | bool "ISA support" | |
408 | help | |
409 | Find out whether you have ISA slots on your motherboard. ISA is the | |
410 | name of a bus system, i.e. the way the CPU talks to the other stuff | |
411 | inside your box. If you have ISA, say Y, otherwise N. | |
412 | ||
413 | source "drivers/pcmcia/Kconfig" | |
414 | ||
415 | source "drivers/pci/hotplug/Kconfig" | |
416 | ||
417 | endmenu | |
418 | ||
419 | ||
420 | menu "Executable file formats" | |
421 | ||
422 | source "fs/Kconfig.binfmt" | |
423 | ||
424 | endmenu | |
425 | ||
d5950b43 SR |
426 | source "net/Kconfig" |
427 | ||
1da177e4 LT |
428 | source "drivers/Kconfig" |
429 | ||
430 | source "fs/Kconfig" | |
431 | ||
1da177e4 LT |
432 | source "arch/m32r/Kconfig.debug" |
433 | ||
434 | source "security/Kconfig" | |
435 | ||
436 | source "crypto/Kconfig" | |
437 | ||
438 | source "lib/Kconfig" |