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