aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r--arch/x86/Kconfig632
1 files changed, 316 insertions, 316 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 73f7fe8fd4d..1042d69b267 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -5,7 +5,7 @@ mainmenu "Linux Kernel Configuration for x86"
5config 64BIT 5config 64BIT
6 bool "64-bit kernel" if ARCH = "x86" 6 bool "64-bit kernel" if ARCH = "x86"
7 default ARCH = "x86_64" 7 default ARCH = "x86_64"
8 help 8 ---help---
9 Say yes to build a 64-bit kernel - formerly known as x86_64 9 Say yes to build a 64-bit kernel - formerly known as x86_64
10 Say no to build a 32-bit kernel - formerly known as i386 10 Say no to build a 32-bit kernel - formerly known as i386
11 11
@@ -34,8 +34,8 @@ config X86
34 select HAVE_FUNCTION_TRACER 34 select HAVE_FUNCTION_TRACER
35 select HAVE_FUNCTION_GRAPH_TRACER 35 select HAVE_FUNCTION_GRAPH_TRACER
36 select HAVE_FUNCTION_TRACE_MCOUNT_TEST 36 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
37 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) 37 select HAVE_KVM
38 select HAVE_ARCH_KGDB if !X86_VOYAGER 38 select HAVE_ARCH_KGDB
39 select HAVE_ARCH_TRACEHOOK 39 select HAVE_ARCH_TRACEHOOK
40 select HAVE_GENERIC_DMA_COHERENT if X86_32 40 select HAVE_GENERIC_DMA_COHERENT if X86_32
41 select HAVE_EFFICIENT_UNALIGNED_ACCESS 41 select HAVE_EFFICIENT_UNALIGNED_ACCESS
@@ -133,18 +133,16 @@ config ARCH_HAS_CACHE_LINE_SIZE
133 def_bool y 133 def_bool y
134 134
135config HAVE_SETUP_PER_CPU_AREA 135config HAVE_SETUP_PER_CPU_AREA
136 def_bool X86_64_SMP || (X86_SMP && !X86_VOYAGER) 136 def_bool y
137 137
138config HAVE_CPUMASK_OF_CPU_MAP 138config HAVE_CPUMASK_OF_CPU_MAP
139 def_bool X86_64_SMP 139 def_bool X86_64_SMP
140 140
141config ARCH_HIBERNATION_POSSIBLE 141config ARCH_HIBERNATION_POSSIBLE
142 def_bool y 142 def_bool y
143 depends on !SMP || !X86_VOYAGER
144 143
145config ARCH_SUSPEND_POSSIBLE 144config ARCH_SUSPEND_POSSIBLE
146 def_bool y 145 def_bool y
147 depends on !X86_VOYAGER
148 146
149config ZONE_DMA32 147config ZONE_DMA32
150 bool 148 bool
@@ -174,11 +172,6 @@ config GENERIC_PENDING_IRQ
174 depends on GENERIC_HARDIRQS && SMP 172 depends on GENERIC_HARDIRQS && SMP
175 default y 173 default y
176 174
177config X86_SMP
178 bool
179 depends on SMP && ((X86_32 && !X86_VOYAGER) || X86_64)
180 default y
181
182config USE_GENERIC_SMP_HELPERS 175config USE_GENERIC_SMP_HELPERS
183 def_bool y 176 def_bool y
184 depends on SMP 177 depends on SMP
@@ -194,19 +187,17 @@ config X86_64_SMP
194config X86_HT 187config X86_HT
195 bool 188 bool
196 depends on SMP 189 depends on SMP
197 depends on (X86_32 && !X86_VOYAGER) || X86_64
198 default y
199
200config X86_BIOS_REBOOT
201 bool
202 depends on !X86_VOYAGER
203 default y 190 default y
204 191
205config X86_TRAMPOLINE 192config X86_TRAMPOLINE
206 bool 193 bool
207 depends on X86_SMP || (X86_VOYAGER && SMP) || (64BIT && ACPI_SLEEP) 194 depends on SMP || (64BIT && ACPI_SLEEP)
208 default y 195 default y
209 196
197config X86_32_LAZY_GS
198 def_bool y
199 depends on X86_32 && !CC_STACKPROTECTOR
200
210config KTIME_SCALAR 201config KTIME_SCALAR
211 def_bool X86_32 202 def_bool X86_32
212source "init/Kconfig" 203source "init/Kconfig"
@@ -244,14 +235,10 @@ config SMP
244 235
245 If you don't know what to do here, say N. 236 If you don't know what to do here, say N.
246 237
247config X86_HAS_BOOT_CPU_ID
248 def_bool y
249 depends on X86_VOYAGER
250
251config SPARSE_IRQ 238config SPARSE_IRQ
252 bool "Support sparse irq numbering" 239 bool "Support sparse irq numbering"
253 depends on PCI_MSI || HT_IRQ 240 depends on PCI_MSI || HT_IRQ
254 help 241 ---help---
255 This enables support for sparse irqs. This is useful for distro 242 This enables support for sparse irqs. This is useful for distro
256 kernels that want to define a high CONFIG_NR_CPUS value but still 243 kernels that want to define a high CONFIG_NR_CPUS value but still
257 want to have low kernel memory footprint on smaller machines. 244 want to have low kernel memory footprint on smaller machines.
@@ -265,137 +252,154 @@ config NUMA_MIGRATE_IRQ_DESC
265 bool "Move irq desc when changing irq smp_affinity" 252 bool "Move irq desc when changing irq smp_affinity"
266 depends on SPARSE_IRQ && NUMA 253 depends on SPARSE_IRQ && NUMA
267 default n 254 default n
268 help 255 ---help---
269 This enables moving irq_desc to cpu/node that irq will use handled. 256 This enables moving irq_desc to cpu/node that irq will use handled.
270 257
271 If you don't know what to do here, say N. 258 If you don't know what to do here, say N.
272 259
273config X86_FIND_SMP_CONFIG
274 def_bool y
275 depends on X86_MPPARSE || X86_VOYAGER
276
277config X86_MPPARSE 260config X86_MPPARSE
278 bool "Enable MPS table" if ACPI 261 bool "Enable MPS table" if ACPI
279 default y 262 default y
280 depends on X86_LOCAL_APIC 263 depends on X86_LOCAL_APIC
281 help 264 ---help---
282 For old smp systems that do not have proper acpi support. Newer systems 265 For old smp systems that do not have proper acpi support. Newer systems
283 (esp with 64bit cpus) with acpi support, MADT and DSDT will override it 266 (esp with 64bit cpus) with acpi support, MADT and DSDT will override it
284 267
285choice 268config X86_BIGSMP
286 prompt "Subarchitecture Type" 269 bool "Support for big SMP systems with more than 8 CPUs"
287 default X86_PC 270 depends on X86_32 && SMP
271 ---help---
272 This option is needed for the systems that have more than 8 CPUs
288 273
289config X86_PC 274config X86_EXTENDED_PLATFORM
290 bool "PC-compatible" 275 bool "Support for extended (non-PC) x86 platforms"
291 help 276 default y
292 Choose this option if your computer is a standard PC or compatible. 277 ---help---
278 If you disable this option then the kernel will only support
279 standard PC platforms. (which covers the vast majority of
280 systems out there.)
281
282 If you enable this option then you'll be able to select a number
283 of non-PC x86 platforms.
284
285 If you have one of these systems, or if you want to build a
286 generic distribution kernel, say Y here - otherwise say N.
287
288# This is an alphabetically sorted list of 64 bit extended platforms
289# Please maintain the alphabetic order if and when there are additions
290
291config X86_VSMP
292 bool "ScaleMP vSMP"
293 select PARAVIRT
294 depends on X86_64 && PCI
295 depends on X86_EXTENDED_PLATFORM
296 ---help---
297 Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is
298 supposed to run on these EM64T-based machines. Only choose this option
299 if you have one of these machines.
300
301config X86_UV
302 bool "SGI Ultraviolet"
303 depends on X86_64
304 depends on X86_EXTENDED_PLATFORM
305 ---help---
306 This option is needed in order to support SGI Ultraviolet systems.
307 If you don't have one of these, you should say N here.
308
309# Following is an alphabetically sorted list of 32 bit extended platforms
310# Please maintain the alphabetic order if and when there are additions
293 311
294config X86_ELAN 312config X86_ELAN
295 bool "AMD Elan" 313 bool "AMD Elan"
296 depends on X86_32 314 depends on X86_32
297 help 315 depends on X86_EXTENDED_PLATFORM
316 ---help---
298 Select this for an AMD Elan processor. 317 Select this for an AMD Elan processor.
299 318
300 Do not use this option for K6/Athlon/Opteron processors! 319 Do not use this option for K6/Athlon/Opteron processors!
301 320
302 If unsure, choose "PC-compatible" instead. 321 If unsure, choose "PC-compatible" instead.
303 322
304config X86_VOYAGER 323config X86_RDC321X
305 bool "Voyager (NCR)" 324 bool "RDC R-321x SoC"
306 depends on X86_32 && (SMP || BROKEN) && !PCI
307 help
308 Voyager is an MCA-based 32-way capable SMP architecture proprietary
309 to NCR Corp. Machine classes 345x/35xx/4100/51xx are Voyager-based.
310
311 *** WARNING ***
312
313 If you do not specifically know you have a Voyager based machine,
314 say N here, otherwise the kernel you build will not be bootable.
315
316config X86_GENERICARCH
317 bool "Generic architecture"
318 depends on X86_32 325 depends on X86_32
319 help 326 depends on X86_EXTENDED_PLATFORM
320 This option compiles in the NUMAQ, Summit, bigsmp, ES7000, default 327 select M486
328 select X86_REBOOTFIXUPS
329 ---help---
330 This option is needed for RDC R-321x system-on-chip, also known
331 as R-8610-(G).
332 If you don't have one of these chips, you should say N here.
333
334config X86_32_NON_STANDARD
335 bool "Support non-standard 32-bit SMP architectures"
336 depends on X86_32 && SMP
337 depends on X86_EXTENDED_PLATFORM
338 ---help---
339 This option compiles in the NUMAQ, Summit, bigsmp, ES7000, default
321 subarchitectures. It is intended for a generic binary kernel. 340 subarchitectures. It is intended for a generic binary kernel.
322 if you select them all, kernel will probe it one by one. and will 341 if you select them all, kernel will probe it one by one. and will
323 fallback to default. 342 fallback to default.
324 343
325if X86_GENERICARCH 344# Alphabetically sorted list of Non standard 32 bit platforms
326 345
327config X86_NUMAQ 346config X86_NUMAQ
328 bool "NUMAQ (IBM/Sequent)" 347 bool "NUMAQ (IBM/Sequent)"
329 depends on SMP && X86_32 && PCI && X86_MPPARSE 348 depends on X86_32_NON_STANDARD
330 select NUMA 349 select NUMA
331 help 350 select X86_MPPARSE
351 ---help---
332 This option is used for getting Linux to run on a NUMAQ (IBM/Sequent) 352 This option is used for getting Linux to run on a NUMAQ (IBM/Sequent)
333 NUMA multiquad box. This changes the way that processors are 353 NUMA multiquad box. This changes the way that processors are
334 bootstrapped, and uses Clustered Logical APIC addressing mode instead 354 bootstrapped, and uses Clustered Logical APIC addressing mode instead
335 of Flat Logical. You will need a new lynxer.elf file to flash your 355 of Flat Logical. You will need a new lynxer.elf file to flash your
336 firmware with - send email to <Martin.Bligh@us.ibm.com>. 356 firmware with - send email to <Martin.Bligh@us.ibm.com>.
337 357
358config X86_VISWS
359 bool "SGI 320/540 (Visual Workstation)"
360 depends on X86_32 && PCI && X86_MPPARSE && PCI_GODIRECT
361 depends on X86_32_NON_STANDARD
362 ---help---
363 The SGI Visual Workstation series is an IA32-based workstation
364 based on SGI systems chips with some legacy PC hardware attached.
365
366 Say Y here to create a kernel to run on the SGI 320 or 540.
367
368 A kernel compiled for the Visual Workstation will run on general
369 PCs as well. See <file:Documentation/sgi-visws.txt> for details.
370
338config X86_SUMMIT 371config X86_SUMMIT
339 bool "Summit/EXA (IBM x440)" 372 bool "Summit/EXA (IBM x440)"
340 depends on X86_32 && SMP 373 depends on X86_32_NON_STANDARD
341 help 374 ---help---
342 This option is needed for IBM systems that use the Summit/EXA chipset. 375 This option is needed for IBM systems that use the Summit/EXA chipset.
343 In particular, it is needed for the x440. 376 In particular, it is needed for the x440.
344 377
345config X86_ES7000 378config X86_ES7000
346 bool "Support for Unisys ES7000 IA32 series" 379 bool "Unisys ES7000 IA32 series"
347 depends on X86_32 && SMP 380 depends on X86_32_NON_STANDARD && X86_BIGSMP
348 help 381 ---help---
349 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is 382 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is
350 supposed to run on an IA32-based Unisys ES7000 system. 383 supposed to run on an IA32-based Unisys ES7000 system.
351 384
352config X86_BIGSMP 385config X86_VOYAGER
353 bool "Support for big SMP systems with more than 8 CPUs" 386 bool "Voyager (NCR)"
354 depends on X86_32 && SMP 387 depends on SMP && !PCI && BROKEN
355 help 388 depends on X86_32_NON_STANDARD
356 This option is needed for the systems that have more than 8 CPUs 389 ---help---
357 and if the system is not of any sub-arch type above. 390 Voyager is an MCA-based 32-way capable SMP architecture proprietary
358 391 to NCR Corp. Machine classes 345x/35xx/4100/51xx are Voyager-based.
359endif
360
361config X86_VSMP
362 bool "Support for ScaleMP vSMP"
363 select PARAVIRT
364 depends on X86_64 && PCI
365 help
366 Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is
367 supposed to run on these EM64T-based machines. Only choose this option
368 if you have one of these machines.
369
370endchoice
371
372config X86_VISWS
373 bool "SGI 320/540 (Visual Workstation)"
374 depends on X86_32 && PCI && !X86_VOYAGER && X86_MPPARSE && PCI_GODIRECT
375 help
376 The SGI Visual Workstation series is an IA32-based workstation
377 based on SGI systems chips with some legacy PC hardware attached.
378
379 Say Y here to create a kernel to run on the SGI 320 or 540.
380 392
381 A kernel compiled for the Visual Workstation will run on general 393 *** WARNING ***
382 PCs as well. See <file:Documentation/sgi-visws.txt> for details.
383 394
384config X86_RDC321X 395 If you do not specifically know you have a Voyager based machine,
385 bool "RDC R-321x SoC" 396 say N here, otherwise the kernel you build will not be bootable.
386 depends on X86_32
387 select M486
388 select X86_REBOOTFIXUPS
389 help
390 This option is needed for RDC R-321x system-on-chip, also known
391 as R-8610-(G).
392 If you don't have one of these chips, you should say N here.
393 397
394config SCHED_OMIT_FRAME_POINTER 398config SCHED_OMIT_FRAME_POINTER
395 def_bool y 399 def_bool y
396 prompt "Single-depth WCHAN output" 400 prompt "Single-depth WCHAN output"
397 depends on X86 401 depends on X86
398 help 402 ---help---
399 Calculate simpler /proc/<PID>/wchan values. If this option 403 Calculate simpler /proc/<PID>/wchan values. If this option
400 is disabled then wchan values will recurse back to the 404 is disabled then wchan values will recurse back to the
401 caller function. This provides more accurate wchan values, 405 caller function. This provides more accurate wchan values,
@@ -405,7 +409,7 @@ config SCHED_OMIT_FRAME_POINTER
405 409
406menuconfig PARAVIRT_GUEST 410menuconfig PARAVIRT_GUEST
407 bool "Paravirtualized guest support" 411 bool "Paravirtualized guest support"
408 help 412 ---help---
409 Say Y here to get to see options related to running Linux under 413 Say Y here to get to see options related to running Linux under
410 various hypervisors. This option alone does not add any kernel code. 414 various hypervisors. This option alone does not add any kernel code.
411 415
@@ -419,8 +423,7 @@ config VMI
419 bool "VMI Guest support" 423 bool "VMI Guest support"
420 select PARAVIRT 424 select PARAVIRT
421 depends on X86_32 425 depends on X86_32
422 depends on !X86_VOYAGER 426 ---help---
423 help
424 VMI provides a paravirtualized interface to the VMware ESX server 427 VMI provides a paravirtualized interface to the VMware ESX server
425 (it could be used by other hypervisors in theory too, but is not 428 (it could be used by other hypervisors in theory too, but is not
426 at the moment), by linking the kernel to a GPL-ed ROM module 429 at the moment), by linking the kernel to a GPL-ed ROM module
@@ -430,8 +433,7 @@ config KVM_CLOCK
430 bool "KVM paravirtualized clock" 433 bool "KVM paravirtualized clock"
431 select PARAVIRT 434 select PARAVIRT
432 select PARAVIRT_CLOCK 435 select PARAVIRT_CLOCK
433 depends on !X86_VOYAGER 436 ---help---
434 help
435 Turning on this option will allow you to run a paravirtualized clock 437 Turning on this option will allow you to run a paravirtualized clock
436 when running over the KVM hypervisor. Instead of relying on a PIT 438 when running over the KVM hypervisor. Instead of relying on a PIT
437 (or probably other) emulation by the underlying device model, the host 439 (or probably other) emulation by the underlying device model, the host
@@ -441,17 +443,15 @@ config KVM_CLOCK
441config KVM_GUEST 443config KVM_GUEST
442 bool "KVM Guest support" 444 bool "KVM Guest support"
443 select PARAVIRT 445 select PARAVIRT
444 depends on !X86_VOYAGER 446 ---help---
445 help 447 This option enables various optimizations for running under the KVM
446 This option enables various optimizations for running under the KVM 448 hypervisor.
447 hypervisor.
448 449
449source "arch/x86/lguest/Kconfig" 450source "arch/x86/lguest/Kconfig"
450 451
451config PARAVIRT 452config PARAVIRT
452 bool "Enable paravirtualization code" 453 bool "Enable paravirtualization code"
453 depends on !X86_VOYAGER 454 ---help---
454 help
455 This changes the kernel so it can modify itself when it is run 455 This changes the kernel so it can modify itself when it is run
456 under a hypervisor, potentially improving performance significantly 456 under a hypervisor, potentially improving performance significantly
457 over full virtualization. However, when run without a hypervisor 457 over full virtualization. However, when run without a hypervisor
@@ -464,51 +464,51 @@ config PARAVIRT_CLOCK
464endif 464endif
465 465
466config PARAVIRT_DEBUG 466config PARAVIRT_DEBUG
467 bool "paravirt-ops debugging" 467 bool "paravirt-ops debugging"
468 depends on PARAVIRT && DEBUG_KERNEL 468 depends on PARAVIRT && DEBUG_KERNEL
469 help 469 ---help---
470 Enable to debug paravirt_ops internals. Specifically, BUG if 470 Enable to debug paravirt_ops internals. Specifically, BUG if
471 a paravirt_op is missing when it is called. 471 a paravirt_op is missing when it is called.
472 472
473config MEMTEST 473config MEMTEST
474 bool "Memtest" 474 bool "Memtest"
475 help 475 ---help---
476 This option adds a kernel parameter 'memtest', which allows memtest 476 This option adds a kernel parameter 'memtest', which allows memtest
477 to be set. 477 to be set.
478 memtest=0, mean disabled; -- default 478 memtest=0, mean disabled; -- default
479 memtest=1, mean do 1 test pattern; 479 memtest=1, mean do 1 test pattern;
480 ... 480 ...
481 memtest=4, mean do 4 test patterns. 481 memtest=4, mean do 4 test patterns.
482 If you are unsure how to answer this question, answer N. 482 If you are unsure how to answer this question, answer N.
483 483
484config X86_SUMMIT_NUMA 484config X86_SUMMIT_NUMA
485 def_bool y 485 def_bool y
486 depends on X86_32 && NUMA && X86_GENERICARCH 486 depends on X86_32 && NUMA && X86_32_NON_STANDARD
487 487
488config X86_CYCLONE_TIMER 488config X86_CYCLONE_TIMER
489 def_bool y 489 def_bool y
490 depends on X86_GENERICARCH 490 depends on X86_32_NON_STANDARD
491 491
492source "arch/x86/Kconfig.cpu" 492source "arch/x86/Kconfig.cpu"
493 493
494config HPET_TIMER 494config HPET_TIMER
495 def_bool X86_64 495 def_bool X86_64
496 prompt "HPET Timer Support" if X86_32 496 prompt "HPET Timer Support" if X86_32
497 help 497 ---help---
498 Use the IA-PC HPET (High Precision Event Timer) to manage 498 Use the IA-PC HPET (High Precision Event Timer) to manage
499 time in preference to the PIT and RTC, if a HPET is 499 time in preference to the PIT and RTC, if a HPET is
500 present. 500 present.
501 HPET is the next generation timer replacing legacy 8254s. 501 HPET is the next generation timer replacing legacy 8254s.
502 The HPET provides a stable time base on SMP 502 The HPET provides a stable time base on SMP
503 systems, unlike the TSC, but it is more expensive to access, 503 systems, unlike the TSC, but it is more expensive to access,
504 as it is off-chip. You can find the HPET spec at 504 as it is off-chip. You can find the HPET spec at
505 <http://www.intel.com/hardwaredesign/hpetspec_1.pdf>. 505 <http://www.intel.com/hardwaredesign/hpetspec_1.pdf>.
506 506
507 You can safely choose Y here. However, HPET will only be 507 You can safely choose Y here. However, HPET will only be
508 activated if the platform and the BIOS support this feature. 508 activated if the platform and the BIOS support this feature.
509 Otherwise the 8254 will be used for timing services. 509 Otherwise the 8254 will be used for timing services.
510 510
511 Choose N to continue using the legacy 8254 timer. 511 Choose N to continue using the legacy 8254 timer.
512 512
513config HPET_EMULATE_RTC 513config HPET_EMULATE_RTC
514 def_bool y 514 def_bool y
@@ -519,7 +519,7 @@ config HPET_EMULATE_RTC
519config DMI 519config DMI
520 default y 520 default y
521 bool "Enable DMI scanning" if EMBEDDED 521 bool "Enable DMI scanning" if EMBEDDED
522 help 522 ---help---
523 Enabled scanning of DMI to identify machine quirks. Say Y 523 Enabled scanning of DMI to identify machine quirks. Say Y
524 here unless you have verified that your setup is not 524 here unless you have verified that your setup is not
525 affected by entries in the DMI blacklist. Required by PNP 525 affected by entries in the DMI blacklist. Required by PNP
@@ -531,7 +531,7 @@ config GART_IOMMU
531 select SWIOTLB 531 select SWIOTLB
532 select AGP 532 select AGP
533 depends on X86_64 && PCI 533 depends on X86_64 && PCI
534 help 534 ---help---
535 Support for full DMA access of devices with 32bit memory access only 535 Support for full DMA access of devices with 32bit memory access only
536 on systems with more than 3GB. This is usually needed for USB, 536 on systems with more than 3GB. This is usually needed for USB,
537 sound, many IDE/SATA chipsets and some other devices. 537 sound, many IDE/SATA chipsets and some other devices.
@@ -546,7 +546,7 @@ config CALGARY_IOMMU
546 bool "IBM Calgary IOMMU support" 546 bool "IBM Calgary IOMMU support"
547 select SWIOTLB 547 select SWIOTLB
548 depends on X86_64 && PCI && EXPERIMENTAL 548 depends on X86_64 && PCI && EXPERIMENTAL
549 help 549 ---help---
550 Support for hardware IOMMUs in IBM's xSeries x366 and x460 550 Support for hardware IOMMUs in IBM's xSeries x366 and x460
551 systems. Needed to run systems with more than 3GB of memory 551 systems. Needed to run systems with more than 3GB of memory
552 properly with 32-bit PCI devices that do not support DAC 552 properly with 32-bit PCI devices that do not support DAC
@@ -564,7 +564,7 @@ config CALGARY_IOMMU_ENABLED_BY_DEFAULT
564 def_bool y 564 def_bool y
565 prompt "Should Calgary be enabled by default?" 565 prompt "Should Calgary be enabled by default?"
566 depends on CALGARY_IOMMU 566 depends on CALGARY_IOMMU
567 help 567 ---help---
568 Should Calgary be enabled by default? if you choose 'y', Calgary 568 Should Calgary be enabled by default? if you choose 'y', Calgary
569 will be used (if it exists). If you choose 'n', Calgary will not be 569 will be used (if it exists). If you choose 'n', Calgary will not be
570 used even if it exists. If you choose 'n' and would like to use 570 used even if it exists. If you choose 'n' and would like to use
@@ -576,7 +576,7 @@ config AMD_IOMMU
576 select SWIOTLB 576 select SWIOTLB
577 select PCI_MSI 577 select PCI_MSI
578 depends on X86_64 && PCI && ACPI 578 depends on X86_64 && PCI && ACPI
579 help 579 ---help---
580 With this option you can enable support for AMD IOMMU hardware in 580 With this option you can enable support for AMD IOMMU hardware in
581 your system. An IOMMU is a hardware component which provides 581 your system. An IOMMU is a hardware component which provides
582 remapping of DMA memory accesses from devices. With an AMD IOMMU you 582 remapping of DMA memory accesses from devices. With an AMD IOMMU you
@@ -591,7 +591,7 @@ config AMD_IOMMU_STATS
591 bool "Export AMD IOMMU statistics to debugfs" 591 bool "Export AMD IOMMU statistics to debugfs"
592 depends on AMD_IOMMU 592 depends on AMD_IOMMU
593 select DEBUG_FS 593 select DEBUG_FS
594 help 594 ---help---
595 This option enables code in the AMD IOMMU driver to collect various 595 This option enables code in the AMD IOMMU driver to collect various
596 statistics about whats happening in the driver and exports that 596 statistics about whats happening in the driver and exports that
597 information to userspace via debugfs. 597 information to userspace via debugfs.
@@ -600,7 +600,7 @@ config AMD_IOMMU_STATS
600# need this always selected by IOMMU for the VIA workaround 600# need this always selected by IOMMU for the VIA workaround
601config SWIOTLB 601config SWIOTLB
602 def_bool y if X86_64 602 def_bool y if X86_64
603 help 603 ---help---
604 Support for software bounce buffers used on x86-64 systems 604 Support for software bounce buffers used on x86-64 systems
605 which don't have a hardware IOMMU (e.g. the current generation 605 which don't have a hardware IOMMU (e.g. the current generation
606 of Intel's x86-64 CPUs). Using this PCI devices which can only 606 of Intel's x86-64 CPUs). Using this PCI devices which can only
@@ -618,7 +618,7 @@ config MAXSMP
618 depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL 618 depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL
619 select CPUMASK_OFFSTACK 619 select CPUMASK_OFFSTACK
620 default n 620 default n
621 help 621 ---help---
622 Configure maximum number of CPUS and NUMA Nodes for this architecture. 622 Configure maximum number of CPUS and NUMA Nodes for this architecture.
623 If unsure, say N. 623 If unsure, say N.
624 624
@@ -629,7 +629,7 @@ config NR_CPUS
629 default "4096" if MAXSMP 629 default "4096" if MAXSMP
630 default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000) 630 default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000)
631 default "8" if SMP 631 default "8" if SMP
632 help 632 ---help---
633 This allows you to specify the maximum number of CPUs which this 633 This allows you to specify the maximum number of CPUs which this
634 kernel will support. The maximum supported value is 512 and the 634 kernel will support. The maximum supported value is 512 and the
635 minimum value which makes sense is 2. 635 minimum value which makes sense is 2.
@@ -640,7 +640,7 @@ config NR_CPUS
640config SCHED_SMT 640config SCHED_SMT
641 bool "SMT (Hyperthreading) scheduler support" 641 bool "SMT (Hyperthreading) scheduler support"
642 depends on X86_HT 642 depends on X86_HT
643 help 643 ---help---
644 SMT scheduler support improves the CPU scheduler's decision making 644 SMT scheduler support improves the CPU scheduler's decision making
645 when dealing with Intel Pentium 4 chips with HyperThreading at a 645 when dealing with Intel Pentium 4 chips with HyperThreading at a
646 cost of slightly increased overhead in some places. If unsure say 646 cost of slightly increased overhead in some places. If unsure say
@@ -650,7 +650,7 @@ config SCHED_MC
650 def_bool y 650 def_bool y
651 prompt "Multi-core scheduler support" 651 prompt "Multi-core scheduler support"
652 depends on X86_HT 652 depends on X86_HT
653 help 653 ---help---
654 Multi-core scheduler support improves the CPU scheduler's decision 654 Multi-core scheduler support improves the CPU scheduler's decision
655 making when dealing with multi-core CPU chips at a cost of slightly 655 making when dealing with multi-core CPU chips at a cost of slightly
656 increased overhead in some places. If unsure say N here. 656 increased overhead in some places. If unsure say N here.
@@ -659,8 +659,8 @@ source "kernel/Kconfig.preempt"
659 659
660config X86_UP_APIC 660config X86_UP_APIC
661 bool "Local APIC support on uniprocessors" 661 bool "Local APIC support on uniprocessors"
662 depends on X86_32 && !SMP && !(X86_VOYAGER || X86_GENERICARCH) 662 depends on X86_32 && !SMP && !X86_32_NON_STANDARD
663 help 663 ---help---
664 A local APIC (Advanced Programmable Interrupt Controller) is an 664 A local APIC (Advanced Programmable Interrupt Controller) is an
665 integrated interrupt controller in the CPU. If you have a single-CPU 665 integrated interrupt controller in the CPU. If you have a single-CPU
666 system which has a processor with a local APIC, you can say Y here to 666 system which has a processor with a local APIC, you can say Y here to
@@ -673,7 +673,7 @@ config X86_UP_APIC
673config X86_UP_IOAPIC 673config X86_UP_IOAPIC
674 bool "IO-APIC support on uniprocessors" 674 bool "IO-APIC support on uniprocessors"
675 depends on X86_UP_APIC 675 depends on X86_UP_APIC
676 help 676 ---help---
677 An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an 677 An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an
678 SMP-capable replacement for PC-style interrupt controllers. Most 678 SMP-capable replacement for PC-style interrupt controllers. Most
679 SMP systems and many recent uniprocessor systems have one. 679 SMP systems and many recent uniprocessor systems have one.
@@ -684,11 +684,11 @@ config X86_UP_IOAPIC
684 684
685config X86_LOCAL_APIC 685config X86_LOCAL_APIC
686 def_bool y 686 def_bool y
687 depends on X86_64 || (X86_32 && (X86_UP_APIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH)) 687 depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC
688 688
689config X86_IO_APIC 689config X86_IO_APIC
690 def_bool y 690 def_bool y
691 depends on X86_64 || (X86_32 && (X86_UP_IOAPIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH)) 691 depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC
692 692
693config X86_VISWS_APIC 693config X86_VISWS_APIC
694 def_bool y 694 def_bool y
@@ -698,7 +698,7 @@ config X86_REROUTE_FOR_BROKEN_BOOT_IRQS
698 bool "Reroute for broken boot IRQs" 698 bool "Reroute for broken boot IRQs"
699 default n 699 default n
700 depends on X86_IO_APIC 700 depends on X86_IO_APIC
701 help 701 ---help---
702 This option enables a workaround that fixes a source of 702 This option enables a workaround that fixes a source of
703 spurious interrupts. This is recommended when threaded 703 spurious interrupts. This is recommended when threaded
704 interrupt handling is used on systems where the generation of 704 interrupt handling is used on systems where the generation of
@@ -720,7 +720,6 @@ config X86_REROUTE_FOR_BROKEN_BOOT_IRQS
720 720
721config X86_MCE 721config X86_MCE
722 bool "Machine Check Exception" 722 bool "Machine Check Exception"
723 depends on !X86_VOYAGER
724 ---help--- 723 ---help---
725 Machine Check Exception support allows the processor to notify the 724 Machine Check Exception support allows the processor to notify the
726 kernel if it detects a problem (e.g. overheating, component failure). 725 kernel if it detects a problem (e.g. overheating, component failure).
@@ -739,7 +738,7 @@ config X86_MCE_INTEL
739 def_bool y 738 def_bool y
740 prompt "Intel MCE features" 739 prompt "Intel MCE features"
741 depends on X86_64 && X86_MCE && X86_LOCAL_APIC 740 depends on X86_64 && X86_MCE && X86_LOCAL_APIC
742 help 741 ---help---
743 Additional support for intel specific MCE features such as 742 Additional support for intel specific MCE features such as
744 the thermal monitor. 743 the thermal monitor.
745 744
@@ -747,14 +746,14 @@ config X86_MCE_AMD
747 def_bool y 746 def_bool y
748 prompt "AMD MCE features" 747 prompt "AMD MCE features"
749 depends on X86_64 && X86_MCE && X86_LOCAL_APIC 748 depends on X86_64 && X86_MCE && X86_LOCAL_APIC
750 help 749 ---help---
751 Additional support for AMD specific MCE features such as 750 Additional support for AMD specific MCE features such as
752 the DRAM Error Threshold. 751 the DRAM Error Threshold.
753 752
754config X86_MCE_NONFATAL 753config X86_MCE_NONFATAL
755 tristate "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4" 754 tristate "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4"
756 depends on X86_32 && X86_MCE 755 depends on X86_32 && X86_MCE
757 help 756 ---help---
758 Enabling this feature starts a timer that triggers every 5 seconds which 757 Enabling this feature starts a timer that triggers every 5 seconds which
759 will look at the machine check registers to see if anything happened. 758 will look at the machine check registers to see if anything happened.
760 Non-fatal problems automatically get corrected (but still logged). 759 Non-fatal problems automatically get corrected (but still logged).
@@ -767,7 +766,7 @@ config X86_MCE_NONFATAL
767config X86_MCE_P4THERMAL 766config X86_MCE_P4THERMAL
768 bool "check for P4 thermal throttling interrupt." 767 bool "check for P4 thermal throttling interrupt."
769 depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP) 768 depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP)
770 help 769 ---help---
771 Enabling this feature will cause a message to be printed when the P4 770 Enabling this feature will cause a message to be printed when the P4
772 enters thermal throttling. 771 enters thermal throttling.
773 772
@@ -775,11 +774,11 @@ config VM86
775 bool "Enable VM86 support" if EMBEDDED 774 bool "Enable VM86 support" if EMBEDDED
776 default y 775 default y
777 depends on X86_32 776 depends on X86_32
778 help 777 ---help---
779 This option is required by programs like DOSEMU to run 16-bit legacy 778 This option is required by programs like DOSEMU to run 16-bit legacy
780 code on X86 processors. It also may be needed by software like 779 code on X86 processors. It also may be needed by software like
781 XFree86 to initialize some video cards via BIOS. Disabling this 780 XFree86 to initialize some video cards via BIOS. Disabling this
782 option saves about 6k. 781 option saves about 6k.
783 782
784config TOSHIBA 783config TOSHIBA
785 tristate "Toshiba Laptop support" 784 tristate "Toshiba Laptop support"
@@ -853,33 +852,33 @@ config MICROCODE
853 module will be called microcode. 852 module will be called microcode.
854 853
855config MICROCODE_INTEL 854config MICROCODE_INTEL
856 bool "Intel microcode patch loading support" 855 bool "Intel microcode patch loading support"
857 depends on MICROCODE 856 depends on MICROCODE
858 default MICROCODE 857 default MICROCODE
859 select FW_LOADER 858 select FW_LOADER
860 --help--- 859 ---help---
861 This options enables microcode patch loading support for Intel 860 This options enables microcode patch loading support for Intel
862 processors. 861 processors.
863 862
864 For latest news and information on obtaining all the required 863 For latest news and information on obtaining all the required
865 Intel ingredients for this driver, check: 864 Intel ingredients for this driver, check:
866 <http://www.urbanmyth.org/microcode/>. 865 <http://www.urbanmyth.org/microcode/>.
867 866
868config MICROCODE_AMD 867config MICROCODE_AMD
869 bool "AMD microcode patch loading support" 868 bool "AMD microcode patch loading support"
870 depends on MICROCODE 869 depends on MICROCODE
871 select FW_LOADER 870 select FW_LOADER
872 --help--- 871 ---help---
873 If you select this option, microcode patch loading support for AMD 872 If you select this option, microcode patch loading support for AMD
874 processors will be enabled. 873 processors will be enabled.
875 874
876 config MICROCODE_OLD_INTERFACE 875config MICROCODE_OLD_INTERFACE
877 def_bool y 876 def_bool y
878 depends on MICROCODE 877 depends on MICROCODE
879 878
880config X86_MSR 879config X86_MSR
881 tristate "/dev/cpu/*/msr - Model-specific register support" 880 tristate "/dev/cpu/*/msr - Model-specific register support"
882 help 881 ---help---
883 This device gives privileged processes access to the x86 882 This device gives privileged processes access to the x86
884 Model-Specific Registers (MSRs). It is a character device with 883 Model-Specific Registers (MSRs). It is a character device with
885 major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr. 884 major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr.
@@ -888,7 +887,7 @@ config X86_MSR
888 887
889config X86_CPUID 888config X86_CPUID
890 tristate "/dev/cpu/*/cpuid - CPU information support" 889 tristate "/dev/cpu/*/cpuid - CPU information support"
891 help 890 ---help---
892 This device gives processes access to the x86 CPUID instruction to 891 This device gives processes access to the x86 CPUID instruction to
893 be executed on a specific processor. It is a character device 892 be executed on a specific processor. It is a character device
894 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to 893 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to
@@ -940,7 +939,7 @@ config NOHIGHMEM
940config HIGHMEM4G 939config HIGHMEM4G
941 bool "4GB" 940 bool "4GB"
942 depends on !X86_NUMAQ 941 depends on !X86_NUMAQ
943 help 942 ---help---
944 Select this if you have a 32-bit processor and between 1 and 4 943 Select this if you have a 32-bit processor and between 1 and 4
945 gigabytes of physical RAM. 944 gigabytes of physical RAM.
946 945
@@ -948,7 +947,7 @@ config HIGHMEM64G
948 bool "64GB" 947 bool "64GB"
949 depends on !M386 && !M486 948 depends on !M386 && !M486
950 select X86_PAE 949 select X86_PAE
951 help 950 ---help---
952 Select this if you have a 32-bit processor and more than 4 951 Select this if you have a 32-bit processor and more than 4
953 gigabytes of physical RAM. 952 gigabytes of physical RAM.
954 953
@@ -959,7 +958,7 @@ choice
959 prompt "Memory split" if EMBEDDED 958 prompt "Memory split" if EMBEDDED
960 default VMSPLIT_3G 959 default VMSPLIT_3G
961 depends on X86_32 960 depends on X86_32
962 help 961 ---help---
963 Select the desired split between kernel and user memory. 962 Select the desired split between kernel and user memory.
964 963
965 If the address range available to the kernel is less than the 964 If the address range available to the kernel is less than the
@@ -1005,20 +1004,20 @@ config HIGHMEM
1005config X86_PAE 1004config X86_PAE
1006 bool "PAE (Physical Address Extension) Support" 1005 bool "PAE (Physical Address Extension) Support"
1007 depends on X86_32 && !HIGHMEM4G 1006 depends on X86_32 && !HIGHMEM4G
1008 help 1007 ---help---
1009 PAE is required for NX support, and furthermore enables 1008 PAE is required for NX support, and furthermore enables
1010 larger swapspace support for non-overcommit purposes. It 1009 larger swapspace support for non-overcommit purposes. It
1011 has the cost of more pagetable lookup overhead, and also 1010 has the cost of more pagetable lookup overhead, and also
1012 consumes more pagetable space per process. 1011 consumes more pagetable space per process.
1013 1012
1014config ARCH_PHYS_ADDR_T_64BIT 1013config ARCH_PHYS_ADDR_T_64BIT
1015 def_bool X86_64 || X86_PAE 1014 def_bool X86_64 || X86_PAE
1016 1015
1017config DIRECT_GBPAGES 1016config DIRECT_GBPAGES
1018 bool "Enable 1GB pages for kernel pagetables" if EMBEDDED 1017 bool "Enable 1GB pages for kernel pagetables" if EMBEDDED
1019 default y 1018 default y
1020 depends on X86_64 1019 depends on X86_64
1021 help 1020 ---help---
1022 Allow the kernel linear mapping to use 1GB pages on CPUs that 1021 Allow the kernel linear mapping to use 1GB pages on CPUs that
1023 support it. This can improve the kernel's performance a tiny bit by 1022 support it. This can improve the kernel's performance a tiny bit by
1024 reducing TLB pressure. If in doubt, say "Y". 1023 reducing TLB pressure. If in doubt, say "Y".
@@ -1028,9 +1027,8 @@ config NUMA
1028 bool "Numa Memory Allocation and Scheduler Support" 1027 bool "Numa Memory Allocation and Scheduler Support"
1029 depends on SMP 1028 depends on SMP
1030 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL) 1029 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL)
1031 default n if X86_PC
1032 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) 1030 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
1033 help 1031 ---help---
1034 Enable NUMA (Non Uniform Memory Access) support. 1032 Enable NUMA (Non Uniform Memory Access) support.
1035 1033
1036 The kernel will try to allocate memory used by a CPU on the 1034 The kernel will try to allocate memory used by a CPU on the
@@ -1053,19 +1051,19 @@ config K8_NUMA
1053 def_bool y 1051 def_bool y
1054 prompt "Old style AMD Opteron NUMA detection" 1052 prompt "Old style AMD Opteron NUMA detection"
1055 depends on X86_64 && NUMA && PCI 1053 depends on X86_64 && NUMA && PCI
1056 help 1054 ---help---
1057 Enable K8 NUMA node topology detection. You should say Y here if 1055 Enable K8 NUMA node topology detection. You should say Y here if
1058 you have a multi processor AMD K8 system. This uses an old 1056 you have a multi processor AMD K8 system. This uses an old
1059 method to read the NUMA configuration directly from the builtin 1057 method to read the NUMA configuration directly from the builtin
1060 Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA 1058 Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA
1061 instead, which also takes priority if both are compiled in. 1059 instead, which also takes priority if both are compiled in.
1062 1060
1063config X86_64_ACPI_NUMA 1061config X86_64_ACPI_NUMA
1064 def_bool y 1062 def_bool y
1065 prompt "ACPI NUMA detection" 1063 prompt "ACPI NUMA detection"
1066 depends on X86_64 && NUMA && ACPI && PCI 1064 depends on X86_64 && NUMA && ACPI && PCI
1067 select ACPI_NUMA 1065 select ACPI_NUMA
1068 help 1066 ---help---
1069 Enable ACPI SRAT based node topology detection. 1067 Enable ACPI SRAT based node topology detection.
1070 1068
1071# Some NUMA nodes have memory ranges that span 1069# Some NUMA nodes have memory ranges that span
@@ -1080,7 +1078,7 @@ config NODES_SPAN_OTHER_NODES
1080config NUMA_EMU 1078config NUMA_EMU
1081 bool "NUMA emulation" 1079 bool "NUMA emulation"
1082 depends on X86_64 && NUMA 1080 depends on X86_64 && NUMA
1083 help 1081 ---help---
1084 Enable NUMA emulation. A flat machine will be split 1082 Enable NUMA emulation. A flat machine will be split
1085 into virtual nodes when booted with "numa=fake=N", where N is the 1083 into virtual nodes when booted with "numa=fake=N", where N is the
1086 number of nodes. This is only useful for debugging. 1084 number of nodes. This is only useful for debugging.
@@ -1093,7 +1091,7 @@ config NODES_SHIFT
1093 default "4" if X86_NUMAQ 1091 default "4" if X86_NUMAQ
1094 default "3" 1092 default "3"
1095 depends on NEED_MULTIPLE_NODES 1093 depends on NEED_MULTIPLE_NODES
1096 help 1094 ---help---
1097 Specify the maximum number of NUMA Nodes available on the target 1095 Specify the maximum number of NUMA Nodes available on the target
1098 system. Increases memory reserved to accomodate various tables. 1096 system. Increases memory reserved to accomodate various tables.
1099 1097
@@ -1131,7 +1129,7 @@ config ARCH_SPARSEMEM_DEFAULT
1131 1129
1132config ARCH_SPARSEMEM_ENABLE 1130config ARCH_SPARSEMEM_ENABLE
1133 def_bool y 1131 def_bool y
1134 depends on X86_64 || NUMA || (EXPERIMENTAL && X86_PC) || X86_GENERICARCH 1132 depends on X86_64 || NUMA || (EXPERIMENTAL && X86_32) || X86_32_NON_STANDARD
1135 select SPARSEMEM_STATIC if X86_32 1133 select SPARSEMEM_STATIC if X86_32
1136 select SPARSEMEM_VMEMMAP_ENABLE if X86_64 1134 select SPARSEMEM_VMEMMAP_ENABLE if X86_64
1137 1135
@@ -1148,61 +1146,61 @@ source "mm/Kconfig"
1148config HIGHPTE 1146config HIGHPTE
1149 bool "Allocate 3rd-level pagetables from highmem" 1147 bool "Allocate 3rd-level pagetables from highmem"
1150 depends on X86_32 && (HIGHMEM4G || HIGHMEM64G) 1148 depends on X86_32 && (HIGHMEM4G || HIGHMEM64G)
1151 help 1149 ---help---
1152 The VM uses one page table entry for each page of physical memory. 1150 The VM uses one page table entry for each page of physical memory.
1153 For systems with a lot of RAM, this can be wasteful of precious 1151 For systems with a lot of RAM, this can be wasteful of precious
1154 low memory. Setting this option will put user-space page table 1152 low memory. Setting this option will put user-space page table
1155 entries in high memory. 1153 entries in high memory.
1156 1154
1157config X86_CHECK_BIOS_CORRUPTION 1155config X86_CHECK_BIOS_CORRUPTION
1158 bool "Check for low memory corruption" 1156 bool "Check for low memory corruption"
1159 help 1157 ---help---
1160 Periodically check for memory corruption in low memory, which 1158 Periodically check for memory corruption in low memory, which
1161 is suspected to be caused by BIOS. Even when enabled in the 1159 is suspected to be caused by BIOS. Even when enabled in the
1162 configuration, it is disabled at runtime. Enable it by 1160 configuration, it is disabled at runtime. Enable it by
1163 setting "memory_corruption_check=1" on the kernel command 1161 setting "memory_corruption_check=1" on the kernel command
1164 line. By default it scans the low 64k of memory every 60 1162 line. By default it scans the low 64k of memory every 60
1165 seconds; see the memory_corruption_check_size and 1163 seconds; see the memory_corruption_check_size and
1166 memory_corruption_check_period parameters in 1164 memory_corruption_check_period parameters in
1167 Documentation/kernel-parameters.txt to adjust this. 1165 Documentation/kernel-parameters.txt to adjust this.
1168 1166
1169 When enabled with the default parameters, this option has 1167 When enabled with the default parameters, this option has
1170 almost no overhead, as it reserves a relatively small amount 1168 almost no overhead, as it reserves a relatively small amount
1171 of memory and scans it infrequently. It both detects corruption 1169 of memory and scans it infrequently. It both detects corruption
1172 and prevents it from affecting the running system. 1170 and prevents it from affecting the running system.
1173 1171
1174 It is, however, intended as a diagnostic tool; if repeatable 1172 It is, however, intended as a diagnostic tool; if repeatable
1175 BIOS-originated corruption always affects the same memory, 1173 BIOS-originated corruption always affects the same memory,
1176 you can use memmap= to prevent the kernel from using that 1174 you can use memmap= to prevent the kernel from using that
1177 memory. 1175 memory.
1178 1176
1179config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK 1177config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK
1180 bool "Set the default setting of memory_corruption_check" 1178 bool "Set the default setting of memory_corruption_check"
1181 depends on X86_CHECK_BIOS_CORRUPTION 1179 depends on X86_CHECK_BIOS_CORRUPTION
1182 default y 1180 default y
1183 help 1181 ---help---
1184 Set whether the default state of memory_corruption_check is 1182 Set whether the default state of memory_corruption_check is
1185 on or off. 1183 on or off.
1186 1184
1187config X86_RESERVE_LOW_64K 1185config X86_RESERVE_LOW_64K
1188 bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen" 1186 bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen"
1189 default y 1187 default y
1190 help 1188 ---help---
1191 Reserve the first 64K of physical RAM on BIOSes that are known 1189 Reserve the first 64K of physical RAM on BIOSes that are known
1192 to potentially corrupt that memory range. A numbers of BIOSes are 1190 to potentially corrupt that memory range. A numbers of BIOSes are
1193 known to utilize this area during suspend/resume, so it must not 1191 known to utilize this area during suspend/resume, so it must not
1194 be used by the kernel. 1192 be used by the kernel.
1195 1193
1196 Set this to N if you are absolutely sure that you trust the BIOS 1194 Set this to N if you are absolutely sure that you trust the BIOS
1197 to get all its memory reservations and usages right. 1195 to get all its memory reservations and usages right.
1198 1196
1199 If you have doubts about the BIOS (e.g. suspend/resume does not 1197 If you have doubts about the BIOS (e.g. suspend/resume does not
1200 work or there's kernel crashes after certain hardware hotplug 1198 work or there's kernel crashes after certain hardware hotplug
1201 events) and it's not AMI or Phoenix, then you might want to enable 1199 events) and it's not AMI or Phoenix, then you might want to enable
1202 X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical 1200 X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical
1203 corruption patterns. 1201 corruption patterns.
1204 1202
1205 Say Y if unsure. 1203 Say Y if unsure.
1206 1204
1207config MATH_EMULATION 1205config MATH_EMULATION
1208 bool 1206 bool
@@ -1268,7 +1266,7 @@ config MTRR_SANITIZER
1268 def_bool y 1266 def_bool y
1269 prompt "MTRR cleanup support" 1267 prompt "MTRR cleanup support"
1270 depends on MTRR 1268 depends on MTRR
1271 help 1269 ---help---
1272 Convert MTRR layout from continuous to discrete, so X drivers can 1270 Convert MTRR layout from continuous to discrete, so X drivers can
1273 add writeback entries. 1271 add writeback entries.
1274 1272
@@ -1283,7 +1281,7 @@ config MTRR_SANITIZER_ENABLE_DEFAULT
1283 range 0 1 1281 range 0 1
1284 default "0" 1282 default "0"
1285 depends on MTRR_SANITIZER 1283 depends on MTRR_SANITIZER
1286 help 1284 ---help---
1287 Enable mtrr cleanup default value 1285 Enable mtrr cleanup default value
1288 1286
1289config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT 1287config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT
@@ -1291,7 +1289,7 @@ config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT
1291 range 0 7 1289 range 0 7
1292 default "1" 1290 default "1"
1293 depends on MTRR_SANITIZER 1291 depends on MTRR_SANITIZER
1294 help 1292 ---help---
1295 mtrr cleanup spare entries default, it can be changed via 1293 mtrr cleanup spare entries default, it can be changed via
1296 mtrr_spare_reg_nr=N on the kernel command line. 1294 mtrr_spare_reg_nr=N on the kernel command line.
1297 1295
@@ -1299,7 +1297,7 @@ config X86_PAT
1299 bool 1297 bool
1300 prompt "x86 PAT support" 1298 prompt "x86 PAT support"
1301 depends on MTRR 1299 depends on MTRR
1302 help 1300 ---help---
1303 Use PAT attributes to setup page level cache control. 1301 Use PAT attributes to setup page level cache control.
1304 1302
1305 PATs are the modern equivalents of MTRRs and are much more 1303 PATs are the modern equivalents of MTRRs and are much more
@@ -1314,20 +1312,20 @@ config EFI
1314 bool "EFI runtime service support" 1312 bool "EFI runtime service support"
1315 depends on ACPI 1313 depends on ACPI
1316 ---help--- 1314 ---help---
1317 This enables the kernel to use EFI runtime services that are 1315 This enables the kernel to use EFI runtime services that are
1318 available (such as the EFI variable services). 1316 available (such as the EFI variable services).
1319 1317
1320 This option is only useful on systems that have EFI firmware. 1318 This option is only useful on systems that have EFI firmware.
1321 In addition, you should use the latest ELILO loader available 1319 In addition, you should use the latest ELILO loader available
1322 at <http://elilo.sourceforge.net> in order to take advantage 1320 at <http://elilo.sourceforge.net> in order to take advantage
1323 of EFI runtime services. However, even with this option, the 1321 of EFI runtime services. However, even with this option, the
1324 resultant kernel should continue to boot on existing non-EFI 1322 resultant kernel should continue to boot on existing non-EFI
1325 platforms. 1323 platforms.
1326 1324
1327config SECCOMP 1325config SECCOMP
1328 def_bool y 1326 def_bool y
1329 prompt "Enable seccomp to safely compute untrusted bytecode" 1327 prompt "Enable seccomp to safely compute untrusted bytecode"
1330 help 1328 ---help---
1331 This kernel feature is useful for number crunching applications 1329 This kernel feature is useful for number crunching applications
1332 that may need to compute untrusted bytecode during their 1330 that may need to compute untrusted bytecode during their
1333 execution. By using pipes or other transports made available to 1331 execution. By using pipes or other transports made available to
@@ -1340,13 +1338,16 @@ config SECCOMP
1340 1338
1341 If unsure, say Y. Only embedded should say N here. 1339 If unsure, say Y. Only embedded should say N here.
1342 1340
1341config CC_STACKPROTECTOR_ALL
1342 bool
1343
1343config CC_STACKPROTECTOR 1344config CC_STACKPROTECTOR
1344 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" 1345 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
1345 depends on X86_64 && EXPERIMENTAL && BROKEN 1346 select CC_STACKPROTECTOR_ALL
1346 help 1347 ---help---
1347 This option turns on the -fstack-protector GCC feature. This 1348 This option turns on the -fstack-protector GCC feature. This
1348 feature puts, at the beginning of critical functions, a canary 1349 feature puts, at the beginning of functions, a canary value on
1349 value on the stack just before the return address, and validates 1350 the stack just before the return address, and validates
1350 the value just before actually returning. Stack based buffer 1351 the value just before actually returning. Stack based buffer
1351 overflows (that need to overwrite this return address) now also 1352 overflows (that need to overwrite this return address) now also
1352 overwrite the canary, which gets detected and the attack is then 1353 overwrite the canary, which gets detected and the attack is then
@@ -1354,22 +1355,14 @@ config CC_STACKPROTECTOR
1354 1355
1355 This feature requires gcc version 4.2 or above, or a distribution 1356 This feature requires gcc version 4.2 or above, or a distribution
1356 gcc with the feature backported. Older versions are automatically 1357 gcc with the feature backported. Older versions are automatically
1357 detected and for those versions, this configuration option is ignored. 1358 detected and for those versions, this configuration option is
1358 1359 ignored. (and a warning is printed during bootup)
1359config CC_STACKPROTECTOR_ALL
1360 bool "Use stack-protector for all functions"
1361 depends on CC_STACKPROTECTOR
1362 help
1363 Normally, GCC only inserts the canary value protection for
1364 functions that use large-ish on-stack buffers. By enabling
1365 this option, GCC will be asked to do this for ALL functions.
1366 1360
1367source kernel/Kconfig.hz 1361source kernel/Kconfig.hz
1368 1362
1369config KEXEC 1363config KEXEC
1370 bool "kexec system call" 1364 bool "kexec system call"
1371 depends on X86_BIOS_REBOOT 1365 ---help---
1372 help
1373 kexec is a system call that implements the ability to shutdown your 1366 kexec is a system call that implements the ability to shutdown your
1374 current kernel, and to start another kernel. It is like a reboot 1367 current kernel, and to start another kernel. It is like a reboot
1375 but it is independent of the system firmware. And like a reboot 1368 but it is independent of the system firmware. And like a reboot
@@ -1386,7 +1379,7 @@ config KEXEC
1386config CRASH_DUMP 1379config CRASH_DUMP
1387 bool "kernel crash dumps" 1380 bool "kernel crash dumps"
1388 depends on X86_64 || (X86_32 && HIGHMEM) 1381 depends on X86_64 || (X86_32 && HIGHMEM)
1389 help 1382 ---help---
1390 Generate crash dump after being started by kexec. 1383 Generate crash dump after being started by kexec.
1391 This should be normally only set in special crash dump kernels 1384 This should be normally only set in special crash dump kernels
1392 which are loaded in the main kernel with kexec-tools into 1385 which are loaded in the main kernel with kexec-tools into
@@ -1401,7 +1394,7 @@ config KEXEC_JUMP
1401 bool "kexec jump (EXPERIMENTAL)" 1394 bool "kexec jump (EXPERIMENTAL)"
1402 depends on EXPERIMENTAL 1395 depends on EXPERIMENTAL
1403 depends on KEXEC && HIBERNATION && X86_32 1396 depends on KEXEC && HIBERNATION && X86_32
1404 help 1397 ---help---
1405 Jump between original kernel and kexeced kernel and invoke 1398 Jump between original kernel and kexeced kernel and invoke
1406 code in physical address mode via KEXEC 1399 code in physical address mode via KEXEC
1407 1400
@@ -1410,7 +1403,7 @@ config PHYSICAL_START
1410 default "0x1000000" if X86_NUMAQ 1403 default "0x1000000" if X86_NUMAQ
1411 default "0x200000" if X86_64 1404 default "0x200000" if X86_64
1412 default "0x100000" 1405 default "0x100000"
1413 help 1406 ---help---
1414 This gives the physical address where the kernel is loaded. 1407 This gives the physical address where the kernel is loaded.
1415 1408
1416 If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then 1409 If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then
@@ -1451,7 +1444,7 @@ config PHYSICAL_START
1451config RELOCATABLE 1444config RELOCATABLE
1452 bool "Build a relocatable kernel (EXPERIMENTAL)" 1445 bool "Build a relocatable kernel (EXPERIMENTAL)"
1453 depends on EXPERIMENTAL 1446 depends on EXPERIMENTAL
1454 help 1447 ---help---
1455 This builds a kernel image that retains relocation information 1448 This builds a kernel image that retains relocation information
1456 so it can be loaded someplace besides the default 1MB. 1449 so it can be loaded someplace besides the default 1MB.
1457 The relocations tend to make the kernel binary about 10% larger, 1450 The relocations tend to make the kernel binary about 10% larger,
@@ -1471,7 +1464,7 @@ config PHYSICAL_ALIGN
1471 default "0x100000" if X86_32 1464 default "0x100000" if X86_32
1472 default "0x200000" if X86_64 1465 default "0x200000" if X86_64
1473 range 0x2000 0x400000 1466 range 0x2000 0x400000
1474 help 1467 ---help---
1475 This value puts the alignment restrictions on physical address 1468 This value puts the alignment restrictions on physical address
1476 where kernel is loaded and run from. Kernel is compiled for an 1469 where kernel is loaded and run from. Kernel is compiled for an
1477 address which meets above alignment restriction. 1470 address which meets above alignment restriction.
@@ -1492,7 +1485,7 @@ config PHYSICAL_ALIGN
1492 1485
1493config HOTPLUG_CPU 1486config HOTPLUG_CPU
1494 bool "Support for hot-pluggable CPUs" 1487 bool "Support for hot-pluggable CPUs"
1495 depends on SMP && HOTPLUG && !X86_VOYAGER 1488 depends on SMP && HOTPLUG
1496 ---help--- 1489 ---help---
1497 Say Y here to allow turning CPUs off and on. CPUs can be 1490 Say Y here to allow turning CPUs off and on. CPUs can be
1498 controlled through /sys/devices/system/cpu. 1491 controlled through /sys/devices/system/cpu.
@@ -1504,7 +1497,7 @@ config COMPAT_VDSO
1504 def_bool y 1497 def_bool y
1505 prompt "Compat VDSO support" 1498 prompt "Compat VDSO support"
1506 depends on X86_32 || IA32_EMULATION 1499 depends on X86_32 || IA32_EMULATION
1507 help 1500 ---help---
1508 Map the 32-bit VDSO to the predictable old-style address too. 1501 Map the 32-bit VDSO to the predictable old-style address too.
1509 ---help--- 1502 ---help---
1510 Say N here if you are running a sufficiently recent glibc 1503 Say N here if you are running a sufficiently recent glibc
@@ -1516,7 +1509,7 @@ config COMPAT_VDSO
1516config CMDLINE_BOOL 1509config CMDLINE_BOOL
1517 bool "Built-in kernel command line" 1510 bool "Built-in kernel command line"
1518 default n 1511 default n
1519 help 1512 ---help---
1520 Allow for specifying boot arguments to the kernel at 1513 Allow for specifying boot arguments to the kernel at
1521 build time. On some systems (e.g. embedded ones), it is 1514 build time. On some systems (e.g. embedded ones), it is
1522 necessary or convenient to provide some or all of the 1515 necessary or convenient to provide some or all of the
@@ -1534,7 +1527,7 @@ config CMDLINE
1534 string "Built-in kernel command string" 1527 string "Built-in kernel command string"
1535 depends on CMDLINE_BOOL 1528 depends on CMDLINE_BOOL
1536 default "" 1529 default ""
1537 help 1530 ---help---
1538 Enter arguments here that should be compiled into the kernel 1531 Enter arguments here that should be compiled into the kernel
1539 image and used at boot time. If the boot loader provides a 1532 image and used at boot time. If the boot loader provides a
1540 command line at boot time, it is appended to this string to 1533 command line at boot time, it is appended to this string to
@@ -1551,7 +1544,7 @@ config CMDLINE_OVERRIDE
1551 bool "Built-in command line overrides boot loader arguments" 1544 bool "Built-in command line overrides boot loader arguments"
1552 default n 1545 default n
1553 depends on CMDLINE_BOOL 1546 depends on CMDLINE_BOOL
1554 help 1547 ---help---
1555 Set this option to 'Y' to have the kernel ignore the boot loader 1548 Set this option to 'Y' to have the kernel ignore the boot loader
1556 command line, and use ONLY the built-in command line. 1549 command line, and use ONLY the built-in command line.
1557 1550
@@ -1573,7 +1566,6 @@ config HAVE_ARCH_EARLY_PFN_TO_NID
1573 depends on NUMA 1566 depends on NUMA
1574 1567
1575menu "Power management and ACPI options" 1568menu "Power management and ACPI options"
1576 depends on !X86_VOYAGER
1577 1569
1578config ARCH_HIBERNATION_HEADER 1570config ARCH_HIBERNATION_HEADER
1579 def_bool y 1571 def_bool y
@@ -1651,7 +1643,7 @@ if APM
1651 1643
1652config APM_IGNORE_USER_SUSPEND 1644config APM_IGNORE_USER_SUSPEND
1653 bool "Ignore USER SUSPEND" 1645 bool "Ignore USER SUSPEND"
1654 help 1646 ---help---
1655 This option will ignore USER SUSPEND requests. On machines with a 1647 This option will ignore USER SUSPEND requests. On machines with a
1656 compliant APM BIOS, you want to say N. However, on the NEC Versa M 1648 compliant APM BIOS, you want to say N. However, on the NEC Versa M
1657 series notebooks, it is necessary to say Y because of a BIOS bug. 1649 series notebooks, it is necessary to say Y because of a BIOS bug.
@@ -1675,7 +1667,7 @@ config APM_DO_ENABLE
1675 1667
1676config APM_CPU_IDLE 1668config APM_CPU_IDLE
1677 bool "Make CPU Idle calls when idle" 1669 bool "Make CPU Idle calls when idle"
1678 help 1670 ---help---
1679 Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop. 1671 Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop.
1680 On some machines, this can activate improved power savings, such as 1672 On some machines, this can activate improved power savings, such as
1681 a slowed CPU clock rate, when the machine is idle. These idle calls 1673 a slowed CPU clock rate, when the machine is idle. These idle calls
@@ -1686,7 +1678,7 @@ config APM_CPU_IDLE
1686 1678
1687config APM_DISPLAY_BLANK 1679config APM_DISPLAY_BLANK
1688 bool "Enable console blanking using APM" 1680 bool "Enable console blanking using APM"
1689 help 1681 ---help---
1690 Enable console blanking using the APM. Some laptops can use this to 1682 Enable console blanking using the APM. Some laptops can use this to
1691 turn off the LCD backlight when the screen blanker of the Linux 1683 turn off the LCD backlight when the screen blanker of the Linux
1692 virtual console blanks the screen. Note that this is only used by 1684 virtual console blanks the screen. Note that this is only used by
@@ -1699,7 +1691,7 @@ config APM_DISPLAY_BLANK
1699 1691
1700config APM_ALLOW_INTS 1692config APM_ALLOW_INTS
1701 bool "Allow interrupts during APM BIOS calls" 1693 bool "Allow interrupts during APM BIOS calls"
1702 help 1694 ---help---
1703 Normally we disable external interrupts while we are making calls to 1695 Normally we disable external interrupts while we are making calls to
1704 the APM BIOS as a measure to lessen the effects of a badly behaving 1696 the APM BIOS as a measure to lessen the effects of a badly behaving
1705 BIOS implementation. The BIOS should reenable interrupts if it 1697 BIOS implementation. The BIOS should reenable interrupts if it
@@ -1724,7 +1716,7 @@ config PCI
1724 bool "PCI support" 1716 bool "PCI support"
1725 default y 1717 default y
1726 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC) 1718 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC)
1727 help 1719 ---help---
1728 Find out whether you have a PCI motherboard. PCI is the name of a 1720 Find out whether you have a PCI motherboard. PCI is the name of a
1729 bus system, i.e. the way the CPU talks to the other stuff inside 1721 bus system, i.e. the way the CPU talks to the other stuff inside
1730 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 1722 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
@@ -1795,40 +1787,51 @@ config PCI_MMCONFIG
1795config DMAR 1787config DMAR
1796 bool "Support for DMA Remapping Devices (EXPERIMENTAL)" 1788 bool "Support for DMA Remapping Devices (EXPERIMENTAL)"
1797 depends on X86_64 && PCI_MSI && ACPI && EXPERIMENTAL 1789 depends on X86_64 && PCI_MSI && ACPI && EXPERIMENTAL
1798 help 1790 ---help---
1799 DMA remapping (DMAR) devices support enables independent address 1791 DMA remapping (DMAR) devices support enables independent address
1800 translations for Direct Memory Access (DMA) from devices. 1792 translations for Direct Memory Access (DMA) from devices.
1801 These DMA remapping devices are reported via ACPI tables 1793 These DMA remapping devices are reported via ACPI tables
1802 and include PCI device scope covered by these DMA 1794 and include PCI device scope covered by these DMA
1803 remapping devices. 1795 remapping devices.
1804 1796
1797config DMAR_DEFAULT_ON
1798 def_bool n
1799 prompt "Enable DMA Remapping Devices by default"
1800 depends on DMAR
1801 help
1802 Selecting this option will enable a DMAR device at boot time if
1803 one is found. If this option is not selected, DMAR support can
1804 be enabled by passing intel_iommu=on to the kernel. It is
1805 recommended you say N here while the DMAR code remains
1806 experimental.
1807
1805config DMAR_GFX_WA 1808config DMAR_GFX_WA
1806 def_bool y 1809 def_bool y
1807 prompt "Support for Graphics workaround" 1810 prompt "Support for Graphics workaround"
1808 depends on DMAR 1811 depends on DMAR
1809 help 1812 ---help---
1810 Current Graphics drivers tend to use physical address 1813 Current Graphics drivers tend to use physical address
1811 for DMA and avoid using DMA APIs. Setting this config 1814 for DMA and avoid using DMA APIs. Setting this config
1812 option permits the IOMMU driver to set a unity map for 1815 option permits the IOMMU driver to set a unity map for
1813 all the OS-visible memory. Hence the driver can continue 1816 all the OS-visible memory. Hence the driver can continue
1814 to use physical addresses for DMA. 1817 to use physical addresses for DMA.
1815 1818
1816config DMAR_FLOPPY_WA 1819config DMAR_FLOPPY_WA
1817 def_bool y 1820 def_bool y
1818 depends on DMAR 1821 depends on DMAR
1819 help 1822 ---help---
1820 Floppy disk drivers are know to bypass DMA API calls 1823 Floppy disk drivers are know to bypass DMA API calls
1821 thereby failing to work when IOMMU is enabled. This 1824 thereby failing to work when IOMMU is enabled. This
1822 workaround will setup a 1:1 mapping for the first 1825 workaround will setup a 1:1 mapping for the first
1823 16M to make floppy (an ISA device) work. 1826 16M to make floppy (an ISA device) work.
1824 1827
1825config INTR_REMAP 1828config INTR_REMAP
1826 bool "Support for Interrupt Remapping (EXPERIMENTAL)" 1829 bool "Support for Interrupt Remapping (EXPERIMENTAL)"
1827 depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL 1830 depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL
1828 help 1831 ---help---
1829 Supports Interrupt remapping for IO-APIC and MSI devices. 1832 Supports Interrupt remapping for IO-APIC and MSI devices.
1830 To use x2apic mode in the CPU's which support x2APIC enhancements or 1833 To use x2apic mode in the CPU's which support x2APIC enhancements or
1831 to support platforms with CPU's having > 8 bit APIC ID, say Y. 1834 to support platforms with CPU's having > 8 bit APIC ID, say Y.
1832 1835
1833source "drivers/pci/pcie/Kconfig" 1836source "drivers/pci/pcie/Kconfig"
1834 1837
@@ -1842,8 +1845,7 @@ if X86_32
1842 1845
1843config ISA 1846config ISA
1844 bool "ISA support" 1847 bool "ISA support"
1845 depends on !X86_VOYAGER 1848 ---help---
1846 help
1847 Find out whether you have ISA slots on your motherboard. ISA is the 1849 Find out whether you have ISA slots on your motherboard. ISA is the
1848 name of a bus system, i.e. the way the CPU talks to the other stuff 1850 name of a bus system, i.e. the way the CPU talks to the other stuff
1849 inside your box. Other bus systems are PCI, EISA, MicroChannel 1851 inside your box. Other bus systems are PCI, EISA, MicroChannel
@@ -1869,9 +1871,8 @@ config EISA
1869source "drivers/eisa/Kconfig" 1871source "drivers/eisa/Kconfig"
1870 1872
1871config MCA 1873config MCA
1872 bool "MCA support" if !X86_VOYAGER 1874 bool "MCA support"
1873 default y if X86_VOYAGER 1875 ---help---
1874 help
1875 MicroChannel Architecture is found in some IBM PS/2 machines and 1876 MicroChannel Architecture is found in some IBM PS/2 machines and
1876 laptops. It is a bus system similar to PCI or ISA. See 1877 laptops. It is a bus system similar to PCI or ISA. See
1877 <file:Documentation/mca.txt> (and especially the web page given 1878 <file:Documentation/mca.txt> (and especially the web page given
@@ -1881,8 +1882,7 @@ source "drivers/mca/Kconfig"
1881 1882
1882config SCx200 1883config SCx200
1883 tristate "NatSemi SCx200 support" 1884 tristate "NatSemi SCx200 support"
1884 depends on !X86_VOYAGER 1885 ---help---
1885 help
1886 This provides basic support for National Semiconductor's 1886 This provides basic support for National Semiconductor's
1887 (now AMD's) Geode processors. The driver probes for the 1887 (now AMD's) Geode processors. The driver probes for the
1888 PCI-IDs of several on-chip devices, so its a good dependency 1888 PCI-IDs of several on-chip devices, so its a good dependency
@@ -1894,7 +1894,7 @@ config SCx200HR_TIMER
1894 tristate "NatSemi SCx200 27MHz High-Resolution Timer Support" 1894 tristate "NatSemi SCx200 27MHz High-Resolution Timer Support"
1895 depends on SCx200 && GENERIC_TIME 1895 depends on SCx200 && GENERIC_TIME
1896 default y 1896 default y
1897 help 1897 ---help---
1898 This driver provides a clocksource built upon the on-chip 1898 This driver provides a clocksource built upon the on-chip
1899 27MHz high-resolution timer. Its also a workaround for 1899 27MHz high-resolution timer. Its also a workaround for
1900 NSC Geode SC-1100's buggy TSC, which loses time when the 1900 NSC Geode SC-1100's buggy TSC, which loses time when the
@@ -1905,7 +1905,7 @@ config GEODE_MFGPT_TIMER
1905 def_bool y 1905 def_bool y
1906 prompt "Geode Multi-Function General Purpose Timer (MFGPT) events" 1906 prompt "Geode Multi-Function General Purpose Timer (MFGPT) events"
1907 depends on MGEODE_LX && GENERIC_TIME && GENERIC_CLOCKEVENTS 1907 depends on MGEODE_LX && GENERIC_TIME && GENERIC_CLOCKEVENTS
1908 help 1908 ---help---
1909 This driver provides a clock event source based on the MFGPT 1909 This driver provides a clock event source based on the MFGPT
1910 timer(s) in the CS5535 and CS5536 companion chip for the geode. 1910 timer(s) in the CS5535 and CS5536 companion chip for the geode.
1911 MFGPTs have a better resolution and max interval than the 1911 MFGPTs have a better resolution and max interval than the
@@ -1914,7 +1914,7 @@ config GEODE_MFGPT_TIMER
1914config OLPC 1914config OLPC
1915 bool "One Laptop Per Child support" 1915 bool "One Laptop Per Child support"
1916 default n 1916 default n
1917 help 1917 ---help---
1918 Add support for detecting the unique features of the OLPC 1918 Add support for detecting the unique features of the OLPC
1919 XO hardware. 1919 XO hardware.
1920 1920
@@ -1939,16 +1939,16 @@ config IA32_EMULATION
1939 bool "IA32 Emulation" 1939 bool "IA32 Emulation"
1940 depends on X86_64 1940 depends on X86_64
1941 select COMPAT_BINFMT_ELF 1941 select COMPAT_BINFMT_ELF
1942 help 1942 ---help---
1943 Include code to run 32-bit programs under a 64-bit kernel. You should 1943 Include code to run 32-bit programs under a 64-bit kernel. You should
1944 likely turn this on, unless you're 100% sure that you don't have any 1944 likely turn this on, unless you're 100% sure that you don't have any
1945 32-bit programs left. 1945 32-bit programs left.
1946 1946
1947config IA32_AOUT 1947config IA32_AOUT
1948 tristate "IA32 a.out support" 1948 tristate "IA32 a.out support"
1949 depends on IA32_EMULATION 1949 depends on IA32_EMULATION
1950 help 1950 ---help---
1951 Support old a.out binaries in the 32bit emulation. 1951 Support old a.out binaries in the 32bit emulation.
1952 1952
1953config COMPAT 1953config COMPAT
1954 def_bool y 1954 def_bool y