patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / arch / ppc64 / Kconfig
1
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 config 64BIT
7         def_bool y
8
9 config MMU
10         bool
11         default y
12
13 config UID16
14         bool
15
16 config RWSEM_GENERIC_SPINLOCK
17         bool
18
19 config RWSEM_XCHGADD_ALGORITHM
20         bool
21         default y
22
23 config GENERIC_ISA_DMA
24         bool
25         default y
26
27 config HAVE_DEC_LOCK
28         bool
29         default y
30
31 config EARLY_PRINTK
32         bool
33         default y
34
35 config COMPAT
36         bool
37         default y
38
39 config FRAME_POINTER
40         bool
41         default y
42
43 # We optimistically allocate largepages from the VM, so make the limit
44 # large enough (16MB). This badly named config option is actually
45 # max order + 1
46 config FORCE_MAX_ZONEORDER
47         int
48         default "13"
49
50 source "init/Kconfig"
51
52 config SYSVIPC_COMPAT
53         bool
54         depends on COMPAT && SYSVIPC
55         default y
56
57 menu "Platform support"
58
59 choice
60         prompt "Platform Type"
61         default PPC_PSERIES
62
63 config PPC_ISERIES
64         bool "iSeries"
65
66 config PPC_PSERIES
67         bool "pSeries / PowerMac G5"
68
69 endchoice
70
71 config PPC
72         bool
73         default y
74
75 config PPC64
76         bool
77         default y
78
79 config PPC_OF
80         depends on PPC_PSERIES
81         bool
82         default y
83
84 # VMX is pSeries only for now until somebody writes the iSeries
85 # exception vectors for it
86 config ALTIVEC
87         bool "Support for VMX (Altivec) vector unit"
88         depends on PPC_PSERIES
89         default y
90
91 config PPC_PMAC
92         depends on PPC_PSERIES
93         bool "Apple PowerMac G5 support"
94         select ADB_PMU
95
96 config PPC_SPLPAR
97         depends on PPC_PSERIES
98         bool "Support for shared-processor logical partitions"
99         default n
100         help
101           Enabling this option will make the kernel run more efficiently
102           on logically-partitioned pSeries systems which use shared
103           processors, that is, which share physical processors between
104           two or more partitions.
105
106 config PMAC_DART
107         bool "Enable DART/IOMMU on PowerMac (allow >2G of RAM)"
108         depends on PPC_PMAC
109         depends on EXPERIMENTAL
110         default n
111         help
112           Enabling DART makes it possible to boot a PowerMac G5 with more
113           than 2GB of memory. Note that the code is very new and untested
114           at this time, so it has to be considered experimental. Enabling
115           this might result in data loss.
116
117 config PPC_PMAC64
118         bool
119         depends on PPC_PMAC
120         default y
121
122 config BOOTX_TEXT
123         bool "Support for early boot text console"
124         depends PPC_OF
125         help
126           Say Y here to see progress messages from the boot firmware in text
127           mode. Requires an Open Firmware compatible video card.
128
129 config POWER4_ONLY
130         bool "Optimize for POWER4"
131         default n
132         ---help---
133           Cause the compiler to optimize for POWER4 processors. The resulting
134           binary will not work on POWER3 or RS64 processors when compiled with
135           binutils 2.15 or later.
136
137 config IOMMU_VMERGE
138         bool "Enable IOMMU virtual merging (EXPERIMENTAL)"
139         depends on EXPERIMENTAL
140         default n
141         help
142           Cause IO segments sent to a device for DMA to be merged virtually
143           by the IOMMU when they happen to have been allocated contiguously.
144           This doesn't add pressure to the IOMMU allocator. However, some
145           drivers don't support getting large merged segments coming back
146           from *_map_sg(). Say Y if you know the drivers you are using are
147           properly handling this case.
148
149 config SMP
150         bool "Symmetric multi-processing support"
151         ---help---
152           This enables support for systems with more than one CPU. If you have
153           a system with only one CPU, say N. If you have a system with more
154           than one CPU, say Y.
155
156           If you say N here, the kernel will run on single and multiprocessor
157           machines, but will use only one CPU of a multiprocessor machine. If
158           you say Y here, the kernel will run on single-processor machines.
159           On a single-processor machine, the kernel will run faster if you say
160           N here.
161
162           If you don't know what to do here, say Y.
163
164 config IRQ_ALL_CPUS
165         bool "Distribute interrupts on all CPUs by default"
166         depends on SMP && PPC_PSERIES
167         help
168           This option gives the kernel permission to distribute IRQs across
169           multiple CPUs.  Saying N here will route all IRQs to the first
170           CPU.
171
172 config NR_CPUS
173         int "Maximum number of CPUs (2-128)"
174         range 2 128
175         depends on SMP
176         default "32"
177
178 config HMT
179         bool "Hardware multithreading"
180         depends on SMP && PPC_PSERIES
181
182 config DISCONTIGMEM
183         bool "Discontiguous Memory Support"
184         depends on SMP && PPC_PSERIES
185
186 config NUMA
187         bool "NUMA support"
188         depends on DISCONTIGMEM
189
190 config SCHED_SMT
191         bool "SMT (Hyperthreading) scheduler support"
192         depends on SMP
193         default off
194         help
195           SMT scheduler support improves the CPU scheduler's decision making
196           when dealing with POWER5 cpus at a cost of slightly increased
197           overhead in some places. If unsure say N here.
198
199 config PREEMPT
200         bool "Preemptible Kernel"
201         depends on BROKEN
202         help
203           This option reduces the latency of the kernel when reacting to
204           real-time or interactive events by allowing a low priority process to
205           be preempted even if it is in kernel mode executing a system call.
206
207           Say Y here if you are building a kernel for a desktop, embedded
208           or real-time system.  Say N if you are unsure.
209
210 config MSCHUNKS
211         bool
212         depends on PPC_ISERIES
213         default y
214
215
216 config PPC_RTAS
217         bool "Proc interface to RTAS"
218         depends on !PPC_ISERIES
219
220 config RTAS_FLASH
221         tristate "Firmware flash interface"
222         depends on PPC_RTAS
223
224 config SCANLOG
225         tristate "Scanlog dump interface"
226         depends on PPC_RTAS
227
228 config LPARCFG
229         bool "LPAR Configuration Data"
230         help
231         Provide system capacity information via human readable 
232         <key word>=<value> pairs through a /proc/ppc64/lparcfg interface.
233
234 endmenu
235
236
237 menu "General setup"
238
239 config ISA
240         bool
241         help
242           Find out whether you have ISA slots on your motherboard.  ISA is the
243           name of a bus system, i.e. the way the CPU talks to the other stuff
244           inside your box.  If you have an Apple machine, say N here; if you
245           have an IBM RS/6000 or pSeries machine or a PReP machine, say Y.  If
246           you have an embedded board, consult your board documentation.
247
248 config SBUS
249         bool
250
251 config MCA
252         bool
253
254 config EISA
255         bool
256
257 config PCI
258         bool
259         default y
260         help
261           Find out whether your system includes a PCI bus. PCI is the name of
262           a bus system, i.e. the way the CPU talks to the other stuff inside
263           your box.  If you say Y here, the kernel will include drivers and
264           infrastructure code to support PCI bus devices.
265
266 config PCI_DOMAINS
267         bool
268         default PCI
269
270 source "fs/Kconfig.binfmt"
271
272 source "drivers/pci/Kconfig"
273
274 config HOTPLUG_CPU
275         bool "Support for hot-pluggable CPUs"
276         depends on SMP && HOTPLUG && EXPERIMENTAL
277         ---help---
278           Say Y here to be able to turn CPUs off and on.
279
280           Say N if you are unsure.
281
282 source "drivers/pcmcia/Kconfig"
283
284 source "drivers/pci/hotplug/Kconfig"
285
286 config PROC_DEVICETREE
287         bool "Support for Open Firmware device tree in /proc"
288         depends on !PPC_ISERIES
289         help
290           This option adds a device-tree directory under /proc which contains
291           an image of the device tree that the kernel copies from Open
292           Firmware. If unsure, say Y here.
293
294 config CMDLINE_BOOL
295         bool "Default bootloader kernel arguments"
296         depends on !PPC_ISERIES
297
298 config CMDLINE
299         string "Initial kernel command string"
300         depends on CMDLINE_BOOL
301         default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
302         help
303           On some platforms, there is currently no way for the boot loader to
304           pass arguments to the kernel. For these platforms, you can supply
305           some command-line options at build time by entering them here.  In
306           most cases you will need to specify the root device here.
307
308 endmenu
309
310 source "drivers/Kconfig"
311
312 source "fs/Kconfig"
313
314 menu "iSeries device drivers"
315         depends on PPC_ISERIES
316
317 config VIOCONS
318         tristate "iSeries Virtual Console Support"
319
320 config VIODASD
321         tristate "iSeries Virtual I/O disk support"
322         help
323           If you are running on an iSeries system and you want to use
324           virtual disks created and managed by OS/400, say Y.
325
326 config VIOCD
327         tristate "iSeries Virtual I/O CD support"
328         help
329           If you are running Linux on an IBM iSeries system and you want to
330           read a CD drive owned by OS/400, say Y here.
331
332 config VIOTAPE
333         tristate "iSeries Virtual Tape Support"
334         help
335           If you are running Linux on an iSeries system and you want Linux
336           to read and/or write a tape drive owned by OS/400, say Y here.
337
338 endmenu
339
340 config VIOPATH
341         bool
342         depends on VIOCONS || VIODASD || VIOCD || VIOTAPE || VETH
343         default y
344
345 source "arch/ppc64/oprofile/Kconfig"
346
347 menu "Kernel hacking"
348
349 config DEBUG_KERNEL
350         bool "Kernel debugging"
351         help
352           Say Y here if you are developing drivers or trying to debug and
353           identify kernel problems.
354
355 config DEBUG_STACKOVERFLOW
356         bool "Check for stack overflows"
357         depends on DEBUG_KERNEL
358
359 config DEBUG_STACK_USAGE
360         bool "Stack utilization instrumentation"
361         depends on DEBUG_KERNEL
362         help
363           Enables the display of the minimum amount of free stack which each
364           task has ever had available in the sysrq-T and sysrq-P debug output.
365
366           This option will slow down process creation somewhat.
367
368 config DEBUG_SLAB
369         bool "Debug memory allocations"
370         depends on DEBUG_KERNEL
371         help
372           Say Y here to have the kernel do limited verification on memory
373           allocation as well as poisoning memory on free to catch use of freed
374           memory.
375
376 config MAGIC_SYSRQ
377         bool "Magic SysRq key"
378         depends on DEBUG_KERNEL
379         help
380           If you say Y here, you will have some control over the system even
381           if the system crashes for example during kernel debugging (e.g., you
382           will be able to flush the buffer cache to disk, reboot the system
383           immediately or dump some status information). This is accomplished
384           by pressing various keys while holding SysRq (Alt+PrintScreen). It
385           also works on a serial console (on PC hardware at least), if you
386           send a BREAK and then within 5 seconds a command keypress. The
387           keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
388           unless you really know what this hack does.
389
390 config DEBUGGER
391         bool "Enable debugger hooks"
392         depends on DEBUG_KERNEL
393         help
394           Include in-kernel hooks for kernel debuggers. Unless you are
395           intending to debug the kernel, say N here.
396
397 config XMON
398         bool "Include xmon kernel debugger"
399         depends on DEBUGGER
400         help
401           Include in-kernel hooks for the xmon kernel monitor/debugger.
402           Unless you are intending to debug the kernel, say N here.
403
404 config XMON_DEFAULT
405         bool "Enable xmon by default"
406         depends on XMON
407
408 config PPCDBG
409         bool "Include PPCDBG realtime debugging"
410         depends on DEBUG_KERNEL
411
412 config DEBUG_INFO
413         bool "Compile the kernel with debug info"
414         depends on DEBUG_KERNEL
415         help
416           If you say Y here the resulting kernel image will include
417           debugging info resulting in a larger kernel image.
418           Say Y here only if you plan to use gdb to debug the kernel.
419           If you don't debug the kernel, you can say N.
420
421 config IRQSTACKS
422         bool "Use separate kernel stacks when processing interrupts"
423         help
424           If you say Y here the kernel will use separate kernel stacks
425           for handling hard and soft interrupts.  This can help avoid
426           overflowing the process kernel stacks.
427           
428 endmenu
429
430 config SPINLINE
431         bool "Inline spinlock code at each call site"
432         depends on SMP && !PPC_SPLPAR && !PPC_ISERIES
433         help
434           Say Y if you want to have the code for acquiring spinlocks
435           and rwlocks inlined at each call site.  This makes the kernel
436           somewhat bigger, but can be useful when profiling the kernel.
437
438           If in doubt, say N.
439
440 source "kernel/vserver/Kconfig"
441
442 source "security/Kconfig"
443
444 source "crypto/Kconfig"
445
446 source "lib/Kconfig"
447