aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r--arch/x86/Kconfig82
1 files changed, 55 insertions, 27 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index ac22bb7719f7..1cbec0269d39 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -19,6 +19,8 @@ config X86_64
19config X86 19config X86
20 def_bool y 20 def_bool y
21 select HAVE_AOUT if X86_32 21 select HAVE_AOUT if X86_32
22 select HAVE_READQ
23 select HAVE_WRITEQ
22 select HAVE_UNSTABLE_SCHED_CLOCK 24 select HAVE_UNSTABLE_SCHED_CLOCK
23 select HAVE_IDE 25 select HAVE_IDE
24 select HAVE_OPROFILE 26 select HAVE_OPROFILE
@@ -87,6 +89,10 @@ config GENERIC_IOMAP
87config GENERIC_BUG 89config GENERIC_BUG
88 def_bool y 90 def_bool y
89 depends on BUG 91 depends on BUG
92 select GENERIC_BUG_RELATIVE_POINTERS if X86_64
93
94config GENERIC_BUG_RELATIVE_POINTERS
95 bool
90 96
91config GENERIC_HWEIGHT 97config GENERIC_HWEIGHT
92 def_bool y 98 def_bool y
@@ -242,21 +248,13 @@ config X86_FIND_SMP_CONFIG
242 def_bool y 248 def_bool y
243 depends on X86_MPPARSE || X86_VOYAGER 249 depends on X86_MPPARSE || X86_VOYAGER
244 250
245if ACPI
246config X86_MPPARSE 251config X86_MPPARSE
247 def_bool y 252 bool "Enable MPS table" if ACPI
248 bool "Enable MPS table" 253 default y
249 depends on X86_LOCAL_APIC 254 depends on X86_LOCAL_APIC
250 help 255 help
251 For old smp systems that do not have proper acpi support. Newer systems 256 For old smp systems that do not have proper acpi support. Newer systems
252 (esp with 64bit cpus) with acpi support, MADT and DSDT will override it 257 (esp with 64bit cpus) with acpi support, MADT and DSDT will override it
253endif
254
255if !ACPI
256config X86_MPPARSE
257 def_bool y
258 depends on X86_LOCAL_APIC
259endif
260 258
261choice 259choice
262 prompt "Subarchitecture Type" 260 prompt "Subarchitecture Type"
@@ -465,10 +463,6 @@ config X86_CYCLONE_TIMER
465 def_bool y 463 def_bool y
466 depends on X86_GENERICARCH 464 depends on X86_GENERICARCH
467 465
468config ES7000_CLUSTERED_APIC
469 def_bool y
470 depends on SMP && X86_ES7000 && MPENTIUMIII
471
472source "arch/x86/Kconfig.cpu" 466source "arch/x86/Kconfig.cpu"
473 467
474config HPET_TIMER 468config HPET_TIMER
@@ -660,6 +654,30 @@ config X86_VISWS_APIC
660 def_bool y 654 def_bool y
661 depends on X86_32 && X86_VISWS 655 depends on X86_32 && X86_VISWS
662 656
657config X86_REROUTE_FOR_BROKEN_BOOT_IRQS
658 bool "Reroute for broken boot IRQs"
659 default n
660 depends on X86_IO_APIC
661 help
662 This option enables a workaround that fixes a source of
663 spurious interrupts. This is recommended when threaded
664 interrupt handling is used on systems where the generation of
665 superfluous "boot interrupts" cannot be disabled.
666
667 Some chipsets generate a legacy INTx "boot IRQ" when the IRQ
668 entry in the chipset's IO-APIC is masked (as, e.g. the RT
669 kernel does during interrupt handling). On chipsets where this
670 boot IRQ generation cannot be disabled, this workaround keeps
671 the original IRQ line masked so that only the equivalent "boot
672 IRQ" is delivered to the CPUs. The workaround also tells the
673 kernel to set up the IRQ handler on the boot IRQ line. In this
674 way only one interrupt is delivered to the kernel. Otherwise
675 the spurious second interrupt may cause the kernel to bring
676 down (vital) interrupt lines.
677
678 Only affects "broken" chipsets. Interrupt sharing may be
679 increased on these systems.
680
663config X86_MCE 681config X86_MCE
664 bool "Machine Check Exception" 682 bool "Machine Check Exception"
665 depends on !X86_VOYAGER 683 depends on !X86_VOYAGER
@@ -956,24 +974,37 @@ config X86_PAE
956config ARCH_PHYS_ADDR_T_64BIT 974config ARCH_PHYS_ADDR_T_64BIT
957 def_bool X86_64 || X86_PAE 975 def_bool X86_64 || X86_PAE
958 976
977config DIRECT_GBPAGES
978 bool "Enable 1GB pages for kernel pagetables" if EMBEDDED
979 default y
980 depends on X86_64
981 help
982 Allow the kernel linear mapping to use 1GB pages on CPUs that
983 support it. This can improve the kernel's performance a tiny bit by
984 reducing TLB pressure. If in doubt, say "Y".
985
959# Common NUMA Features 986# Common NUMA Features
960config NUMA 987config NUMA
961 bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" 988 bool "Numa Memory Allocation and Scheduler Support"
962 depends on SMP 989 depends on SMP
963 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL) 990 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL)
964 default n if X86_PC 991 default n if X86_PC
965 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) 992 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
966 help 993 help
967 Enable NUMA (Non Uniform Memory Access) support. 994 Enable NUMA (Non Uniform Memory Access) support.
995
968 The kernel will try to allocate memory used by a CPU on the 996 The kernel will try to allocate memory used by a CPU on the
969 local memory controller of the CPU and add some more 997 local memory controller of the CPU and add some more
970 NUMA awareness to the kernel. 998 NUMA awareness to the kernel.
971 999
972 For 32-bit this is currently highly experimental and should be only 1000 For 64-bit this is recommended if the system is Intel Core i7
973 used for kernel development. It might also cause boot failures. 1001 (or later), AMD Opteron, or EM64T NUMA.
974 For 64-bit this is recommended on all multiprocessor Opteron systems. 1002
975 If the system is EM64T, you should say N unless your system is 1003 For 32-bit this is only needed on (rare) 32-bit-only platforms
976 EM64T NUMA. 1004 that support NUMA topologies, such as NUMAQ / Summit, or if you
1005 boot a 32-bit kernel on a 64-bit NUMA platform.
1006
1007 Otherwise, you should say N.
977 1008
978comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" 1009comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI"
979 depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI) 1010 depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI)
@@ -1493,6 +1524,10 @@ config ARCH_ENABLE_MEMORY_HOTPLUG
1493 def_bool y 1524 def_bool y
1494 depends on X86_64 || (X86_32 && HIGHMEM) 1525 depends on X86_64 || (X86_32 && HIGHMEM)
1495 1526
1527config ARCH_ENABLE_MEMORY_HOTREMOVE
1528 def_bool y
1529 depends on MEMORY_HOTPLUG
1530
1496config HAVE_ARCH_EARLY_PFN_TO_NID 1531config HAVE_ARCH_EARLY_PFN_TO_NID
1497 def_bool X86_64 1532 def_bool X86_64
1498 depends on NUMA 1533 depends on NUMA
@@ -1632,13 +1667,6 @@ config APM_ALLOW_INTS
1632 many of the newer IBM Thinkpads. If you experience hangs when you 1667 many of the newer IBM Thinkpads. If you experience hangs when you
1633 suspend, try setting this to Y. Otherwise, say N. 1668 suspend, try setting this to Y. Otherwise, say N.
1634 1669
1635config APM_REAL_MODE_POWER_OFF
1636 bool "Use real mode APM BIOS call to power off"
1637 help
1638 Use real mode APM BIOS calls to switch off the computer. This is
1639 a work-around for a number of buggy BIOSes. Switch this option on if
1640 your computer crashes instead of powering off properly.
1641
1642endif # APM 1670endif # APM
1643 1671
1644source "arch/x86/kernel/cpu/cpufreq/Kconfig" 1672source "arch/x86/kernel/cpu/cpufreq/Kconfig"