diff options
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r-- | arch/x86/Kconfig | 78 |
1 files changed, 51 insertions, 27 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index ab98cca84e1b..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 |
@@ -246,21 +248,13 @@ config X86_FIND_SMP_CONFIG | |||
246 | def_bool y | 248 | def_bool y |
247 | depends on X86_MPPARSE || X86_VOYAGER | 249 | depends on X86_MPPARSE || X86_VOYAGER |
248 | 250 | ||
249 | if ACPI | ||
250 | config X86_MPPARSE | 251 | config X86_MPPARSE |
251 | def_bool y | 252 | bool "Enable MPS table" if ACPI |
252 | bool "Enable MPS table" | 253 | default y |
253 | depends on X86_LOCAL_APIC | 254 | depends on X86_LOCAL_APIC |
254 | help | 255 | help |
255 | 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 |
256 | (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 |
257 | endif | ||
258 | |||
259 | if !ACPI | ||
260 | config X86_MPPARSE | ||
261 | def_bool y | ||
262 | depends on X86_LOCAL_APIC | ||
263 | endif | ||
264 | 258 | ||
265 | choice | 259 | choice |
266 | prompt "Subarchitecture Type" | 260 | prompt "Subarchitecture Type" |
@@ -469,10 +463,6 @@ config X86_CYCLONE_TIMER | |||
469 | def_bool y | 463 | def_bool y |
470 | depends on X86_GENERICARCH | 464 | depends on X86_GENERICARCH |
471 | 465 | ||
472 | config ES7000_CLUSTERED_APIC | ||
473 | def_bool y | ||
474 | depends on SMP && X86_ES7000 && MPENTIUMIII | ||
475 | |||
476 | source "arch/x86/Kconfig.cpu" | 466 | source "arch/x86/Kconfig.cpu" |
477 | 467 | ||
478 | config HPET_TIMER | 468 | config HPET_TIMER |
@@ -664,6 +654,30 @@ config X86_VISWS_APIC | |||
664 | def_bool y | 654 | def_bool y |
665 | depends on X86_32 && X86_VISWS | 655 | depends on X86_32 && X86_VISWS |
666 | 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 | |||
667 | config X86_MCE | 681 | config X86_MCE |
668 | bool "Machine Check Exception" | 682 | bool "Machine Check Exception" |
669 | depends on !X86_VOYAGER | 683 | depends on !X86_VOYAGER |
@@ -960,24 +974,37 @@ config X86_PAE | |||
960 | config ARCH_PHYS_ADDR_T_64BIT | 974 | config ARCH_PHYS_ADDR_T_64BIT |
961 | def_bool X86_64 || X86_PAE | 975 | def_bool X86_64 || X86_PAE |
962 | 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 | |||
963 | # Common NUMA Features | 986 | # Common NUMA Features |
964 | config NUMA | 987 | config NUMA |
965 | bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" | 988 | bool "Numa Memory Allocation and Scheduler Support" |
966 | depends on SMP | 989 | depends on SMP |
967 | 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) |
968 | default n if X86_PC | 991 | default n if X86_PC |
969 | default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) | 992 | default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) |
970 | help | 993 | help |
971 | Enable NUMA (Non Uniform Memory Access) support. | 994 | Enable NUMA (Non Uniform Memory Access) support. |
995 | |||
972 | 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 |
973 | local memory controller of the CPU and add some more | 997 | local memory controller of the CPU and add some more |
974 | NUMA awareness to the kernel. | 998 | NUMA awareness to the kernel. |
975 | 999 | ||
976 | 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 |
977 | used for kernel development. It might also cause boot failures. | 1001 | (or later), AMD Opteron, or EM64T NUMA. |
978 | For 64-bit this is recommended on all multiprocessor Opteron systems. | 1002 | |
979 | 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 |
980 | 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. | ||
981 | 1008 | ||
982 | comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" | 1009 | comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" |
983 | depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI) | 1010 | depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI) |
@@ -1497,6 +1524,10 @@ config ARCH_ENABLE_MEMORY_HOTPLUG | |||
1497 | def_bool y | 1524 | def_bool y |
1498 | depends on X86_64 || (X86_32 && HIGHMEM) | 1525 | depends on X86_64 || (X86_32 && HIGHMEM) |
1499 | 1526 | ||
1527 | config ARCH_ENABLE_MEMORY_HOTREMOVE | ||
1528 | def_bool y | ||
1529 | depends on MEMORY_HOTPLUG | ||
1530 | |||
1500 | config HAVE_ARCH_EARLY_PFN_TO_NID | 1531 | config HAVE_ARCH_EARLY_PFN_TO_NID |
1501 | def_bool X86_64 | 1532 | def_bool X86_64 |
1502 | depends on NUMA | 1533 | depends on NUMA |
@@ -1636,13 +1667,6 @@ config APM_ALLOW_INTS | |||
1636 | 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 |
1637 | suspend, try setting this to Y. Otherwise, say N. | 1668 | suspend, try setting this to Y. Otherwise, say N. |
1638 | 1669 | ||
1639 | config APM_REAL_MODE_POWER_OFF | ||
1640 | bool "Use real mode APM BIOS call to power off" | ||
1641 | help | ||
1642 | Use real mode APM BIOS calls to switch off the computer. This is | ||
1643 | a work-around for a number of buggy BIOSes. Switch this option on if | ||
1644 | your computer crashes instead of powering off properly. | ||
1645 | |||
1646 | endif # APM | 1670 | endif # APM |
1647 | 1671 | ||
1648 | source "arch/x86/kernel/cpu/cpufreq/Kconfig" | 1672 | source "arch/x86/kernel/cpu/cpufreq/Kconfig" |