diff options
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r-- | arch/x86/Kconfig | 130 |
1 files changed, 61 insertions, 69 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index cea0cd9a316f..7ab9db88ab6a 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -25,6 +25,7 @@ config X86 | |||
25 | select HAVE_IDE | 25 | select HAVE_IDE |
26 | select HAVE_OPROFILE | 26 | select HAVE_OPROFILE |
27 | select HAVE_PERF_EVENTS if (!M386 && !M486) | 27 | select HAVE_PERF_EVENTS if (!M386 && !M486) |
28 | select HAVE_IRQ_WORK | ||
28 | select HAVE_IOREMAP_PROT | 29 | select HAVE_IOREMAP_PROT |
29 | select HAVE_KPROBES | 30 | select HAVE_KPROBES |
30 | select ARCH_WANT_OPTIONAL_GPIOLIB | 31 | select ARCH_WANT_OPTIONAL_GPIOLIB |
@@ -33,6 +34,7 @@ config X86 | |||
33 | select HAVE_KRETPROBES | 34 | select HAVE_KRETPROBES |
34 | select HAVE_OPTPROBES | 35 | select HAVE_OPTPROBES |
35 | select HAVE_FTRACE_MCOUNT_RECORD | 36 | select HAVE_FTRACE_MCOUNT_RECORD |
37 | select HAVE_C_RECORDMCOUNT | ||
36 | select HAVE_DYNAMIC_FTRACE | 38 | select HAVE_DYNAMIC_FTRACE |
37 | select HAVE_FUNCTION_TRACER | 39 | select HAVE_FUNCTION_TRACER |
38 | select HAVE_FUNCTION_GRAPH_TRACER | 40 | select HAVE_FUNCTION_GRAPH_TRACER |
@@ -59,6 +61,12 @@ config X86 | |||
59 | select ANON_INODES | 61 | select ANON_INODES |
60 | select HAVE_ARCH_KMEMCHECK | 62 | select HAVE_ARCH_KMEMCHECK |
61 | select HAVE_USER_RETURN_NOTIFIER | 63 | select HAVE_USER_RETURN_NOTIFIER |
64 | select HAVE_ARCH_JUMP_LABEL | ||
65 | select HAVE_TEXT_POKE_SMP | ||
66 | select HAVE_GENERIC_HARDIRQS | ||
67 | select HAVE_SPARSE_IRQ | ||
68 | select GENERIC_IRQ_PROBE | ||
69 | select GENERIC_PENDING_IRQ if SMP | ||
62 | 70 | ||
63 | config INSTRUCTION_DECODER | 71 | config INSTRUCTION_DECODER |
64 | def_bool (KPROBES || PERF_EVENTS) | 72 | def_bool (KPROBES || PERF_EVENTS) |
@@ -200,20 +208,6 @@ config HAVE_INTEL_TXT | |||
200 | def_bool y | 208 | def_bool y |
201 | depends on EXPERIMENTAL && DMAR && ACPI | 209 | depends on EXPERIMENTAL && DMAR && ACPI |
202 | 210 | ||
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 | 211 | config USE_GENERIC_SMP_HELPERS |
218 | def_bool y | 212 | def_bool y |
219 | depends on SMP | 213 | depends on SMP |
@@ -296,23 +290,6 @@ config X86_X2APIC | |||
296 | 290 | ||
297 | If you don't know what to do here, say N. | 291 | If you don't know what to do here, say N. |
298 | 292 | ||
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 | 293 | config X86_MPPARSE |
317 | bool "Enable MPS table" if ACPI | 294 | bool "Enable MPS table" if ACPI |
318 | default y | 295 | default y |
@@ -517,25 +494,6 @@ if PARAVIRT_GUEST | |||
517 | 494 | ||
518 | source "arch/x86/xen/Kconfig" | 495 | source "arch/x86/xen/Kconfig" |
519 | 496 | ||
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 | 497 | config KVM_CLOCK |
540 | bool "KVM paravirtualized clock" | 498 | bool "KVM paravirtualized clock" |
541 | select PARAVIRT | 499 | select PARAVIRT |
@@ -670,7 +628,7 @@ config GART_IOMMU | |||
670 | bool "GART IOMMU support" if EMBEDDED | 628 | bool "GART IOMMU support" if EMBEDDED |
671 | default y | 629 | default y |
672 | select SWIOTLB | 630 | select SWIOTLB |
673 | depends on X86_64 && PCI && K8_NB | 631 | depends on X86_64 && PCI && AMD_NB |
674 | ---help--- | 632 | ---help--- |
675 | Support for full DMA access of devices with 32bit memory access only | 633 | 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, | 634 | on systems with more than 3GB. This is usually needed for USB, |
@@ -795,6 +753,17 @@ config SCHED_MC | |||
795 | making when dealing with multi-core CPU chips at a cost of slightly | 753 | making when dealing with multi-core CPU chips at a cost of slightly |
796 | increased overhead in some places. If unsure say N here. | 754 | increased overhead in some places. If unsure say N here. |
797 | 755 | ||
756 | config IRQ_TIME_ACCOUNTING | ||
757 | bool "Fine granularity task level IRQ time accounting" | ||
758 | default n | ||
759 | ---help--- | ||
760 | Select this option to enable fine granularity task irq time | ||
761 | accounting. This is done by reading a timestamp on each | ||
762 | transitions between softirq and hardirq state, so there can be a | ||
763 | small performance impact. | ||
764 | |||
765 | If in doubt, say N here. | ||
766 | |||
798 | source "kernel/Kconfig.preempt" | 767 | source "kernel/Kconfig.preempt" |
799 | 768 | ||
800 | config X86_UP_APIC | 769 | config X86_UP_APIC |
@@ -1148,6 +1117,9 @@ config X86_PAE | |||
1148 | config ARCH_PHYS_ADDR_T_64BIT | 1117 | config ARCH_PHYS_ADDR_T_64BIT |
1149 | def_bool X86_64 || X86_PAE | 1118 | def_bool X86_64 || X86_PAE |
1150 | 1119 | ||
1120 | config ARCH_DMA_ADDR_T_64BIT | ||
1121 | def_bool X86_64 || HIGHMEM64G | ||
1122 | |||
1151 | config DIRECT_GBPAGES | 1123 | config DIRECT_GBPAGES |
1152 | bool "Enable 1GB pages for kernel pagetables" if EMBEDDED | 1124 | bool "Enable 1GB pages for kernel pagetables" if EMBEDDED |
1153 | default y | 1125 | default y |
@@ -1326,25 +1298,34 @@ config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK | |||
1326 | Set whether the default state of memory_corruption_check is | 1298 | Set whether the default state of memory_corruption_check is |
1327 | on or off. | 1299 | on or off. |
1328 | 1300 | ||
1329 | config X86_RESERVE_LOW_64K | 1301 | config X86_RESERVE_LOW |
1330 | bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen" | 1302 | int "Amount of low memory, in kilobytes, to reserve for the BIOS" |
1331 | default y | 1303 | default 64 |
1304 | range 4 640 | ||
1332 | ---help--- | 1305 | ---help--- |
1333 | Reserve the first 64K of physical RAM on BIOSes that are known | 1306 | Specify the amount of low memory to reserve for the BIOS. |
1334 | to potentially corrupt that memory range. A numbers of BIOSes are | 1307 | |
1335 | known to utilize this area during suspend/resume, so it must not | 1308 | The first page contains BIOS data structures that the kernel |
1336 | be used by the kernel. | 1309 | must not use, so that page must always be reserved. |
1337 | 1310 | ||
1338 | Set this to N if you are absolutely sure that you trust the BIOS | 1311 | By default we reserve the first 64K of physical RAM, as a |
1339 | to get all its memory reservations and usages right. | 1312 | number of BIOSes are known to corrupt that memory range |
1313 | during events such as suspend/resume or monitor cable | ||
1314 | insertion, so it must not be used by the kernel. | ||
1340 | 1315 | ||
1341 | If you have doubts about the BIOS (e.g. suspend/resume does not | 1316 | You can set this to 4 if you are absolutely sure that you |
1342 | work or there's kernel crashes after certain hardware hotplug | 1317 | 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 | 1318 | right. If you know your BIOS have problems beyond the |
1344 | X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical | 1319 | default 64K area, you can set this to 640 to avoid using the |
1345 | corruption patterns. | 1320 | entire low memory range. |
1346 | 1321 | ||
1347 | Say Y if unsure. | 1322 | If you have doubts about the BIOS (e.g. suspend/resume does |
1323 | not work or there's kernel crashes after certain hardware | ||
1324 | hotplug events) then you might want to enable | ||
1325 | X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check | ||
1326 | typical corruption patterns. | ||
1327 | |||
1328 | Leave this to the default value of 64 if you are unsure. | ||
1348 | 1329 | ||
1349 | config MATH_EMULATION | 1330 | config MATH_EMULATION |
1350 | bool | 1331 | bool |
@@ -1900,7 +1881,7 @@ config PCI_GODIRECT | |||
1900 | bool "Direct" | 1881 | bool "Direct" |
1901 | 1882 | ||
1902 | config PCI_GOOLPC | 1883 | config PCI_GOOLPC |
1903 | bool "OLPC" | 1884 | bool "OLPC XO-1" |
1904 | depends on OLPC | 1885 | depends on OLPC |
1905 | 1886 | ||
1906 | config PCI_GOANY | 1887 | config PCI_GOANY |
@@ -2061,14 +2042,21 @@ config SCx200HR_TIMER | |||
2061 | config OLPC | 2042 | config OLPC |
2062 | bool "One Laptop Per Child support" | 2043 | bool "One Laptop Per Child support" |
2063 | select GPIOLIB | 2044 | select GPIOLIB |
2045 | select OLPC_OPENFIRMWARE | ||
2064 | ---help--- | 2046 | ---help--- |
2065 | Add support for detecting the unique features of the OLPC | 2047 | Add support for detecting the unique features of the OLPC |
2066 | XO hardware. | 2048 | XO hardware. |
2067 | 2049 | ||
2050 | config OLPC_XO1 | ||
2051 | tristate "OLPC XO-1 support" | ||
2052 | depends on OLPC && PCI | ||
2053 | ---help--- | ||
2054 | Add support for non-essential features of the OLPC XO-1 laptop. | ||
2055 | |||
2068 | config OLPC_OPENFIRMWARE | 2056 | config OLPC_OPENFIRMWARE |
2069 | bool "Support for OLPC's Open Firmware" | 2057 | bool "Support for OLPC's Open Firmware" |
2070 | depends on !X86_64 && !X86_PAE | 2058 | depends on !X86_64 && !X86_PAE |
2071 | default y if OLPC | 2059 | default n |
2072 | help | 2060 | help |
2073 | This option adds support for the implementation of Open Firmware | 2061 | This option adds support for the implementation of Open Firmware |
2074 | that is used on the OLPC XO-1 Children's Machine. | 2062 | that is used on the OLPC XO-1 Children's Machine. |
@@ -2076,7 +2064,7 @@ config OLPC_OPENFIRMWARE | |||
2076 | 2064 | ||
2077 | endif # X86_32 | 2065 | endif # X86_32 |
2078 | 2066 | ||
2079 | config K8_NB | 2067 | config AMD_NB |
2080 | def_bool y | 2068 | def_bool y |
2081 | depends on CPU_SUP_AMD && PCI | 2069 | depends on CPU_SUP_AMD && PCI |
2082 | 2070 | ||
@@ -2125,6 +2113,10 @@ config HAVE_ATOMIC_IOMAP | |||
2125 | def_bool y | 2113 | def_bool y |
2126 | depends on X86_32 | 2114 | depends on X86_32 |
2127 | 2115 | ||
2116 | config HAVE_TEXT_POKE_SMP | ||
2117 | bool | ||
2118 | select STOP_MACHINE if SMP | ||
2119 | |||
2128 | source "net/Kconfig" | 2120 | source "net/Kconfig" |
2129 | 2121 | ||
2130 | source "drivers/Kconfig" | 2122 | source "drivers/Kconfig" |