aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r--arch/x86/Kconfig93
1 files changed, 64 insertions, 29 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 6f20718d3156..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
@@ -167,9 +173,12 @@ config GENERIC_PENDING_IRQ
167config X86_SMP 173config X86_SMP
168 bool 174 bool
169 depends on SMP && ((X86_32 && !X86_VOYAGER) || X86_64) 175 depends on SMP && ((X86_32 && !X86_VOYAGER) || X86_64)
170 select USE_GENERIC_SMP_HELPERS
171 default y 176 default y
172 177
178config USE_GENERIC_SMP_HELPERS
179 def_bool y
180 depends on SMP
181
173config X86_32_SMP 182config X86_32_SMP
174 def_bool y 183 def_bool y
175 depends on X86_32 && SMP 184 depends on X86_32 && SMP
@@ -239,21 +248,13 @@ config X86_FIND_SMP_CONFIG
239 def_bool y 248 def_bool y
240 depends on X86_MPPARSE || X86_VOYAGER 249 depends on X86_MPPARSE || X86_VOYAGER
241 250
242if ACPI
243config X86_MPPARSE 251config X86_MPPARSE
244 def_bool y 252 bool "Enable MPS table" if ACPI
245 bool "Enable MPS table" 253 default y
246 depends on X86_LOCAL_APIC 254 depends on X86_LOCAL_APIC
247 help 255 help
248 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
249 (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
250endif
251
252if !ACPI
253config X86_MPPARSE
254 def_bool y
255 depends on X86_LOCAL_APIC
256endif
257 258
258choice 259choice
259 prompt "Subarchitecture Type" 260 prompt "Subarchitecture Type"
@@ -462,10 +463,6 @@ config X86_CYCLONE_TIMER
462 def_bool y 463 def_bool y
463 depends on X86_GENERICARCH 464 depends on X86_GENERICARCH
464 465
465config ES7000_CLUSTERED_APIC
466 def_bool y
467 depends on SMP && X86_ES7000 && MPENTIUMIII
468
469source "arch/x86/Kconfig.cpu" 466source "arch/x86/Kconfig.cpu"
470 467
471config HPET_TIMER 468config HPET_TIMER
@@ -657,6 +654,30 @@ config X86_VISWS_APIC
657 def_bool y 654 def_bool y
658 depends on X86_32 && X86_VISWS 655 depends on X86_32 && X86_VISWS
659 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
660config X86_MCE 681config X86_MCE
661 bool "Machine Check Exception" 682 bool "Machine Check Exception"
662 depends on !X86_VOYAGER 683 depends on !X86_VOYAGER
@@ -953,24 +974,37 @@ config X86_PAE
953config ARCH_PHYS_ADDR_T_64BIT 974config ARCH_PHYS_ADDR_T_64BIT
954 def_bool X86_64 || X86_PAE 975 def_bool X86_64 || X86_PAE
955 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
956# Common NUMA Features 986# Common NUMA Features
957config NUMA 987config NUMA
958 bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" 988 bool "Numa Memory Allocation and Scheduler Support"
959 depends on SMP 989 depends on SMP
960 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)
961 default n if X86_PC 991 default n if X86_PC
962 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) 992 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
963 help 993 help
964 Enable NUMA (Non Uniform Memory Access) support. 994 Enable NUMA (Non Uniform Memory Access) support.
995
965 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
966 local memory controller of the CPU and add some more 997 local memory controller of the CPU and add some more
967 NUMA awareness to the kernel. 998 NUMA awareness to the kernel.
968 999
969 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
970 used for kernel development. It might also cause boot failures. 1001 (or later), AMD Opteron, or EM64T NUMA.
971 For 64-bit this is recommended on all multiprocessor Opteron systems. 1002
972 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
973 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.
974 1008
975comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" 1009comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI"
976 depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI) 1010 depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI)
@@ -1490,11 +1524,15 @@ config ARCH_ENABLE_MEMORY_HOTPLUG
1490 def_bool y 1524 def_bool y
1491 depends on X86_64 || (X86_32 && HIGHMEM) 1525 depends on X86_64 || (X86_32 && HIGHMEM)
1492 1526
1527config ARCH_ENABLE_MEMORY_HOTREMOVE
1528 def_bool y
1529 depends on MEMORY_HOTPLUG
1530
1493config HAVE_ARCH_EARLY_PFN_TO_NID 1531config HAVE_ARCH_EARLY_PFN_TO_NID
1494 def_bool X86_64 1532 def_bool X86_64
1495 depends on NUMA 1533 depends on NUMA
1496 1534
1497menu "Power management options" 1535menu "Power management and ACPI options"
1498 depends on !X86_VOYAGER 1536 depends on !X86_VOYAGER
1499 1537
1500config ARCH_HIBERNATION_HEADER 1538config ARCH_HIBERNATION_HEADER
@@ -1629,13 +1667,6 @@ config APM_ALLOW_INTS
1629 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
1630 suspend, try setting this to Y. Otherwise, say N. 1668 suspend, try setting this to Y. Otherwise, say N.
1631 1669
1632config APM_REAL_MODE_POWER_OFF
1633 bool "Use real mode APM BIOS call to power off"
1634 help
1635 Use real mode APM BIOS calls to switch off the computer. This is
1636 a work-around for a number of buggy BIOSes. Switch this option on if
1637 your computer crashes instead of powering off properly.
1638
1639endif # APM 1670endif # APM
1640 1671
1641source "arch/x86/kernel/cpu/cpufreq/Kconfig" 1672source "arch/x86/kernel/cpu/cpufreq/Kconfig"
@@ -1894,6 +1925,10 @@ config SYSVIPC_COMPAT
1894endmenu 1925endmenu
1895 1926
1896 1927
1928config HAVE_ATOMIC_IOMAP
1929 def_bool y
1930 depends on X86_32
1931
1897source "net/Kconfig" 1932source "net/Kconfig"
1898 1933
1899source "drivers/Kconfig" 1934source "drivers/Kconfig"