diff options
author | Andrea Bastoni <bastoni@cs.unc.edu> | 2011-08-27 09:43:54 -0400 |
---|---|---|
committer | Andrea Bastoni <bastoni@cs.unc.edu> | 2011-08-27 10:06:11 -0400 |
commit | 7b1bb388bc879ffcc6c69b567816d5c354afe42b (patch) | |
tree | 5a217fdfb0b5e5a327bdcd624506337c1ae1fe32 /arch/x86/Kconfig | |
parent | 7d754596756240fa918b94cd0c3011c77a638987 (diff) | |
parent | 02f8c6aee8df3cdc935e9bdd4f2d020306035dbe (diff) |
Merge 'Linux v3.0' into Litmus
Some notes:
* Litmus^RT scheduling class is the topmost scheduling class
(above stop_sched_class).
* scheduler_ipi() function (e.g., in smp_reschedule_interrupt())
may increase IPI latencies.
* Added path into schedule() to quickly re-evaluate scheduling
decision without becoming preemptive again. This used to be
a standard path before the removal of BKL.
Conflicts:
Makefile
arch/arm/kernel/calls.S
arch/arm/kernel/smp.c
arch/x86/include/asm/unistd_32.h
arch/x86/kernel/smp.c
arch/x86/kernel/syscall_table_32.S
include/linux/hrtimer.h
kernel/printk.c
kernel/sched.c
kernel/sched_fair.c
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r-- | arch/x86/Kconfig | 330 |
1 files changed, 177 insertions, 153 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 5181ed3a211a..9f5e14388e17 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -1,6 +1,3 @@ | |||
1 | # x86 configuration | ||
2 | mainmenu "Linux Kernel Configuration for x86" | ||
3 | |||
4 | # Select 32 or 64 bit | 1 | # Select 32 or 64 bit |
5 | config 64BIT | 2 | config 64BIT |
6 | bool "64-bit kernel" if ARCH = "x86" | 3 | bool "64-bit kernel" if ARCH = "x86" |
@@ -11,6 +8,7 @@ config 64BIT | |||
11 | 8 | ||
12 | config X86_32 | 9 | config X86_32 |
13 | def_bool !64BIT | 10 | def_bool !64BIT |
11 | select CLKSRC_I8253 | ||
14 | 12 | ||
15 | config X86_64 | 13 | config X86_64 |
16 | def_bool 64BIT | 14 | def_bool 64BIT |
@@ -19,20 +17,21 @@ config X86_64 | |||
19 | config X86 | 17 | config X86 |
20 | def_bool y | 18 | def_bool y |
21 | select HAVE_AOUT if X86_32 | 19 | select HAVE_AOUT if X86_32 |
22 | select HAVE_READQ | ||
23 | select HAVE_WRITEQ | ||
24 | select HAVE_UNSTABLE_SCHED_CLOCK | 20 | select HAVE_UNSTABLE_SCHED_CLOCK |
25 | select HAVE_IDE | 21 | select HAVE_IDE |
26 | select HAVE_OPROFILE | 22 | select HAVE_OPROFILE |
27 | select HAVE_PERF_EVENTS if (!M386 && !M486) | 23 | select HAVE_PERF_EVENTS |
24 | select HAVE_IRQ_WORK | ||
28 | select HAVE_IOREMAP_PROT | 25 | select HAVE_IOREMAP_PROT |
29 | select HAVE_KPROBES | 26 | select HAVE_KPROBES |
27 | select HAVE_MEMBLOCK | ||
30 | select ARCH_WANT_OPTIONAL_GPIOLIB | 28 | select ARCH_WANT_OPTIONAL_GPIOLIB |
31 | select ARCH_WANT_FRAME_POINTERS | 29 | select ARCH_WANT_FRAME_POINTERS |
32 | select HAVE_DMA_ATTRS | 30 | select HAVE_DMA_ATTRS |
33 | select HAVE_KRETPROBES | 31 | select HAVE_KRETPROBES |
34 | select HAVE_OPTPROBES | 32 | select HAVE_OPTPROBES |
35 | select HAVE_FTRACE_MCOUNT_RECORD | 33 | select HAVE_FTRACE_MCOUNT_RECORD |
34 | select HAVE_C_RECORDMCOUNT | ||
36 | select HAVE_DYNAMIC_FTRACE | 35 | select HAVE_DYNAMIC_FTRACE |
37 | select HAVE_FUNCTION_TRACER | 36 | select HAVE_FUNCTION_TRACER |
38 | select HAVE_FUNCTION_GRAPH_TRACER | 37 | select HAVE_FUNCTION_GRAPH_TRACER |
@@ -51,6 +50,7 @@ config X86 | |||
51 | select HAVE_KERNEL_GZIP | 50 | select HAVE_KERNEL_GZIP |
52 | select HAVE_KERNEL_BZIP2 | 51 | select HAVE_KERNEL_BZIP2 |
53 | select HAVE_KERNEL_LZMA | 52 | select HAVE_KERNEL_LZMA |
53 | select HAVE_KERNEL_XZ | ||
54 | select HAVE_KERNEL_LZO | 54 | select HAVE_KERNEL_LZO |
55 | select HAVE_HW_BREAKPOINT | 55 | select HAVE_HW_BREAKPOINT |
56 | select HAVE_MIXED_BREAKPOINTS_REGS | 56 | select HAVE_MIXED_BREAKPOINTS_REGS |
@@ -59,6 +59,17 @@ config X86 | |||
59 | select ANON_INODES | 59 | select ANON_INODES |
60 | select HAVE_ARCH_KMEMCHECK | 60 | select HAVE_ARCH_KMEMCHECK |
61 | select HAVE_USER_RETURN_NOTIFIER | 61 | select HAVE_USER_RETURN_NOTIFIER |
62 | select HAVE_ARCH_JUMP_LABEL | ||
63 | select HAVE_TEXT_POKE_SMP | ||
64 | select HAVE_GENERIC_HARDIRQS | ||
65 | select HAVE_SPARSE_IRQ | ||
66 | select GENERIC_FIND_FIRST_BIT | ||
67 | select GENERIC_IRQ_PROBE | ||
68 | select GENERIC_PENDING_IRQ if SMP | ||
69 | select GENERIC_IRQ_SHOW | ||
70 | select IRQ_FORCED_THREADING | ||
71 | select USE_GENERIC_SMP_HELPERS if SMP | ||
72 | select HAVE_BPF_JIT if (X86_64 && NET) | ||
62 | 73 | ||
63 | config INSTRUCTION_DECODER | 74 | config INSTRUCTION_DECODER |
64 | def_bool (KPROBES || PERF_EVENTS) | 75 | def_bool (KPROBES || PERF_EVENTS) |
@@ -99,7 +110,14 @@ config MMU | |||
99 | def_bool y | 110 | def_bool y |
100 | 111 | ||
101 | config ZONE_DMA | 112 | config ZONE_DMA |
102 | def_bool y | 113 | bool "DMA memory allocation support" if EXPERT |
114 | default y | ||
115 | help | ||
116 | DMA memory allocation support allows devices with less than 32-bit | ||
117 | addressing to allocate within the first 16MB of address space. | ||
118 | Disable if no such devices will be used. | ||
119 | |||
120 | If unsure, say Y. | ||
103 | 121 | ||
104 | config SBUS | 122 | config SBUS |
105 | bool | 123 | bool |
@@ -111,7 +129,7 @@ config NEED_SG_DMA_LENGTH | |||
111 | def_bool y | 129 | def_bool y |
112 | 130 | ||
113 | config GENERIC_ISA_DMA | 131 | config GENERIC_ISA_DMA |
114 | def_bool y | 132 | def_bool ISA_DMA_API |
115 | 133 | ||
116 | config GENERIC_IOMAP | 134 | config GENERIC_IOMAP |
117 | def_bool y | 135 | def_bool y |
@@ -131,7 +149,7 @@ config GENERIC_GPIO | |||
131 | bool | 149 | bool |
132 | 150 | ||
133 | config ARCH_MAY_HAVE_PC_FDC | 151 | config ARCH_MAY_HAVE_PC_FDC |
134 | def_bool y | 152 | def_bool ISA_DMA_API |
135 | 153 | ||
136 | config RWSEM_GENERIC_SPINLOCK | 154 | config RWSEM_GENERIC_SPINLOCK |
137 | def_bool !X86_XADD | 155 | def_bool !X86_XADD |
@@ -193,31 +211,10 @@ config ARCH_SUPPORTS_OPTIMIZED_INLINING | |||
193 | config ARCH_SUPPORTS_DEBUG_PAGEALLOC | 211 | config ARCH_SUPPORTS_DEBUG_PAGEALLOC |
194 | def_bool y | 212 | def_bool y |
195 | 213 | ||
196 | config HAVE_EARLY_RES | ||
197 | def_bool y | ||
198 | |||
199 | config HAVE_INTEL_TXT | 214 | config HAVE_INTEL_TXT |
200 | def_bool y | 215 | def_bool y |
201 | depends on EXPERIMENTAL && DMAR && ACPI | 216 | depends on EXPERIMENTAL && DMAR && ACPI |
202 | 217 | ||
203 | # Use the generic interrupt handling code in kernel/irq/: | ||
204 | config GENERIC_HARDIRQS | ||
205 | def_bool y | ||
206 | |||
207 | config GENERIC_HARDIRQS_NO__DO_IRQ | ||
208 | def_bool y | ||
209 | |||
210 | config GENERIC_IRQ_PROBE | ||
211 | def_bool y | ||
212 | |||
213 | config GENERIC_PENDING_IRQ | ||
214 | def_bool y | ||
215 | depends on GENERIC_HARDIRQS && SMP | ||
216 | |||
217 | config USE_GENERIC_SMP_HELPERS | ||
218 | def_bool y | ||
219 | depends on SMP | ||
220 | |||
221 | config X86_32_SMP | 218 | config X86_32_SMP |
222 | def_bool y | 219 | def_bool y |
223 | depends on X86_32 && SMP | 220 | depends on X86_32 && SMP |
@@ -230,10 +227,6 @@ config X86_HT | |||
230 | def_bool y | 227 | def_bool y |
231 | depends on SMP | 228 | depends on SMP |
232 | 229 | ||
233 | config X86_TRAMPOLINE | ||
234 | def_bool y | ||
235 | depends on SMP || (64BIT && ACPI_SLEEP) | ||
236 | |||
237 | config X86_32_LAZY_GS | 230 | config X86_32_LAZY_GS |
238 | def_bool y | 231 | def_bool y |
239 | depends on X86_32 && !CC_STACKPROTECTOR | 232 | depends on X86_32 && !CC_STACKPROTECTOR |
@@ -296,23 +289,6 @@ config X86_X2APIC | |||
296 | 289 | ||
297 | If you don't know what to do here, say N. | 290 | If you don't know what to do here, say N. |
298 | 291 | ||
299 | config SPARSE_IRQ | ||
300 | bool "Support sparse irq numbering" | ||
301 | depends on PCI_MSI || HT_IRQ | ||
302 | ---help--- | ||
303 | This enables support for sparse irqs. This is useful for distro | ||
304 | kernels that want to define a high CONFIG_NR_CPUS value but still | ||
305 | want to have low kernel memory footprint on smaller machines. | ||
306 | |||
307 | ( Sparse IRQs can also be beneficial on NUMA boxes, as they spread | ||
308 | out the irq_desc[] array in a more NUMA-friendly way. ) | ||
309 | |||
310 | If you don't know what to do here, say N. | ||
311 | |||
312 | config NUMA_IRQ_DESC | ||
313 | def_bool y | ||
314 | depends on SPARSE_IRQ && NUMA | ||
315 | |||
316 | config X86_MPPARSE | 292 | config X86_MPPARSE |
317 | bool "Enable MPS table" if ACPI | 293 | bool "Enable MPS table" if ACPI |
318 | default y | 294 | default y |
@@ -372,6 +348,7 @@ endif | |||
372 | 348 | ||
373 | config X86_VSMP | 349 | config X86_VSMP |
374 | bool "ScaleMP vSMP" | 350 | bool "ScaleMP vSMP" |
351 | select PARAVIRT_GUEST | ||
375 | select PARAVIRT | 352 | select PARAVIRT |
376 | depends on X86_64 && PCI | 353 | depends on X86_64 && PCI |
377 | depends on X86_EXTENDED_PLATFORM | 354 | depends on X86_EXTENDED_PLATFORM |
@@ -393,16 +370,19 @@ config X86_UV | |||
393 | # Following is an alphabetically sorted list of 32 bit extended platforms | 370 | # Following is an alphabetically sorted list of 32 bit extended platforms |
394 | # Please maintain the alphabetic order if and when there are additions | 371 | # Please maintain the alphabetic order if and when there are additions |
395 | 372 | ||
396 | config X86_ELAN | 373 | config X86_INTEL_CE |
397 | bool "AMD Elan" | 374 | bool "CE4100 TV platform" |
375 | depends on PCI | ||
376 | depends on PCI_GODIRECT | ||
398 | depends on X86_32 | 377 | depends on X86_32 |
399 | depends on X86_EXTENDED_PLATFORM | 378 | depends on X86_EXTENDED_PLATFORM |
379 | select X86_REBOOTFIXUPS | ||
380 | select OF | ||
381 | select OF_EARLY_FLATTREE | ||
400 | ---help--- | 382 | ---help--- |
401 | Select this for an AMD Elan processor. | 383 | Select for the Intel CE media processor (CE4100) SOC. |
402 | 384 | This option compiles in support for the CE4100 SOC for settop | |
403 | Do not use this option for K6/Athlon/Opteron processors! | 385 | boxes and media devices. |
404 | |||
405 | If unsure, choose "PC-compatible" instead. | ||
406 | 386 | ||
407 | config X86_MRST | 387 | config X86_MRST |
408 | bool "Moorestown MID platform" | 388 | bool "Moorestown MID platform" |
@@ -412,6 +392,10 @@ config X86_MRST | |||
412 | depends on X86_EXTENDED_PLATFORM | 392 | depends on X86_EXTENDED_PLATFORM |
413 | depends on X86_IO_APIC | 393 | depends on X86_IO_APIC |
414 | select APB_TIMER | 394 | select APB_TIMER |
395 | select I2C | ||
396 | select SPI | ||
397 | select INTEL_SCU_IPC | ||
398 | select X86_PLATFORM_DEVICES | ||
415 | ---help--- | 399 | ---help--- |
416 | Moorestown is Intel's Low Power Intel Architecture (LPIA) based Moblin | 400 | Moorestown is Intel's Low Power Intel Architecture (LPIA) based Moblin |
417 | Internet Device(MID) platform. Moorestown consists of two chips: | 401 | Internet Device(MID) platform. Moorestown consists of two chips: |
@@ -493,6 +477,19 @@ config X86_ES7000 | |||
493 | Support for Unisys ES7000 systems. Say 'Y' here if this kernel is | 477 | Support for Unisys ES7000 systems. Say 'Y' here if this kernel is |
494 | supposed to run on an IA32-based Unisys ES7000 system. | 478 | supposed to run on an IA32-based Unisys ES7000 system. |
495 | 479 | ||
480 | config X86_32_IRIS | ||
481 | tristate "Eurobraille/Iris poweroff module" | ||
482 | depends on X86_32 | ||
483 | ---help--- | ||
484 | The Iris machines from EuroBraille do not have APM or ACPI support | ||
485 | to shut themselves down properly. A special I/O sequence is | ||
486 | needed to do so, which is what this module does at | ||
487 | kernel shutdown. | ||
488 | |||
489 | This is only for Iris machines from EuroBraille. | ||
490 | |||
491 | If unused, say N. | ||
492 | |||
496 | config SCHED_OMIT_FRAME_POINTER | 493 | config SCHED_OMIT_FRAME_POINTER |
497 | def_bool y | 494 | def_bool y |
498 | prompt "Single-depth WCHAN output" | 495 | prompt "Single-depth WCHAN output" |
@@ -517,25 +514,6 @@ if PARAVIRT_GUEST | |||
517 | 514 | ||
518 | source "arch/x86/xen/Kconfig" | 515 | source "arch/x86/xen/Kconfig" |
519 | 516 | ||
520 | config VMI | ||
521 | bool "VMI Guest support (DEPRECATED)" | ||
522 | select PARAVIRT | ||
523 | depends on X86_32 | ||
524 | ---help--- | ||
525 | VMI provides a paravirtualized interface to the VMware ESX server | ||
526 | (it could be used by other hypervisors in theory too, but is not | ||
527 | at the moment), by linking the kernel to a GPL-ed ROM module | ||
528 | provided by the hypervisor. | ||
529 | |||
530 | As of September 2009, VMware has started a phased retirement | ||
531 | of this feature from VMware's products. Please see | ||
532 | feature-removal-schedule.txt for details. If you are | ||
533 | planning to enable this option, please note that you cannot | ||
534 | live migrate a VMI enabled VM to a future VMware product, | ||
535 | which doesn't support VMI. So if you expect your kernel to | ||
536 | seamlessly migrate to newer VMware products, keep this | ||
537 | disabled. | ||
538 | |||
539 | config KVM_CLOCK | 517 | config KVM_CLOCK |
540 | bool "KVM paravirtualized clock" | 518 | bool "KVM paravirtualized clock" |
541 | select PARAVIRT | 519 | select PARAVIRT |
@@ -590,16 +568,7 @@ config PARAVIRT_DEBUG | |||
590 | a paravirt_op is missing when it is called. | 568 | a paravirt_op is missing when it is called. |
591 | 569 | ||
592 | config NO_BOOTMEM | 570 | config NO_BOOTMEM |
593 | default y | 571 | def_bool y |
594 | bool "Disable Bootmem code" | ||
595 | ---help--- | ||
596 | Use early_res directly instead of bootmem before slab is ready. | ||
597 | - allocator (buddy) [generic] | ||
598 | - early allocator (bootmem) [generic] | ||
599 | - very early allocator (reserve_early*()) [x86] | ||
600 | - very very early allocator (early brk model) [x86] | ||
601 | So reduce one layer between early allocator to final allocator | ||
602 | |||
603 | 572 | ||
604 | config MEMTEST | 573 | config MEMTEST |
605 | bool "Memtest" | 574 | bool "Memtest" |
@@ -655,11 +624,11 @@ config APB_TIMER | |||
655 | as it is off-chip. APB timers are always running regardless of CPU | 624 | as it is off-chip. APB timers are always running regardless of CPU |
656 | C states, they are used as per CPU clockevent device when possible. | 625 | C states, they are used as per CPU clockevent device when possible. |
657 | 626 | ||
658 | # Mark as embedded because too many people got it wrong. | 627 | # Mark as expert because too many people got it wrong. |
659 | # The code disables itself when not needed. | 628 | # The code disables itself when not needed. |
660 | config DMI | 629 | config DMI |
661 | default y | 630 | default y |
662 | bool "Enable DMI scanning" if EMBEDDED | 631 | bool "Enable DMI scanning" if EXPERT |
663 | ---help--- | 632 | ---help--- |
664 | Enabled scanning of DMI to identify machine quirks. Say Y | 633 | Enabled scanning of DMI to identify machine quirks. Say Y |
665 | here unless you have verified that your setup is not | 634 | here unless you have verified that your setup is not |
@@ -667,10 +636,10 @@ config DMI | |||
667 | BIOS code. | 636 | BIOS code. |
668 | 637 | ||
669 | config GART_IOMMU | 638 | config GART_IOMMU |
670 | bool "GART IOMMU support" if EMBEDDED | 639 | bool "GART IOMMU support" if EXPERT |
671 | default y | 640 | default y |
672 | select SWIOTLB | 641 | select SWIOTLB |
673 | depends on X86_64 && PCI && K8_NB | 642 | depends on X86_64 && PCI && AMD_NB |
674 | ---help--- | 643 | ---help--- |
675 | Support for full DMA access of devices with 32bit memory access only | 644 | Support for full DMA access of devices with 32bit memory access only |
676 | on systems with more than 3GB. This is usually needed for USB, | 645 | on systems with more than 3GB. This is usually needed for USB, |
@@ -715,6 +684,7 @@ config AMD_IOMMU | |||
715 | bool "AMD IOMMU support" | 684 | bool "AMD IOMMU support" |
716 | select SWIOTLB | 685 | select SWIOTLB |
717 | select PCI_MSI | 686 | select PCI_MSI |
687 | select PCI_IOV | ||
718 | depends on X86_64 && PCI && ACPI | 688 | depends on X86_64 && PCI && ACPI |
719 | ---help--- | 689 | ---help--- |
720 | With this option you can enable support for AMD IOMMU hardware in | 690 | With this option you can enable support for AMD IOMMU hardware in |
@@ -795,6 +765,17 @@ config SCHED_MC | |||
795 | making when dealing with multi-core CPU chips at a cost of slightly | 765 | making when dealing with multi-core CPU chips at a cost of slightly |
796 | increased overhead in some places. If unsure say N here. | 766 | increased overhead in some places. If unsure say N here. |
797 | 767 | ||
768 | config IRQ_TIME_ACCOUNTING | ||
769 | bool "Fine granularity task level IRQ time accounting" | ||
770 | default n | ||
771 | ---help--- | ||
772 | Select this option to enable fine granularity task irq time | ||
773 | accounting. This is done by reading a timestamp on each | ||
774 | transitions between softirq and hardirq state, so there can be a | ||
775 | small performance impact. | ||
776 | |||
777 | If in doubt, say N here. | ||
778 | |||
798 | source "kernel/Kconfig.preempt" | 779 | source "kernel/Kconfig.preempt" |
799 | 780 | ||
800 | config X86_UP_APIC | 781 | config X86_UP_APIC |
@@ -828,7 +809,7 @@ config X86_LOCAL_APIC | |||
828 | 809 | ||
829 | config X86_IO_APIC | 810 | config X86_IO_APIC |
830 | def_bool y | 811 | def_bool y |
831 | depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC | 812 | depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_IOAPIC |
832 | 813 | ||
833 | config X86_VISWS_APIC | 814 | config X86_VISWS_APIC |
834 | def_bool y | 815 | def_bool y |
@@ -906,7 +887,7 @@ config X86_THERMAL_VECTOR | |||
906 | depends on X86_MCE_INTEL | 887 | depends on X86_MCE_INTEL |
907 | 888 | ||
908 | config VM86 | 889 | config VM86 |
909 | bool "Enable VM86 support" if EMBEDDED | 890 | bool "Enable VM86 support" if EXPERT |
910 | default y | 891 | default y |
911 | depends on X86_32 | 892 | depends on X86_32 |
912 | ---help--- | 893 | ---help--- |
@@ -933,6 +914,7 @@ config TOSHIBA | |||
933 | 914 | ||
934 | config I8K | 915 | config I8K |
935 | tristate "Dell laptop support" | 916 | tristate "Dell laptop support" |
917 | select HWMON | ||
936 | ---help--- | 918 | ---help--- |
937 | This adds a driver to safely access the System Management Mode | 919 | This adds a driver to safely access the System Management Mode |
938 | of the CPU on the Dell Inspiron 8000. The System Management Mode | 920 | of the CPU on the Dell Inspiron 8000. The System Management Mode |
@@ -1090,7 +1072,7 @@ endchoice | |||
1090 | 1072 | ||
1091 | choice | 1073 | choice |
1092 | depends on EXPERIMENTAL | 1074 | depends on EXPERIMENTAL |
1093 | prompt "Memory split" if EMBEDDED | 1075 | prompt "Memory split" if EXPERT |
1094 | default VMSPLIT_3G | 1076 | default VMSPLIT_3G |
1095 | depends on X86_32 | 1077 | depends on X86_32 |
1096 | ---help--- | 1078 | ---help--- |
@@ -1148,8 +1130,11 @@ config X86_PAE | |||
1148 | config ARCH_PHYS_ADDR_T_64BIT | 1130 | config ARCH_PHYS_ADDR_T_64BIT |
1149 | def_bool X86_64 || X86_PAE | 1131 | def_bool X86_64 || X86_PAE |
1150 | 1132 | ||
1133 | config ARCH_DMA_ADDR_T_64BIT | ||
1134 | def_bool X86_64 || HIGHMEM64G | ||
1135 | |||
1151 | config DIRECT_GBPAGES | 1136 | config DIRECT_GBPAGES |
1152 | bool "Enable 1GB pages for kernel pagetables" if EMBEDDED | 1137 | bool "Enable 1GB pages for kernel pagetables" if EXPERT |
1153 | default y | 1138 | default y |
1154 | depends on X86_64 | 1139 | depends on X86_64 |
1155 | ---help--- | 1140 | ---help--- |
@@ -1182,16 +1167,16 @@ config NUMA | |||
1182 | comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" | 1167 | comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" |
1183 | depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI) | 1168 | depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI) |
1184 | 1169 | ||
1185 | config K8_NUMA | 1170 | config AMD_NUMA |
1186 | def_bool y | 1171 | def_bool y |
1187 | prompt "Old style AMD Opteron NUMA detection" | 1172 | prompt "Old style AMD Opteron NUMA detection" |
1188 | depends on X86_64 && NUMA && PCI | 1173 | depends on X86_64 && NUMA && PCI |
1189 | ---help--- | 1174 | ---help--- |
1190 | Enable K8 NUMA node topology detection. You should say Y here if | 1175 | Enable AMD NUMA node topology detection. You should say Y here if |
1191 | you have a multi processor AMD K8 system. This uses an old | 1176 | you have a multi processor AMD system. This uses an old method to |
1192 | method to read the NUMA configuration directly from the builtin | 1177 | read the NUMA configuration directly from the builtin Northbridge |
1193 | Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA | 1178 | of Opteron. It is recommended to use X86_64_ACPI_NUMA instead, |
1194 | instead, which also takes priority if both are compiled in. | 1179 | which also takes priority if both are compiled in. |
1195 | 1180 | ||
1196 | config X86_64_ACPI_NUMA | 1181 | config X86_64_ACPI_NUMA |
1197 | def_bool y | 1182 | def_bool y |
@@ -1212,7 +1197,7 @@ config NODES_SPAN_OTHER_NODES | |||
1212 | 1197 | ||
1213 | config NUMA_EMU | 1198 | config NUMA_EMU |
1214 | bool "NUMA emulation" | 1199 | bool "NUMA emulation" |
1215 | depends on X86_64 && NUMA | 1200 | depends on NUMA |
1216 | ---help--- | 1201 | ---help--- |
1217 | Enable NUMA emulation. A flat machine will be split | 1202 | Enable NUMA emulation. A flat machine will be split |
1218 | into virtual nodes when booted with "numa=fake=N", where N is the | 1203 | into virtual nodes when booted with "numa=fake=N", where N is the |
@@ -1234,6 +1219,10 @@ config HAVE_ARCH_BOOTMEM | |||
1234 | def_bool y | 1219 | def_bool y |
1235 | depends on X86_32 && NUMA | 1220 | depends on X86_32 && NUMA |
1236 | 1221 | ||
1222 | config HAVE_ARCH_ALLOC_REMAP | ||
1223 | def_bool y | ||
1224 | depends on X86_32 && NUMA | ||
1225 | |||
1237 | config ARCH_HAVE_MEMORY_PRESENT | 1226 | config ARCH_HAVE_MEMORY_PRESENT |
1238 | def_bool y | 1227 | def_bool y |
1239 | depends on X86_32 && DISCONTIGMEM | 1228 | depends on X86_32 && DISCONTIGMEM |
@@ -1242,13 +1231,9 @@ config NEED_NODE_MEMMAP_SIZE | |||
1242 | def_bool y | 1231 | def_bool y |
1243 | depends on X86_32 && (DISCONTIGMEM || SPARSEMEM) | 1232 | depends on X86_32 && (DISCONTIGMEM || SPARSEMEM) |
1244 | 1233 | ||
1245 | config HAVE_ARCH_ALLOC_REMAP | ||
1246 | def_bool y | ||
1247 | depends on X86_32 && NUMA | ||
1248 | |||
1249 | config ARCH_FLATMEM_ENABLE | 1234 | config ARCH_FLATMEM_ENABLE |
1250 | def_bool y | 1235 | def_bool y |
1251 | depends on X86_32 && ARCH_SELECT_MEMORY_MODEL && !NUMA | 1236 | depends on X86_32 && !NUMA |
1252 | 1237 | ||
1253 | config ARCH_DISCONTIGMEM_ENABLE | 1238 | config ARCH_DISCONTIGMEM_ENABLE |
1254 | def_bool y | 1239 | def_bool y |
@@ -1258,20 +1243,16 @@ config ARCH_DISCONTIGMEM_DEFAULT | |||
1258 | def_bool y | 1243 | def_bool y |
1259 | depends on NUMA && X86_32 | 1244 | depends on NUMA && X86_32 |
1260 | 1245 | ||
1261 | config ARCH_PROC_KCORE_TEXT | ||
1262 | def_bool y | ||
1263 | depends on X86_64 && PROC_KCORE | ||
1264 | |||
1265 | config ARCH_SPARSEMEM_DEFAULT | ||
1266 | def_bool y | ||
1267 | depends on X86_64 | ||
1268 | |||
1269 | config ARCH_SPARSEMEM_ENABLE | 1246 | config ARCH_SPARSEMEM_ENABLE |
1270 | def_bool y | 1247 | def_bool y |
1271 | depends on X86_64 || NUMA || (EXPERIMENTAL && X86_32) || X86_32_NON_STANDARD | 1248 | depends on X86_64 || NUMA || (EXPERIMENTAL && X86_32) || X86_32_NON_STANDARD |
1272 | select SPARSEMEM_STATIC if X86_32 | 1249 | select SPARSEMEM_STATIC if X86_32 |
1273 | select SPARSEMEM_VMEMMAP_ENABLE if X86_64 | 1250 | select SPARSEMEM_VMEMMAP_ENABLE if X86_64 |
1274 | 1251 | ||
1252 | config ARCH_SPARSEMEM_DEFAULT | ||
1253 | def_bool y | ||
1254 | depends on X86_64 | ||
1255 | |||
1275 | config ARCH_SELECT_MEMORY_MODEL | 1256 | config ARCH_SELECT_MEMORY_MODEL |
1276 | def_bool y | 1257 | def_bool y |
1277 | depends on ARCH_SPARSEMEM_ENABLE | 1258 | depends on ARCH_SPARSEMEM_ENABLE |
@@ -1280,6 +1261,10 @@ config ARCH_MEMORY_PROBE | |||
1280 | def_bool X86_64 | 1261 | def_bool X86_64 |
1281 | depends on MEMORY_HOTPLUG | 1262 | depends on MEMORY_HOTPLUG |
1282 | 1263 | ||
1264 | config ARCH_PROC_KCORE_TEXT | ||
1265 | def_bool y | ||
1266 | depends on X86_64 && PROC_KCORE | ||
1267 | |||
1283 | config ILLEGAL_POINTER_VALUE | 1268 | config ILLEGAL_POINTER_VALUE |
1284 | hex | 1269 | hex |
1285 | default 0 if X86_32 | 1270 | default 0 if X86_32 |
@@ -1326,25 +1311,34 @@ config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK | |||
1326 | Set whether the default state of memory_corruption_check is | 1311 | Set whether the default state of memory_corruption_check is |
1327 | on or off. | 1312 | on or off. |
1328 | 1313 | ||
1329 | config X86_RESERVE_LOW_64K | 1314 | config X86_RESERVE_LOW |
1330 | bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen" | 1315 | int "Amount of low memory, in kilobytes, to reserve for the BIOS" |
1331 | default y | 1316 | default 64 |
1317 | range 4 640 | ||
1332 | ---help--- | 1318 | ---help--- |
1333 | Reserve the first 64K of physical RAM on BIOSes that are known | 1319 | Specify the amount of low memory to reserve for the BIOS. |
1334 | to potentially corrupt that memory range. A numbers of BIOSes are | 1320 | |
1335 | known to utilize this area during suspend/resume, so it must not | 1321 | The first page contains BIOS data structures that the kernel |
1336 | be used by the kernel. | 1322 | must not use, so that page must always be reserved. |
1337 | 1323 | ||
1338 | Set this to N if you are absolutely sure that you trust the BIOS | 1324 | By default we reserve the first 64K of physical RAM, as a |
1339 | to get all its memory reservations and usages right. | 1325 | number of BIOSes are known to corrupt that memory range |
1326 | during events such as suspend/resume or monitor cable | ||
1327 | insertion, so it must not be used by the kernel. | ||
1340 | 1328 | ||
1341 | If you have doubts about the BIOS (e.g. suspend/resume does not | 1329 | You can set this to 4 if you are absolutely sure that you |
1342 | work or there's kernel crashes after certain hardware hotplug | 1330 | trust the BIOS to get all its memory reservations and usages |
1343 | events) and it's not AMI or Phoenix, then you might want to enable | 1331 | right. If you know your BIOS have problems beyond the |
1344 | X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical | 1332 | default 64K area, you can set this to 640 to avoid using the |
1345 | corruption patterns. | 1333 | entire low memory range. |
1346 | 1334 | ||
1347 | Say Y if unsure. | 1335 | If you have doubts about the BIOS (e.g. suspend/resume does |
1336 | not work or there's kernel crashes after certain hardware | ||
1337 | hotplug events) then you might want to enable | ||
1338 | X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check | ||
1339 | typical corruption patterns. | ||
1340 | |||
1341 | Leave this to the default value of 64 if you are unsure. | ||
1348 | 1342 | ||
1349 | config MATH_EMULATION | 1343 | config MATH_EMULATION |
1350 | bool | 1344 | bool |
@@ -1374,7 +1368,7 @@ config MATH_EMULATION | |||
1374 | 1368 | ||
1375 | config MTRR | 1369 | config MTRR |
1376 | def_bool y | 1370 | def_bool y |
1377 | prompt "MTRR (Memory Type Range Register) support" if EMBEDDED | 1371 | prompt "MTRR (Memory Type Range Register) support" if EXPERT |
1378 | ---help--- | 1372 | ---help--- |
1379 | On Intel P6 family processors (Pentium Pro, Pentium II and later) | 1373 | On Intel P6 family processors (Pentium Pro, Pentium II and later) |
1380 | the Memory Type Range Registers (MTRRs) may be used to control | 1374 | the Memory Type Range Registers (MTRRs) may be used to control |
@@ -1440,7 +1434,7 @@ config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT | |||
1440 | 1434 | ||
1441 | config X86_PAT | 1435 | config X86_PAT |
1442 | def_bool y | 1436 | def_bool y |
1443 | prompt "x86 PAT support" if EMBEDDED | 1437 | prompt "x86 PAT support" if EXPERT |
1444 | depends on MTRR | 1438 | depends on MTRR |
1445 | ---help--- | 1439 | ---help--- |
1446 | Use PAT attributes to setup page level cache control. | 1440 | Use PAT attributes to setup page level cache control. |
@@ -1544,7 +1538,7 @@ config KEXEC_JUMP | |||
1544 | code in physical address mode via KEXEC | 1538 | code in physical address mode via KEXEC |
1545 | 1539 | ||
1546 | config PHYSICAL_START | 1540 | config PHYSICAL_START |
1547 | hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) | 1541 | hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP) |
1548 | default "0x1000000" | 1542 | default "0x1000000" |
1549 | ---help--- | 1543 | ---help--- |
1550 | This gives the physical address where the kernel is loaded. | 1544 | This gives the physical address where the kernel is loaded. |
@@ -1705,12 +1699,8 @@ config ARCH_ENABLE_MEMORY_HOTREMOVE | |||
1705 | def_bool y | 1699 | def_bool y |
1706 | depends on MEMORY_HOTPLUG | 1700 | depends on MEMORY_HOTPLUG |
1707 | 1701 | ||
1708 | config HAVE_ARCH_EARLY_PFN_TO_NID | ||
1709 | def_bool X86_64 | ||
1710 | depends on NUMA | ||
1711 | |||
1712 | config USE_PERCPU_NUMA_NODE_ID | 1702 | config USE_PERCPU_NUMA_NODE_ID |
1713 | def_bool X86_64 | 1703 | def_bool y |
1714 | depends on NUMA | 1704 | depends on NUMA |
1715 | 1705 | ||
1716 | menu "Power management and ACPI options" | 1706 | menu "Power management and ACPI options" |
@@ -1850,7 +1840,7 @@ config APM_ALLOW_INTS | |||
1850 | 1840 | ||
1851 | endif # APM | 1841 | endif # APM |
1852 | 1842 | ||
1853 | source "arch/x86/kernel/cpu/cpufreq/Kconfig" | 1843 | source "drivers/cpufreq/Kconfig" |
1854 | 1844 | ||
1855 | source "drivers/cpuidle/Kconfig" | 1845 | source "drivers/cpuidle/Kconfig" |
1856 | 1846 | ||
@@ -1900,7 +1890,7 @@ config PCI_GODIRECT | |||
1900 | bool "Direct" | 1890 | bool "Direct" |
1901 | 1891 | ||
1902 | config PCI_GOOLPC | 1892 | config PCI_GOOLPC |
1903 | bool "OLPC" | 1893 | bool "OLPC XO-1" |
1904 | depends on OLPC | 1894 | depends on OLPC |
1905 | 1895 | ||
1906 | config PCI_GOANY | 1896 | config PCI_GOANY |
@@ -1925,6 +1915,11 @@ config PCI_OLPC | |||
1925 | def_bool y | 1915 | def_bool y |
1926 | depends on PCI && OLPC && (PCI_GOOLPC || PCI_GOANY) | 1916 | depends on PCI && OLPC && (PCI_GOOLPC || PCI_GOANY) |
1927 | 1917 | ||
1918 | config PCI_XEN | ||
1919 | def_bool y | ||
1920 | depends on PCI && XEN | ||
1921 | select SWIOTLB_XEN | ||
1922 | |||
1928 | config PCI_DOMAINS | 1923 | config PCI_DOMAINS |
1929 | def_bool y | 1924 | def_bool y |
1930 | depends on PCI | 1925 | depends on PCI |
@@ -1934,13 +1929,19 @@ config PCI_MMCONFIG | |||
1934 | depends on X86_64 && PCI && ACPI | 1929 | depends on X86_64 && PCI && ACPI |
1935 | 1930 | ||
1936 | config PCI_CNB20LE_QUIRK | 1931 | config PCI_CNB20LE_QUIRK |
1937 | bool "Read CNB20LE Host Bridge Windows" | 1932 | bool "Read CNB20LE Host Bridge Windows" if EXPERT |
1938 | depends on PCI | 1933 | default n |
1934 | depends on PCI && EXPERIMENTAL | ||
1939 | help | 1935 | help |
1940 | Read the PCI windows out of the CNB20LE host bridge. This allows | 1936 | Read the PCI windows out of the CNB20LE host bridge. This allows |
1941 | PCI hotplug to work on systems with the CNB20LE chipset which do | 1937 | PCI hotplug to work on systems with the CNB20LE chipset which do |
1942 | not have ACPI. | 1938 | not have ACPI. |
1943 | 1939 | ||
1940 | There's no public spec for this chipset, and this functionality | ||
1941 | is known to be incomplete. | ||
1942 | |||
1943 | You should say N unless you know you need this. | ||
1944 | |||
1944 | config DMAR | 1945 | config DMAR |
1945 | bool "Support for DMA Remapping Devices (EXPERIMENTAL)" | 1946 | bool "Support for DMA Remapping Devices (EXPERIMENTAL)" |
1946 | depends on PCI_MSI && ACPI && EXPERIMENTAL | 1947 | depends on PCI_MSI && ACPI && EXPERIMENTAL |
@@ -1994,9 +1995,13 @@ source "drivers/pci/pcie/Kconfig" | |||
1994 | 1995 | ||
1995 | source "drivers/pci/Kconfig" | 1996 | source "drivers/pci/Kconfig" |
1996 | 1997 | ||
1997 | # x86_64 have no ISA slots, but do have ISA-style DMA. | 1998 | # x86_64 have no ISA slots, but can have ISA-style DMA. |
1998 | config ISA_DMA_API | 1999 | config ISA_DMA_API |
1999 | def_bool y | 2000 | bool "ISA-style DMA support" if (X86_64 && EXPERT) |
2001 | default y | ||
2002 | help | ||
2003 | Enables ISA-style DMA support for devices requiring such controllers. | ||
2004 | If unsure, say Y. | ||
2000 | 2005 | ||
2001 | if X86_32 | 2006 | if X86_32 |
2002 | 2007 | ||
@@ -2060,23 +2065,23 @@ config SCx200HR_TIMER | |||
2060 | 2065 | ||
2061 | config OLPC | 2066 | config OLPC |
2062 | bool "One Laptop Per Child support" | 2067 | bool "One Laptop Per Child support" |
2068 | depends on !X86_PAE | ||
2063 | select GPIOLIB | 2069 | select GPIOLIB |
2070 | select OF | ||
2071 | select OF_PROMTREE | ||
2064 | ---help--- | 2072 | ---help--- |
2065 | Add support for detecting the unique features of the OLPC | 2073 | Add support for detecting the unique features of the OLPC |
2066 | XO hardware. | 2074 | XO hardware. |
2067 | 2075 | ||
2068 | config OLPC_OPENFIRMWARE | 2076 | config OLPC_XO1 |
2069 | bool "Support for OLPC's Open Firmware" | 2077 | tristate "OLPC XO-1 support" |
2070 | depends on !X86_64 && !X86_PAE | 2078 | depends on OLPC && MFD_CS5535 |
2071 | default y if OLPC | 2079 | ---help--- |
2072 | help | 2080 | Add support for non-essential features of the OLPC XO-1 laptop. |
2073 | This option adds support for the implementation of Open Firmware | ||
2074 | that is used on the OLPC XO-1 Children's Machine. | ||
2075 | If unsure, say N here. | ||
2076 | 2081 | ||
2077 | endif # X86_32 | 2082 | endif # X86_32 |
2078 | 2083 | ||
2079 | config K8_NB | 2084 | config AMD_NB |
2080 | def_bool y | 2085 | def_bool y |
2081 | depends on CPU_SUP_AMD && PCI | 2086 | depends on CPU_SUP_AMD && PCI |
2082 | 2087 | ||
@@ -2084,6 +2089,16 @@ source "drivers/pcmcia/Kconfig" | |||
2084 | 2089 | ||
2085 | source "drivers/pci/hotplug/Kconfig" | 2090 | source "drivers/pci/hotplug/Kconfig" |
2086 | 2091 | ||
2092 | config RAPIDIO | ||
2093 | bool "RapidIO support" | ||
2094 | depends on PCI | ||
2095 | default n | ||
2096 | help | ||
2097 | If you say Y here, the kernel will include drivers and | ||
2098 | infrastructure code to support RapidIO interconnect devices. | ||
2099 | |||
2100 | source "drivers/rapidio/Kconfig" | ||
2101 | |||
2087 | endmenu | 2102 | endmenu |
2088 | 2103 | ||
2089 | 2104 | ||
@@ -2118,6 +2133,11 @@ config SYSVIPC_COMPAT | |||
2118 | def_bool y | 2133 | def_bool y |
2119 | depends on COMPAT && SYSVIPC | 2134 | depends on COMPAT && SYSVIPC |
2120 | 2135 | ||
2136 | config KEYS_COMPAT | ||
2137 | bool | ||
2138 | depends on COMPAT && KEYS | ||
2139 | default y | ||
2140 | |||
2121 | endmenu | 2141 | endmenu |
2122 | 2142 | ||
2123 | 2143 | ||
@@ -2125,6 +2145,10 @@ config HAVE_ATOMIC_IOMAP | |||
2125 | def_bool y | 2145 | def_bool y |
2126 | depends on X86_32 | 2146 | depends on X86_32 |
2127 | 2147 | ||
2148 | config HAVE_TEXT_POKE_SMP | ||
2149 | bool | ||
2150 | select STOP_MACHINE if SMP | ||
2151 | |||
2128 | source "net/Kconfig" | 2152 | source "net/Kconfig" |
2129 | 2153 | ||
2130 | source "drivers/Kconfig" | 2154 | source "drivers/Kconfig" |