blob: 29552348e58165db414bf6f609ae19e31e9fad7a [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
Paul Mackerras03f88e92005-10-20 09:15:05 +100013config PPC_STD_MMU
14 def_bool y
15
Linus Torvalds1da177e2005-04-16 15:20:36 -070016config UID16
17 bool
18
19config RWSEM_GENERIC_SPINLOCK
20 bool
21
22config RWSEM_XCHGADD_ALGORITHM
23 bool
24 default y
25
26config GENERIC_CALIBRATE_DELAY
27 bool
28 default y
29
30config GENERIC_ISA_DMA
31 bool
32 default y
33
Linus Torvalds1da177e2005-04-16 15:20:36 -070034config EARLY_PRINTK
35 bool
36 default y
37
38config COMPAT
39 bool
40 default y
41
Anton Blanchard7d12e522005-05-05 16:15:11 -070042config SCHED_NO_NO_OMIT_FRAME_POINTER
43 bool
44 default y
45
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +010046config ARCH_MAY_HAVE_PC_FDC
47 bool
48 default y
49
Benjamin Herrenschmidt3c726f82005-11-07 11:06:55 +110050config PPC_STD_MMU
51 bool
52 default y
53
Linus Torvalds1da177e2005-04-16 15:20:36 -070054# We optimistically allocate largepages from the VM, so make the limit
55# large enough (16MB). This badly named config option is actually
56# max order + 1
57config FORCE_MAX_ZONEORDER
58 int
Mike Kravetz02864862005-11-07 13:48:59 -080059 default "9" if PPC_64K_PAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -070060 default "13"
61
62source "init/Kconfig"
63
64config SYSVIPC_COMPAT
65 bool
66 depends on COMPAT && SYSVIPC
67 default y
68
69menu "Platform support"
70
71choice
72 prompt "Platform Type"
73 default PPC_MULTIPLATFORM
74
75config PPC_ISERIES
76 bool "IBM Legacy iSeries"
77
78config PPC_MULTIPLATFORM
79 bool "Generic"
80
81endchoice
82
83config PPC_PSERIES
84 depends on PPC_MULTIPLATFORM
85 bool " IBM pSeries & new iSeries"
86 default y
87
Arnd Bergmannfef1c772005-06-23 09:43:37 +100088config PPC_BPA
89 bool " Broadband Processor Architecture"
90 depends on PPC_MULTIPLATFORM
91
Linus Torvalds1da177e2005-04-16 15:20:36 -070092config PPC_PMAC
93 depends on PPC_MULTIPLATFORM
94 bool " Apple G5 based machines"
95 default y
96 select U3_DART
Paul Mackerras8ad200d2005-11-04 13:28:58 +110097 select GENERIC_TBSYNC
Linus Torvalds1da177e2005-04-16 15:20:36 -070098
99config PPC_MAPLE
100 depends on PPC_MULTIPLATFORM
101 bool " Maple 970FX Evaluation Board"
102 select U3_DART
103 select MPIC_BROKEN_U3
Paul Mackerras8ad200d2005-11-04 13:28:58 +1100104 select GENERIC_TBSYNC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700105 default n
106 help
107 This option enables support for the Maple 970FX Evaluation Board.
108 For more informations, refer to <http://www.970eval.com>
109
110config PPC
111 bool
112 default y
113
114config PPC64
115 bool
116 default y
117
118config PPC_OF
119 depends on PPC_MULTIPLATFORM
120 bool
121 default y
122
Arnd Bergmanncebf5892005-06-23 09:43:43 +1000123config XICS
124 depends on PPC_PSERIES
125 bool
126 default y
127
128config MPIC
129 depends on PPC_PSERIES || PPC_PMAC || PPC_MAPLE
130 bool
131 default y
132
Paul Mackerrasf9bd1702005-10-26 16:47:42 +1000133config PPC_I8259
134 depends on PPC_PSERIES
135 bool
136 default y
137
Arnd Bergmanncebf5892005-06-23 09:43:43 +1000138config BPA_IIC
139 depends on PPC_BPA
140 bool
141 default y
142
Linus Torvalds1da177e2005-04-16 15:20:36 -0700143# VMX is pSeries only for now until somebody writes the iSeries
144# exception vectors for it
145config ALTIVEC
146 bool "Support for VMX (Altivec) vector unit"
147 depends on PPC_MULTIPLATFORM
148 default y
149
150config PPC_SPLPAR
151 depends on PPC_PSERIES
152 bool "Support for shared-processor logical partitions"
153 default n
154 help
155 Enabling this option will make the kernel run more efficiently
156 on logically-partitioned pSeries systems which use shared
157 processors, that is, which share physical processors between
158 two or more partitions.
159
R Sharadafce0d572005-06-25 14:58:10 -0700160config KEXEC
161 bool "kexec system call (EXPERIMENTAL)"
162 depends on PPC_MULTIPLATFORM && EXPERIMENTAL
163 help
164 kexec is a system call that implements the ability to shutdown your
165 current kernel, and to start another kernel. It is like a reboot
166 but it is indepedent of the system firmware. And like a reboot
167 you can start any kernel with it, not just Linux.
168
169 The name comes from the similiarity to the exec system call.
170
171 It is an ongoing process to be certain the hardware in a machine
172 is properly shutdown, so do not be surprised if this code does not
173 initially work for you. It may help to enable device hotplugging
174 support. As of this writing the exact hardware interface is
175 strongly in flux, so no good recommendation can be made.
176
Benjamin Herrenschmidt43501472005-11-07 14:27:33 +1100177source "drivers/cpufreq/Kconfig"
178
179config CPU_FREQ_PMAC64
180 bool "Support for some Apple G5s"
181 depends on CPU_FREQ && PMAC_SMU && PPC64
182 select CPU_FREQ_TABLE
183 help
184 This adds support for frequency switching on Apple iMac G5,
185 and some of the more recent desktop G5 machines as well.
186
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187config IBMVIO
188 depends on PPC_PSERIES || PPC_ISERIES
189 bool
190 default y
191
192config U3_DART
193 bool
194 depends on PPC_MULTIPLATFORM
195 default n
196
197config MPIC_BROKEN_U3
198 bool
199 depends on PPC_MAPLE
200 default y
201
Paul Mackerras8ad200d2005-11-04 13:28:58 +1100202config GENERIC_TBSYNC
203 def_bool n
204
Linus Torvalds1da177e2005-04-16 15:20:36 -0700205config PPC_PMAC64
206 bool
207 depends on PPC_PMAC
208 default y
209
210config BOOTX_TEXT
211 bool "Support for early boot text console"
212 depends PPC_OF
213 help
214 Say Y here to see progress messages from the boot firmware in text
215 mode. Requires an Open Firmware compatible video card.
216
Paul Mackerras40ef8cb2005-10-10 22:50:37 +1000217config POWER4
218 def_bool y
219
David Gibson25c8a782005-10-27 16:27:25 +1000220config PPC_FPU
221 def_bool y
222
Linus Torvalds1da177e2005-04-16 15:20:36 -0700223config POWER4_ONLY
224 bool "Optimize for POWER4"
225 default n
226 ---help---
227 Cause the compiler to optimize for POWER4 processors. The resulting
228 binary will not work on POWER3 or RS64 processors when compiled with
229 binutils 2.15 or later.
230
231config IOMMU_VMERGE
232 bool "Enable IOMMU virtual merging (EXPERIMENTAL)"
233 depends on EXPERIMENTAL
234 default n
235 help
236 Cause IO segments sent to a device for DMA to be merged virtually
237 by the IOMMU when they happen to have been allocated contiguously.
238 This doesn't add pressure to the IOMMU allocator. However, some
239 drivers don't support getting large merged segments coming back
240 from *_map_sg(). Say Y if you know the drivers you are using are
241 properly handling this case.
242
243config SMP
244 bool "Symmetric multi-processing support"
245 ---help---
246 This enables support for systems with more than one CPU. If you have
247 a system with only one CPU, say N. If you have a system with more
248 than one CPU, say Y.
249
250 If you say N here, the kernel will run on single and multiprocessor
251 machines, but will use only one CPU of a multiprocessor machine. If
252 you say Y here, the kernel will run on single-processor machines.
253 On a single-processor machine, the kernel will run faster if you say
254 N here.
255
256 If you don't know what to do here, say Y.
257
258config NR_CPUS
259 int "Maximum number of CPUs (2-128)"
260 range 2 128
261 depends on SMP
262 default "32"
263
264config HMT
265 bool "Hardware multithreading"
266 depends on SMP && PPC_PSERIES && BROKEN
267 help
268 This option enables hardware multithreading on RS64 cpus.
269 pSeries systems p620 and p660 have such a cpu type.
270
Andy Whitcroftffa27b62005-10-28 17:46:58 -0700271config NUMA
272 bool "NUMA support"
273 default y if SMP && PPC_PSERIES
274
Andy Whitcroft145e6642005-06-23 00:08:03 -0700275config ARCH_SELECT_MEMORY_MODEL
276 def_bool y
277
278config ARCH_FLATMEM_ENABLE
279 def_bool y
280 depends on !NUMA
281
Dave Hansen3f22ab22005-06-23 00:07:43 -0700282config ARCH_DISCONTIGMEM_ENABLE
Mike Kravetz368a0a32005-06-23 00:07:51 -0700283 def_bool y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700284 depends on SMP && PPC_PSERIES
285
Mike Kravetz368a0a32005-06-23 00:07:51 -0700286config ARCH_DISCONTIGMEM_DEFAULT
287 def_bool y
288 depends on ARCH_DISCONTIGMEM_ENABLE
289
Andy Whitcroft145e6642005-06-23 00:08:03 -0700290config ARCH_SPARSEMEM_ENABLE
291 def_bool y
292 depends on ARCH_DISCONTIGMEM_ENABLE
293
Dave Hansen3f22ab22005-06-23 00:07:43 -0700294source "mm/Kconfig"
295
Andy Whitcroft510f8fa2005-06-23 00:08:01 -0700296config HAVE_ARCH_EARLY_PFN_TO_NID
Andy Whitcroft74b30be2005-06-23 00:08:02 -0700297 def_bool y
298 depends on NEED_MULTIPLE_NODES
Andy Whitcroft510f8fa2005-06-23 00:08:01 -0700299
Andy Whitcroft641c7672005-06-23 00:07:59 -0700300# Some NUMA nodes have memory ranges that span
301# other nodes. Even though a pfn is valid and
302# between a node's start and end pfns, it may not
303# reside on that node.
304#
305# This is a relatively temporary hack that should
306# be able to go away when sparsemem is fully in
307# place
308config NODES_SPAN_OTHER_NODES
309 def_bool y
310 depends on NEED_MULTIPLE_NODES
311
Benjamin Herrenschmidt3c726f82005-11-07 11:06:55 +1100312config PPC_64K_PAGES
313 bool "64k page size"
314 help
315 This option changes the kernel logical page size to 64k. On machines
316 without processor support for 64k pages, the kernel will simulate
317 them by loading each individual 4k page on demand transparently,
318 while on hardware with such support, it will be used to map
319 normal application pages.
320
Linus Torvalds1da177e2005-04-16 15:20:36 -0700321config SCHED_SMT
322 bool "SMT (Hyperthreading) scheduler support"
323 depends on SMP
324 default off
325 help
326 SMT scheduler support improves the CPU scheduler's decision making
327 when dealing with POWER5 cpus at a cost of slightly increased
328 overhead in some places. If unsure say N here.
329
Ingo Molnarcc19ca82005-06-25 14:57:36 -0700330source "kernel/Kconfig.preempt"
Olaf Hering7b625c02005-07-27 11:44:03 -0700331source kernel/Kconfig.hz
Linus Torvalds1da177e2005-04-16 15:20:36 -0700332
333config EEH
334 bool "PCI Extended Error Handling (EEH)" if EMBEDDED
335 depends on PPC_PSERIES
336 default y if !EMBEDDED
337
338#
339# Use the generic interrupt handling code in kernel/irq/:
340#
341config GENERIC_HARDIRQS
342 bool
343 default y
344
Linus Torvalds1da177e2005-04-16 15:20:36 -0700345config PPC_RTAS
346 bool
Arnd Bergmannfef1c772005-06-23 09:43:37 +1000347 depends on PPC_PSERIES || PPC_BPA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700348 default y
349
Paul Mackerras033ef332005-10-26 17:05:24 +1000350config RTAS_ERROR_LOGGING
351 bool
352 depends on PPC_RTAS
353 default y
354
Linus Torvalds1da177e2005-04-16 15:20:36 -0700355config RTAS_PROC
356 bool "Proc interface to RTAS"
357 depends on PPC_RTAS
Paul Mackerrasb7c2b702005-05-06 17:41:03 -0700358 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700359
360config RTAS_FLASH
361 tristate "Firmware flash interface"
362 depends on RTAS_PROC
363
364config SCANLOG
365 tristate "Scanlog dump interface"
366 depends on RTAS_PROC && PPC_PSERIES
367
368config LPARCFG
369 tristate "LPAR Configuration Data"
370 depends on PPC_PSERIES || PPC_ISERIES
371 help
372 Provide system capacity information via human readable
373 <key word>=<value> pairs through a /proc/ppc64/lparcfg interface.
374
375config SECCOMP
376 bool "Enable seccomp to safely compute untrusted bytecode"
377 depends on PROC_FS
378 default y
379 help
380 This kernel feature is useful for number crunching applications
381 that may need to compute untrusted bytecode during their
382 execution. By using pipes or other transports made available to
383 the process as file descriptors supporting the read/write
384 syscalls, it's possible to isolate those applications in
385 their own address space using seccomp. Once seccomp is
386 enabled via /proc/<pid>/seccomp, it cannot be disabled
387 and the task is only allowed to execute a few safe syscalls
388 defined by each seccomp mode.
389
390 If unsure, say Y. Only embedded should say N here.
391
Frank Rowand60201642005-06-28 16:48:04 -0700392source "fs/Kconfig.binfmt"
393
394config HOTPLUG_CPU
395 bool "Support for hot-pluggable CPUs"
396 depends on SMP && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC)
397 select HOTPLUG
398 ---help---
399 Say Y here to be able to turn CPUs off and on.
400
401 Say N if you are unsure.
402
403config PROC_DEVICETREE
404 bool "Support for Open Firmware device tree in /proc"
Frank Rowand60201642005-06-28 16:48:04 -0700405 help
406 This option adds a device-tree directory under /proc which contains
407 an image of the device tree that the kernel copies from Open
408 Firmware. If unsure, say Y here.
409
410config CMDLINE_BOOL
411 bool "Default bootloader kernel arguments"
412 depends on !PPC_ISERIES
413
414config CMDLINE
415 string "Initial kernel command string"
416 depends on CMDLINE_BOOL
417 default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
418 help
419 On some platforms, there is currently no way for the boot loader to
420 pass arguments to the kernel. For these platforms, you can supply
421 some command-line options at build time by entering them here. In
422 most cases you will need to specify the root device here.
423
Linus Torvalds1da177e2005-04-16 15:20:36 -0700424endmenu
425
Al Viro5cae8412005-05-04 05:39:22 +0100426config ISA_DMA_API
427 bool
428 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700429
Frank Rowand60201642005-06-28 16:48:04 -0700430menu "Bus Options"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700431
432config ISA
433 bool
434 help
435 Find out whether you have ISA slots on your motherboard. ISA is the
436 name of a bus system, i.e. the way the CPU talks to the other stuff
437 inside your box. If you have an Apple machine, say N here; if you
438 have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If
439 you have an embedded board, consult your board documentation.
440
441config SBUS
442 bool
443
444config MCA
445 bool
446
447config EISA
448 bool
449
450config PCI
Stephen Rothwell145d01e2005-06-21 17:15:52 -0700451 bool "support for PCI devices" if (EMBEDDED && PPC_ISERIES)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700452 default y
453 help
454 Find out whether your system includes a PCI bus. PCI is the name of
455 a bus system, i.e. the way the CPU talks to the other stuff inside
456 your box. If you say Y here, the kernel will include drivers and
457 infrastructure code to support PCI bus devices.
458
459config PCI_DOMAINS
460 bool
461 default PCI
462
Linus Torvalds1da177e2005-04-16 15:20:36 -0700463source "drivers/pci/Kconfig"
464
Linus Torvalds1da177e2005-04-16 15:20:36 -0700465source "drivers/pcmcia/Kconfig"
466
467source "drivers/pci/hotplug/Kconfig"
468
Linus Torvalds1da177e2005-04-16 15:20:36 -0700469endmenu
470
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700471source "net/Kconfig"
472
Linus Torvalds1da177e2005-04-16 15:20:36 -0700473source "drivers/Kconfig"
474
475source "fs/Kconfig"
476
477menu "iSeries device drivers"
478 depends on PPC_ISERIES
479
480config VIOCONS
481 tristate "iSeries Virtual Console Support"
482
483config VIODASD
484 tristate "iSeries Virtual I/O disk support"
485 help
486 If you are running on an iSeries system and you want to use
487 virtual disks created and managed by OS/400, say Y.
488
489config VIOCD
490 tristate "iSeries Virtual I/O CD support"
491 help
492 If you are running Linux on an IBM iSeries system and you want to
493 read a CD drive owned by OS/400, say Y here.
494
495config VIOTAPE
496 tristate "iSeries Virtual Tape Support"
497 help
498 If you are running Linux on an iSeries system and you want Linux
499 to read and/or write a tape drive owned by OS/400, say Y here.
500
501endmenu
502
503config VIOPATH
504 bool
505 depends on VIOCONS || VIODASD || VIOCD || VIOTAPE || VETH
506 default y
507
Stephen Rothwellbcdd1ea2005-09-19 23:13:24 +1000508source "arch/powerpc/oprofile/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700509
510source "arch/ppc64/Kconfig.debug"
511
512source "security/Kconfig"
513
514config KEYS_COMPAT
515 bool
516 depends on COMPAT && KEYS
517 default y
518
519source "crypto/Kconfig"
520
521source "lib/Kconfig"