This commit was manufactured by cvs2svn to create branch 'vserver'.
[linux-2.6.git] / arch / m32r / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 mainmenu "Linux Kernel Configuration"
7
8 config M32R
9         bool
10         default y
11
12 config SBUS
13         bool
14
15 config UID16
16         bool
17         default y
18
19 config GENERIC_ISA_DMA
20         bool
21         default y
22
23 source "init/Kconfig"
24
25
26 menu "Processor type and features"
27
28 choice
29         prompt "Platform Type"
30         default PLAT_MAPPI
31
32 config PLAT_MAPPI
33         bool "Mappi-I"
34         help
35           The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
36           You can operate a Linux system on this board by using an M32R
37           softmacro core, which is a fully-synthesizable functional model
38           described in Verilog-HDL.
39
40           The Mappi-I board was the first platform, which had been used
41           to port and develop a Linux system for the M32R processor.
42           Currently, the Mappi-II, an heir to the Mappi-I, is available.
43
44 config PLAT_USRV
45         bool "uServer"
46
47 config PLAT_M32700UT
48         bool "M32700UT"
49         help
50           The M3T-M32700UT is an evaluation board based on uT-Engine
51           specification.  This board has an M32700 (Chaos) evaluation chip.
52           You can say Y for SMP, because the M32700 is a single chip
53           multiprocessor.
54
55 config PLAT_OPSPUT
56         bool "OPSPUT"
57         help
58           The OPSPUT is an evaluation board based on uT-Engine
59           specification.  This board has a OPSP-REP chip.
60
61 config PLAT_OAKS32R
62         bool "OAKS32R"
63         help
64           The OAKS32R is a tiny, inexpensive evaluation board.
65           Please note that if you say Y here and choose chip "M32102",
66           say N for MMU and select a no-MMU version kernel, otherwise
67           a kernel with MMU support will not work, because the M32102
68           is a microcontroller for embedded systems and it has no MMU.
69
70 config PLAT_MAPPI2
71        bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
72
73 endchoice
74
75 choice
76         prompt "Processor family"
77         default CHIP_M32700
78
79 config CHIP_M32700
80         bool "M32700 (Chaos)"
81
82 config CHIP_M32102
83         bool "M32102"
84
85 config CHIP_VDEC2
86        bool "VDEC2"
87
88 config CHIP_OPSP
89        bool "OPSP"
90
91 endchoice
92
93 config MMU
94         bool "Support for memory management hardware"
95         depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
96         default y
97
98 config TLB_ENTRIES
99        int "TLB Entries"
100        depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
101        default 32 if CHIP_M32700 || CHIP_OPSP
102        default 16 if CHIP_VDEC2
103
104
105 config ISA_M32R
106         bool
107         depends on CHIP_M32102
108         default y
109
110 config ISA_M32R2
111         bool
112         depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
113         default y
114
115 config ISA_DSP_LEVEL2
116         bool
117         depends on CHIP_M32700 || CHIP_OPSP
118         default y
119
120 config ISA_DUAL_ISSUE
121         bool
122         depends on CHIP_M32700 || CHIP_OPSP
123         default y
124
125 config BUS_CLOCK
126         int "Bus Clock [Hz] (integer)"
127         default "70000000" if PLAT_MAPPI
128         default "25000000" if PLAT_USRV
129         default "50000000" if PLAT_M32700UT
130         default "50000000" if PLAT_OPSPUT
131         default "33333333" if PLAT_OAKS32R
132         default "20000000" if PLAT_MAPPI2
133
134 config TIMER_DIVIDE
135         int "Timer divider (integer)"
136         default "128"
137
138 config CPU_LITTLE_ENDIAN
139         bool "Generate little endian code"
140         default n
141
142 config MEMORY_START
143         hex "Physical memory start address (hex)"
144         default "08000000" if PLAT_MAPPI || PLAT_MAPPI2
145         default "08000000" if PLAT_USRV
146         default "08000000" if PLAT_M32700UT
147         default "08000000" if PLAT_OPSPUT
148         default "01000000" if PLAT_OAKS32R
149
150 config MEMORY_SIZE
151         hex "Physical memory size (hex)"
152         default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
153         default "02000000" if PLAT_USRV
154         default "01000000" if PLAT_M32700UT
155         default "01000000" if PLAT_OPSPUT
156         default "00800000" if PLAT_OAKS32R
157
158 config NOHIGHMEM
159         bool
160         default y
161
162 config DISCONTIGMEM
163         bool "Internal RAM Support"
164         depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP
165         default y
166
167 config IRAM_START
168         hex "Internal memory start address (hex)"
169         default "00f00000"
170         depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP) && DISCONTIGMEM
171
172 config IRAM_SIZE
173         hex "Internal memory size (hex)"
174         depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP) && DISCONTIGMEM
175         default "00080000" if CHIP_M32700
176         default "00010000" if CHIP_M32102 || CHIP_OPSP
177         default "00008000" if CHIP_VDEC2
178
179 #
180 # Define implied options from the CPU selection here
181 #
182
183 config RWSEM_GENERIC_SPINLOCK
184         bool
185         depends on M32R
186         default y
187
188 config RWSEM_XCHGADD_ALGORITHM
189         bool
190         default n
191
192 config PREEMPT
193         bool "Preemptible Kernel"
194         help
195           This option reduces the latency of the kernel when reacting to
196           real-time or interactive events by allowing a low priority process to
197           be preempted even if it is in kernel mode executing a system call.
198           This allows applications to run more reliably even when the system is
199           under load.
200
201           Say Y here if you are building a kernel for a desktop, embedded
202           or real-time system.  Say N if you are unsure.
203
204 config HAVE_DEC_LOCK
205         bool
206         depends on (SMP || PREEMPT)
207         default n
208
209 config SMP
210         bool "Symmetric multi-processing support"
211         ---help---
212           This enables support for systems with more than one CPU. If you have
213           a system with only one CPU, like most personal computers, say N. If
214           you have a system with more than one CPU, say Y.
215
216           If you say N here, the kernel will run on single and multiprocessor
217           machines, but will use only one CPU of a multiprocessor machine. If
218           you say Y here, the kernel will run on many, but not all,
219           singleprocessor machines. On a singleprocessor machine, the kernel
220           will run faster if you say N here.
221
222           People using multiprocessor machines who say Y here should also say
223           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
224           Management" code will be disabled if you say Y here.
225
226           See also the <file:Documentation/smp.tex>,
227           <file:Documentation/smp.txt> and the SMP-HOWTO available at
228           <http://www.linuxdoc.org/docs.html#howto>.
229
230           If you don't know what to do here, say N.
231
232 config CHIP_M32700_TS1
233         bool "Workaround code for the M32700 TS1 chip's bug"
234         depends on (CHIP_M32700 && SMP)
235         default n
236
237 config NR_CPUS
238         int "Maximum number of CPUs (2-32)"
239         range 2 32
240         depends on SMP
241         default "2"
242         help
243           This allows you to specify the maximum number of CPUs which this
244           kernel will support.  The maximum supported value is 32 and the
245           minimum value which makes sense is 2.
246
247           This is purely to save memory - each supported CPU adds
248           approximately eight kilobytes to the kernel image.
249
250 # Common NUMA Features
251 config NUMA
252         bool "Numa Memory Allocation Support"
253         depends on SMP
254         default n
255
256 # turning this on wastes a bunch of space.
257 # Summit needs it only when NUMA is on
258 config BOOT_IOREMAP
259         bool
260         depends on NUMA
261         default n
262
263 endmenu
264
265
266 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
267
268 config PCI
269         bool "PCI support"
270         default n
271         help
272           Find out whether you have a PCI motherboard. PCI is the name of a
273           bus system, i.e. the way the CPU talks to the other stuff inside
274           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
275           VESA. If you have PCI, say Y, otherwise N.
276
277           The PCI-HOWTO, available from
278           <http://www.linuxdoc.org/docs.html#howto>, contains valuable
279           information about which PCI hardware does work under Linux and which
280           doesn't.
281
282 choice
283         prompt "PCI access mode"
284         depends on PCI
285         default PCI_GOANY
286
287 config PCI_GOBIOS
288         bool "BIOS"
289         ---help---
290           On PCI systems, the BIOS can be used to detect the PCI devices and
291           determine their configuration. However, some old PCI motherboards
292           have BIOS bugs and may crash if this is done. Also, some embedded
293           PCI-based systems don't have any BIOS at all. Linux can also try to
294           detect the PCI hardware directly without using the BIOS.
295
296           With this option, you can specify how Linux should detect the PCI
297           devices. If you choose "BIOS", the BIOS will be used, if you choose
298           "Direct", the BIOS won't be used, and if you choose "Any", the
299           kernel will try the direct access method and falls back to the BIOS
300           if that doesn't work. If unsure, go with the default, which is
301           "Any".
302
303 config PCI_GODIRECT
304         bool "Direct"
305
306 config PCI_GOANY
307         bool "Any"
308
309 endchoice
310
311 config PCI_BIOS
312         bool
313         depends on PCI && (PCI_GOBIOS || PCI_GOANY)
314         default y
315
316 config PCI_DIRECT
317         bool
318         depends on PCI && (PCI_GODIRECT || PCI_GOANY)
319         default y
320
321 source "drivers/pci/Kconfig"
322
323 config ISA
324         bool "ISA support"
325         help
326           Find out whether you have ISA slots on your motherboard.  ISA is the
327           name of a bus system, i.e. the way the CPU talks to the other stuff
328           inside your box.  If you have ISA, say Y, otherwise N.
329
330 source "drivers/pcmcia/Kconfig"
331
332 source "drivers/pci/hotplug/Kconfig"
333
334 endmenu
335
336
337 menu "Executable file formats"
338
339 source "fs/Kconfig.binfmt"
340
341 endmenu
342
343 source "drivers/Kconfig"
344
345 source "fs/Kconfig"
346
347 source "arch/m32r/oprofile/Kconfig"
348
349 menu "Kernel hacking"
350
351 config DEBUG_KERNEL
352         bool "Kernel debugging"
353         help
354           Say Y here if you are developing drivers or trying to debug and
355           identify kernel problems.
356
357 config DEBUG_STACKOVERFLOW
358         bool "Check for stack overflows"
359         depends on DEBUG_KERNEL
360
361 config DEBUG_SLAB
362         bool "Debug memory allocations"
363         depends on DEBUG_KERNEL
364         help
365           Say Y here to have the kernel do limited verification on memory
366           allocation as well as poisoning memory on free to catch use of freed
367           memory.
368
369 config DEBUG_IOVIRT
370         bool "Memory mapped I/O debugging"
371         depends on DEBUG_KERNEL
372         help
373           Say Y here to get warned whenever an attempt is made to do I/O on
374           obviously invalid addresses such as those generated when ioremap()
375           calls are forgotten.  Memory mapped I/O will go through an extra
376           check to catch access to unmapped ISA addresses, an access method
377           that can still be used by old drivers that are being ported from
378           2.0/2.2.
379
380 config MAGIC_SYSRQ
381         bool "Magic SysRq key"
382         depends on DEBUG_KERNEL
383         help
384           If you say Y here, you will have some control over the system even
385           if the system crashes for example during kernel debugging (e.g., you
386           will be able to flush the buffer cache to disk, reboot the system
387           immediately or dump some status information). This is accomplished
388           by pressing various keys while holding SysRq (Alt+PrintScreen). It
389           also works on a serial console (on PC hardware at least), if you
390           send a BREAK and then within 5 seconds a command keypress. The
391           keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
392           unless you really know what this hack does.
393
394 config DEBUG_SPINLOCK
395         bool "Spinlock debugging"
396         depends on DEBUG_KERNEL
397         help
398           Say Y here and build SMP to catch missing spinlock initialization
399           and certain other kinds of spinlock errors commonly made.  This is
400           best used in conjunction with the NMI watchdog so that spinlock
401           deadlocks are also debuggable.
402
403 config DEBUG_PAGEALLOC
404         bool "Page alloc debugging"
405         depends on DEBUG_KERNEL
406         help
407           Unmap pages from the kernel linear mapping after free_pages().
408           This results in a large slowdown, but helps to find certain types
409           of memory corruptions.
410
411 config DEBUG_INFO
412         bool "Compile the kernel with debug info"
413         depends on DEBUG_KERNEL
414         help
415           If you say Y here the resulting kernel image will include
416           debugging info resulting in a larger kernel image.
417           Say Y here only if you plan to use gdb to debug the kernel.
418           If you don't debug the kernel, you can say N.
419
420 config DEBUG_SPINLOCK_SLEEP
421         bool "Sleep-inside-spinlock checking"
422         help
423           If you say Y here, various routines which may sleep will become very
424           noisy if they are called with a spinlock held.
425
426 config FRAME_POINTER
427         bool "Compile the kernel with frame pointers"
428         help
429           If you say Y here the resulting kernel image will be slightly larger
430           and slower, but it will give very useful debugging information.
431           If you don't debug the kernel, you can say N, but we may not be able
432           to solve problems without frame pointers.
433
434 endmenu
435
436 source "security/Kconfig"
437
438 source "crypto/Kconfig"
439
440 source "lib/Kconfig"
441