diff options
Diffstat (limited to 'arch/x86/Kconfig')
| -rw-r--r-- | arch/x86/Kconfig | 90 |
1 files changed, 81 insertions, 9 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 44d4f2130d01..fc8351f374fd 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
| @@ -778,23 +778,45 @@ config X86_REBOOTFIXUPS | |||
| 778 | Say N otherwise. | 778 | Say N otherwise. |
| 779 | 779 | ||
| 780 | config MICROCODE | 780 | config MICROCODE |
| 781 | tristate "/dev/cpu/microcode - Intel IA32 CPU microcode support" | 781 | tristate "/dev/cpu/microcode - microcode support" |
| 782 | select FW_LOADER | 782 | select FW_LOADER |
| 783 | ---help--- | 783 | ---help--- |
| 784 | If you say Y here, you will be able to update the microcode on | 784 | If you say Y here, you will be able to update the microcode on |
| 785 | Intel processors in the IA32 family, e.g. Pentium Pro, Pentium II, | 785 | certain Intel and AMD processors. The Intel support is for the |
| 786 | Pentium III, Pentium 4, Xeon etc. You will obviously need the | 786 | IA32 family, e.g. Pentium Pro, Pentium II, Pentium III, |
| 787 | actual microcode binary data itself which is not shipped with the | 787 | Pentium 4, Xeon etc. The AMD support is for family 0x10 and |
| 788 | Linux kernel. | 788 | 0x11 processors, e.g. Opteron, Phenom and Turion 64 Ultra. |
| 789 | You will obviously need the actual microcode binary data itself | ||
| 790 | which is not shipped with the Linux kernel. | ||
| 789 | 791 | ||
| 790 | For latest news and information on obtaining all the required | 792 | This option selects the general module only, you need to select |
| 791 | ingredients for this driver, check: | 793 | at least one vendor specific module as well. |
| 792 | <http://www.urbanmyth.org/microcode/>. | ||
| 793 | 794 | ||
| 794 | To compile this driver as a module, choose M here: the | 795 | To compile this driver as a module, choose M here: the |
| 795 | module will be called microcode. | 796 | module will be called microcode. |
| 796 | 797 | ||
| 797 | config MICROCODE_OLD_INTERFACE | 798 | config MICROCODE_INTEL |
| 799 | bool "Intel microcode patch loading support" | ||
| 800 | depends on MICROCODE | ||
| 801 | default MICROCODE | ||
| 802 | select FW_LOADER | ||
| 803 | --help--- | ||
| 804 | This options enables microcode patch loading support for Intel | ||
| 805 | processors. | ||
| 806 | |||
| 807 | For latest news and information on obtaining all the required | ||
| 808 | Intel ingredients for this driver, check: | ||
| 809 | <http://www.urbanmyth.org/microcode/>. | ||
| 810 | |||
| 811 | config MICROCODE_AMD | ||
| 812 | bool "AMD microcode patch loading support" | ||
| 813 | depends on MICROCODE | ||
| 814 | select FW_LOADER | ||
| 815 | --help--- | ||
| 816 | If you select this option, microcode patch loading support for AMD | ||
| 817 | processors will be enabled. | ||
| 818 | |||
| 819 | config MICROCODE_OLD_INTERFACE | ||
| 798 | def_bool y | 820 | def_bool y |
| 799 | depends on MICROCODE | 821 | depends on MICROCODE |
| 800 | 822 | ||
| @@ -1061,6 +1083,56 @@ config HIGHPTE | |||
| 1061 | low memory. Setting this option will put user-space page table | 1083 | low memory. Setting this option will put user-space page table |
| 1062 | entries in high memory. | 1084 | entries in high memory. |
| 1063 | 1085 | ||
| 1086 | config X86_CHECK_BIOS_CORRUPTION | ||
| 1087 | bool "Check for low memory corruption" | ||
| 1088 | help | ||
| 1089 | Periodically check for memory corruption in low memory, which | ||
| 1090 | is suspected to be caused by BIOS. Even when enabled in the | ||
| 1091 | configuration, it is disabled at runtime. Enable it by | ||
| 1092 | setting "memory_corruption_check=1" on the kernel command | ||
| 1093 | line. By default it scans the low 64k of memory every 60 | ||
| 1094 | seconds; see the memory_corruption_check_size and | ||
| 1095 | memory_corruption_check_period parameters in | ||
| 1096 | Documentation/kernel-parameters.txt to adjust this. | ||
| 1097 | |||
| 1098 | When enabled with the default parameters, this option has | ||
| 1099 | almost no overhead, as it reserves a relatively small amount | ||
| 1100 | of memory and scans it infrequently. It both detects corruption | ||
| 1101 | and prevents it from affecting the running system. | ||
| 1102 | |||
| 1103 | It is, however, intended as a diagnostic tool; if repeatable | ||
| 1104 | BIOS-originated corruption always affects the same memory, | ||
| 1105 | you can use memmap= to prevent the kernel from using that | ||
| 1106 | memory. | ||
| 1107 | |||
| 1108 | config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK | ||
| 1109 | bool "Set the default setting of memory_corruption_check" | ||
| 1110 | depends on X86_CHECK_BIOS_CORRUPTION | ||
| 1111 | default y | ||
| 1112 | help | ||
| 1113 | Set whether the default state of memory_corruption_check is | ||
| 1114 | on or off. | ||
| 1115 | |||
| 1116 | config X86_RESERVE_LOW_64K | ||
| 1117 | bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen" | ||
| 1118 | default y | ||
| 1119 | help | ||
| 1120 | Reserve the first 64K of physical RAM on BIOSes that are known | ||
| 1121 | to potentially corrupt that memory range. A numbers of BIOSes are | ||
| 1122 | known to utilize this area during suspend/resume, so it must not | ||
| 1123 | be used by the kernel. | ||
| 1124 | |||
| 1125 | Set this to N if you are absolutely sure that you trust the BIOS | ||
| 1126 | to get all its memory reservations and usages right. | ||
| 1127 | |||
| 1128 | If you have doubts about the BIOS (e.g. suspend/resume does not | ||
| 1129 | work or there's kernel crashes after certain hardware hotplug | ||
| 1130 | events) and it's not AMI or Phoenix, then you might want to enable | ||
| 1131 | X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical | ||
| 1132 | corruption patterns. | ||
| 1133 | |||
| 1134 | Say Y if unsure. | ||
| 1135 | |||
| 1064 | config MATH_EMULATION | 1136 | config MATH_EMULATION |
| 1065 | bool | 1137 | bool |
| 1066 | prompt "Math emulation" if X86_32 | 1138 | prompt "Math emulation" if X86_32 |
