aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/Kconfig
diff options
context:
space:
mode:
authorLen Brown <len.brown@intel.com>2008-10-22 23:57:26 -0400
committerLen Brown <len.brown@intel.com>2008-10-23 00:11:07 -0400
commit057316cc6a5b521b332a1d7ccc871cd60c904c74 (patch)
tree4333e608da237c73ff69b10878025cca96dcb4c8 /arch/x86/Kconfig
parent3e2dab9a1c2deb03c311eb3f83466009147ed4d3 (diff)
parent2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4 (diff)
Merge branch 'linus' into test
Conflicts: MAINTAINERS arch/x86/kernel/acpi/boot.c arch/x86/kernel/acpi/sleep.c drivers/acpi/Kconfig drivers/pnp/Makefile drivers/pnp/quirks.c Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r--arch/x86/Kconfig217
1 files changed, 162 insertions, 55 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 540a78242034..350bee1d54dc 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -18,6 +18,7 @@ config X86_64
18### Arch settings 18### Arch settings
19config X86 19config X86
20 def_bool y 20 def_bool y
21 select HAVE_AOUT if X86_32
21 select HAVE_UNSTABLE_SCHED_CLOCK 22 select HAVE_UNSTABLE_SCHED_CLOCK
22 select HAVE_IDE 23 select HAVE_IDE
23 select HAVE_OPROFILE 24 select HAVE_OPROFILE
@@ -25,10 +26,12 @@ config X86
25 select HAVE_KPROBES 26 select HAVE_KPROBES
26 select ARCH_WANT_OPTIONAL_GPIOLIB 27 select ARCH_WANT_OPTIONAL_GPIOLIB
27 select HAVE_KRETPROBES 28 select HAVE_KRETPROBES
29 select HAVE_FTRACE_MCOUNT_RECORD
28 select HAVE_DYNAMIC_FTRACE 30 select HAVE_DYNAMIC_FTRACE
29 select HAVE_FTRACE 31 select HAVE_FTRACE
30 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) 32 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64)
31 select HAVE_ARCH_KGDB if !X86_VOYAGER 33 select HAVE_ARCH_KGDB if !X86_VOYAGER
34 select HAVE_ARCH_TRACEHOOK
32 select HAVE_GENERIC_DMA_COHERENT if X86_32 35 select HAVE_GENERIC_DMA_COHERENT if X86_32
33 select HAVE_EFFICIENT_UNALIGNED_ACCESS 36 select HAVE_EFFICIENT_UNALIGNED_ACCESS
34 37
@@ -37,10 +40,6 @@ config ARCH_DEFCONFIG
37 default "arch/x86/configs/i386_defconfig" if X86_32 40 default "arch/x86/configs/i386_defconfig" if X86_32
38 default "arch/x86/configs/x86_64_defconfig" if X86_64 41 default "arch/x86/configs/x86_64_defconfig" if X86_64
39 42
40
41config GENERIC_LOCKBREAK
42 def_bool n
43
44config GENERIC_TIME 43config GENERIC_TIME
45 def_bool y 44 def_bool y
46 45
@@ -93,7 +92,7 @@ config GENERIC_HWEIGHT
93 def_bool y 92 def_bool y
94 93
95config GENERIC_GPIO 94config GENERIC_GPIO
96 def_bool n 95 bool
97 96
98config ARCH_MAY_HAVE_PC_FDC 97config ARCH_MAY_HAVE_PC_FDC
99 def_bool y 98 def_bool y
@@ -104,12 +103,6 @@ config RWSEM_GENERIC_SPINLOCK
104config RWSEM_XCHGADD_ALGORITHM 103config RWSEM_XCHGADD_ALGORITHM
105 def_bool X86_XADD 104 def_bool X86_XADD
106 105
107config ARCH_HAS_ILOG2_U32
108 def_bool n
109
110config ARCH_HAS_ILOG2_U64
111 def_bool n
112
113config ARCH_HAS_CPU_IDLE_WAIT 106config ARCH_HAS_CPU_IDLE_WAIT
114 def_bool y 107 def_bool y
115 108
@@ -154,9 +147,6 @@ config AUDIT_ARCH
154 bool 147 bool
155 default X86_64 148 default X86_64
156 149
157config ARCH_SUPPORTS_AOUT
158 def_bool y
159
160config ARCH_SUPPORTS_OPTIMIZED_INLINING 150config ARCH_SUPPORTS_OPTIMIZED_INLINING
161 def_bool y 151 def_bool y
162 152
@@ -207,6 +197,7 @@ config X86_TRAMPOLINE
207config KTIME_SCALAR 197config KTIME_SCALAR
208 def_bool X86_32 198 def_bool X86_32
209source "init/Kconfig" 199source "init/Kconfig"
200source "kernel/Kconfig.freezer"
210 201
211menu "Processor type and features" 202menu "Processor type and features"
212 203
@@ -556,6 +547,7 @@ config CALGARY_IOMMU_ENABLED_BY_DEFAULT
556config AMD_IOMMU 547config AMD_IOMMU
557 bool "AMD IOMMU support" 548 bool "AMD IOMMU support"
558 select SWIOTLB 549 select SWIOTLB
550 select PCI_MSI
559 depends on X86_64 && PCI && ACPI 551 depends on X86_64 && PCI && ACPI
560 help 552 help
561 With this option you can enable support for AMD IOMMU hardware in 553 With this option you can enable support for AMD IOMMU hardware in
@@ -761,9 +753,8 @@ config I8K
761 Say N otherwise. 753 Say N otherwise.
762 754
763config X86_REBOOTFIXUPS 755config X86_REBOOTFIXUPS
764 def_bool n 756 bool "Enable X86 board specific fixups for reboot"
765 prompt "Enable X86 board specific fixups for reboot" 757 depends on X86_32
766 depends on X86_32 && X86
767 ---help--- 758 ---help---
768 This enables chipset and/or board specific fixups to be done 759 This enables chipset and/or board specific fixups to be done
769 in order to get reboot to work correctly. This is only needed on 760 in order to get reboot to work correctly. This is only needed on
@@ -779,23 +770,45 @@ config X86_REBOOTFIXUPS
779 Say N otherwise. 770 Say N otherwise.
780 771
781config MICROCODE 772config MICROCODE
782 tristate "/dev/cpu/microcode - Intel IA32 CPU microcode support" 773 tristate "/dev/cpu/microcode - microcode support"
783 select FW_LOADER 774 select FW_LOADER
784 ---help--- 775 ---help---
785 If you say Y here, you will be able to update the microcode on 776 If you say Y here, you will be able to update the microcode on
786 Intel processors in the IA32 family, e.g. Pentium Pro, Pentium II, 777 certain Intel and AMD processors. The Intel support is for the
787 Pentium III, Pentium 4, Xeon etc. You will obviously need the 778 IA32 family, e.g. Pentium Pro, Pentium II, Pentium III,
788 actual microcode binary data itself which is not shipped with the 779 Pentium 4, Xeon etc. The AMD support is for family 0x10 and
789 Linux kernel. 780 0x11 processors, e.g. Opteron, Phenom and Turion 64 Ultra.
781 You will obviously need the actual microcode binary data itself
782 which is not shipped with the Linux kernel.
790 783
791 For latest news and information on obtaining all the required 784 This option selects the general module only, you need to select
792 ingredients for this driver, check: 785 at least one vendor specific module as well.
793 <http://www.urbanmyth.org/microcode/>.
794 786
795 To compile this driver as a module, choose M here: the 787 To compile this driver as a module, choose M here: the
796 module will be called microcode. 788 module will be called microcode.
797 789
798config MICROCODE_OLD_INTERFACE 790config MICROCODE_INTEL
791 bool "Intel microcode patch loading support"
792 depends on MICROCODE
793 default MICROCODE
794 select FW_LOADER
795 --help---
796 This options enables microcode patch loading support for Intel
797 processors.
798
799 For latest news and information on obtaining all the required
800 Intel ingredients for this driver, check:
801 <http://www.urbanmyth.org/microcode/>.
802
803config MICROCODE_AMD
804 bool "AMD microcode patch loading support"
805 depends on MICROCODE
806 select FW_LOADER
807 --help---
808 If you select this option, microcode patch loading support for AMD
809 processors will be enabled.
810
811 config MICROCODE_OLD_INTERFACE
799 def_bool y 812 def_bool y
800 depends on MICROCODE 813 depends on MICROCODE
801 814
@@ -925,16 +938,17 @@ config HIGHMEM
925 depends on X86_32 && (HIGHMEM64G || HIGHMEM4G) 938 depends on X86_32 && (HIGHMEM64G || HIGHMEM4G)
926 939
927config X86_PAE 940config X86_PAE
928 def_bool n 941 bool "PAE (Physical Address Extension) Support"
929 prompt "PAE (Physical Address Extension) Support"
930 depends on X86_32 && !HIGHMEM4G 942 depends on X86_32 && !HIGHMEM4G
931 select RESOURCES_64BIT
932 help 943 help
933 PAE is required for NX support, and furthermore enables 944 PAE is required for NX support, and furthermore enables
934 larger swapspace support for non-overcommit purposes. It 945 larger swapspace support for non-overcommit purposes. It
935 has the cost of more pagetable lookup overhead, and also 946 has the cost of more pagetable lookup overhead, and also
936 consumes more pagetable space per process. 947 consumes more pagetable space per process.
937 948
949config ARCH_PHYS_ADDR_T_64BIT
950 def_bool X86_64 || X86_PAE
951
938# Common NUMA Features 952# Common NUMA Features
939config NUMA 953config NUMA
940 bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" 954 bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)"
@@ -1023,7 +1037,7 @@ config HAVE_ARCH_ALLOC_REMAP
1023 1037
1024config ARCH_FLATMEM_ENABLE 1038config ARCH_FLATMEM_ENABLE
1025 def_bool y 1039 def_bool y
1026 depends on X86_32 && ARCH_SELECT_MEMORY_MODEL && X86_PC && !NUMA 1040 depends on X86_32 && ARCH_SELECT_MEMORY_MODEL && !NUMA
1027 1041
1028config ARCH_DISCONTIGMEM_ENABLE 1042config ARCH_DISCONTIGMEM_ENABLE
1029 def_bool y 1043 def_bool y
@@ -1039,7 +1053,7 @@ config ARCH_SPARSEMEM_DEFAULT
1039 1053
1040config ARCH_SPARSEMEM_ENABLE 1054config ARCH_SPARSEMEM_ENABLE
1041 def_bool y 1055 def_bool y
1042 depends on X86_64 || NUMA || (EXPERIMENTAL && X86_PC) 1056 depends on X86_64 || NUMA || (EXPERIMENTAL && X86_PC) || X86_GENERICARCH
1043 select SPARSEMEM_STATIC if X86_32 1057 select SPARSEMEM_STATIC if X86_32
1044 select SPARSEMEM_VMEMMAP_ENABLE if X86_64 1058 select SPARSEMEM_VMEMMAP_ENABLE if X86_64
1045 1059
@@ -1062,6 +1076,56 @@ config HIGHPTE
1062 low memory. Setting this option will put user-space page table 1076 low memory. Setting this option will put user-space page table
1063 entries in high memory. 1077 entries in high memory.
1064 1078
1079config X86_CHECK_BIOS_CORRUPTION
1080 bool "Check for low memory corruption"
1081 help
1082 Periodically check for memory corruption in low memory, which
1083 is suspected to be caused by BIOS. Even when enabled in the
1084 configuration, it is disabled at runtime. Enable it by
1085 setting "memory_corruption_check=1" on the kernel command
1086 line. By default it scans the low 64k of memory every 60
1087 seconds; see the memory_corruption_check_size and
1088 memory_corruption_check_period parameters in
1089 Documentation/kernel-parameters.txt to adjust this.
1090
1091 When enabled with the default parameters, this option has
1092 almost no overhead, as it reserves a relatively small amount
1093 of memory and scans it infrequently. It both detects corruption
1094 and prevents it from affecting the running system.
1095
1096 It is, however, intended as a diagnostic tool; if repeatable
1097 BIOS-originated corruption always affects the same memory,
1098 you can use memmap= to prevent the kernel from using that
1099 memory.
1100
1101config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK
1102 bool "Set the default setting of memory_corruption_check"
1103 depends on X86_CHECK_BIOS_CORRUPTION
1104 default y
1105 help
1106 Set whether the default state of memory_corruption_check is
1107 on or off.
1108
1109config X86_RESERVE_LOW_64K
1110 bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen"
1111 default y
1112 help
1113 Reserve the first 64K of physical RAM on BIOSes that are known
1114 to potentially corrupt that memory range. A numbers of BIOSes are
1115 known to utilize this area during suspend/resume, so it must not
1116 be used by the kernel.
1117
1118 Set this to N if you are absolutely sure that you trust the BIOS
1119 to get all its memory reservations and usages right.
1120
1121 If you have doubts about the BIOS (e.g. suspend/resume does not
1122 work or there's kernel crashes after certain hardware hotplug
1123 events) and it's not AMI or Phoenix, then you might want to enable
1124 X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical
1125 corruption patterns.
1126
1127 Say Y if unsure.
1128
1065config MATH_EMULATION 1129config MATH_EMULATION
1066 bool 1130 bool
1067 prompt "Math emulation" if X86_32 1131 prompt "Math emulation" if X86_32
@@ -1120,10 +1184,10 @@ config MTRR
1120 You can safely say Y even if your machine doesn't have MTRRs, you'll 1184 You can safely say Y even if your machine doesn't have MTRRs, you'll
1121 just add about 9 KB to your kernel. 1185 just add about 9 KB to your kernel.
1122 1186
1123 See <file:Documentation/mtrr.txt> for more information. 1187 See <file:Documentation/x86/mtrr.txt> for more information.
1124 1188
1125config MTRR_SANITIZER 1189config MTRR_SANITIZER
1126 bool 1190 def_bool y
1127 prompt "MTRR cleanup support" 1191 prompt "MTRR cleanup support"
1128 depends on MTRR 1192 depends on MTRR
1129 help 1193 help
@@ -1134,7 +1198,7 @@ config MTRR_SANITIZER
1134 The largest mtrr entry size for a continous block can be set with 1198 The largest mtrr entry size for a continous block can be set with
1135 mtrr_chunk_size. 1199 mtrr_chunk_size.
1136 1200
1137 If unsure, say N. 1201 If unsure, say Y.
1138 1202
1139config MTRR_SANITIZER_ENABLE_DEFAULT 1203config MTRR_SANITIZER_ENABLE_DEFAULT
1140 int "MTRR cleanup enable value (0-1)" 1204 int "MTRR cleanup enable value (0-1)"
@@ -1169,8 +1233,7 @@ config X86_PAT
1169 If unsure, say Y. 1233 If unsure, say Y.
1170 1234
1171config EFI 1235config EFI
1172 def_bool n 1236 bool "EFI runtime service support"
1173 prompt "EFI runtime service support"
1174 depends on ACPI 1237 depends on ACPI
1175 ---help--- 1238 ---help---
1176 This enables the kernel to use EFI runtime services that are 1239 This enables the kernel to use EFI runtime services that are
@@ -1183,18 +1246,9 @@ config EFI
1183 resultant kernel should continue to boot on existing non-EFI 1246 resultant kernel should continue to boot on existing non-EFI
1184 platforms. 1247 platforms.
1185 1248
1186config IRQBALANCE
1187 def_bool y
1188 prompt "Enable kernel irq balancing"
1189 depends on X86_32 && SMP && X86_IO_APIC
1190 help
1191 The default yes will allow the kernel to do irq load balancing.
1192 Saying no will keep the kernel from doing irq load balancing.
1193
1194config SECCOMP 1249config SECCOMP
1195 def_bool y 1250 def_bool y
1196 prompt "Enable seccomp to safely compute untrusted bytecode" 1251 prompt "Enable seccomp to safely compute untrusted bytecode"
1197 depends on PROC_FS
1198 help 1252 help
1199 This kernel feature is useful for number crunching applications 1253 This kernel feature is useful for number crunching applications
1200 that may need to compute untrusted bytecode during their 1254 that may need to compute untrusted bytecode during their
@@ -1202,7 +1256,7 @@ config SECCOMP
1202 the process as file descriptors supporting the read/write 1256 the process as file descriptors supporting the read/write
1203 syscalls, it's possible to isolate those applications in 1257 syscalls, it's possible to isolate those applications in
1204 their own address space using seccomp. Once seccomp is 1258 their own address space using seccomp. Once seccomp is
1205 enabled via /proc/<pid>/seccomp, it cannot be disabled 1259 enabled via prctl(PR_SET_SECCOMP), it cannot be disabled
1206 and the task is only allowed to execute a few safe syscalls 1260 and the task is only allowed to execute a few safe syscalls
1207 defined by each seccomp mode. 1261 defined by each seccomp mode.
1208 1262
@@ -1359,14 +1413,14 @@ config PHYSICAL_ALIGN
1359 Don't change this unless you know what you are doing. 1413 Don't change this unless you know what you are doing.
1360 1414
1361config HOTPLUG_CPU 1415config HOTPLUG_CPU
1362 bool "Support for suspend on SMP and hot-pluggable CPUs (EXPERIMENTAL)" 1416 bool "Support for hot-pluggable CPUs"
1363 depends on SMP && HOTPLUG && EXPERIMENTAL && !X86_VOYAGER 1417 depends on SMP && HOTPLUG && !X86_VOYAGER
1364 ---help--- 1418 ---help---
1365 Say Y here to experiment with turning CPUs off and on, and to 1419 Say Y here to allow turning CPUs off and on. CPUs can be
1366 enable suspend on SMP systems. CPUs can be controlled through 1420 controlled through /sys/devices/system/cpu.
1367 /sys/devices/system/cpu. 1421 ( Note: power management support will enable this option
1368 Say N if you want to disable CPU hotplug and don't need to 1422 automatically on SMP systems. )
1369 suspend. 1423 Say N if you want to disable CPU hotplug.
1370 1424
1371config COMPAT_VDSO 1425config COMPAT_VDSO
1372 def_bool y 1426 def_bool y
@@ -1381,6 +1435,51 @@ config COMPAT_VDSO
1381 1435
1382 If unsure, say Y. 1436 If unsure, say Y.
1383 1437
1438config CMDLINE_BOOL
1439 bool "Built-in kernel command line"
1440 default n
1441 help
1442 Allow for specifying boot arguments to the kernel at
1443 build time. On some systems (e.g. embedded ones), it is
1444 necessary or convenient to provide some or all of the
1445 kernel boot arguments with the kernel itself (that is,
1446 to not rely on the boot loader to provide them.)
1447
1448 To compile command line arguments into the kernel,
1449 set this option to 'Y', then fill in the
1450 the boot arguments in CONFIG_CMDLINE.
1451
1452 Systems with fully functional boot loaders (i.e. non-embedded)
1453 should leave this option set to 'N'.
1454
1455config CMDLINE
1456 string "Built-in kernel command string"
1457 depends on CMDLINE_BOOL
1458 default ""
1459 help
1460 Enter arguments here that should be compiled into the kernel
1461 image and used at boot time. If the boot loader provides a
1462 command line at boot time, it is appended to this string to
1463 form the full kernel command line, when the system boots.
1464
1465 However, you can use the CONFIG_CMDLINE_OVERRIDE option to
1466 change this behavior.
1467
1468 In most cases, the command line (whether built-in or provided
1469 by the boot loader) should specify the device for the root
1470 file system.
1471
1472config CMDLINE_OVERRIDE
1473 bool "Built-in command line overrides boot loader arguments"
1474 default n
1475 depends on CMDLINE_BOOL
1476 help
1477 Set this option to 'Y' to have the kernel ignore the boot loader
1478 command line, and use ONLY the built-in command line.
1479
1480 This is used to work around broken boot loaders. This should
1481 be set to 'N' under normal conditions.
1482
1384endmenu 1483endmenu
1385 1484
1386config ARCH_ENABLE_MEMORY_HOTPLUG 1485config ARCH_ENABLE_MEMORY_HOTPLUG
@@ -1648,6 +1747,14 @@ config DMAR_FLOPPY_WA
1648 workaround will setup a 1:1 mapping for the first 1747 workaround will setup a 1:1 mapping for the first
1649 16M to make floppy (an ISA device) work. 1748 16M to make floppy (an ISA device) work.
1650 1749
1750config INTR_REMAP
1751 bool "Support for Interrupt Remapping (EXPERIMENTAL)"
1752 depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL
1753 help
1754 Supports Interrupt remapping for IO-APIC and MSI devices.
1755 To use x2apic mode in the CPU's which support x2APIC enhancements or
1756 to support platforms with CPU's having > 8 bit APIC ID, say Y.
1757
1651source "drivers/pci/pcie/Kconfig" 1758source "drivers/pci/pcie/Kconfig"
1652 1759
1653source "drivers/pci/Kconfig" 1760source "drivers/pci/Kconfig"
@@ -1764,7 +1871,7 @@ config IA32_EMULATION
1764 1871
1765config IA32_AOUT 1872config IA32_AOUT
1766 tristate "IA32 a.out support" 1873 tristate "IA32 a.out support"
1767 depends on IA32_EMULATION && ARCH_SUPPORTS_AOUT 1874 depends on IA32_EMULATION
1768 help 1875 help
1769 Support old a.out binaries in the 32bit emulation. 1876 Support old a.out binaries in the 32bit emulation.
1770 1877
@@ -1778,7 +1885,7 @@ config COMPAT_FOR_U64_ALIGNMENT
1778 1885
1779config SYSVIPC_COMPAT 1886config SYSVIPC_COMPAT
1780 def_bool y 1887 def_bool y
1781 depends on X86_64 && COMPAT && SYSVIPC 1888 depends on COMPAT && SYSVIPC
1782 1889
1783endmenu 1890endmenu
1784 1891