blob: 326aff7a87ea3ba0b88983f8dcdb3c4a08ce0baa [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# Note: ISA is disabled and will hopefully never be enabled.
6# If you managed to buy an ISA x86-64 box you'll have to fix all the
7# ISA drivers you need yourself.
8#
9
10mainmenu "Linux Kernel Configuration"
11
12config X86_64
13 bool
14 default y
15 help
16 Port to the x86-64 architecture. x86-64 is a 64-bit extension to the
17 classical 32-bit x86 architecture. For details see
18 <http://www.x86-64.org/>.
19
20config 64BIT
21 def_bool y
22
23config X86
24 bool
25 default y
26
Christoph Lameterfb0e7942006-09-25 23:31:13 -070027config ZONE_DMA32
28 bool
29 default y
30
Ingo Molnar1e950522006-07-03 00:25:01 -070031config LOCKDEP_SUPPORT
32 bool
33 default y
34
Ingo Molnar21b32bb2006-07-03 00:24:40 -070035config STACKTRACE_SUPPORT
36 bool
37 default y
38
Benjamin LaHaise52fdd082005-09-03 15:56:52 -070039config SEMAPHORE_SLEEPERS
40 bool
41 default y
42
Linus Torvalds1da177e2005-04-16 15:20:36 -070043config MMU
44 bool
45 default y
46
47config ISA
48 bool
49
50config SBUS
51 bool
52
53config RWSEM_GENERIC_SPINLOCK
54 bool
55 default y
56
57config RWSEM_XCHGADD_ALGORITHM
58 bool
59
Akinobu Mitaf33e2fb2006-03-26 01:39:42 -080060config GENERIC_HWEIGHT
61 bool
62 default y
63
Linus Torvalds1da177e2005-04-16 15:20:36 -070064config GENERIC_CALIBRATE_DELAY
65 bool
66 default y
67
68config X86_CMPXCHG
69 bool
70 default y
71
72config EARLY_PRINTK
73 bool
74 default y
75
76config GENERIC_ISA_DMA
77 bool
78 default y
79
80config GENERIC_IOMAP
81 bool
82 default y
83
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +010084config ARCH_MAY_HAVE_PC_FDC
85 bool
86 default y
87
Mel Gorman5cb248a2006-09-27 01:49:52 -070088config ARCH_POPULATES_NODE_MAP
89 def_bool y
90
Andi Kleene9928672006-01-11 22:43:33 +010091config DMI
92 bool
93 default y
94
Al Viroe65e1fc2006-09-12 03:04:40 -040095config AUDIT_ARCH
96 bool
97 default y
98
Linus Torvalds1da177e2005-04-16 15:20:36 -070099source "init/Kconfig"
100
101
102menu "Processor type and features"
103
104choice
Ravikiran G Thirumalai79f12612006-01-11 22:46:18 +0100105 prompt "Subarchitecture Type"
106 default X86_PC
107
108config X86_PC
109 bool "PC-compatible"
110 help
111 Choose this option if your computer is a standard PC or compatible.
112
113config X86_VSMP
114 bool "Support for ScaleMP vSMP"
Andi Kleenf157cbb2006-09-26 10:52:41 +0200115 depends on PCI
Ravikiran G Thirumalai79f12612006-01-11 22:46:18 +0100116 help
117 Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is
118 supposed to run on these EM64T-based machines. Only choose this option
119 if you have one of these machines.
120
121endchoice
122
123choice
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124 prompt "Processor family"
125 default MK8
126
127config MK8
128 bool "AMD-Opteron/Athlon64"
129 help
130 Optimize for AMD Opteron/Athlon64/Hammer/K8 CPUs.
131
132config MPSC
133 bool "Intel EM64T"
134 help
135 Optimize for Intel Pentium 4 and Xeon CPUs with Intel
136 Extended Memory 64 Technology(EM64T). For details see
137 <http://www.intel.com/technology/64bitextensions/>.
138
139config GENERIC_CPU
140 bool "Generic-x86-64"
141 help
142 Generic x86-64 CPU.
143
144endchoice
145
146#
147# Define implied options from the CPU selection here
148#
149config X86_L1_CACHE_BYTES
150 int
151 default "128" if GENERIC_CPU || MPSC
152 default "64" if MK8
153
154config X86_L1_CACHE_SHIFT
155 int
156 default "7" if GENERIC_CPU || MPSC
157 default "6" if MK8
158
Ravikiran G Thirumalaie405d062006-04-07 19:50:09 +0200159config X86_INTERNODE_CACHE_BYTES
160 int
161 default "4096" if X86_VSMP
162 default X86_L1_CACHE_BYTES if !X86_VSMP
163
Linus Torvalds1da177e2005-04-16 15:20:36 -0700164config X86_TSC
165 bool
166 default y
167
168config X86_GOOD_APIC
169 bool
170 default y
171
172config MICROCODE
173 tristate "/dev/cpu/microcode - Intel CPU microcode support"
174 ---help---
175 If you say Y here the 'File systems' section, you will be
176 able to update the microcode on Intel processors. You will
177 obviously need the actual microcode binary data itself which is
178 not shipped with the Linux kernel.
179
180 For latest news and information on obtaining all the required
181 ingredients for this driver, check:
182 <http://www.urbanmyth.org/microcode/>.
183
184 To compile this driver as a module, choose M here: the
185 module will be called microcode.
186 If you use modprobe or kmod you may also want to add the line
187 'alias char-major-10-184 microcode' to your /etc/modules.conf file.
188
189config X86_MSR
190 tristate "/dev/cpu/*/msr - Model-specific register support"
191 help
192 This device gives privileged processes access to the x86
193 Model-Specific Registers (MSRs). It is a character device with
194 major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr.
195 MSR accesses are directed to a specific CPU on multi-processor
196 systems.
197
198config X86_CPUID
199 tristate "/dev/cpu/*/cpuid - CPU information support"
200 help
201 This device gives processes access to the x86 CPUID instruction to
202 be executed on a specific processor. It is a character device
203 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to
204 /dev/cpu/31/cpuid.
205
Linus Torvalds1da177e2005-04-16 15:20:36 -0700206config X86_HT
207 bool
208 depends on SMP && !MK8
209 default y
210
211config MATH_EMULATION
212 bool
213
214config MCA
215 bool
216
217config EISA
218 bool
219
220config X86_IO_APIC
221 bool
222 default y
223
224config X86_LOCAL_APIC
225 bool
226 default y
227
228config MTRR
229 bool "MTRR (Memory Type Range Register) support"
230 ---help---
231 On Intel P6 family processors (Pentium Pro, Pentium II and later)
232 the Memory Type Range Registers (MTRRs) may be used to control
233 processor access to memory ranges. This is most useful if you have
234 a video (VGA) card on a PCI or AGP bus. Enabling write-combining
235 allows bus write transfers to be combined into a larger transfer
236 before bursting over the PCI/AGP bus. This can increase performance
237 of image write operations 2.5 times or more. Saying Y here creates a
238 /proc/mtrr file which may be used to manipulate your processor's
239 MTRRs. Typically the X server should use this.
240
241 This code has a reasonably generic interface so that similar
242 control registers on other processors can be easily supported
243 as well.
244
245 Saying Y here also fixes a problem with buggy SMP BIOSes which only
246 set the MTRRs for the boot CPU and not for the secondary CPUs. This
247 can lead to all sorts of problems, so it's good to say Y here.
248
249 Just say Y here, all x86-64 machines support MTRRs.
250
251 See <file:Documentation/mtrr.txt> for more information.
252
253config SMP
254 bool "Symmetric multi-processing support"
255 ---help---
256 This enables support for systems with more than one CPU. If you have
257 a system with only one CPU, like most personal computers, say N. If
258 you have a system with more than one CPU, say Y.
259
260 If you say N here, the kernel will run on single and multiprocessor
261 machines, but will use only one CPU of a multiprocessor machine. If
262 you say Y here, the kernel will run on many, but not all,
263 singleprocessor machines. On a singleprocessor machine, the kernel
264 will run faster if you say N here.
265
266 If you don't know what to do here, say N.
267
Linus Torvalds1da177e2005-04-16 15:20:36 -0700268config SCHED_SMT
269 bool "SMT (Hyperthreading) scheduler support"
270 depends on SMP
271 default n
272 help
273 SMT scheduler support improves the CPU scheduler's decision making
274 when dealing with Intel Pentium 4 chips with HyperThreading at a
275 cost of slightly increased overhead in some places. If unsure say
276 N here.
277
Siddha, Suresh B1e9f28f2006-03-27 01:15:22 -0800278config SCHED_MC
279 bool "Multi-core scheduler support"
280 depends on SMP
281 default y
282 help
283 Multi-core scheduler support improves the CPU scheduler's decision
284 making when dealing with multi-core CPU chips at a cost of slightly
285 increased overhead in some places. If unsure say N here.
286
Ingo Molnarcc19ca82005-06-25 14:57:36 -0700287source "kernel/Kconfig.preempt"
288
Ravikiran G Thirumalaib0bd35e2005-11-05 17:25:54 +0100289config NUMA
290 bool "Non Uniform Memory Access (NUMA) Support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700291 depends on SMP
292 help
Ravikiran G Thirumalaib0bd35e2005-11-05 17:25:54 +0100293 Enable NUMA (Non Uniform Memory Access) support. The kernel
294 will try to allocate memory used by a CPU on the local memory
295 controller of the CPU and add some more NUMA awareness to the kernel.
296 This code is recommended on all multiprocessor Opteron systems.
297 If the system is EM64T, you should say N unless your system is EM64T
298 NUMA.
299
300config K8_NUMA
301 bool "Old style AMD Opteron NUMA detection"
Andi Kleenf157cbb2006-09-26 10:52:41 +0200302 depends on NUMA && PCI
Ravikiran G Thirumalaib0bd35e2005-11-05 17:25:54 +0100303 default y
304 help
305 Enable K8 NUMA node topology detection. You should say Y here if
306 you have a multi processor AMD K8 system. This uses an old
307 method to read the NUMA configurtion directly from the builtin
308 Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA
309 instead, which also takes priority if both are compiled in.
310
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700311config NODES_SHIFT
312 int
313 default "6"
314 depends on NEED_MULTIPLE_NODES
315
Ravikiran G Thirumalaib0bd35e2005-11-05 17:25:54 +0100316# Dummy CONFIG option to select ACPI_NUMA from drivers/acpi/Kconfig.
317
318config X86_64_ACPI_NUMA
319 bool "ACPI NUMA detection"
320 depends on NUMA
321 select ACPI
Adrian Bunk13001242006-03-28 17:04:00 -0500322 select PCI
Ravikiran G Thirumalaib0bd35e2005-11-05 17:25:54 +0100323 select ACPI_NUMA
324 default y
325 help
326 Enable ACPI SRAT based node topology detection.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700327
328config NUMA_EMU
Ravikiran G Thirumalaib0bd35e2005-11-05 17:25:54 +0100329 bool "NUMA emulation"
330 depends on NUMA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700331 help
332 Enable NUMA emulation. A flat machine will be split
333 into virtual nodes when booted with "numa=fake=N", where N is the
334 number of nodes. This is only useful for debugging.
335
Dave Hansen3f22ab22005-06-23 00:07:43 -0700336config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700337 bool
338 depends on NUMA
339 default y
340
Linus Torvalds1da177e2005-04-16 15:20:36 -0700341
Matt Tolentino1035faf2005-06-23 00:08:05 -0700342config ARCH_DISCONTIGMEM_ENABLE
343 def_bool y
344 depends on NUMA
345
346config ARCH_DISCONTIGMEM_DEFAULT
347 def_bool y
348 depends on NUMA
349
350config ARCH_SPARSEMEM_ENABLE
351 def_bool y
Matt Tolentino44df75e2006-01-17 07:03:41 +0100352 depends on (NUMA || EXPERIMENTAL)
353
354config ARCH_MEMORY_PROBE
355 def_bool y
356 depends on MEMORY_HOTPLUG
Matt Tolentino1035faf2005-06-23 00:08:05 -0700357
358config ARCH_FLATMEM_ENABLE
359 def_bool y
360 depends on !NUMA
361
Dave Hansen3f22ab22005-06-23 00:07:43 -0700362source "mm/Kconfig"
363
Matt Tolentino1035faf2005-06-23 00:08:05 -0700364config HAVE_ARCH_EARLY_PFN_TO_NID
365 def_bool y
Matt Tolentino44df75e2006-01-17 07:03:41 +0100366 depends on NUMA
Matt Tolentino1035faf2005-06-23 00:08:05 -0700367
KAMEZAWA Hiroyukidc8ecb42006-03-27 01:15:34 -0800368config OUT_OF_LINE_PFN_TO_PAGE
369 def_bool y
370 depends on DISCONTIGMEM
371
Linus Torvalds1da177e2005-04-16 15:20:36 -0700372config NR_CPUS
373 int "Maximum number of CPUs (2-256)"
Andi Kleen01d4bed2006-03-25 16:30:58 +0100374 range 2 255
Linus Torvalds1da177e2005-04-16 15:20:36 -0700375 depends on SMP
376 default "8"
377 help
378 This allows you to specify the maximum number of CPUs which this
379 kernel will support. Current maximum is 256 CPUs due to
380 APIC addressing limits. Less depending on the hardware.
381
382 This is purely to save memory - each supported CPU requires
383 memory in the static kernel configuration.
384
Ashok Raj76e4f662005-06-25 14:55:00 -0700385config HOTPLUG_CPU
386 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
387 depends on SMP && HOTPLUG && EXPERIMENTAL
388 help
389 Say Y here to experiment with turning CPUs off and on. CPUs
390 can be controlled through /sys/devices/system/cpu/cpu#.
391 Say N if you want to disable CPU hotplug.
392
Yasunori Gotocc576372006-06-29 02:24:27 -0700393config ARCH_ENABLE_MEMORY_HOTPLUG
394 def_bool y
Ashok Raj76e4f662005-06-25 14:55:00 -0700395
Linus Torvalds1da177e2005-04-16 15:20:36 -0700396config HPET_TIMER
397 bool
398 default y
399 help
400 Use the IA-PC HPET (High Precision Event Timer) to manage
401 time in preference to the PIT and RTC, if a HPET is
402 present. The HPET provides a stable time base on SMP
403 systems, unlike the TSC, but it is more expensive to access,
404 as it is off-chip. You can find the HPET spec at
Randy Dunlap89d7cbf2005-09-21 09:55:44 -0700405 <http://www.intel.com/hardwaredesign/hpetspec.htm>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700406
407config HPET_EMULATE_RTC
408 bool "Provide RTC interrupt"
409 depends on HPET_TIMER && RTC=y
410
Andi Kleena813ce42006-06-26 13:57:22 +0200411# Mark as embedded because too many people got it wrong.
412# The code disables itself when not needed.
413config IOMMU
414 bool "IOMMU support" if EMBEDDED
Andi Kleena54649b2005-07-28 21:15:32 -0700415 default y
Muli Ben-Yehuda17a941d2006-01-11 22:44:42 +0100416 select SWIOTLB
Roman Zippeldcc1a662006-06-22 14:47:35 -0700417 select AGP
Linus Torvalds1da177e2005-04-16 15:20:36 -0700418 depends on PCI
419 help
Andi Kleena813ce42006-06-26 13:57:22 +0200420 Support for full DMA access of devices with 32bit memory access only
421 on systems with more than 3GB. This is usually needed for USB,
422 sound, many IDE/SATA chipsets and some other devices.
423 Provides a driver for the AMD Athlon64/Opteron/Turion/Sempron GART
424 based IOMMU and a software bounce buffer based IOMMU used on Intel
425 systems and as fallback.
426 The code is only active when needed (enough memory and limited
427 device) unless CONFIG_IOMMU_DEBUG or iommu=force is specified
428 too.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700429
Jon Masone4650582006-06-26 13:58:14 +0200430config CALGARY_IOMMU
431 bool "IBM Calgary IOMMU support"
Jon Masone4650582006-06-26 13:58:14 +0200432 select SWIOTLB
433 depends on PCI && EXPERIMENTAL
434 help
435 Support for hardware IOMMUs in IBM's xSeries x366 and x460
436 systems. Needed to run systems with more than 3GB of memory
437 properly with 32-bit PCI devices that do not support DAC
438 (Double Address Cycle). Calgary also supports bus level
439 isolation, where all DMAs pass through the IOMMU. This
440 prevents them from going anywhere except their intended
441 destination. This catches hard-to-find kernel bugs and
442 mis-behaving drivers and devices that do not use the DMA-API
443 properly to set up their DMA buffers. The IOMMU can be
444 turned off at boot time with the iommu=off parameter.
445 Normally the kernel will make the right choice by itself.
446 If unsure, say Y.
447
Andi Kleena813ce42006-06-26 13:57:22 +0200448# need this always selected by IOMMU for the VIA workaround
Linus Torvalds1da177e2005-04-16 15:20:36 -0700449config SWIOTLB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700450 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700451
452config X86_MCE
453 bool "Machine check support" if EMBEDDED
454 default y
455 help
456 Include a machine check error handler to report hardware errors.
457 This version will require the mcelog utility to decode some
458 machine check error logs. See
459 ftp://ftp.x86-64.org/pub/linux/tools/mcelog
460
461config X86_MCE_INTEL
462 bool "Intel MCE features"
463 depends on X86_MCE && X86_LOCAL_APIC
464 default y
465 help
466 Additional support for intel specific MCE features such as
467 the thermal monitor.
468
Jacob Shin89b831e2005-11-05 17:25:53 +0100469config X86_MCE_AMD
470 bool "AMD MCE features"
471 depends on X86_MCE && X86_LOCAL_APIC
472 default y
473 help
474 Additional support for AMD specific MCE features such as
475 the DRAM Error Threshold.
476
Eric W. Biederman5234f5e2005-06-25 14:58:02 -0700477config KEXEC
Eric W. Biederman1c9c0a62006-09-26 10:52:40 +0200478 bool "kexec system call"
Eric W. Biederman5234f5e2005-06-25 14:58:02 -0700479 help
480 kexec is a system call that implements the ability to shutdown your
481 current kernel, and to start another kernel. It is like a reboot
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400482 but it is independent of the system firmware. And like a reboot
Eric W. Biederman5234f5e2005-06-25 14:58:02 -0700483 you can start any kernel with it, not just Linux.
484
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400485 The name comes from the similarity to the exec system call.
Eric W. Biederman5234f5e2005-06-25 14:58:02 -0700486
487 It is an ongoing process to be certain the hardware in a machine
488 is properly shutdown, so do not be surprised if this code does not
489 initially work for you. It may help to enable device hotplugging
490 support. As of this writing the exact hardware interface is
491 strongly in flux, so no good recommendation can be made.
492
Vivek Goyalec9ce0d2006-01-09 20:51:49 -0800493config CRASH_DUMP
494 bool "kernel crash dumps (EXPERIMENTAL)"
Vivek Goyalec9ce0d2006-01-09 20:51:49 -0800495 depends on EXPERIMENTAL
496 help
Andi Kleen1edf7772006-09-26 10:52:35 +0200497 Generate crash dump after being started by kexec.
498 This should be normally only set in special crash dump kernels
499 which are loaded in the main kernel with kexec-tools into
500 a specially reserved region and then later executed after
501 a crash by kdump/kexec. The crash dump kernel must be compiled
502 to a memory address not used by the main kernel or BIOS using
503 PHYSICAL_START.
504 For more details see Documentation/kdump/kdump.txt
Vivek Goyalec9ce0d2006-01-09 20:51:49 -0800505
Maneesh Soni05970d42006-01-09 20:51:52 -0800506config PHYSICAL_START
507 hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP)
508 default "0x1000000" if CRASH_DUMP
Andi Kleen04103602006-03-25 16:30:13 +0100509 default "0x200000"
Maneesh Soni05970d42006-01-09 20:51:52 -0800510 help
511 This gives the physical address where the kernel is loaded. Normally
Andi Kleen04103602006-03-25 16:30:13 +0100512 for regular kernels this value is 0x200000 (2MB). But in the case
Maneesh Soni05970d42006-01-09 20:51:52 -0800513 of kexec on panic the fail safe kernel needs to run at a different
514 address than the panic-ed kernel. This option is used to set the load
515 address for kernels used to capture crash dump on being kexec'ed
516 after panic. The default value for crash dump kernels is
517 0x1000000 (16MB). This can also be set based on the "X" value as
518 specified in the "crashkernel=YM@XM" command line boot parameter
519 passed to the panic-ed kernel. Typically this parameter is set as
520 crashkernel=64M@16M. Please take a look at
521 Documentation/kdump/kdump.txt for more details about crash dumps.
522
523 Don't change this unless you know what you are doing.
524
Linus Torvalds1da177e2005-04-16 15:20:36 -0700525config SECCOMP
526 bool "Enable seccomp to safely compute untrusted bytecode"
527 depends on PROC_FS
528 default y
529 help
530 This kernel feature is useful for number crunching applications
531 that may need to compute untrusted bytecode during their
532 execution. By using pipes or other transports made available to
533 the process as file descriptors supporting the read/write
534 syscalls, it's possible to isolate those applications in
535 their own address space using seccomp. Once seccomp is
536 enabled via /proc/<pid>/seccomp, it cannot be disabled
537 and the task is only allowed to execute a few safe syscalls
538 defined by each seccomp mode.
539
540 If unsure, say Y. Only embedded should say N here.
541
Arjan van de Venb62a5c72006-09-26 10:52:38 +0200542config CC_STACKPROTECTOR
543 bool "Enable -fstack-protector buffer overflow detection (EXPRIMENTAL)"
544 depends on EXPERIMENTAL
545 help
546 This option turns on the -fstack-protector GCC feature. This
547 feature puts, at the beginning of critical functions, a canary
548 value on the stack just before the return address, and validates
549 the value just before actually returning. Stack based buffer
550 overflows (that need to overwrite this return address) now also
551 overwrite the canary, which gets detected and the attack is then
552 neutralized via a kernel panic.
553
554 This feature requires gcc version 4.2 or above, or a distribution
555 gcc with the feature backported. Older versions are automatically
556 detected and for those versions, this configuration option is ignored.
557
558config CC_STACKPROTECTOR_ALL
559 bool "Use stack-protector for all functions"
560 depends on CC_STACKPROTECTOR
561 help
562 Normally, GCC only inserts the canary value protection for
563 functions that use large-ish on-stack buffers. By enabling
564 this option, GCC will be asked to do this for ALL functions.
565
Christoph Lameter59121002005-06-23 00:08:25 -0700566source kernel/Kconfig.hz
567
Arjan van de Ven4bdc3b72006-03-25 16:30:49 +0100568config REORDER
569 bool "Function reordering"
570 default n
571 help
572 This option enables the toolchain to reorder functions for a more
573 optimal TLB usage. If you have pretty much any version of binutils,
574 this can increase your kernel build time by roughly one minute.
575
Andi Kleena32073b2006-06-26 13:56:40 +0200576config K8_NB
577 def_bool y
Andi Kleena813ce42006-06-26 13:57:22 +0200578 depends on AGP_AMD64 || IOMMU || (PCI && NUMA)
Andi Kleena32073b2006-06-26 13:56:40 +0200579
Linus Torvalds1da177e2005-04-16 15:20:36 -0700580endmenu
581
582#
583# Use the generic interrupt handling code in kernel/irq/:
584#
585config GENERIC_HARDIRQS
586 bool
587 default y
588
589config GENERIC_IRQ_PROBE
590 bool
591 default y
592
Al Viro5cae8412005-05-04 05:39:22 +0100593# we have no ISA slots, but we do have ISA-style DMA.
594config ISA_DMA_API
595 bool
596 default y
597
Ashok Raj54d5d422005-09-06 15:16:15 -0700598config GENERIC_PENDING_IRQ
599 bool
600 depends on GENERIC_HARDIRQS && SMP
601 default y
602
Linus Torvalds1da177e2005-04-16 15:20:36 -0700603menu "Power management options"
604
605source kernel/power/Kconfig
606
607source "drivers/acpi/Kconfig"
608
609source "arch/x86_64/kernel/cpufreq/Kconfig"
610
611endmenu
612
613menu "Bus options (PCI etc.)"
614
615config PCI
616 bool "PCI support"
617
618# x86-64 doesn't support PCI BIOS access from long mode so always go direct.
619config PCI_DIRECT
620 bool
621 depends on PCI
622 default y
623
624config PCI_MMCONFIG
625 bool "Support mmconfig PCI config space access"
Alexander Nyberg8aadff72005-05-27 12:48:50 +0200626 depends on PCI && ACPI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700627
Linus Torvalds1da177e2005-04-16 15:20:36 -0700628source "drivers/pci/pcie/Kconfig"
629
630source "drivers/pci/Kconfig"
631
632source "drivers/pcmcia/Kconfig"
633
634source "drivers/pci/hotplug/Kconfig"
635
636endmenu
637
638
639menu "Executable file formats / Emulations"
640
641source "fs/Kconfig.binfmt"
642
643config IA32_EMULATION
644 bool "IA32 Emulation"
645 help
646 Include code to run 32-bit programs under a 64-bit kernel. You should likely
647 turn this on, unless you're 100% sure that you don't have any 32-bit programs
648 left.
649
650config IA32_AOUT
Andi Kleenea0be472005-11-05 17:25:54 +0100651 tristate "IA32 a.out support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700652 depends on IA32_EMULATION
653 help
654 Support old a.out binaries in the 32bit emulation.
655
656config COMPAT
657 bool
658 depends on IA32_EMULATION
659 default y
660
661config SYSVIPC_COMPAT
662 bool
663 depends on COMPAT && SYSVIPC
664 default y
665
Linus Torvalds1da177e2005-04-16 15:20:36 -0700666endmenu
667
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700668source "net/Kconfig"
669
Linus Torvalds1da177e2005-04-16 15:20:36 -0700670source drivers/Kconfig
671
672source "drivers/firmware/Kconfig"
673
674source fs/Kconfig
675
Prasanna S Panchamukhicd6b0762005-11-07 00:59:14 -0800676menu "Instrumentation Support"
677 depends on EXPERIMENTAL
678
Linus Torvalds1da177e2005-04-16 15:20:36 -0700679source "arch/x86_64/oprofile/Kconfig"
680
Prasanna S Panchamukhicd6b0762005-11-07 00:59:14 -0800681config KPROBES
682 bool "Kprobes (EXPERIMENTAL)"
Linus Torvaldsadd2b6f2006-02-26 20:24:40 -0800683 depends on EXPERIMENTAL && MODULES
Prasanna S Panchamukhicd6b0762005-11-07 00:59:14 -0800684 help
685 Kprobes allows you to trap at almost any kernel address and
686 execute a callback function. register_kprobe() establishes
687 a probepoint and specifies the callback. Kprobes is useful
688 for kernel debugging, non-intrusive instrumentation and testing.
689 If in doubt, say "N".
690endmenu
691
Linus Torvalds1da177e2005-04-16 15:20:36 -0700692source "arch/x86_64/Kconfig.debug"
693
694source "security/Kconfig"
695
696source "crypto/Kconfig"
697
698source "lib/Kconfig"