diff options
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r-- | arch/x86/Kconfig | 93 |
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 | |||
19 | config X86 | 19 | config 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 | |||
87 | config GENERIC_BUG | 89 | config 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 | |||
94 | config GENERIC_BUG_RELATIVE_POINTERS | ||
95 | bool | ||
90 | 96 | ||
91 | config GENERIC_HWEIGHT | 97 | config GENERIC_HWEIGHT |
92 | def_bool y | 98 | def_bool y |
@@ -167,9 +173,12 @@ config GENERIC_PENDING_IRQ | |||
167 | config X86_SMP | 173 | config 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 | ||
178 | config USE_GENERIC_SMP_HELPERS | ||
179 | def_bool y | ||
180 | depends on SMP | ||
181 | |||
173 | config X86_32_SMP | 182 | config 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 | ||
242 | if ACPI | ||
243 | config X86_MPPARSE | 251 | config 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 |
250 | endif | ||
251 | |||
252 | if !ACPI | ||
253 | config X86_MPPARSE | ||
254 | def_bool y | ||
255 | depends on X86_LOCAL_APIC | ||
256 | endif | ||
257 | 258 | ||
258 | choice | 259 | choice |
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 | ||
465 | config ES7000_CLUSTERED_APIC | ||
466 | def_bool y | ||
467 | depends on SMP && X86_ES7000 && MPENTIUMIII | ||
468 | |||
469 | source "arch/x86/Kconfig.cpu" | 466 | source "arch/x86/Kconfig.cpu" |
470 | 467 | ||
471 | config HPET_TIMER | 468 | config 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 | ||
657 | config 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 | |||
660 | config X86_MCE | 681 | config 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 | |||
953 | config ARCH_PHYS_ADDR_T_64BIT | 974 | config ARCH_PHYS_ADDR_T_64BIT |
954 | def_bool X86_64 || X86_PAE | 975 | def_bool X86_64 || X86_PAE |
955 | 976 | ||
977 | config 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 |
957 | config NUMA | 987 | config 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 | ||
975 | comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" | 1009 | comment "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 | ||
1527 | config ARCH_ENABLE_MEMORY_HOTREMOVE | ||
1528 | def_bool y | ||
1529 | depends on MEMORY_HOTPLUG | ||
1530 | |||
1493 | config HAVE_ARCH_EARLY_PFN_TO_NID | 1531 | config 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 | ||
1497 | menu "Power management options" | 1535 | menu "Power management and ACPI options" |
1498 | depends on !X86_VOYAGER | 1536 | depends on !X86_VOYAGER |
1499 | 1537 | ||
1500 | config ARCH_HIBERNATION_HEADER | 1538 | config 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 | ||
1632 | config 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 | |||
1639 | endif # APM | 1670 | endif # APM |
1640 | 1671 | ||
1641 | source "arch/x86/kernel/cpu/cpufreq/Kconfig" | 1672 | source "arch/x86/kernel/cpu/cpufreq/Kconfig" |
@@ -1894,6 +1925,10 @@ config SYSVIPC_COMPAT | |||
1894 | endmenu | 1925 | endmenu |
1895 | 1926 | ||
1896 | 1927 | ||
1928 | config HAVE_ATOMIC_IOMAP | ||
1929 | def_bool y | ||
1930 | depends on X86_32 | ||
1931 | |||
1897 | source "net/Kconfig" | 1932 | source "net/Kconfig" |
1898 | 1933 | ||
1899 | source "drivers/Kconfig" | 1934 | source "drivers/Kconfig" |