aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/Kconfig
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2009-02-24 19:11:51 -0500
committerH. Peter Anvin <hpa@zytor.com>2009-02-24 19:11:51 -0500
commit638bee71c83a2837b48062fdc5b222163cf53d79 (patch)
tree9c1699c07a5aa547d769138317279b8ee1ba89e8 /arch/x86/Kconfig
parent2aaa822984b97efd894d10d1e1382206ef0291a7 (diff)
parenta852cbfaaf8122827602027b1614971cfd832304 (diff)
Merge branch 'x86/core' into x86/mce2
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r--arch/x86/Kconfig649
1 files changed, 333 insertions, 316 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 52d7013785fe..bd720a67f559 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,24 @@ 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 238config X86_X2APIC
248 def_bool y 239 bool "Support x2apic"
249 depends on X86_VOYAGER 240 depends on X86_LOCAL_APIC && X86_64
241 ---help---
242 This enables x2apic support on CPUs that have this feature.
243
244 This allows 32-bit apic IDs (so it can support very large systems),
245 and accesses the local apic via MSRs not via mmio.
246
247 ( On certain CPU models you may need to enable INTR_REMAP too,
248 to get functional x2apic mode. )
249
250 If you don't know what to do here, say N.
250 251
251config SPARSE_IRQ 252config SPARSE_IRQ
252 bool "Support sparse irq numbering" 253 bool "Support sparse irq numbering"
253 depends on PCI_MSI || HT_IRQ 254 depends on PCI_MSI || HT_IRQ
254 help 255 ---help---
255 This enables support for sparse irqs. This is useful for distro 256 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 257 kernels that want to define a high CONFIG_NR_CPUS value but still
257 want to have low kernel memory footprint on smaller machines. 258 want to have low kernel memory footprint on smaller machines.
@@ -265,114 +266,140 @@ config NUMA_MIGRATE_IRQ_DESC
265 bool "Move irq desc when changing irq smp_affinity" 266 bool "Move irq desc when changing irq smp_affinity"
266 depends on SPARSE_IRQ && NUMA 267 depends on SPARSE_IRQ && NUMA
267 default n 268 default n
268 help 269 ---help---
269 This enables moving irq_desc to cpu/node that irq will use handled. 270 This enables moving irq_desc to cpu/node that irq will use handled.
270 271
271 If you don't know what to do here, say N. 272 If you don't know what to do here, say N.
272 273
273config X86_FIND_SMP_CONFIG
274 def_bool y
275 depends on X86_MPPARSE || X86_VOYAGER
276
277config X86_MPPARSE 274config X86_MPPARSE
278 bool "Enable MPS table" if ACPI 275 bool "Enable MPS table" if ACPI
279 default y 276 default y
280 depends on X86_LOCAL_APIC 277 depends on X86_LOCAL_APIC
281 help 278 ---help---
282 For old smp systems that do not have proper acpi support. Newer systems 279 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 280 (esp with 64bit cpus) with acpi support, MADT and DSDT will override it
284 281
285choice 282config X86_BIGSMP
286 prompt "Subarchitecture Type" 283 bool "Support for big SMP systems with more than 8 CPUs"
287 default X86_PC 284 depends on X86_32 && SMP
285 ---help---
286 This option is needed for the systems that have more than 8 CPUs
288 287
289config X86_PC 288if X86_32
290 bool "PC-compatible" 289config X86_EXTENDED_PLATFORM
291 help 290 bool "Support for extended (non-PC) x86 platforms"
292 Choose this option if your computer is a standard PC or compatible. 291 default y
292 ---help---
293 If you disable this option then the kernel will only support
294 standard PC platforms. (which covers the vast majority of
295 systems out there.)
296
297 If you enable this option then you'll be able to select support
298 for the following (non-PC) 32 bit x86 platforms:
299 AMD Elan
300 NUMAQ (IBM/Sequent)
301 RDC R-321x SoC
302 SGI 320/540 (Visual Workstation)
303 Summit/EXA (IBM x440)
304 Unisys ES7000 IA32 series
305
306 If you have one of these systems, or if you want to build a
307 generic distribution kernel, say Y here - otherwise say N.
308endif
309
310if X86_64
311config X86_EXTENDED_PLATFORM
312 bool "Support for extended (non-PC) x86 platforms"
313 default y
314 ---help---
315 If you disable this option then the kernel will only support
316 standard PC platforms. (which covers the vast majority of
317 systems out there.)
318
319 If you enable this option then you'll be able to select support
320 for the following (non-PC) 64 bit x86 platforms:
321 ScaleMP vSMP
322 SGI Ultraviolet
323
324 If you have one of these systems, or if you want to build a
325 generic distribution kernel, say Y here - otherwise say N.
326endif
327# This is an alphabetically sorted list of 64 bit extended platforms
328# Please maintain the alphabetic order if and when there are additions
329
330config X86_VSMP
331 bool "ScaleMP vSMP"
332 select PARAVIRT
333 depends on X86_64 && PCI
334 depends on X86_EXTENDED_PLATFORM
335 ---help---
336 Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is
337 supposed to run on these EM64T-based machines. Only choose this option
338 if you have one of these machines.
339
340config X86_UV
341 bool "SGI Ultraviolet"
342 depends on X86_64
343 depends on X86_EXTENDED_PLATFORM
344 select X86_X2APIC
345 ---help---
346 This option is needed in order to support SGI Ultraviolet systems.
347 If you don't have one of these, you should say N here.
348
349# Following is an alphabetically sorted list of 32 bit extended platforms
350# Please maintain the alphabetic order if and when there are additions
293 351
294config X86_ELAN 352config X86_ELAN
295 bool "AMD Elan" 353 bool "AMD Elan"
296 depends on X86_32 354 depends on X86_32
297 help 355 depends on X86_EXTENDED_PLATFORM
356 ---help---
298 Select this for an AMD Elan processor. 357 Select this for an AMD Elan processor.
299 358
300 Do not use this option for K6/Athlon/Opteron processors! 359 Do not use this option for K6/Athlon/Opteron processors!
301 360
302 If unsure, choose "PC-compatible" instead. 361 If unsure, choose "PC-compatible" instead.
303 362
304config X86_VOYAGER 363config X86_RDC321X
305 bool "Voyager (NCR)" 364 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 365 depends on X86_32
319 help 366 depends on X86_EXTENDED_PLATFORM
320 This option compiles in the NUMAQ, Summit, bigsmp, ES7000, default 367 select M486
368 select X86_REBOOTFIXUPS
369 ---help---
370 This option is needed for RDC R-321x system-on-chip, also known
371 as R-8610-(G).
372 If you don't have one of these chips, you should say N here.
373
374config X86_32_NON_STANDARD
375 bool "Support non-standard 32-bit SMP architectures"
376 depends on X86_32 && SMP
377 depends on X86_EXTENDED_PLATFORM
378 ---help---
379 This option compiles in the NUMAQ, Summit, bigsmp, ES7000, default
321 subarchitectures. It is intended for a generic binary kernel. 380 subarchitectures. It is intended for a generic binary kernel.
322 if you select them all, kernel will probe it one by one. and will 381 if you select them all, kernel will probe it one by one. and will
323 fallback to default. 382 fallback to default.
324 383
325if X86_GENERICARCH 384# Alphabetically sorted list of Non standard 32 bit platforms
326 385
327config X86_NUMAQ 386config X86_NUMAQ
328 bool "NUMAQ (IBM/Sequent)" 387 bool "NUMAQ (IBM/Sequent)"
329 depends on SMP && X86_32 && PCI && X86_MPPARSE 388 depends on X86_32_NON_STANDARD
330 select NUMA 389 select NUMA
331 help 390 select X86_MPPARSE
391 ---help---
332 This option is used for getting Linux to run on a NUMAQ (IBM/Sequent) 392 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 393 NUMA multiquad box. This changes the way that processors are
334 bootstrapped, and uses Clustered Logical APIC addressing mode instead 394 bootstrapped, and uses Clustered Logical APIC addressing mode instead
335 of Flat Logical. You will need a new lynxer.elf file to flash your 395 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>. 396 firmware with - send email to <Martin.Bligh@us.ibm.com>.
337 397
338config X86_SUMMIT
339 bool "Summit/EXA (IBM x440)"
340 depends on X86_32 && SMP
341 help
342 This option is needed for IBM systems that use the Summit/EXA chipset.
343 In particular, it is needed for the x440.
344
345config X86_ES7000
346 bool "Support for Unisys ES7000 IA32 series"
347 depends on X86_32 && SMP
348 help
349 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is
350 supposed to run on an IA32-based Unisys ES7000 system.
351
352config X86_BIGSMP
353 bool "Support for big SMP systems with more than 8 CPUs"
354 depends on X86_32 && SMP
355 help
356 This option is needed for the systems that have more than 8 CPUs
357 and if the system is not of any sub-arch type above.
358
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 398config X86_VISWS
373 bool "SGI 320/540 (Visual Workstation)" 399 bool "SGI 320/540 (Visual Workstation)"
374 depends on X86_32 && PCI && !X86_VOYAGER && X86_MPPARSE && PCI_GODIRECT 400 depends on X86_32 && PCI && X86_MPPARSE && PCI_GODIRECT
375 help 401 depends on X86_32_NON_STANDARD
402 ---help---
376 The SGI Visual Workstation series is an IA32-based workstation 403 The SGI Visual Workstation series is an IA32-based workstation
377 based on SGI systems chips with some legacy PC hardware attached. 404 based on SGI systems chips with some legacy PC hardware attached.
378 405
@@ -381,21 +408,25 @@ config X86_VISWS
381 A kernel compiled for the Visual Workstation will run on general 408 A kernel compiled for the Visual Workstation will run on general
382 PCs as well. See <file:Documentation/sgi-visws.txt> for details. 409 PCs as well. See <file:Documentation/sgi-visws.txt> for details.
383 410
384config X86_RDC321X 411config X86_SUMMIT
385 bool "RDC R-321x SoC" 412 bool "Summit/EXA (IBM x440)"
386 depends on X86_32 413 depends on X86_32_NON_STANDARD
387 select M486 414 ---help---
388 select X86_REBOOTFIXUPS 415 This option is needed for IBM systems that use the Summit/EXA chipset.
389 help 416 In particular, it is needed for the x440.
390 This option is needed for RDC R-321x system-on-chip, also known 417
391 as R-8610-(G). 418config X86_ES7000
392 If you don't have one of these chips, you should say N here. 419 bool "Unisys ES7000 IA32 series"
420 depends on X86_32_NON_STANDARD && X86_BIGSMP
421 ---help---
422 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is
423 supposed to run on an IA32-based Unisys ES7000 system.
393 424
394config SCHED_OMIT_FRAME_POINTER 425config SCHED_OMIT_FRAME_POINTER
395 def_bool y 426 def_bool y
396 prompt "Single-depth WCHAN output" 427 prompt "Single-depth WCHAN output"
397 depends on X86 428 depends on X86
398 help 429 ---help---
399 Calculate simpler /proc/<PID>/wchan values. If this option 430 Calculate simpler /proc/<PID>/wchan values. If this option
400 is disabled then wchan values will recurse back to the 431 is disabled then wchan values will recurse back to the
401 caller function. This provides more accurate wchan values, 432 caller function. This provides more accurate wchan values,
@@ -405,7 +436,7 @@ config SCHED_OMIT_FRAME_POINTER
405 436
406menuconfig PARAVIRT_GUEST 437menuconfig PARAVIRT_GUEST
407 bool "Paravirtualized guest support" 438 bool "Paravirtualized guest support"
408 help 439 ---help---
409 Say Y here to get to see options related to running Linux under 440 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. 441 various hypervisors. This option alone does not add any kernel code.
411 442
@@ -419,8 +450,7 @@ config VMI
419 bool "VMI Guest support" 450 bool "VMI Guest support"
420 select PARAVIRT 451 select PARAVIRT
421 depends on X86_32 452 depends on X86_32
422 depends on !X86_VOYAGER 453 ---help---
423 help
424 VMI provides a paravirtualized interface to the VMware ESX server 454 VMI provides a paravirtualized interface to the VMware ESX server
425 (it could be used by other hypervisors in theory too, but is not 455 (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 456 at the moment), by linking the kernel to a GPL-ed ROM module
@@ -430,8 +460,7 @@ config KVM_CLOCK
430 bool "KVM paravirtualized clock" 460 bool "KVM paravirtualized clock"
431 select PARAVIRT 461 select PARAVIRT
432 select PARAVIRT_CLOCK 462 select PARAVIRT_CLOCK
433 depends on !X86_VOYAGER 463 ---help---
434 help
435 Turning on this option will allow you to run a paravirtualized clock 464 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 465 when running over the KVM hypervisor. Instead of relying on a PIT
437 (or probably other) emulation by the underlying device model, the host 466 (or probably other) emulation by the underlying device model, the host
@@ -441,17 +470,15 @@ config KVM_CLOCK
441config KVM_GUEST 470config KVM_GUEST
442 bool "KVM Guest support" 471 bool "KVM Guest support"
443 select PARAVIRT 472 select PARAVIRT
444 depends on !X86_VOYAGER 473 ---help---
445 help 474 This option enables various optimizations for running under the KVM
446 This option enables various optimizations for running under the KVM 475 hypervisor.
447 hypervisor.
448 476
449source "arch/x86/lguest/Kconfig" 477source "arch/x86/lguest/Kconfig"
450 478
451config PARAVIRT 479config PARAVIRT
452 bool "Enable paravirtualization code" 480 bool "Enable paravirtualization code"
453 depends on !X86_VOYAGER 481 ---help---
454 help
455 This changes the kernel so it can modify itself when it is run 482 This changes the kernel so it can modify itself when it is run
456 under a hypervisor, potentially improving performance significantly 483 under a hypervisor, potentially improving performance significantly
457 over full virtualization. However, when run without a hypervisor 484 over full virtualization. However, when run without a hypervisor
@@ -464,51 +491,51 @@ config PARAVIRT_CLOCK
464endif 491endif
465 492
466config PARAVIRT_DEBUG 493config PARAVIRT_DEBUG
467 bool "paravirt-ops debugging" 494 bool "paravirt-ops debugging"
468 depends on PARAVIRT && DEBUG_KERNEL 495 depends on PARAVIRT && DEBUG_KERNEL
469 help 496 ---help---
470 Enable to debug paravirt_ops internals. Specifically, BUG if 497 Enable to debug paravirt_ops internals. Specifically, BUG if
471 a paravirt_op is missing when it is called. 498 a paravirt_op is missing when it is called.
472 499
473config MEMTEST 500config MEMTEST
474 bool "Memtest" 501 bool "Memtest"
475 help 502 ---help---
476 This option adds a kernel parameter 'memtest', which allows memtest 503 This option adds a kernel parameter 'memtest', which allows memtest
477 to be set. 504 to be set.
478 memtest=0, mean disabled; -- default 505 memtest=0, mean disabled; -- default
479 memtest=1, mean do 1 test pattern; 506 memtest=1, mean do 1 test pattern;
480 ... 507 ...
481 memtest=4, mean do 4 test patterns. 508 memtest=4, mean do 4 test patterns.
482 If you are unsure how to answer this question, answer N. 509 If you are unsure how to answer this question, answer N.
483 510
484config X86_SUMMIT_NUMA 511config X86_SUMMIT_NUMA
485 def_bool y 512 def_bool y
486 depends on X86_32 && NUMA && X86_GENERICARCH 513 depends on X86_32 && NUMA && X86_32_NON_STANDARD
487 514
488config X86_CYCLONE_TIMER 515config X86_CYCLONE_TIMER
489 def_bool y 516 def_bool y
490 depends on X86_GENERICARCH 517 depends on X86_32_NON_STANDARD
491 518
492source "arch/x86/Kconfig.cpu" 519source "arch/x86/Kconfig.cpu"
493 520
494config HPET_TIMER 521config HPET_TIMER
495 def_bool X86_64 522 def_bool X86_64
496 prompt "HPET Timer Support" if X86_32 523 prompt "HPET Timer Support" if X86_32
497 help 524 ---help---
498 Use the IA-PC HPET (High Precision Event Timer) to manage 525 Use the IA-PC HPET (High Precision Event Timer) to manage
499 time in preference to the PIT and RTC, if a HPET is 526 time in preference to the PIT and RTC, if a HPET is
500 present. 527 present.
501 HPET is the next generation timer replacing legacy 8254s. 528 HPET is the next generation timer replacing legacy 8254s.
502 The HPET provides a stable time base on SMP 529 The HPET provides a stable time base on SMP
503 systems, unlike the TSC, but it is more expensive to access, 530 systems, unlike the TSC, but it is more expensive to access,
504 as it is off-chip. You can find the HPET spec at 531 as it is off-chip. You can find the HPET spec at
505 <http://www.intel.com/hardwaredesign/hpetspec_1.pdf>. 532 <http://www.intel.com/hardwaredesign/hpetspec_1.pdf>.
506 533
507 You can safely choose Y here. However, HPET will only be 534 You can safely choose Y here. However, HPET will only be
508 activated if the platform and the BIOS support this feature. 535 activated if the platform and the BIOS support this feature.
509 Otherwise the 8254 will be used for timing services. 536 Otherwise the 8254 will be used for timing services.
510 537
511 Choose N to continue using the legacy 8254 timer. 538 Choose N to continue using the legacy 8254 timer.
512 539
513config HPET_EMULATE_RTC 540config HPET_EMULATE_RTC
514 def_bool y 541 def_bool y
@@ -519,7 +546,7 @@ config HPET_EMULATE_RTC
519config DMI 546config DMI
520 default y 547 default y
521 bool "Enable DMI scanning" if EMBEDDED 548 bool "Enable DMI scanning" if EMBEDDED
522 help 549 ---help---
523 Enabled scanning of DMI to identify machine quirks. Say Y 550 Enabled scanning of DMI to identify machine quirks. Say Y
524 here unless you have verified that your setup is not 551 here unless you have verified that your setup is not
525 affected by entries in the DMI blacklist. Required by PNP 552 affected by entries in the DMI blacklist. Required by PNP
@@ -531,7 +558,7 @@ config GART_IOMMU
531 select SWIOTLB 558 select SWIOTLB
532 select AGP 559 select AGP
533 depends on X86_64 && PCI 560 depends on X86_64 && PCI
534 help 561 ---help---
535 Support for full DMA access of devices with 32bit memory access only 562 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, 563 on systems with more than 3GB. This is usually needed for USB,
537 sound, many IDE/SATA chipsets and some other devices. 564 sound, many IDE/SATA chipsets and some other devices.
@@ -546,7 +573,7 @@ config CALGARY_IOMMU
546 bool "IBM Calgary IOMMU support" 573 bool "IBM Calgary IOMMU support"
547 select SWIOTLB 574 select SWIOTLB
548 depends on X86_64 && PCI && EXPERIMENTAL 575 depends on X86_64 && PCI && EXPERIMENTAL
549 help 576 ---help---
550 Support for hardware IOMMUs in IBM's xSeries x366 and x460 577 Support for hardware IOMMUs in IBM's xSeries x366 and x460
551 systems. Needed to run systems with more than 3GB of memory 578 systems. Needed to run systems with more than 3GB of memory
552 properly with 32-bit PCI devices that do not support DAC 579 properly with 32-bit PCI devices that do not support DAC
@@ -564,7 +591,7 @@ config CALGARY_IOMMU_ENABLED_BY_DEFAULT
564 def_bool y 591 def_bool y
565 prompt "Should Calgary be enabled by default?" 592 prompt "Should Calgary be enabled by default?"
566 depends on CALGARY_IOMMU 593 depends on CALGARY_IOMMU
567 help 594 ---help---
568 Should Calgary be enabled by default? if you choose 'y', Calgary 595 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 596 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 597 used even if it exists. If you choose 'n' and would like to use
@@ -576,7 +603,7 @@ config AMD_IOMMU
576 select SWIOTLB 603 select SWIOTLB
577 select PCI_MSI 604 select PCI_MSI
578 depends on X86_64 && PCI && ACPI 605 depends on X86_64 && PCI && ACPI
579 help 606 ---help---
580 With this option you can enable support for AMD IOMMU hardware in 607 With this option you can enable support for AMD IOMMU hardware in
581 your system. An IOMMU is a hardware component which provides 608 your system. An IOMMU is a hardware component which provides
582 remapping of DMA memory accesses from devices. With an AMD IOMMU you 609 remapping of DMA memory accesses from devices. With an AMD IOMMU you
@@ -591,7 +618,7 @@ config AMD_IOMMU_STATS
591 bool "Export AMD IOMMU statistics to debugfs" 618 bool "Export AMD IOMMU statistics to debugfs"
592 depends on AMD_IOMMU 619 depends on AMD_IOMMU
593 select DEBUG_FS 620 select DEBUG_FS
594 help 621 ---help---
595 This option enables code in the AMD IOMMU driver to collect various 622 This option enables code in the AMD IOMMU driver to collect various
596 statistics about whats happening in the driver and exports that 623 statistics about whats happening in the driver and exports that
597 information to userspace via debugfs. 624 information to userspace via debugfs.
@@ -600,7 +627,7 @@ config AMD_IOMMU_STATS
600# need this always selected by IOMMU for the VIA workaround 627# need this always selected by IOMMU for the VIA workaround
601config SWIOTLB 628config SWIOTLB
602 def_bool y if X86_64 629 def_bool y if X86_64
603 help 630 ---help---
604 Support for software bounce buffers used on x86-64 systems 631 Support for software bounce buffers used on x86-64 systems
605 which don't have a hardware IOMMU (e.g. the current generation 632 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 633 of Intel's x86-64 CPUs). Using this PCI devices which can only
@@ -618,7 +645,7 @@ config MAXSMP
618 depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL 645 depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL
619 select CPUMASK_OFFSTACK 646 select CPUMASK_OFFSTACK
620 default n 647 default n
621 help 648 ---help---
622 Configure maximum number of CPUS and NUMA Nodes for this architecture. 649 Configure maximum number of CPUS and NUMA Nodes for this architecture.
623 If unsure, say N. 650 If unsure, say N.
624 651
@@ -629,7 +656,7 @@ config NR_CPUS
629 default "4096" if MAXSMP 656 default "4096" if MAXSMP
630 default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000) 657 default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000)
631 default "8" if SMP 658 default "8" if SMP
632 help 659 ---help---
633 This allows you to specify the maximum number of CPUs which this 660 This allows you to specify the maximum number of CPUs which this
634 kernel will support. The maximum supported value is 512 and the 661 kernel will support. The maximum supported value is 512 and the
635 minimum value which makes sense is 2. 662 minimum value which makes sense is 2.
@@ -640,7 +667,7 @@ config NR_CPUS
640config SCHED_SMT 667config SCHED_SMT
641 bool "SMT (Hyperthreading) scheduler support" 668 bool "SMT (Hyperthreading) scheduler support"
642 depends on X86_HT 669 depends on X86_HT
643 help 670 ---help---
644 SMT scheduler support improves the CPU scheduler's decision making 671 SMT scheduler support improves the CPU scheduler's decision making
645 when dealing with Intel Pentium 4 chips with HyperThreading at a 672 when dealing with Intel Pentium 4 chips with HyperThreading at a
646 cost of slightly increased overhead in some places. If unsure say 673 cost of slightly increased overhead in some places. If unsure say
@@ -650,7 +677,7 @@ config SCHED_MC
650 def_bool y 677 def_bool y
651 prompt "Multi-core scheduler support" 678 prompt "Multi-core scheduler support"
652 depends on X86_HT 679 depends on X86_HT
653 help 680 ---help---
654 Multi-core scheduler support improves the CPU scheduler's decision 681 Multi-core scheduler support improves the CPU scheduler's decision
655 making when dealing with multi-core CPU chips at a cost of slightly 682 making when dealing with multi-core CPU chips at a cost of slightly
656 increased overhead in some places. If unsure say N here. 683 increased overhead in some places. If unsure say N here.
@@ -659,8 +686,8 @@ source "kernel/Kconfig.preempt"
659 686
660config X86_UP_APIC 687config X86_UP_APIC
661 bool "Local APIC support on uniprocessors" 688 bool "Local APIC support on uniprocessors"
662 depends on X86_32 && !SMP && !(X86_VOYAGER || X86_GENERICARCH) 689 depends on X86_32 && !SMP && !X86_32_NON_STANDARD
663 help 690 ---help---
664 A local APIC (Advanced Programmable Interrupt Controller) is an 691 A local APIC (Advanced Programmable Interrupt Controller) is an
665 integrated interrupt controller in the CPU. If you have a single-CPU 692 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 693 system which has a processor with a local APIC, you can say Y here to
@@ -673,7 +700,7 @@ config X86_UP_APIC
673config X86_UP_IOAPIC 700config X86_UP_IOAPIC
674 bool "IO-APIC support on uniprocessors" 701 bool "IO-APIC support on uniprocessors"
675 depends on X86_UP_APIC 702 depends on X86_UP_APIC
676 help 703 ---help---
677 An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an 704 An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an
678 SMP-capable replacement for PC-style interrupt controllers. Most 705 SMP-capable replacement for PC-style interrupt controllers. Most
679 SMP systems and many recent uniprocessor systems have one. 706 SMP systems and many recent uniprocessor systems have one.
@@ -684,11 +711,11 @@ config X86_UP_IOAPIC
684 711
685config X86_LOCAL_APIC 712config X86_LOCAL_APIC
686 def_bool y 713 def_bool y
687 depends on X86_64 || (X86_32 && (X86_UP_APIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH)) 714 depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC
688 715
689config X86_IO_APIC 716config X86_IO_APIC
690 def_bool y 717 def_bool y
691 depends on X86_64 || (X86_32 && (X86_UP_IOAPIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH)) 718 depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC
692 719
693config X86_VISWS_APIC 720config X86_VISWS_APIC
694 def_bool y 721 def_bool y
@@ -698,7 +725,7 @@ config X86_REROUTE_FOR_BROKEN_BOOT_IRQS
698 bool "Reroute for broken boot IRQs" 725 bool "Reroute for broken boot IRQs"
699 default n 726 default n
700 depends on X86_IO_APIC 727 depends on X86_IO_APIC
701 help 728 ---help---
702 This option enables a workaround that fixes a source of 729 This option enables a workaround that fixes a source of
703 spurious interrupts. This is recommended when threaded 730 spurious interrupts. This is recommended when threaded
704 interrupt handling is used on systems where the generation of 731 interrupt handling is used on systems where the generation of
@@ -720,7 +747,6 @@ config X86_REROUTE_FOR_BROKEN_BOOT_IRQS
720 747
721config X86_MCE 748config X86_MCE
722 bool "Machine Check Exception" 749 bool "Machine Check Exception"
723 depends on !X86_VOYAGER
724 ---help--- 750 ---help---
725 Machine Check Exception support allows the processor to notify the 751 Machine Check Exception support allows the processor to notify the
726 kernel if it detects a problem (e.g. overheating, component failure). 752 kernel if it detects a problem (e.g. overheating, component failure).
@@ -739,7 +765,7 @@ config X86_MCE_INTEL
739 def_bool y 765 def_bool y
740 prompt "Intel MCE features" 766 prompt "Intel MCE features"
741 depends on X86_64 && X86_MCE && X86_LOCAL_APIC 767 depends on X86_64 && X86_MCE && X86_LOCAL_APIC
742 help 768 ---help---
743 Additional support for intel specific MCE features such as 769 Additional support for intel specific MCE features such as
744 the thermal monitor. 770 the thermal monitor.
745 771
@@ -747,7 +773,7 @@ config X86_MCE_AMD
747 def_bool y 773 def_bool y
748 prompt "AMD MCE features" 774 prompt "AMD MCE features"
749 depends on X86_64 && X86_MCE && X86_LOCAL_APIC 775 depends on X86_64 && X86_MCE && X86_LOCAL_APIC
750 help 776 ---help---
751 Additional support for AMD specific MCE features such as 777 Additional support for AMD specific MCE features such as
752 the DRAM Error Threshold. 778 the DRAM Error Threshold.
753 779
@@ -759,7 +785,7 @@ config X86_MCE_THRESHOLD
759config X86_MCE_NONFATAL 785config X86_MCE_NONFATAL
760 tristate "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4" 786 tristate "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4"
761 depends on X86_32 && X86_MCE 787 depends on X86_32 && X86_MCE
762 help 788 ---help---
763 Enabling this feature starts a timer that triggers every 5 seconds which 789 Enabling this feature starts a timer that triggers every 5 seconds which
764 will look at the machine check registers to see if anything happened. 790 will look at the machine check registers to see if anything happened.
765 Non-fatal problems automatically get corrected (but still logged). 791 Non-fatal problems automatically get corrected (but still logged).
@@ -772,7 +798,7 @@ config X86_MCE_NONFATAL
772config X86_MCE_P4THERMAL 798config X86_MCE_P4THERMAL
773 bool "check for P4 thermal throttling interrupt." 799 bool "check for P4 thermal throttling interrupt."
774 depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP) 800 depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP)
775 help 801 ---help---
776 Enabling this feature will cause a message to be printed when the P4 802 Enabling this feature will cause a message to be printed when the P4
777 enters thermal throttling. 803 enters thermal throttling.
778 804
@@ -780,11 +806,11 @@ config VM86
780 bool "Enable VM86 support" if EMBEDDED 806 bool "Enable VM86 support" if EMBEDDED
781 default y 807 default y
782 depends on X86_32 808 depends on X86_32
783 help 809 ---help---
784 This option is required by programs like DOSEMU to run 16-bit legacy 810 This option is required by programs like DOSEMU to run 16-bit legacy
785 code on X86 processors. It also may be needed by software like 811 code on X86 processors. It also may be needed by software like
786 XFree86 to initialize some video cards via BIOS. Disabling this 812 XFree86 to initialize some video cards via BIOS. Disabling this
787 option saves about 6k. 813 option saves about 6k.
788 814
789config TOSHIBA 815config TOSHIBA
790 tristate "Toshiba Laptop support" 816 tristate "Toshiba Laptop support"
@@ -858,33 +884,33 @@ config MICROCODE
858 module will be called microcode. 884 module will be called microcode.
859 885
860config MICROCODE_INTEL 886config MICROCODE_INTEL
861 bool "Intel microcode patch loading support" 887 bool "Intel microcode patch loading support"
862 depends on MICROCODE 888 depends on MICROCODE
863 default MICROCODE 889 default MICROCODE
864 select FW_LOADER 890 select FW_LOADER
865 --help--- 891 ---help---
866 This options enables microcode patch loading support for Intel 892 This options enables microcode patch loading support for Intel
867 processors. 893 processors.
868 894
869 For latest news and information on obtaining all the required 895 For latest news and information on obtaining all the required
870 Intel ingredients for this driver, check: 896 Intel ingredients for this driver, check:
871 <http://www.urbanmyth.org/microcode/>. 897 <http://www.urbanmyth.org/microcode/>.
872 898
873config MICROCODE_AMD 899config MICROCODE_AMD
874 bool "AMD microcode patch loading support" 900 bool "AMD microcode patch loading support"
875 depends on MICROCODE 901 depends on MICROCODE
876 select FW_LOADER 902 select FW_LOADER
877 --help--- 903 ---help---
878 If you select this option, microcode patch loading support for AMD 904 If you select this option, microcode patch loading support for AMD
879 processors will be enabled. 905 processors will be enabled.
880 906
881 config MICROCODE_OLD_INTERFACE 907config MICROCODE_OLD_INTERFACE
882 def_bool y 908 def_bool y
883 depends on MICROCODE 909 depends on MICROCODE
884 910
885config X86_MSR 911config X86_MSR
886 tristate "/dev/cpu/*/msr - Model-specific register support" 912 tristate "/dev/cpu/*/msr - Model-specific register support"
887 help 913 ---help---
888 This device gives privileged processes access to the x86 914 This device gives privileged processes access to the x86
889 Model-Specific Registers (MSRs). It is a character device with 915 Model-Specific Registers (MSRs). It is a character device with
890 major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr. 916 major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr.
@@ -893,7 +919,7 @@ config X86_MSR
893 919
894config X86_CPUID 920config X86_CPUID
895 tristate "/dev/cpu/*/cpuid - CPU information support" 921 tristate "/dev/cpu/*/cpuid - CPU information support"
896 help 922 ---help---
897 This device gives processes access to the x86 CPUID instruction to 923 This device gives processes access to the x86 CPUID instruction to
898 be executed on a specific processor. It is a character device 924 be executed on a specific processor. It is a character device
899 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to 925 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to
@@ -945,7 +971,7 @@ config NOHIGHMEM
945config HIGHMEM4G 971config HIGHMEM4G
946 bool "4GB" 972 bool "4GB"
947 depends on !X86_NUMAQ 973 depends on !X86_NUMAQ
948 help 974 ---help---
949 Select this if you have a 32-bit processor and between 1 and 4 975 Select this if you have a 32-bit processor and between 1 and 4
950 gigabytes of physical RAM. 976 gigabytes of physical RAM.
951 977
@@ -953,7 +979,7 @@ config HIGHMEM64G
953 bool "64GB" 979 bool "64GB"
954 depends on !M386 && !M486 980 depends on !M386 && !M486
955 select X86_PAE 981 select X86_PAE
956 help 982 ---help---
957 Select this if you have a 32-bit processor and more than 4 983 Select this if you have a 32-bit processor and more than 4
958 gigabytes of physical RAM. 984 gigabytes of physical RAM.
959 985
@@ -964,7 +990,7 @@ choice
964 prompt "Memory split" if EMBEDDED 990 prompt "Memory split" if EMBEDDED
965 default VMSPLIT_3G 991 default VMSPLIT_3G
966 depends on X86_32 992 depends on X86_32
967 help 993 ---help---
968 Select the desired split between kernel and user memory. 994 Select the desired split between kernel and user memory.
969 995
970 If the address range available to the kernel is less than the 996 If the address range available to the kernel is less than the
@@ -1010,20 +1036,20 @@ config HIGHMEM
1010config X86_PAE 1036config X86_PAE
1011 bool "PAE (Physical Address Extension) Support" 1037 bool "PAE (Physical Address Extension) Support"
1012 depends on X86_32 && !HIGHMEM4G 1038 depends on X86_32 && !HIGHMEM4G
1013 help 1039 ---help---
1014 PAE is required for NX support, and furthermore enables 1040 PAE is required for NX support, and furthermore enables
1015 larger swapspace support for non-overcommit purposes. It 1041 larger swapspace support for non-overcommit purposes. It
1016 has the cost of more pagetable lookup overhead, and also 1042 has the cost of more pagetable lookup overhead, and also
1017 consumes more pagetable space per process. 1043 consumes more pagetable space per process.
1018 1044
1019config ARCH_PHYS_ADDR_T_64BIT 1045config ARCH_PHYS_ADDR_T_64BIT
1020 def_bool X86_64 || X86_PAE 1046 def_bool X86_64 || X86_PAE
1021 1047
1022config DIRECT_GBPAGES 1048config DIRECT_GBPAGES
1023 bool "Enable 1GB pages for kernel pagetables" if EMBEDDED 1049 bool "Enable 1GB pages for kernel pagetables" if EMBEDDED
1024 default y 1050 default y
1025 depends on X86_64 1051 depends on X86_64
1026 help 1052 ---help---
1027 Allow the kernel linear mapping to use 1GB pages on CPUs that 1053 Allow the kernel linear mapping to use 1GB pages on CPUs that
1028 support it. This can improve the kernel's performance a tiny bit by 1054 support it. This can improve the kernel's performance a tiny bit by
1029 reducing TLB pressure. If in doubt, say "Y". 1055 reducing TLB pressure. If in doubt, say "Y".
@@ -1033,9 +1059,8 @@ config NUMA
1033 bool "Numa Memory Allocation and Scheduler Support" 1059 bool "Numa Memory Allocation and Scheduler Support"
1034 depends on SMP 1060 depends on SMP
1035 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL) 1061 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL)
1036 default n if X86_PC
1037 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) 1062 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
1038 help 1063 ---help---
1039 Enable NUMA (Non Uniform Memory Access) support. 1064 Enable NUMA (Non Uniform Memory Access) support.
1040 1065
1041 The kernel will try to allocate memory used by a CPU on the 1066 The kernel will try to allocate memory used by a CPU on the
@@ -1058,19 +1083,19 @@ config K8_NUMA
1058 def_bool y 1083 def_bool y
1059 prompt "Old style AMD Opteron NUMA detection" 1084 prompt "Old style AMD Opteron NUMA detection"
1060 depends on X86_64 && NUMA && PCI 1085 depends on X86_64 && NUMA && PCI
1061 help 1086 ---help---
1062 Enable K8 NUMA node topology detection. You should say Y here if 1087 Enable K8 NUMA node topology detection. You should say Y here if
1063 you have a multi processor AMD K8 system. This uses an old 1088 you have a multi processor AMD K8 system. This uses an old
1064 method to read the NUMA configuration directly from the builtin 1089 method to read the NUMA configuration directly from the builtin
1065 Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA 1090 Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA
1066 instead, which also takes priority if both are compiled in. 1091 instead, which also takes priority if both are compiled in.
1067 1092
1068config X86_64_ACPI_NUMA 1093config X86_64_ACPI_NUMA
1069 def_bool y 1094 def_bool y
1070 prompt "ACPI NUMA detection" 1095 prompt "ACPI NUMA detection"
1071 depends on X86_64 && NUMA && ACPI && PCI 1096 depends on X86_64 && NUMA && ACPI && PCI
1072 select ACPI_NUMA 1097 select ACPI_NUMA
1073 help 1098 ---help---
1074 Enable ACPI SRAT based node topology detection. 1099 Enable ACPI SRAT based node topology detection.
1075 1100
1076# Some NUMA nodes have memory ranges that span 1101# Some NUMA nodes have memory ranges that span
@@ -1085,7 +1110,7 @@ config NODES_SPAN_OTHER_NODES
1085config NUMA_EMU 1110config NUMA_EMU
1086 bool "NUMA emulation" 1111 bool "NUMA emulation"
1087 depends on X86_64 && NUMA 1112 depends on X86_64 && NUMA
1088 help 1113 ---help---
1089 Enable NUMA emulation. A flat machine will be split 1114 Enable NUMA emulation. A flat machine will be split
1090 into virtual nodes when booted with "numa=fake=N", where N is the 1115 into virtual nodes when booted with "numa=fake=N", where N is the
1091 number of nodes. This is only useful for debugging. 1116 number of nodes. This is only useful for debugging.
@@ -1098,7 +1123,7 @@ config NODES_SHIFT
1098 default "4" if X86_NUMAQ 1123 default "4" if X86_NUMAQ
1099 default "3" 1124 default "3"
1100 depends on NEED_MULTIPLE_NODES 1125 depends on NEED_MULTIPLE_NODES
1101 help 1126 ---help---
1102 Specify the maximum number of NUMA Nodes available on the target 1127 Specify the maximum number of NUMA Nodes available on the target
1103 system. Increases memory reserved to accomodate various tables. 1128 system. Increases memory reserved to accomodate various tables.
1104 1129
@@ -1136,7 +1161,7 @@ config ARCH_SPARSEMEM_DEFAULT
1136 1161
1137config ARCH_SPARSEMEM_ENABLE 1162config ARCH_SPARSEMEM_ENABLE
1138 def_bool y 1163 def_bool y
1139 depends on X86_64 || NUMA || (EXPERIMENTAL && X86_PC) || X86_GENERICARCH 1164 depends on X86_64 || NUMA || (EXPERIMENTAL && X86_32) || X86_32_NON_STANDARD
1140 select SPARSEMEM_STATIC if X86_32 1165 select SPARSEMEM_STATIC if X86_32
1141 select SPARSEMEM_VMEMMAP_ENABLE if X86_64 1166 select SPARSEMEM_VMEMMAP_ENABLE if X86_64
1142 1167
@@ -1153,61 +1178,61 @@ source "mm/Kconfig"
1153config HIGHPTE 1178config HIGHPTE
1154 bool "Allocate 3rd-level pagetables from highmem" 1179 bool "Allocate 3rd-level pagetables from highmem"
1155 depends on X86_32 && (HIGHMEM4G || HIGHMEM64G) 1180 depends on X86_32 && (HIGHMEM4G || HIGHMEM64G)
1156 help 1181 ---help---
1157 The VM uses one page table entry for each page of physical memory. 1182 The VM uses one page table entry for each page of physical memory.
1158 For systems with a lot of RAM, this can be wasteful of precious 1183 For systems with a lot of RAM, this can be wasteful of precious
1159 low memory. Setting this option will put user-space page table 1184 low memory. Setting this option will put user-space page table
1160 entries in high memory. 1185 entries in high memory.
1161 1186
1162config X86_CHECK_BIOS_CORRUPTION 1187config X86_CHECK_BIOS_CORRUPTION
1163 bool "Check for low memory corruption" 1188 bool "Check for low memory corruption"
1164 help 1189 ---help---
1165 Periodically check for memory corruption in low memory, which 1190 Periodically check for memory corruption in low memory, which
1166 is suspected to be caused by BIOS. Even when enabled in the 1191 is suspected to be caused by BIOS. Even when enabled in the
1167 configuration, it is disabled at runtime. Enable it by 1192 configuration, it is disabled at runtime. Enable it by
1168 setting "memory_corruption_check=1" on the kernel command 1193 setting "memory_corruption_check=1" on the kernel command
1169 line. By default it scans the low 64k of memory every 60 1194 line. By default it scans the low 64k of memory every 60
1170 seconds; see the memory_corruption_check_size and 1195 seconds; see the memory_corruption_check_size and
1171 memory_corruption_check_period parameters in 1196 memory_corruption_check_period parameters in
1172 Documentation/kernel-parameters.txt to adjust this. 1197 Documentation/kernel-parameters.txt to adjust this.
1173 1198
1174 When enabled with the default parameters, this option has 1199 When enabled with the default parameters, this option has
1175 almost no overhead, as it reserves a relatively small amount 1200 almost no overhead, as it reserves a relatively small amount
1176 of memory and scans it infrequently. It both detects corruption 1201 of memory and scans it infrequently. It both detects corruption
1177 and prevents it from affecting the running system. 1202 and prevents it from affecting the running system.
1178 1203
1179 It is, however, intended as a diagnostic tool; if repeatable 1204 It is, however, intended as a diagnostic tool; if repeatable
1180 BIOS-originated corruption always affects the same memory, 1205 BIOS-originated corruption always affects the same memory,
1181 you can use memmap= to prevent the kernel from using that 1206 you can use memmap= to prevent the kernel from using that
1182 memory. 1207 memory.
1183 1208
1184config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK 1209config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK
1185 bool "Set the default setting of memory_corruption_check" 1210 bool "Set the default setting of memory_corruption_check"
1186 depends on X86_CHECK_BIOS_CORRUPTION 1211 depends on X86_CHECK_BIOS_CORRUPTION
1187 default y 1212 default y
1188 help 1213 ---help---
1189 Set whether the default state of memory_corruption_check is 1214 Set whether the default state of memory_corruption_check is
1190 on or off. 1215 on or off.
1191 1216
1192config X86_RESERVE_LOW_64K 1217config X86_RESERVE_LOW_64K
1193 bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen" 1218 bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen"
1194 default y 1219 default y
1195 help 1220 ---help---
1196 Reserve the first 64K of physical RAM on BIOSes that are known 1221 Reserve the first 64K of physical RAM on BIOSes that are known
1197 to potentially corrupt that memory range. A numbers of BIOSes are 1222 to potentially corrupt that memory range. A numbers of BIOSes are
1198 known to utilize this area during suspend/resume, so it must not 1223 known to utilize this area during suspend/resume, so it must not
1199 be used by the kernel. 1224 be used by the kernel.
1200 1225
1201 Set this to N if you are absolutely sure that you trust the BIOS 1226 Set this to N if you are absolutely sure that you trust the BIOS
1202 to get all its memory reservations and usages right. 1227 to get all its memory reservations and usages right.
1203 1228
1204 If you have doubts about the BIOS (e.g. suspend/resume does not 1229 If you have doubts about the BIOS (e.g. suspend/resume does not
1205 work or there's kernel crashes after certain hardware hotplug 1230 work or there's kernel crashes after certain hardware hotplug
1206 events) and it's not AMI or Phoenix, then you might want to enable 1231 events) and it's not AMI or Phoenix, then you might want to enable
1207 X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical 1232 X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical
1208 corruption patterns. 1233 corruption patterns.
1209 1234
1210 Say Y if unsure. 1235 Say Y if unsure.
1211 1236
1212config MATH_EMULATION 1237config MATH_EMULATION
1213 bool 1238 bool
@@ -1273,7 +1298,7 @@ config MTRR_SANITIZER
1273 def_bool y 1298 def_bool y
1274 prompt "MTRR cleanup support" 1299 prompt "MTRR cleanup support"
1275 depends on MTRR 1300 depends on MTRR
1276 help 1301 ---help---
1277 Convert MTRR layout from continuous to discrete, so X drivers can 1302 Convert MTRR layout from continuous to discrete, so X drivers can
1278 add writeback entries. 1303 add writeback entries.
1279 1304
@@ -1288,7 +1313,7 @@ config MTRR_SANITIZER_ENABLE_DEFAULT
1288 range 0 1 1313 range 0 1
1289 default "0" 1314 default "0"
1290 depends on MTRR_SANITIZER 1315 depends on MTRR_SANITIZER
1291 help 1316 ---help---
1292 Enable mtrr cleanup default value 1317 Enable mtrr cleanup default value
1293 1318
1294config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT 1319config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT
@@ -1296,7 +1321,7 @@ config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT
1296 range 0 7 1321 range 0 7
1297 default "1" 1322 default "1"
1298 depends on MTRR_SANITIZER 1323 depends on MTRR_SANITIZER
1299 help 1324 ---help---
1300 mtrr cleanup spare entries default, it can be changed via 1325 mtrr cleanup spare entries default, it can be changed via
1301 mtrr_spare_reg_nr=N on the kernel command line. 1326 mtrr_spare_reg_nr=N on the kernel command line.
1302 1327
@@ -1304,7 +1329,7 @@ config X86_PAT
1304 bool 1329 bool
1305 prompt "x86 PAT support" 1330 prompt "x86 PAT support"
1306 depends on MTRR 1331 depends on MTRR
1307 help 1332 ---help---
1308 Use PAT attributes to setup page level cache control. 1333 Use PAT attributes to setup page level cache control.
1309 1334
1310 PATs are the modern equivalents of MTRRs and are much more 1335 PATs are the modern equivalents of MTRRs and are much more
@@ -1319,20 +1344,20 @@ config EFI
1319 bool "EFI runtime service support" 1344 bool "EFI runtime service support"
1320 depends on ACPI 1345 depends on ACPI
1321 ---help--- 1346 ---help---
1322 This enables the kernel to use EFI runtime services that are 1347 This enables the kernel to use EFI runtime services that are
1323 available (such as the EFI variable services). 1348 available (such as the EFI variable services).
1324 1349
1325 This option is only useful on systems that have EFI firmware. 1350 This option is only useful on systems that have EFI firmware.
1326 In addition, you should use the latest ELILO loader available 1351 In addition, you should use the latest ELILO loader available
1327 at <http://elilo.sourceforge.net> in order to take advantage 1352 at <http://elilo.sourceforge.net> in order to take advantage
1328 of EFI runtime services. However, even with this option, the 1353 of EFI runtime services. However, even with this option, the
1329 resultant kernel should continue to boot on existing non-EFI 1354 resultant kernel should continue to boot on existing non-EFI
1330 platforms. 1355 platforms.
1331 1356
1332config SECCOMP 1357config SECCOMP
1333 def_bool y 1358 def_bool y
1334 prompt "Enable seccomp to safely compute untrusted bytecode" 1359 prompt "Enable seccomp to safely compute untrusted bytecode"
1335 help 1360 ---help---
1336 This kernel feature is useful for number crunching applications 1361 This kernel feature is useful for number crunching applications
1337 that may need to compute untrusted bytecode during their 1362 that may need to compute untrusted bytecode during their
1338 execution. By using pipes or other transports made available to 1363 execution. By using pipes or other transports made available to
@@ -1345,13 +1370,16 @@ config SECCOMP
1345 1370
1346 If unsure, say Y. Only embedded should say N here. 1371 If unsure, say Y. Only embedded should say N here.
1347 1372
1373config CC_STACKPROTECTOR_ALL
1374 bool
1375
1348config CC_STACKPROTECTOR 1376config CC_STACKPROTECTOR
1349 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" 1377 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
1350 depends on X86_64 && EXPERIMENTAL && BROKEN 1378 select CC_STACKPROTECTOR_ALL
1351 help 1379 ---help---
1352 This option turns on the -fstack-protector GCC feature. This 1380 This option turns on the -fstack-protector GCC feature. This
1353 feature puts, at the beginning of critical functions, a canary 1381 feature puts, at the beginning of functions, a canary value on
1354 value on the stack just before the return address, and validates 1382 the stack just before the return address, and validates
1355 the value just before actually returning. Stack based buffer 1383 the value just before actually returning. Stack based buffer
1356 overflows (that need to overwrite this return address) now also 1384 overflows (that need to overwrite this return address) now also
1357 overwrite the canary, which gets detected and the attack is then 1385 overwrite the canary, which gets detected and the attack is then
@@ -1359,22 +1387,14 @@ config CC_STACKPROTECTOR
1359 1387
1360 This feature requires gcc version 4.2 or above, or a distribution 1388 This feature requires gcc version 4.2 or above, or a distribution
1361 gcc with the feature backported. Older versions are automatically 1389 gcc with the feature backported. Older versions are automatically
1362 detected and for those versions, this configuration option is ignored. 1390 detected and for those versions, this configuration option is
1363 1391 ignored. (and a warning is printed during bootup)
1364config CC_STACKPROTECTOR_ALL
1365 bool "Use stack-protector for all functions"
1366 depends on CC_STACKPROTECTOR
1367 help
1368 Normally, GCC only inserts the canary value protection for
1369 functions that use large-ish on-stack buffers. By enabling
1370 this option, GCC will be asked to do this for ALL functions.
1371 1392
1372source kernel/Kconfig.hz 1393source kernel/Kconfig.hz
1373 1394
1374config KEXEC 1395config KEXEC
1375 bool "kexec system call" 1396 bool "kexec system call"
1376 depends on X86_BIOS_REBOOT 1397 ---help---
1377 help
1378 kexec is a system call that implements the ability to shutdown your 1398 kexec is a system call that implements the ability to shutdown your
1379 current kernel, and to start another kernel. It is like a reboot 1399 current kernel, and to start another kernel. It is like a reboot
1380 but it is independent of the system firmware. And like a reboot 1400 but it is independent of the system firmware. And like a reboot
@@ -1391,7 +1411,7 @@ config KEXEC
1391config CRASH_DUMP 1411config CRASH_DUMP
1392 bool "kernel crash dumps" 1412 bool "kernel crash dumps"
1393 depends on X86_64 || (X86_32 && HIGHMEM) 1413 depends on X86_64 || (X86_32 && HIGHMEM)
1394 help 1414 ---help---
1395 Generate crash dump after being started by kexec. 1415 Generate crash dump after being started by kexec.
1396 This should be normally only set in special crash dump kernels 1416 This should be normally only set in special crash dump kernels
1397 which are loaded in the main kernel with kexec-tools into 1417 which are loaded in the main kernel with kexec-tools into
@@ -1406,7 +1426,7 @@ config KEXEC_JUMP
1406 bool "kexec jump (EXPERIMENTAL)" 1426 bool "kexec jump (EXPERIMENTAL)"
1407 depends on EXPERIMENTAL 1427 depends on EXPERIMENTAL
1408 depends on KEXEC && HIBERNATION && X86_32 1428 depends on KEXEC && HIBERNATION && X86_32
1409 help 1429 ---help---
1410 Jump between original kernel and kexeced kernel and invoke 1430 Jump between original kernel and kexeced kernel and invoke
1411 code in physical address mode via KEXEC 1431 code in physical address mode via KEXEC
1412 1432
@@ -1415,7 +1435,7 @@ config PHYSICAL_START
1415 default "0x1000000" if X86_NUMAQ 1435 default "0x1000000" if X86_NUMAQ
1416 default "0x200000" if X86_64 1436 default "0x200000" if X86_64
1417 default "0x100000" 1437 default "0x100000"
1418 help 1438 ---help---
1419 This gives the physical address where the kernel is loaded. 1439 This gives the physical address where the kernel is loaded.
1420 1440
1421 If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then 1441 If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then
@@ -1456,7 +1476,7 @@ config PHYSICAL_START
1456config RELOCATABLE 1476config RELOCATABLE
1457 bool "Build a relocatable kernel (EXPERIMENTAL)" 1477 bool "Build a relocatable kernel (EXPERIMENTAL)"
1458 depends on EXPERIMENTAL 1478 depends on EXPERIMENTAL
1459 help 1479 ---help---
1460 This builds a kernel image that retains relocation information 1480 This builds a kernel image that retains relocation information
1461 so it can be loaded someplace besides the default 1MB. 1481 so it can be loaded someplace besides the default 1MB.
1462 The relocations tend to make the kernel binary about 10% larger, 1482 The relocations tend to make the kernel binary about 10% larger,
@@ -1476,7 +1496,7 @@ config PHYSICAL_ALIGN
1476 default "0x100000" if X86_32 1496 default "0x100000" if X86_32
1477 default "0x200000" if X86_64 1497 default "0x200000" if X86_64
1478 range 0x2000 0x400000 1498 range 0x2000 0x400000
1479 help 1499 ---help---
1480 This value puts the alignment restrictions on physical address 1500 This value puts the alignment restrictions on physical address
1481 where kernel is loaded and run from. Kernel is compiled for an 1501 where kernel is loaded and run from. Kernel is compiled for an
1482 address which meets above alignment restriction. 1502 address which meets above alignment restriction.
@@ -1497,7 +1517,7 @@ config PHYSICAL_ALIGN
1497 1517
1498config HOTPLUG_CPU 1518config HOTPLUG_CPU
1499 bool "Support for hot-pluggable CPUs" 1519 bool "Support for hot-pluggable CPUs"
1500 depends on SMP && HOTPLUG && !X86_VOYAGER 1520 depends on SMP && HOTPLUG
1501 ---help--- 1521 ---help---
1502 Say Y here to allow turning CPUs off and on. CPUs can be 1522 Say Y here to allow turning CPUs off and on. CPUs can be
1503 controlled through /sys/devices/system/cpu. 1523 controlled through /sys/devices/system/cpu.
@@ -1509,7 +1529,7 @@ config COMPAT_VDSO
1509 def_bool y 1529 def_bool y
1510 prompt "Compat VDSO support" 1530 prompt "Compat VDSO support"
1511 depends on X86_32 || IA32_EMULATION 1531 depends on X86_32 || IA32_EMULATION
1512 help 1532 ---help---
1513 Map the 32-bit VDSO to the predictable old-style address too. 1533 Map the 32-bit VDSO to the predictable old-style address too.
1514 ---help--- 1534 ---help---
1515 Say N here if you are running a sufficiently recent glibc 1535 Say N here if you are running a sufficiently recent glibc
@@ -1521,7 +1541,7 @@ config COMPAT_VDSO
1521config CMDLINE_BOOL 1541config CMDLINE_BOOL
1522 bool "Built-in kernel command line" 1542 bool "Built-in kernel command line"
1523 default n 1543 default n
1524 help 1544 ---help---
1525 Allow for specifying boot arguments to the kernel at 1545 Allow for specifying boot arguments to the kernel at
1526 build time. On some systems (e.g. embedded ones), it is 1546 build time. On some systems (e.g. embedded ones), it is
1527 necessary or convenient to provide some or all of the 1547 necessary or convenient to provide some or all of the
@@ -1539,7 +1559,7 @@ config CMDLINE
1539 string "Built-in kernel command string" 1559 string "Built-in kernel command string"
1540 depends on CMDLINE_BOOL 1560 depends on CMDLINE_BOOL
1541 default "" 1561 default ""
1542 help 1562 ---help---
1543 Enter arguments here that should be compiled into the kernel 1563 Enter arguments here that should be compiled into the kernel
1544 image and used at boot time. If the boot loader provides a 1564 image and used at boot time. If the boot loader provides a
1545 command line at boot time, it is appended to this string to 1565 command line at boot time, it is appended to this string to
@@ -1556,7 +1576,7 @@ config CMDLINE_OVERRIDE
1556 bool "Built-in command line overrides boot loader arguments" 1576 bool "Built-in command line overrides boot loader arguments"
1557 default n 1577 default n
1558 depends on CMDLINE_BOOL 1578 depends on CMDLINE_BOOL
1559 help 1579 ---help---
1560 Set this option to 'Y' to have the kernel ignore the boot loader 1580 Set this option to 'Y' to have the kernel ignore the boot loader
1561 command line, and use ONLY the built-in command line. 1581 command line, and use ONLY the built-in command line.
1562 1582
@@ -1578,7 +1598,6 @@ config HAVE_ARCH_EARLY_PFN_TO_NID
1578 depends on NUMA 1598 depends on NUMA
1579 1599
1580menu "Power management and ACPI options" 1600menu "Power management and ACPI options"
1581 depends on !X86_VOYAGER
1582 1601
1583config ARCH_HIBERNATION_HEADER 1602config ARCH_HIBERNATION_HEADER
1584 def_bool y 1603 def_bool y
@@ -1656,7 +1675,7 @@ if APM
1656 1675
1657config APM_IGNORE_USER_SUSPEND 1676config APM_IGNORE_USER_SUSPEND
1658 bool "Ignore USER SUSPEND" 1677 bool "Ignore USER SUSPEND"
1659 help 1678 ---help---
1660 This option will ignore USER SUSPEND requests. On machines with a 1679 This option will ignore USER SUSPEND requests. On machines with a
1661 compliant APM BIOS, you want to say N. However, on the NEC Versa M 1680 compliant APM BIOS, you want to say N. However, on the NEC Versa M
1662 series notebooks, it is necessary to say Y because of a BIOS bug. 1681 series notebooks, it is necessary to say Y because of a BIOS bug.
@@ -1680,7 +1699,7 @@ config APM_DO_ENABLE
1680 1699
1681config APM_CPU_IDLE 1700config APM_CPU_IDLE
1682 bool "Make CPU Idle calls when idle" 1701 bool "Make CPU Idle calls when idle"
1683 help 1702 ---help---
1684 Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop. 1703 Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop.
1685 On some machines, this can activate improved power savings, such as 1704 On some machines, this can activate improved power savings, such as
1686 a slowed CPU clock rate, when the machine is idle. These idle calls 1705 a slowed CPU clock rate, when the machine is idle. These idle calls
@@ -1691,7 +1710,7 @@ config APM_CPU_IDLE
1691 1710
1692config APM_DISPLAY_BLANK 1711config APM_DISPLAY_BLANK
1693 bool "Enable console blanking using APM" 1712 bool "Enable console blanking using APM"
1694 help 1713 ---help---
1695 Enable console blanking using the APM. Some laptops can use this to 1714 Enable console blanking using the APM. Some laptops can use this to
1696 turn off the LCD backlight when the screen blanker of the Linux 1715 turn off the LCD backlight when the screen blanker of the Linux
1697 virtual console blanks the screen. Note that this is only used by 1716 virtual console blanks the screen. Note that this is only used by
@@ -1704,7 +1723,7 @@ config APM_DISPLAY_BLANK
1704 1723
1705config APM_ALLOW_INTS 1724config APM_ALLOW_INTS
1706 bool "Allow interrupts during APM BIOS calls" 1725 bool "Allow interrupts during APM BIOS calls"
1707 help 1726 ---help---
1708 Normally we disable external interrupts while we are making calls to 1727 Normally we disable external interrupts while we are making calls to
1709 the APM BIOS as a measure to lessen the effects of a badly behaving 1728 the APM BIOS as a measure to lessen the effects of a badly behaving
1710 BIOS implementation. The BIOS should reenable interrupts if it 1729 BIOS implementation. The BIOS should reenable interrupts if it
@@ -1729,7 +1748,7 @@ config PCI
1729 bool "PCI support" 1748 bool "PCI support"
1730 default y 1749 default y
1731 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC) 1750 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC)
1732 help 1751 ---help---
1733 Find out whether you have a PCI motherboard. PCI is the name of a 1752 Find out whether you have a PCI motherboard. PCI is the name of a
1734 bus system, i.e. the way the CPU talks to the other stuff inside 1753 bus system, i.e. the way the CPU talks to the other stuff inside
1735 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 1754 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
@@ -1800,7 +1819,7 @@ config PCI_MMCONFIG
1800config DMAR 1819config DMAR
1801 bool "Support for DMA Remapping Devices (EXPERIMENTAL)" 1820 bool "Support for DMA Remapping Devices (EXPERIMENTAL)"
1802 depends on X86_64 && PCI_MSI && ACPI && EXPERIMENTAL 1821 depends on X86_64 && PCI_MSI && ACPI && EXPERIMENTAL
1803 help 1822 ---help---
1804 DMA remapping (DMAR) devices support enables independent address 1823 DMA remapping (DMAR) devices support enables independent address
1805 translations for Direct Memory Access (DMA) from devices. 1824 translations for Direct Memory Access (DMA) from devices.
1806 These DMA remapping devices are reported via ACPI tables 1825 These DMA remapping devices are reported via ACPI tables
@@ -1822,29 +1841,30 @@ config DMAR_GFX_WA
1822 def_bool y 1841 def_bool y
1823 prompt "Support for Graphics workaround" 1842 prompt "Support for Graphics workaround"
1824 depends on DMAR 1843 depends on DMAR
1825 help 1844 ---help---
1826 Current Graphics drivers tend to use physical address 1845 Current Graphics drivers tend to use physical address
1827 for DMA and avoid using DMA APIs. Setting this config 1846 for DMA and avoid using DMA APIs. Setting this config
1828 option permits the IOMMU driver to set a unity map for 1847 option permits the IOMMU driver to set a unity map for
1829 all the OS-visible memory. Hence the driver can continue 1848 all the OS-visible memory. Hence the driver can continue
1830 to use physical addresses for DMA. 1849 to use physical addresses for DMA.
1831 1850
1832config DMAR_FLOPPY_WA 1851config DMAR_FLOPPY_WA
1833 def_bool y 1852 def_bool y
1834 depends on DMAR 1853 depends on DMAR
1835 help 1854 ---help---
1836 Floppy disk drivers are know to bypass DMA API calls 1855 Floppy disk drivers are know to bypass DMA API calls
1837 thereby failing to work when IOMMU is enabled. This 1856 thereby failing to work when IOMMU is enabled. This
1838 workaround will setup a 1:1 mapping for the first 1857 workaround will setup a 1:1 mapping for the first
1839 16M to make floppy (an ISA device) work. 1858 16M to make floppy (an ISA device) work.
1840 1859
1841config INTR_REMAP 1860config INTR_REMAP
1842 bool "Support for Interrupt Remapping (EXPERIMENTAL)" 1861 bool "Support for Interrupt Remapping (EXPERIMENTAL)"
1843 depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL 1862 depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL
1844 help 1863 select X86_X2APIC
1845 Supports Interrupt remapping for IO-APIC and MSI devices. 1864 ---help---
1846 To use x2apic mode in the CPU's which support x2APIC enhancements or 1865 Supports Interrupt remapping for IO-APIC and MSI devices.
1847 to support platforms with CPU's having > 8 bit APIC ID, say Y. 1866 To use x2apic mode in the CPU's which support x2APIC enhancements or
1867 to support platforms with CPU's having > 8 bit APIC ID, say Y.
1848 1868
1849source "drivers/pci/pcie/Kconfig" 1869source "drivers/pci/pcie/Kconfig"
1850 1870
@@ -1858,8 +1878,7 @@ if X86_32
1858 1878
1859config ISA 1879config ISA
1860 bool "ISA support" 1880 bool "ISA support"
1861 depends on !X86_VOYAGER 1881 ---help---
1862 help
1863 Find out whether you have ISA slots on your motherboard. ISA is the 1882 Find out whether you have ISA slots on your motherboard. ISA is the
1864 name of a bus system, i.e. the way the CPU talks to the other stuff 1883 name of a bus system, i.e. the way the CPU talks to the other stuff
1865 inside your box. Other bus systems are PCI, EISA, MicroChannel 1884 inside your box. Other bus systems are PCI, EISA, MicroChannel
@@ -1885,9 +1904,8 @@ config EISA
1885source "drivers/eisa/Kconfig" 1904source "drivers/eisa/Kconfig"
1886 1905
1887config MCA 1906config MCA
1888 bool "MCA support" if !X86_VOYAGER 1907 bool "MCA support"
1889 default y if X86_VOYAGER 1908 ---help---
1890 help
1891 MicroChannel Architecture is found in some IBM PS/2 machines and 1909 MicroChannel Architecture is found in some IBM PS/2 machines and
1892 laptops. It is a bus system similar to PCI or ISA. See 1910 laptops. It is a bus system similar to PCI or ISA. See
1893 <file:Documentation/mca.txt> (and especially the web page given 1911 <file:Documentation/mca.txt> (and especially the web page given
@@ -1897,8 +1915,7 @@ source "drivers/mca/Kconfig"
1897 1915
1898config SCx200 1916config SCx200
1899 tristate "NatSemi SCx200 support" 1917 tristate "NatSemi SCx200 support"
1900 depends on !X86_VOYAGER 1918 ---help---
1901 help
1902 This provides basic support for National Semiconductor's 1919 This provides basic support for National Semiconductor's
1903 (now AMD's) Geode processors. The driver probes for the 1920 (now AMD's) Geode processors. The driver probes for the
1904 PCI-IDs of several on-chip devices, so its a good dependency 1921 PCI-IDs of several on-chip devices, so its a good dependency
@@ -1910,7 +1927,7 @@ config SCx200HR_TIMER
1910 tristate "NatSemi SCx200 27MHz High-Resolution Timer Support" 1927 tristate "NatSemi SCx200 27MHz High-Resolution Timer Support"
1911 depends on SCx200 && GENERIC_TIME 1928 depends on SCx200 && GENERIC_TIME
1912 default y 1929 default y
1913 help 1930 ---help---
1914 This driver provides a clocksource built upon the on-chip 1931 This driver provides a clocksource built upon the on-chip
1915 27MHz high-resolution timer. Its also a workaround for 1932 27MHz high-resolution timer. Its also a workaround for
1916 NSC Geode SC-1100's buggy TSC, which loses time when the 1933 NSC Geode SC-1100's buggy TSC, which loses time when the
@@ -1921,7 +1938,7 @@ config GEODE_MFGPT_TIMER
1921 def_bool y 1938 def_bool y
1922 prompt "Geode Multi-Function General Purpose Timer (MFGPT) events" 1939 prompt "Geode Multi-Function General Purpose Timer (MFGPT) events"
1923 depends on MGEODE_LX && GENERIC_TIME && GENERIC_CLOCKEVENTS 1940 depends on MGEODE_LX && GENERIC_TIME && GENERIC_CLOCKEVENTS
1924 help 1941 ---help---
1925 This driver provides a clock event source based on the MFGPT 1942 This driver provides a clock event source based on the MFGPT
1926 timer(s) in the CS5535 and CS5536 companion chip for the geode. 1943 timer(s) in the CS5535 and CS5536 companion chip for the geode.
1927 MFGPTs have a better resolution and max interval than the 1944 MFGPTs have a better resolution and max interval than the
@@ -1930,7 +1947,7 @@ config GEODE_MFGPT_TIMER
1930config OLPC 1947config OLPC
1931 bool "One Laptop Per Child support" 1948 bool "One Laptop Per Child support"
1932 default n 1949 default n
1933 help 1950 ---help---
1934 Add support for detecting the unique features of the OLPC 1951 Add support for detecting the unique features of the OLPC
1935 XO hardware. 1952 XO hardware.
1936 1953
@@ -1955,16 +1972,16 @@ config IA32_EMULATION
1955 bool "IA32 Emulation" 1972 bool "IA32 Emulation"
1956 depends on X86_64 1973 depends on X86_64
1957 select COMPAT_BINFMT_ELF 1974 select COMPAT_BINFMT_ELF
1958 help 1975 ---help---
1959 Include code to run 32-bit programs under a 64-bit kernel. You should 1976 Include code to run 32-bit programs under a 64-bit kernel. You should
1960 likely turn this on, unless you're 100% sure that you don't have any 1977 likely turn this on, unless you're 100% sure that you don't have any
1961 32-bit programs left. 1978 32-bit programs left.
1962 1979
1963config IA32_AOUT 1980config IA32_AOUT
1964 tristate "IA32 a.out support" 1981 tristate "IA32 a.out support"
1965 depends on IA32_EMULATION 1982 depends on IA32_EMULATION
1966 help 1983 ---help---
1967 Support old a.out binaries in the 32bit emulation. 1984 Support old a.out binaries in the 32bit emulation.
1968 1985
1969config COMPAT 1986config COMPAT
1970 def_bool y 1987 def_bool y