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 |