blob: f804f25232ac5fc75168ad7c344ee88dc9dff6ee [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt.
4#
5
6config 64BIT
7 def_bool y
8
9config MMU
10 bool
11 default y
12
13config UID16
14 bool
15
16config RWSEM_GENERIC_SPINLOCK
17 bool
18
19config RWSEM_XCHGADD_ALGORITHM
20 bool
21 default y
22
23config GENERIC_CALIBRATE_DELAY
24 bool
25 default y
26
27config GENERIC_ISA_DMA
28 bool
29 default y
30
31config HAVE_DEC_LOCK
32 bool
33 default y
34
35config EARLY_PRINTK
36 bool
37 default y
38
39config COMPAT
40 bool
41 default y
42
Anton Blanchard7d12e522005-05-05 16:15:11 -070043config SCHED_NO_NO_OMIT_FRAME_POINTER
44 bool
45 default y
46
Linus Torvalds1da177e2005-04-16 15:20:36 -070047# We optimistically allocate largepages from the VM, so make the limit
48# large enough (16MB). This badly named config option is actually
49# max order + 1
50config FORCE_MAX_ZONEORDER
51 int
52 default "13"
53
54source "init/Kconfig"
55
56config SYSVIPC_COMPAT
57 bool
58 depends on COMPAT && SYSVIPC
59 default y
60
61menu "Platform support"
62
63choice
64 prompt "Platform Type"
65 default PPC_MULTIPLATFORM
66
67config PPC_ISERIES
68 bool "IBM Legacy iSeries"
69
70config PPC_MULTIPLATFORM
71 bool "Generic"
72
73endchoice
74
75config PPC_PSERIES
76 depends on PPC_MULTIPLATFORM
77 bool " IBM pSeries & new iSeries"
78 default y
79
Arnd Bergmannfef1c772005-06-23 09:43:37 +100080config PPC_BPA
81 bool " Broadband Processor Architecture"
82 depends on PPC_MULTIPLATFORM
83
Linus Torvalds1da177e2005-04-16 15:20:36 -070084config PPC_PMAC
85 depends on PPC_MULTIPLATFORM
86 bool " Apple G5 based machines"
87 default y
88 select U3_DART
89
90config PPC_MAPLE
91 depends on PPC_MULTIPLATFORM
92 bool " Maple 970FX Evaluation Board"
93 select U3_DART
94 select MPIC_BROKEN_U3
95 default n
96 help
97 This option enables support for the Maple 970FX Evaluation Board.
98 For more informations, refer to <http://www.970eval.com>
99
100config PPC
101 bool
102 default y
103
104config PPC64
105 bool
106 default y
107
108config PPC_OF
109 depends on PPC_MULTIPLATFORM
110 bool
111 default y
112
Arnd Bergmanncebf5892005-06-23 09:43:43 +1000113config XICS
114 depends on PPC_PSERIES
115 bool
116 default y
117
118config MPIC
119 depends on PPC_PSERIES || PPC_PMAC || PPC_MAPLE
120 bool
121 default y
122
123config BPA_IIC
124 depends on PPC_BPA
125 bool
126 default y
127
Linus Torvalds1da177e2005-04-16 15:20:36 -0700128# VMX is pSeries only for now until somebody writes the iSeries
129# exception vectors for it
130config ALTIVEC
131 bool "Support for VMX (Altivec) vector unit"
132 depends on PPC_MULTIPLATFORM
133 default y
134
135config PPC_SPLPAR
136 depends on PPC_PSERIES
137 bool "Support for shared-processor logical partitions"
138 default n
139 help
140 Enabling this option will make the kernel run more efficiently
141 on logically-partitioned pSeries systems which use shared
142 processors, that is, which share physical processors between
143 two or more partitions.
144
R Sharadafce0d572005-06-25 14:58:10 -0700145config KEXEC
146 bool "kexec system call (EXPERIMENTAL)"
147 depends on PPC_MULTIPLATFORM && EXPERIMENTAL
148 help
149 kexec is a system call that implements the ability to shutdown your
150 current kernel, and to start another kernel. It is like a reboot
151 but it is indepedent of the system firmware. And like a reboot
152 you can start any kernel with it, not just Linux.
153
154 The name comes from the similiarity to the exec system call.
155
156 It is an ongoing process to be certain the hardware in a machine
157 is properly shutdown, so do not be surprised if this code does not
158 initially work for you. It may help to enable device hotplugging
159 support. As of this writing the exact hardware interface is
160 strongly in flux, so no good recommendation can be made.
161
Linus Torvalds1da177e2005-04-16 15:20:36 -0700162config IBMVIO
163 depends on PPC_PSERIES || PPC_ISERIES
164 bool
165 default y
166
167config U3_DART
168 bool
169 depends on PPC_MULTIPLATFORM
170 default n
171
172config MPIC_BROKEN_U3
173 bool
174 depends on PPC_MAPLE
175 default y
176
177config PPC_PMAC64
178 bool
179 depends on PPC_PMAC
180 default y
181
182config BOOTX_TEXT
183 bool "Support for early boot text console"
184 depends PPC_OF
185 help
186 Say Y here to see progress messages from the boot firmware in text
187 mode. Requires an Open Firmware compatible video card.
188
189config POWER4_ONLY
190 bool "Optimize for POWER4"
191 default n
192 ---help---
193 Cause the compiler to optimize for POWER4 processors. The resulting
194 binary will not work on POWER3 or RS64 processors when compiled with
195 binutils 2.15 or later.
196
197config IOMMU_VMERGE
198 bool "Enable IOMMU virtual merging (EXPERIMENTAL)"
199 depends on EXPERIMENTAL
200 default n
201 help
202 Cause IO segments sent to a device for DMA to be merged virtually
203 by the IOMMU when they happen to have been allocated contiguously.
204 This doesn't add pressure to the IOMMU allocator. However, some
205 drivers don't support getting large merged segments coming back
206 from *_map_sg(). Say Y if you know the drivers you are using are
207 properly handling this case.
208
209config 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, say N. If you have a system with more
214 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 single-processor machines.
219 On a single-processor machine, the kernel will run faster if you say
220 N here.
221
222 If you don't know what to do here, say Y.
223
224config NR_CPUS
225 int "Maximum number of CPUs (2-128)"
226 range 2 128
227 depends on SMP
228 default "32"
229
230config HMT
231 bool "Hardware multithreading"
232 depends on SMP && PPC_PSERIES && BROKEN
233 help
234 This option enables hardware multithreading on RS64 cpus.
235 pSeries systems p620 and p660 have such a cpu type.
236
Andy Whitcroft145e6642005-06-23 00:08:03 -0700237config ARCH_SELECT_MEMORY_MODEL
238 def_bool y
239
240config ARCH_FLATMEM_ENABLE
241 def_bool y
242 depends on !NUMA
243
Dave Hansen3f22ab22005-06-23 00:07:43 -0700244config ARCH_DISCONTIGMEM_ENABLE
Mike Kravetz368a0a32005-06-23 00:07:51 -0700245 def_bool y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700246 depends on SMP && PPC_PSERIES
247
Mike Kravetz368a0a32005-06-23 00:07:51 -0700248config ARCH_DISCONTIGMEM_DEFAULT
249 def_bool y
250 depends on ARCH_DISCONTIGMEM_ENABLE
251
252config ARCH_FLATMEM_ENABLE
253 def_bool y
254
Andy Whitcroft145e6642005-06-23 00:08:03 -0700255config ARCH_SPARSEMEM_ENABLE
256 def_bool y
257 depends on ARCH_DISCONTIGMEM_ENABLE
258
Dave Hansen3f22ab22005-06-23 00:07:43 -0700259source "mm/Kconfig"
260
Andy Whitcroft510f8fa2005-06-23 00:08:01 -0700261config HAVE_ARCH_EARLY_PFN_TO_NID
Andy Whitcroft74b30be2005-06-23 00:08:02 -0700262 def_bool y
263 depends on NEED_MULTIPLE_NODES
Andy Whitcroft510f8fa2005-06-23 00:08:01 -0700264
Andy Whitcroft641c7672005-06-23 00:07:59 -0700265# Some NUMA nodes have memory ranges that span
266# other nodes. Even though a pfn is valid and
267# between a node's start and end pfns, it may not
268# reside on that node.
269#
270# This is a relatively temporary hack that should
271# be able to go away when sparsemem is fully in
272# place
273config NODES_SPAN_OTHER_NODES
274 def_bool y
275 depends on NEED_MULTIPLE_NODES
276
Linus Torvalds1da177e2005-04-16 15:20:36 -0700277config NUMA
278 bool "NUMA support"
Andy Whitcroft145e6642005-06-23 00:08:03 -0700279 default y if DISCONTIGMEM || SPARSEMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700280
281config SCHED_SMT
282 bool "SMT (Hyperthreading) scheduler support"
283 depends on SMP
284 default off
285 help
286 SMT scheduler support improves the CPU scheduler's decision making
287 when dealing with POWER5 cpus at a cost of slightly increased
288 overhead in some places. If unsure say N here.
289
Ingo Molnarcc19ca82005-06-25 14:57:36 -0700290source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700291
292config EEH
293 bool "PCI Extended Error Handling (EEH)" if EMBEDDED
294 depends on PPC_PSERIES
295 default y if !EMBEDDED
296
297#
298# Use the generic interrupt handling code in kernel/irq/:
299#
300config GENERIC_HARDIRQS
301 bool
302 default y
303
304config MSCHUNKS
305 bool
306 depends on PPC_ISERIES
307 default y
308
309
310config PPC_RTAS
311 bool
Arnd Bergmannfef1c772005-06-23 09:43:37 +1000312 depends on PPC_PSERIES || PPC_BPA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700313 default y
314
315config RTAS_PROC
316 bool "Proc interface to RTAS"
317 depends on PPC_RTAS
Paul Mackerrasb7c2b702005-05-06 17:41:03 -0700318 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700319
320config RTAS_FLASH
321 tristate "Firmware flash interface"
322 depends on RTAS_PROC
323
324config SCANLOG
325 tristate "Scanlog dump interface"
326 depends on RTAS_PROC && PPC_PSERIES
327
328config LPARCFG
329 tristate "LPAR Configuration Data"
330 depends on PPC_PSERIES || PPC_ISERIES
331 help
332 Provide system capacity information via human readable
333 <key word>=<value> pairs through a /proc/ppc64/lparcfg interface.
334
335config SECCOMP
336 bool "Enable seccomp to safely compute untrusted bytecode"
337 depends on PROC_FS
338 default y
339 help
340 This kernel feature is useful for number crunching applications
341 that may need to compute untrusted bytecode during their
342 execution. By using pipes or other transports made available to
343 the process as file descriptors supporting the read/write
344 syscalls, it's possible to isolate those applications in
345 their own address space using seccomp. Once seccomp is
346 enabled via /proc/<pid>/seccomp, it cannot be disabled
347 and the task is only allowed to execute a few safe syscalls
348 defined by each seccomp mode.
349
350 If unsure, say Y. Only embedded should say N here.
351
352endmenu
353
Al Viro5cae8412005-05-04 05:39:22 +0100354config ISA_DMA_API
355 bool
356 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700357
358menu "General setup"
359
360config ISA
361 bool
362 help
363 Find out whether you have ISA slots on your motherboard. ISA is the
364 name of a bus system, i.e. the way the CPU talks to the other stuff
365 inside your box. If you have an Apple machine, say N here; if you
366 have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If
367 you have an embedded board, consult your board documentation.
368
369config SBUS
370 bool
371
372config MCA
373 bool
374
375config EISA
376 bool
377
378config PCI
Stephen Rothwell145d01e2005-06-21 17:15:52 -0700379 bool "support for PCI devices" if (EMBEDDED && PPC_ISERIES)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700380 default y
381 help
382 Find out whether your system includes a PCI bus. PCI is the name of
383 a bus system, i.e. the way the CPU talks to the other stuff inside
384 your box. If you say Y here, the kernel will include drivers and
385 infrastructure code to support PCI bus devices.
386
387config PCI_DOMAINS
388 bool
389 default PCI
390
391source "fs/Kconfig.binfmt"
392
393source "drivers/pci/Kconfig"
394
395config HOTPLUG_CPU
396 bool "Support for hot-pluggable CPUs"
397 depends on SMP && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC)
398 select HOTPLUG
399 ---help---
400 Say Y here to be able to turn CPUs off and on.
401
402 Say N if you are unsure.
403
404source "drivers/pcmcia/Kconfig"
405
406source "drivers/pci/hotplug/Kconfig"
407
408config PROC_DEVICETREE
409 bool "Support for Open Firmware device tree in /proc"
410 depends on !PPC_ISERIES
411 help
412 This option adds a device-tree directory under /proc which contains
413 an image of the device tree that the kernel copies from Open
414 Firmware. If unsure, say Y here.
415
416config CMDLINE_BOOL
417 bool "Default bootloader kernel arguments"
418 depends on !PPC_ISERIES
419
420config CMDLINE
421 string "Initial kernel command string"
422 depends on CMDLINE_BOOL
423 default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
424 help
425 On some platforms, there is currently no way for the boot loader to
426 pass arguments to the kernel. For these platforms, you can supply
427 some command-line options at build time by entering them here. In
428 most cases you will need to specify the root device here.
429
430endmenu
431
432source "drivers/Kconfig"
433
434source "fs/Kconfig"
435
436menu "iSeries device drivers"
437 depends on PPC_ISERIES
438
439config VIOCONS
440 tristate "iSeries Virtual Console Support"
441
442config VIODASD
443 tristate "iSeries Virtual I/O disk support"
444 help
445 If you are running on an iSeries system and you want to use
446 virtual disks created and managed by OS/400, say Y.
447
448config VIOCD
449 tristate "iSeries Virtual I/O CD support"
450 help
451 If you are running Linux on an IBM iSeries system and you want to
452 read a CD drive owned by OS/400, say Y here.
453
454config VIOTAPE
455 tristate "iSeries Virtual Tape Support"
456 help
457 If you are running Linux on an iSeries system and you want Linux
458 to read and/or write a tape drive owned by OS/400, say Y here.
459
460endmenu
461
462config VIOPATH
463 bool
464 depends on VIOCONS || VIODASD || VIOCD || VIOTAPE || VETH
465 default y
466
467source "arch/ppc64/oprofile/Kconfig"
468
469source "arch/ppc64/Kconfig.debug"
470
471source "security/Kconfig"
472
473config KEYS_COMPAT
474 bool
475 depends on COMPAT && KEYS
476 default y
477
478source "crypto/Kconfig"
479
480source "lib/Kconfig"