Pull define-node-cleanup into release branch
[linux-2.6-block.git] / arch / ppc64 / Kconfig
CommitLineData
1da177e4
LT
1#
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
1da177e4
LT
31config EARLY_PRINTK
32 bool
33 default y
34
35config COMPAT
36 bool
37 default y
38
7d12e522
AB
39config SCHED_NO_NO_OMIT_FRAME_POINTER
40 bool
41 default y
42
a08b6b79
Z
43config ARCH_MAY_HAVE_PC_FDC
44 bool
45 default y
46
1da177e4
LT
47# 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
fef1c772
AB
80config PPC_BPA
81 bool " Broadband Processor Architecture"
82 depends on PPC_MULTIPLATFORM
83
1da177e4
LT
84config 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
cebf589c
AB
113config 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
1da177e4
LT
128# 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
fce0d574
S
145config 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
1da177e4
LT
162config 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
145e6642
AW
237config ARCH_SELECT_MEMORY_MODEL
238 def_bool y
239
240config ARCH_FLATMEM_ENABLE
241 def_bool y
242 depends on !NUMA
243
3f22ab27 244config ARCH_DISCONTIGMEM_ENABLE
368a0a3a 245 def_bool y
1da177e4
LT
246 depends on SMP && PPC_PSERIES
247
368a0a3a
MK
248config ARCH_DISCONTIGMEM_DEFAULT
249 def_bool y
250 depends on ARCH_DISCONTIGMEM_ENABLE
251
252config ARCH_FLATMEM_ENABLE
253 def_bool y
254
145e6642
AW
255config ARCH_SPARSEMEM_ENABLE
256 def_bool y
257 depends on ARCH_DISCONTIGMEM_ENABLE
258
3f22ab27
DH
259source "mm/Kconfig"
260
510f8fa7 261config HAVE_ARCH_EARLY_PFN_TO_NID
74b30be2
AW
262 def_bool y
263 depends on NEED_MULTIPLE_NODES
510f8fa7 264
641c7673
AW
265# 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
1da177e4
LT
277config NUMA
278 bool "NUMA support"
145e6642 279 default y if DISCONTIGMEM || SPARSEMEM
1da177e4
LT
280
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
cc19ca86 290source "kernel/Kconfig.preempt"
7b625c00 291source kernel/Kconfig.hz
1da177e4
LT
292
293config EEH
294 bool "PCI Extended Error Handling (EEH)" if EMBEDDED
295 depends on PPC_PSERIES
296 default y if !EMBEDDED
297
298#
299# Use the generic interrupt handling code in kernel/irq/:
300#
301config GENERIC_HARDIRQS
302 bool
303 default y
304
1da177e4
LT
305config PPC_RTAS
306 bool
fef1c772 307 depends on PPC_PSERIES || PPC_BPA
1da177e4
LT
308 default y
309
310config RTAS_PROC
311 bool "Proc interface to RTAS"
312 depends on PPC_RTAS
b7c2b704 313 default y
1da177e4
LT
314
315config RTAS_FLASH
316 tristate "Firmware flash interface"
317 depends on RTAS_PROC
318
319config SCANLOG
320 tristate "Scanlog dump interface"
321 depends on RTAS_PROC && PPC_PSERIES
322
323config LPARCFG
324 tristate "LPAR Configuration Data"
325 depends on PPC_PSERIES || PPC_ISERIES
326 help
327 Provide system capacity information via human readable
328 <key word>=<value> pairs through a /proc/ppc64/lparcfg interface.
329
330config SECCOMP
331 bool "Enable seccomp to safely compute untrusted bytecode"
332 depends on PROC_FS
333 default y
334 help
335 This kernel feature is useful for number crunching applications
336 that may need to compute untrusted bytecode during their
337 execution. By using pipes or other transports made available to
338 the process as file descriptors supporting the read/write
339 syscalls, it's possible to isolate those applications in
340 their own address space using seccomp. Once seccomp is
341 enabled via /proc/<pid>/seccomp, it cannot be disabled
342 and the task is only allowed to execute a few safe syscalls
343 defined by each seccomp mode.
344
345 If unsure, say Y. Only embedded should say N here.
346
60201644
FR
347source "fs/Kconfig.binfmt"
348
349config HOTPLUG_CPU
350 bool "Support for hot-pluggable CPUs"
351 depends on SMP && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC)
352 select HOTPLUG
353 ---help---
354 Say Y here to be able to turn CPUs off and on.
355
356 Say N if you are unsure.
357
358config PROC_DEVICETREE
359 bool "Support for Open Firmware device tree in /proc"
360 depends on !PPC_ISERIES
361 help
362 This option adds a device-tree directory under /proc which contains
363 an image of the device tree that the kernel copies from Open
364 Firmware. If unsure, say Y here.
365
366config CMDLINE_BOOL
367 bool "Default bootloader kernel arguments"
368 depends on !PPC_ISERIES
369
370config CMDLINE
371 string "Initial kernel command string"
372 depends on CMDLINE_BOOL
373 default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
374 help
375 On some platforms, there is currently no way for the boot loader to
376 pass arguments to the kernel. For these platforms, you can supply
377 some command-line options at build time by entering them here. In
378 most cases you will need to specify the root device here.
379
1da177e4
LT
380endmenu
381
5cae841b
AV
382config ISA_DMA_API
383 bool
384 default y
1da177e4 385
60201644 386menu "Bus Options"
1da177e4
LT
387
388config ISA
389 bool
390 help
391 Find out whether you have ISA slots on your motherboard. ISA is the
392 name of a bus system, i.e. the way the CPU talks to the other stuff
393 inside your box. If you have an Apple machine, say N here; if you
394 have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If
395 you have an embedded board, consult your board documentation.
396
397config SBUS
398 bool
399
400config MCA
401 bool
402
403config EISA
404 bool
405
406config PCI
145d01e4 407 bool "support for PCI devices" if (EMBEDDED && PPC_ISERIES)
1da177e4
LT
408 default y
409 help
410 Find out whether your system includes a PCI bus. PCI is the name of
411 a bus system, i.e. the way the CPU talks to the other stuff inside
412 your box. If you say Y here, the kernel will include drivers and
413 infrastructure code to support PCI bus devices.
414
415config PCI_DOMAINS
416 bool
417 default PCI
418
1da177e4
LT
419source "drivers/pci/Kconfig"
420
1da177e4
LT
421source "drivers/pcmcia/Kconfig"
422
423source "drivers/pci/hotplug/Kconfig"
424
1da177e4
LT
425endmenu
426
d5950b43
SR
427source "net/Kconfig"
428
1da177e4
LT
429source "drivers/Kconfig"
430
431source "fs/Kconfig"
432
433menu "iSeries device drivers"
434 depends on PPC_ISERIES
435
436config VIOCONS
437 tristate "iSeries Virtual Console Support"
438
439config VIODASD
440 tristate "iSeries Virtual I/O disk support"
441 help
442 If you are running on an iSeries system and you want to use
443 virtual disks created and managed by OS/400, say Y.
444
445config VIOCD
446 tristate "iSeries Virtual I/O CD support"
447 help
448 If you are running Linux on an IBM iSeries system and you want to
449 read a CD drive owned by OS/400, say Y here.
450
451config VIOTAPE
452 tristate "iSeries Virtual Tape Support"
453 help
454 If you are running Linux on an iSeries system and you want Linux
455 to read and/or write a tape drive owned by OS/400, say Y here.
456
457endmenu
458
459config VIOPATH
460 bool
461 depends on VIOCONS || VIODASD || VIOCD || VIOTAPE || VETH
462 default y
463
464source "arch/ppc64/oprofile/Kconfig"
465
466source "arch/ppc64/Kconfig.debug"
467
468source "security/Kconfig"
469
470config KEYS_COMPAT
471 bool
472 depends on COMPAT && KEYS
473 default y
474
475source "crypto/Kconfig"
476
477source "lib/Kconfig"