aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r--arch/x86/Kconfig296
1 files changed, 190 insertions, 106 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index bf07b6f50fa1..6bdde845818e 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -21,10 +21,16 @@ config X86
21 select HAVE_UNSTABLE_SCHED_CLOCK 21 select HAVE_UNSTABLE_SCHED_CLOCK
22 select HAVE_IDE 22 select HAVE_IDE
23 select HAVE_OPROFILE 23 select HAVE_OPROFILE
24 select HAVE_IOREMAP_PROT
25 select HAVE_GET_USER_PAGES_FAST
24 select HAVE_KPROBES 26 select HAVE_KPROBES
27 select ARCH_WANT_OPTIONAL_GPIOLIB if !X86_RDC321X
25 select HAVE_KRETPROBES 28 select HAVE_KRETPROBES
29 select HAVE_DYNAMIC_FTRACE
30 select HAVE_FTRACE
26 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) 31 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64)
27 select HAVE_ARCH_KGDB if !X86_VOYAGER 32 select HAVE_ARCH_KGDB if !X86_VOYAGER
33 select HAVE_EFFICIENT_UNALIGNED_ACCESS
28 34
29config ARCH_DEFCONFIG 35config ARCH_DEFCONFIG
30 string 36 string
@@ -121,7 +127,7 @@ config ARCH_HAS_CACHE_LINE_SIZE
121 def_bool y 127 def_bool y
122 128
123config HAVE_SETUP_PER_CPU_AREA 129config HAVE_SETUP_PER_CPU_AREA
124 def_bool X86_64 || (X86_SMP && !X86_VOYAGER) 130 def_bool X86_64_SMP || (X86_SMP && !X86_VOYAGER)
125 131
126config HAVE_CPUMASK_OF_CPU_MAP 132config HAVE_CPUMASK_OF_CPU_MAP
127 def_bool X86_64_SMP 133 def_bool X86_64_SMP
@@ -168,6 +174,7 @@ config GENERIC_PENDING_IRQ
168config X86_SMP 174config X86_SMP
169 bool 175 bool
170 depends on SMP && ((X86_32 && !X86_VOYAGER) || X86_64) 176 depends on SMP && ((X86_32 && !X86_VOYAGER) || X86_64)
177 select USE_GENERIC_SMP_HELPERS
171 default y 178 default y
172 179
173config X86_32_SMP 180config X86_32_SMP
@@ -181,12 +188,12 @@ config X86_64_SMP
181config X86_HT 188config X86_HT
182 bool 189 bool
183 depends on SMP 190 depends on SMP
184 depends on (X86_32 && !(X86_VISWS || X86_VOYAGER)) || X86_64 191 depends on (X86_32 && !X86_VOYAGER) || X86_64
185 default y 192 default y
186 193
187config X86_BIOS_REBOOT 194config X86_BIOS_REBOOT
188 bool 195 bool
189 depends on !X86_VISWS && !X86_VOYAGER 196 depends on !X86_VOYAGER
190 default y 197 default y
191 198
192config X86_TRAMPOLINE 199config X86_TRAMPOLINE
@@ -230,6 +237,26 @@ config SMP
230 237
231 If you don't know what to do here, say N. 238 If you don't know what to do here, say N.
232 239
240config X86_FIND_SMP_CONFIG
241 def_bool y
242 depends on X86_MPPARSE || X86_VOYAGER
243
244if ACPI
245config X86_MPPARSE
246 def_bool y
247 bool "Enable MPS table"
248 depends on X86_LOCAL_APIC
249 help
250 For old smp systems that do not have proper acpi support. Newer systems
251 (esp with 64bit cpus) with acpi support, MADT and DSDT will override it
252endif
253
254if !ACPI
255config X86_MPPARSE
256 def_bool y
257 depends on X86_LOCAL_APIC
258endif
259
233choice 260choice
234 prompt "Subarchitecture Type" 261 prompt "Subarchitecture Type"
235 default X86_PC 262 default X86_PC
@@ -251,7 +278,7 @@ config X86_ELAN
251 278
252config X86_VOYAGER 279config X86_VOYAGER
253 bool "Voyager (NCR)" 280 bool "Voyager (NCR)"
254 depends on X86_32 && (SMP || BROKEN) 281 depends on X86_32 && (SMP || BROKEN) && !PCI
255 help 282 help
256 Voyager is an MCA-based 32-way capable SMP architecture proprietary 283 Voyager is an MCA-based 32-way capable SMP architecture proprietary
257 to NCR Corp. Machine classes 345x/35xx/4100/51xx are Voyager-based. 284 to NCR Corp. Machine classes 345x/35xx/4100/51xx are Voyager-based.
@@ -261,16 +288,27 @@ config X86_VOYAGER
261 If you do not specifically know you have a Voyager based machine, 288 If you do not specifically know you have a Voyager based machine,
262 say N here, otherwise the kernel you build will not be bootable. 289 say N here, otherwise the kernel you build will not be bootable.
263 290
291config X86_GENERICARCH
292 bool "Generic architecture"
293 depends on X86_32
294 help
295 This option compiles in the NUMAQ, Summit, bigsmp, ES7000, default
296 subarchitectures. It is intended for a generic binary kernel.
297 if you select them all, kernel will probe it one by one. and will
298 fallback to default.
299
300if X86_GENERICARCH
301
264config X86_NUMAQ 302config X86_NUMAQ
265 bool "NUMAQ (IBM/Sequent)" 303 bool "NUMAQ (IBM/Sequent)"
266 depends on SMP && X86_32 304 depends on SMP && X86_32 && PCI && X86_MPPARSE
267 select NUMA 305 select NUMA
268 help 306 help
269 This option is used for getting Linux to run on a (IBM/Sequent) NUMA 307 This option is used for getting Linux to run on a NUMAQ (IBM/Sequent)
270 multiquad box. This changes the way that processors are bootstrapped, 308 NUMA multiquad box. This changes the way that processors are
271 and uses Clustered Logical APIC addressing mode instead of Flat Logical. 309 bootstrapped, and uses Clustered Logical APIC addressing mode instead
272 You will need a new lynxer.elf file to flash your firmware with - send 310 of Flat Logical. You will need a new lynxer.elf file to flash your
273 email to <Martin.Bligh@us.ibm.com>. 311 firmware with - send email to <Martin.Bligh@us.ibm.com>.
274 312
275config X86_SUMMIT 313config X86_SUMMIT
276 bool "Summit/EXA (IBM x440)" 314 bool "Summit/EXA (IBM x440)"
@@ -279,46 +317,21 @@ config X86_SUMMIT
279 This option is needed for IBM systems that use the Summit/EXA chipset. 317 This option is needed for IBM systems that use the Summit/EXA chipset.
280 In particular, it is needed for the x440. 318 In particular, it is needed for the x440.
281 319
282 If you don't have one of these computers, you should say N here. 320config X86_ES7000
283 If you want to build a NUMA kernel, you must select ACPI. 321 bool "Support for Unisys ES7000 IA32 series"
322 depends on X86_32 && SMP
323 help
324 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is
325 supposed to run on an IA32-based Unisys ES7000 system.
284 326
285config X86_BIGSMP 327config X86_BIGSMP
286 bool "Support for other sub-arch SMP systems with more than 8 CPUs" 328 bool "Support for big SMP systems with more than 8 CPUs"
287 depends on X86_32 && SMP 329 depends on X86_32 && SMP
288 help 330 help
289 This option is needed for the systems that have more than 8 CPUs 331 This option is needed for the systems that have more than 8 CPUs
290 and if the system is not of any sub-arch type above. 332 and if the system is not of any sub-arch type above.
291 333
292 If you don't have such a system, you should say N here. 334endif
293
294config X86_VISWS
295 bool "SGI 320/540 (Visual Workstation)"
296 depends on X86_32
297 help
298 The SGI Visual Workstation series is an IA32-based workstation
299 based on SGI systems chips with some legacy PC hardware attached.
300
301 Say Y here to create a kernel to run on the SGI 320 or 540.
302
303 A kernel compiled for the Visual Workstation will not run on PCs
304 and vice versa. See <file:Documentation/sgi-visws.txt> for details.
305
306config X86_GENERICARCH
307 bool "Generic architecture (Summit, bigsmp, ES7000, default)"
308 depends on X86_32
309 help
310 This option compiles in the Summit, bigsmp, ES7000, default subarchitectures.
311 It is intended for a generic binary kernel.
312 If you want a NUMA kernel, select ACPI. We need SRAT for NUMA.
313
314config X86_ES7000
315 bool "Support for Unisys ES7000 IA32 series"
316 depends on X86_32 && SMP
317 help
318 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is
319 supposed to run on an IA32-based Unisys ES7000 system.
320 Only choose this option if you have such a system, otherwise you
321 should say N here.
322 335
323config X86_RDC321X 336config X86_RDC321X
324 bool "RDC R-321x SoC" 337 bool "RDC R-321x SoC"
@@ -337,7 +350,7 @@ config X86_RDC321X
337config X86_VSMP 350config X86_VSMP
338 bool "Support for ScaleMP vSMP" 351 bool "Support for ScaleMP vSMP"
339 select PARAVIRT 352 select PARAVIRT
340 depends on X86_64 353 depends on X86_64 && PCI
341 help 354 help
342 Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is 355 Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is
343 supposed to run on these EM64T-based machines. Only choose this option 356 supposed to run on these EM64T-based machines. Only choose this option
@@ -345,6 +358,18 @@ config X86_VSMP
345 358
346endchoice 359endchoice
347 360
361config X86_VISWS
362 bool "SGI 320/540 (Visual Workstation)"
363 depends on X86_32 && PCI && !X86_VOYAGER && X86_MPPARSE && PCI_GODIRECT
364 help
365 The SGI Visual Workstation series is an IA32-based workstation
366 based on SGI systems chips with some legacy PC hardware attached.
367
368 Say Y here to create a kernel to run on the SGI 320 or 540.
369
370 A kernel compiled for the Visual Workstation will run on general
371 PCs as well. See <file:Documentation/sgi-visws.txt> for details.
372
348config SCHED_NO_NO_OMIT_FRAME_POINTER 373config SCHED_NO_NO_OMIT_FRAME_POINTER
349 def_bool y 374 def_bool y
350 prompt "Single-depth WCHAN output" 375 prompt "Single-depth WCHAN output"
@@ -373,7 +398,7 @@ config VMI
373 bool "VMI Guest support" 398 bool "VMI Guest support"
374 select PARAVIRT 399 select PARAVIRT
375 depends on X86_32 400 depends on X86_32
376 depends on !(X86_VISWS || X86_VOYAGER) 401 depends on !X86_VOYAGER
377 help 402 help
378 VMI provides a paravirtualized interface to the VMware ESX server 403 VMI provides a paravirtualized interface to the VMware ESX server
379 (it could be used by other hypervisors in theory too, but is not 404 (it could be used by other hypervisors in theory too, but is not
@@ -384,7 +409,7 @@ config KVM_CLOCK
384 bool "KVM paravirtualized clock" 409 bool "KVM paravirtualized clock"
385 select PARAVIRT 410 select PARAVIRT
386 select PARAVIRT_CLOCK 411 select PARAVIRT_CLOCK
387 depends on !(X86_VISWS || X86_VOYAGER) 412 depends on !X86_VOYAGER
388 help 413 help
389 Turning on this option will allow you to run a paravirtualized clock 414 Turning on this option will allow you to run a paravirtualized clock
390 when running over the KVM hypervisor. Instead of relying on a PIT 415 when running over the KVM hypervisor. Instead of relying on a PIT
@@ -395,7 +420,7 @@ config KVM_CLOCK
395config KVM_GUEST 420config KVM_GUEST
396 bool "KVM Guest support" 421 bool "KVM Guest support"
397 select PARAVIRT 422 select PARAVIRT
398 depends on !(X86_VISWS || X86_VOYAGER) 423 depends on !X86_VOYAGER
399 help 424 help
400 This option enables various optimizations for running under the KVM 425 This option enables various optimizations for running under the KVM
401 hypervisor. 426 hypervisor.
@@ -404,7 +429,7 @@ source "arch/x86/lguest/Kconfig"
404 429
405config PARAVIRT 430config PARAVIRT
406 bool "Enable paravirtualization code" 431 bool "Enable paravirtualization code"
407 depends on !(X86_VISWS || X86_VOYAGER) 432 depends on !X86_VOYAGER
408 help 433 help
409 This changes the kernel so it can modify itself when it is run 434 This changes the kernel so it can modify itself when it is run
410 under a hypervisor, potentially improving performance significantly 435 under a hypervisor, potentially improving performance significantly
@@ -417,51 +442,31 @@ config PARAVIRT_CLOCK
417 442
418endif 443endif
419 444
420config MEMTEST_BOOTPARAM 445config PARAVIRT_DEBUG
421 bool "Memtest boot parameter" 446 bool "paravirt-ops debugging"
422 depends on X86_64 447 depends on PARAVIRT && DEBUG_KERNEL
423 default y 448 help
424 help 449 Enable to debug paravirt_ops internals. Specifically, BUG if
425 This option adds a kernel parameter 'memtest', which allows memtest 450 a paravirt_op is missing when it is called.
426 to be disabled at boot. If this option is selected, memtest
427 functionality can be disabled with memtest=0 on the kernel
428 command line. The purpose of this option is to allow a single
429 kernel image to be distributed with memtest built in, but not
430 necessarily enabled.
431
432 If you are unsure how to answer this question, answer Y.
433 451
434config MEMTEST_BOOTPARAM_VALUE 452config MEMTEST
435 int "Memtest boot parameter default value (0-4)" 453 bool "Memtest"
436 depends on MEMTEST_BOOTPARAM
437 range 0 4
438 default 0
439 help 454 help
440 This option sets the default value for the kernel parameter 455 This option adds a kernel parameter 'memtest', which allows memtest
441 'memtest', which allows memtest to be disabled at boot. If this 456 to be set.
442 option is set to 0 (zero), the memtest kernel parameter will 457 memtest=0, mean disabled; -- default
443 default to 0, disabling memtest at bootup. If this option is 458 memtest=1, mean do 1 test pattern;
444 set to 4, the memtest kernel parameter will default to 4, 459 ...
445 enabling memtest at bootup, and use that as pattern number. 460 memtest=4, mean do 4 test patterns.
446 461 If you are unsure how to answer this question, answer N.
447 If you are unsure how to answer this question, answer 0.
448
449config ACPI_SRAT
450 def_bool y
451 depends on X86_32 && ACPI && NUMA && (X86_SUMMIT || X86_GENERICARCH)
452 select ACPI_NUMA
453
454config HAVE_ARCH_PARSE_SRAT
455 def_bool y
456 depends on ACPI_SRAT
457 462
458config X86_SUMMIT_NUMA 463config X86_SUMMIT_NUMA
459 def_bool y 464 def_bool y
460 depends on X86_32 && NUMA && (X86_SUMMIT || X86_GENERICARCH) 465 depends on X86_32 && NUMA && X86_GENERICARCH
461 466
462config X86_CYCLONE_TIMER 467config X86_CYCLONE_TIMER
463 def_bool y 468 def_bool y
464 depends on X86_32 && X86_SUMMIT || X86_GENERICARCH 469 depends on X86_GENERICARCH
465 470
466config ES7000_CLUSTERED_APIC 471config ES7000_CLUSTERED_APIC
467 def_bool y 472 def_bool y
@@ -549,6 +554,21 @@ config CALGARY_IOMMU_ENABLED_BY_DEFAULT
549 Calgary anyway, pass 'iommu=calgary' on the kernel command line. 554 Calgary anyway, pass 'iommu=calgary' on the kernel command line.
550 If unsure, say Y. 555 If unsure, say Y.
551 556
557config AMD_IOMMU
558 bool "AMD IOMMU support"
559 select SWIOTLB
560 depends on X86_64 && PCI && ACPI
561 help
562 With this option you can enable support for AMD IOMMU hardware in
563 your system. An IOMMU is a hardware component which provides
564 remapping of DMA memory accesses from devices. With an AMD IOMMU you
565 can isolate the the DMA memory of different devices and protect the
566 system from misbehaving device drivers or hardware.
567
568 You can find out if your system has an AMD IOMMU if you look into
569 your BIOS for an option to enable it or if you have an IVRS ACPI
570 table.
571
552# need this always selected by IOMMU for the VIA workaround 572# need this always selected by IOMMU for the VIA workaround
553config SWIOTLB 573config SWIOTLB
554 bool 574 bool
@@ -560,21 +580,36 @@ config SWIOTLB
560 3 GB of memory. If unsure, say Y. 580 3 GB of memory. If unsure, say Y.
561 581
562config IOMMU_HELPER 582config IOMMU_HELPER
563 def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB) 583 def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU)
584config MAXSMP
585 bool "Configure Maximum number of SMP Processors and NUMA Nodes"
586 depends on X86_64 && SMP
587 default n
588 help
589 Configure maximum number of CPUS and NUMA Nodes for this architecture.
590 If unsure, say N.
564 591
592if MAXSMP
565config NR_CPUS 593config NR_CPUS
566 int "Maximum number of CPUs (2-255)" 594 int
567 range 2 255 595 default "4096"
596endif
597
598if !MAXSMP
599config NR_CPUS
600 int "Maximum number of CPUs (2-4096)"
601 range 2 4096
568 depends on SMP 602 depends on SMP
569 default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000 603 default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000
570 default "8" 604 default "8"
571 help 605 help
572 This allows you to specify the maximum number of CPUs which this 606 This allows you to specify the maximum number of CPUs which this
573 kernel will support. The maximum supported value is 255 and the 607 kernel will support. The maximum supported value is 4096 and the
574 minimum value which makes sense is 2. 608 minimum value which makes sense is 2.
575 609
576 This is purely to save memory - each supported CPU adds 610 This is purely to save memory - each supported CPU adds
577 approximately eight kilobytes to the kernel image. 611 approximately eight kilobytes to the kernel image.
612endif
578 613
579config SCHED_SMT 614config SCHED_SMT
580 bool "SMT (Hyperthreading) scheduler support" 615 bool "SMT (Hyperthreading) scheduler support"
@@ -598,7 +633,7 @@ source "kernel/Kconfig.preempt"
598 633
599config X86_UP_APIC 634config X86_UP_APIC
600 bool "Local APIC support on uniprocessors" 635 bool "Local APIC support on uniprocessors"
601 depends on X86_32 && !SMP && !(X86_VISWS || X86_VOYAGER || X86_GENERICARCH) 636 depends on X86_32 && !SMP && !(X86_VOYAGER || X86_GENERICARCH)
602 help 637 help
603 A local APIC (Advanced Programmable Interrupt Controller) is an 638 A local APIC (Advanced Programmable Interrupt Controller) is an
604 integrated interrupt controller in the CPU. If you have a single-CPU 639 integrated interrupt controller in the CPU. If you have a single-CPU
@@ -623,11 +658,11 @@ config X86_UP_IOAPIC
623 658
624config X86_LOCAL_APIC 659config X86_LOCAL_APIC
625 def_bool y 660 def_bool y
626 depends on X86_64 || (X86_32 && (X86_UP_APIC || ((X86_VISWS || SMP) && !X86_VOYAGER) || X86_GENERICARCH)) 661 depends on X86_64 || (X86_32 && (X86_UP_APIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH))
627 662
628config X86_IO_APIC 663config X86_IO_APIC
629 def_bool y 664 def_bool y
630 depends on X86_64 || (X86_32 && (X86_UP_IOAPIC || (SMP && !(X86_VISWS || X86_VOYAGER)) || X86_GENERICARCH)) 665 depends on X86_64 || (X86_32 && (X86_UP_IOAPIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH))
631 666
632config X86_VISWS_APIC 667config X86_VISWS_APIC
633 def_bool y 668 def_bool y
@@ -681,7 +716,7 @@ config X86_MCE_NONFATAL
681 716
682config X86_MCE_P4THERMAL 717config X86_MCE_P4THERMAL
683 bool "check for P4 thermal throttling interrupt." 718 bool "check for P4 thermal throttling interrupt."
684 depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP) && !X86_VISWS 719 depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP)
685 help 720 help
686 Enabling this feature will cause a message to be printed when the P4 721 Enabling this feature will cause a message to be printed when the P4
687 enters thermal throttling. 722 enters thermal throttling.
@@ -911,9 +946,9 @@ config X86_PAE
911config NUMA 946config NUMA
912 bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" 947 bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)"
913 depends on SMP 948 depends on SMP
914 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || (X86_SUMMIT || X86_GENERICARCH) && ACPI) && EXPERIMENTAL) 949 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL)
915 default n if X86_PC 950 default n if X86_PC
916 default y if (X86_NUMAQ || X86_SUMMIT) 951 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
917 help 952 help
918 Enable NUMA (Non Uniform Memory Access) support. 953 Enable NUMA (Non Uniform Memory Access) support.
919 The kernel will try to allocate memory used by a CPU on the 954 The kernel will try to allocate memory used by a CPU on the
@@ -965,13 +1000,25 @@ config NUMA_EMU
965 into virtual nodes when booted with "numa=fake=N", where N is the 1000 into virtual nodes when booted with "numa=fake=N", where N is the
966 number of nodes. This is only useful for debugging. 1001 number of nodes. This is only useful for debugging.
967 1002
1003if MAXSMP
1004
968config NODES_SHIFT 1005config NODES_SHIFT
969 int "Max num nodes shift(1-9)" 1006 int
970 range 1 9 if X86_64 1007 default "9"
1008endif
1009
1010if !MAXSMP
1011config NODES_SHIFT
1012 int "Maximum NUMA Nodes (as a power of 2)"
1013 range 1 9 if X86_64
971 default "6" if X86_64 1014 default "6" if X86_64
972 default "4" if X86_NUMAQ 1015 default "4" if X86_NUMAQ
973 default "3" 1016 default "3"
974 depends on NEED_MULTIPLE_NODES 1017 depends on NEED_MULTIPLE_NODES
1018 help
1019 Specify the maximum number of NUMA Nodes available on the target
1020 system. Increases memory reserved to accomodate various tables.
1021endif
975 1022
976config HAVE_ARCH_BOOTMEM_NODE 1023config HAVE_ARCH_BOOTMEM_NODE
977 def_bool y 1024 def_bool y
@@ -1090,6 +1137,37 @@ config MTRR
1090 1137
1091 See <file:Documentation/mtrr.txt> for more information. 1138 See <file:Documentation/mtrr.txt> for more information.
1092 1139
1140config MTRR_SANITIZER
1141 bool
1142 prompt "MTRR cleanup support"
1143 depends on MTRR
1144 help
1145 Convert MTRR layout from continuous to discrete, so X drivers can
1146 add writeback entries.
1147
1148 Can be disabled with disable_mtrr_cleanup on the kernel command line.
1149 The largest mtrr entry size for a continous block can be set with
1150 mtrr_chunk_size.
1151
1152 If unsure, say N.
1153
1154config MTRR_SANITIZER_ENABLE_DEFAULT
1155 int "MTRR cleanup enable value (0-1)"
1156 range 0 1
1157 default "0"
1158 depends on MTRR_SANITIZER
1159 help
1160 Enable mtrr cleanup default value
1161
1162config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT
1163 int "MTRR cleanup spare reg num (0-7)"
1164 range 0 7
1165 default "1"
1166 depends on MTRR_SANITIZER
1167 help
1168 mtrr cleanup spare entries default, it can be changed via
1169 mtrr_spare_reg_nr=N on the kernel command line.
1170
1093config X86_PAT 1171config X86_PAT
1094 bool 1172 bool
1095 prompt "x86 PAT support" 1173 prompt "x86 PAT support"
@@ -1190,7 +1268,6 @@ config KEXEC
1190 1268
1191config CRASH_DUMP 1269config CRASH_DUMP
1192 bool "kernel crash dumps (EXPERIMENTAL)" 1270 bool "kernel crash dumps (EXPERIMENTAL)"
1193 depends on EXPERIMENTAL
1194 depends on X86_64 || (X86_32 && HIGHMEM) 1271 depends on X86_64 || (X86_32 && HIGHMEM)
1195 help 1272 help
1196 Generate crash dump after being started by kexec. 1273 Generate crash dump after being started by kexec.
@@ -1203,6 +1280,14 @@ config CRASH_DUMP
1203 (CONFIG_RELOCATABLE=y). 1280 (CONFIG_RELOCATABLE=y).
1204 For more details see Documentation/kdump/kdump.txt 1281 For more details see Documentation/kdump/kdump.txt
1205 1282
1283config KEXEC_JUMP
1284 bool "kexec jump (EXPERIMENTAL)"
1285 depends on EXPERIMENTAL
1286 depends on KEXEC && HIBERNATION && X86_32
1287 help
1288 Jump between original kernel and kexeced kernel and invoke
1289 code in physical address mode via KEXEC
1290
1206config PHYSICAL_START 1291config PHYSICAL_START
1207 hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) 1292 hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP)
1208 default "0x1000000" if X86_NUMAQ 1293 default "0x1000000" if X86_NUMAQ
@@ -1339,7 +1424,7 @@ config X86_APM_BOOT
1339 1424
1340menuconfig APM 1425menuconfig APM
1341 tristate "APM (Advanced Power Management) BIOS support" 1426 tristate "APM (Advanced Power Management) BIOS support"
1342 depends on X86_32 && PM_SLEEP && !X86_VISWS 1427 depends on X86_32 && PM_SLEEP
1343 ---help--- 1428 ---help---
1344 APM is a BIOS specification for saving power using several different 1429 APM is a BIOS specification for saving power using several different
1345 techniques. This is mostly useful for battery powered laptops with 1430 techniques. This is mostly useful for battery powered laptops with
@@ -1475,8 +1560,7 @@ endmenu
1475menu "Bus options (PCI etc.)" 1560menu "Bus options (PCI etc.)"
1476 1561
1477config PCI 1562config PCI
1478 bool "PCI support" if !X86_VISWS && !X86_VSMP 1563 bool "PCI support"
1479 depends on !X86_VOYAGER
1480 default y 1564 default y
1481 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC) 1565 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC)
1482 help 1566 help
@@ -1487,7 +1571,7 @@ config PCI
1487 1571
1488choice 1572choice
1489 prompt "PCI access mode" 1573 prompt "PCI access mode"
1490 depends on X86_32 && PCI && !X86_VISWS 1574 depends on X86_32 && PCI
1491 default PCI_GOANY 1575 default PCI_GOANY
1492 ---help--- 1576 ---help---
1493 On PCI systems, the BIOS can be used to detect the PCI devices and 1577 On PCI systems, the BIOS can be used to detect the PCI devices and
@@ -1524,12 +1608,12 @@ endchoice
1524 1608
1525config PCI_BIOS 1609config PCI_BIOS
1526 def_bool y 1610 def_bool y
1527 depends on X86_32 && !X86_VISWS && PCI && (PCI_GOBIOS || PCI_GOANY) 1611 depends on X86_32 && PCI && (PCI_GOBIOS || PCI_GOANY)
1528 1612
1529# x86-64 doesn't support PCI BIOS access from long mode so always go direct. 1613# x86-64 doesn't support PCI BIOS access from long mode so always go direct.
1530config PCI_DIRECT 1614config PCI_DIRECT
1531 def_bool y 1615 def_bool y
1532 depends on PCI && (X86_64 || (PCI_GODIRECT || PCI_GOANY || PCI_GOOLPC) || X86_VISWS) 1616 depends on PCI && (X86_64 || (PCI_GODIRECT || PCI_GOANY || PCI_GOOLPC))
1533 1617
1534config PCI_MMCONFIG 1618config PCI_MMCONFIG
1535 def_bool y 1619 def_bool y
@@ -1589,7 +1673,7 @@ if X86_32
1589 1673
1590config ISA 1674config ISA
1591 bool "ISA support" 1675 bool "ISA support"
1592 depends on !(X86_VOYAGER || X86_VISWS) 1676 depends on !X86_VOYAGER
1593 help 1677 help
1594 Find out whether you have ISA slots on your motherboard. ISA is the 1678 Find out whether you have ISA slots on your motherboard. ISA is the
1595 name of a bus system, i.e. the way the CPU talks to the other stuff 1679 name of a bus system, i.e. the way the CPU talks to the other stuff
@@ -1616,7 +1700,7 @@ config EISA
1616source "drivers/eisa/Kconfig" 1700source "drivers/eisa/Kconfig"
1617 1701
1618config MCA 1702config MCA
1619 bool "MCA support" if !(X86_VISWS || X86_VOYAGER) 1703 bool "MCA support" if !X86_VOYAGER
1620 default y if X86_VOYAGER 1704 default y if X86_VOYAGER
1621 help 1705 help
1622 MicroChannel Architecture is found in some IBM PS/2 machines and 1706 MicroChannel Architecture is found in some IBM PS/2 machines and