aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/Kconfig.cpu
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/Kconfig.cpu')
-rw-r--r--arch/x86/Kconfig.cpu73
1 files changed, 20 insertions, 53 deletions
diff --git a/arch/x86/Kconfig.cpu b/arch/x86/Kconfig.cpu
index f3b86d0df44e..c026cca5602c 100644
--- a/arch/x86/Kconfig.cpu
+++ b/arch/x86/Kconfig.cpu
@@ -4,23 +4,24 @@ choice
4 default M686 if X86_32 4 default M686 if X86_32
5 default GENERIC_CPU if X86_64 5 default GENERIC_CPU if X86_64
6 6
7config M386 7config M486
8 bool "386" 8 bool "486"
9 depends on X86_32 && !UML 9 depends on X86_32
10 ---help--- 10 ---help---
11 This is the processor type of your CPU. This information is used for 11 This is the processor type of your CPU. This information is
12 optimizing purposes. In order to compile a kernel that can run on 12 used for optimizing purposes. In order to compile a kernel
13 all x86 CPU types (albeit not optimally fast), you can specify 13 that can run on all supported x86 CPU types (albeit not
14 "386" here. 14 optimally fast), you can specify "486" here.
15
16 Note that the 386 is no longer supported, this includes
17 AMD/Cyrix/Intel 386DX/DXL/SL/SLC/SX, Cyrix/TI 486DLC/DLC2,
18 UMC 486SX-S and the NexGen Nx586.
15 19
16 The kernel will not necessarily run on earlier architectures than 20 The kernel will not necessarily run on earlier architectures than
17 the one you have chosen, e.g. a Pentium optimized kernel will run on 21 the one you have chosen, e.g. a Pentium optimized kernel will run on
18 a PPro, but not necessarily on a i486. 22 a PPro, but not necessarily on a i486.
19 23
20 Here are the settings recommended for greatest speed: 24 Here are the settings recommended for greatest speed:
21 - "386" for the AMD/Cyrix/Intel 386DX/DXL/SL/SLC/SX, Cyrix/TI
22 486DLC/DLC2, and UMC 486SX-S. Only "386" kernels will run on a 386
23 class machine.
24 - "486" for the AMD/Cyrix/IBM/Intel 486DX/DX2/DX4 or 25 - "486" for the AMD/Cyrix/IBM/Intel 486DX/DX2/DX4 or
25 SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or U5S. 26 SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or U5S.
26 - "586" for generic Pentium CPUs lacking the TSC 27 - "586" for generic Pentium CPUs lacking the TSC
@@ -43,16 +44,7 @@ config M386
43 - "VIA C3-2" for VIA C3-2 "Nehemiah" (model 9 and above). 44 - "VIA C3-2" for VIA C3-2 "Nehemiah" (model 9 and above).
44 - "VIA C7" for VIA C7. 45 - "VIA C7" for VIA C7.
45 46
46 If you don't know what to do, choose "386". 47 If you don't know what to do, choose "486".
47
48config M486
49 bool "486"
50 depends on X86_32
51 ---help---
52 Select this for a 486 series processor, either Intel or one of the
53 compatible processors from AMD, Cyrix, IBM, or Intel. Includes DX,
54 DX2, and DX4 variants; also SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or
55 U5S.
56 48
57config M586 49config M586
58 bool "586/K5/5x86/6x86/6x86MX" 50 bool "586/K5/5x86/6x86/6x86MX"
@@ -305,24 +297,16 @@ config X86_INTERNODE_CACHE_SHIFT
305 default "12" if X86_VSMP 297 default "12" if X86_VSMP
306 default X86_L1_CACHE_SHIFT 298 default X86_L1_CACHE_SHIFT
307 299
308config X86_CMPXCHG
309 def_bool y
310 depends on X86_64 || (X86_32 && !M386)
311
312config X86_L1_CACHE_SHIFT 300config X86_L1_CACHE_SHIFT
313 int 301 int
314 default "7" if MPENTIUM4 || MPSC 302 default "7" if MPENTIUM4 || MPSC
315 default "6" if MK7 || MK8 || MPENTIUMM || MCORE2 || MATOM || MVIAC7 || X86_GENERIC || GENERIC_CPU 303 default "6" if MK7 || MK8 || MPENTIUMM || MCORE2 || MATOM || MVIAC7 || X86_GENERIC || GENERIC_CPU
316 default "4" if MELAN || M486 || M386 || MGEODEGX1 304 default "4" if MELAN || M486 || MGEODEGX1
317 default "5" if MWINCHIP3D || MWINCHIPC6 || MCRUSOE || MEFFICEON || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2 || MGEODE_LX 305 default "5" if MWINCHIP3D || MWINCHIPC6 || MCRUSOE || MEFFICEON || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2 || MGEODE_LX
318 306
319config X86_XADD
320 def_bool y
321 depends on !M386
322
323config X86_PPRO_FENCE 307config X86_PPRO_FENCE
324 bool "PentiumPro memory ordering errata workaround" 308 bool "PentiumPro memory ordering errata workaround"
325 depends on M686 || M586MMX || M586TSC || M586 || M486 || M386 || MGEODEGX1 309 depends on M686 || M586MMX || M586TSC || M586 || M486 || MGEODEGX1
326 ---help--- 310 ---help---
327 Old PentiumPro multiprocessor systems had errata that could cause 311 Old PentiumPro multiprocessor systems had errata that could cause
328 memory operations to violate the x86 ordering standard in rare cases. 312 memory operations to violate the x86 ordering standard in rare cases.
@@ -335,27 +319,11 @@ config X86_PPRO_FENCE
335 319
336config X86_F00F_BUG 320config X86_F00F_BUG
337 def_bool y 321 def_bool y
338 depends on M586MMX || M586TSC || M586 || M486 || M386 322 depends on M586MMX || M586TSC || M586 || M486
339 323
340config X86_INVD_BUG 324config X86_INVD_BUG
341 def_bool y 325 def_bool y
342 depends on M486 || M386 326 depends on M486
343
344config X86_WP_WORKS_OK
345 def_bool y
346 depends on !M386
347
348config X86_INVLPG
349 def_bool y
350 depends on X86_32 && !M386
351
352config X86_BSWAP
353 def_bool y
354 depends on X86_32 && !M386
355
356config X86_POPAD_OK
357 def_bool y
358 depends on X86_32 && !M386
359 327
360config X86_ALIGNMENT_16 328config X86_ALIGNMENT_16
361 def_bool y 329 def_bool y
@@ -412,12 +380,11 @@ config X86_MINIMUM_CPU_FAMILY
412 default "64" if X86_64 380 default "64" if X86_64
413 default "6" if X86_32 && X86_P6_NOP 381 default "6" if X86_32 && X86_P6_NOP
414 default "5" if X86_32 && X86_CMPXCHG64 382 default "5" if X86_32 && X86_CMPXCHG64
415 default "4" if X86_32 && (X86_XADD || X86_CMPXCHG || X86_BSWAP || X86_WP_WORKS_OK) 383 default "4"
416 default "3"
417 384
418config X86_DEBUGCTLMSR 385config X86_DEBUGCTLMSR
419 def_bool y 386 def_bool y
420 depends on !(MK6 || MWINCHIPC6 || MWINCHIP3D || MCYRIXIII || M586MMX || M586TSC || M586 || M486 || M386) && !UML 387 depends on !(MK6 || MWINCHIPC6 || MWINCHIP3D || MCYRIXIII || M586MMX || M586TSC || M586 || M486) && !UML
421 388
422menuconfig PROCESSOR_SELECT 389menuconfig PROCESSOR_SELECT
423 bool "Supported processor vendors" if EXPERT 390 bool "Supported processor vendors" if EXPERT
@@ -441,7 +408,7 @@ config CPU_SUP_INTEL
441config CPU_SUP_CYRIX_32 408config CPU_SUP_CYRIX_32
442 default y 409 default y
443 bool "Support Cyrix processors" if PROCESSOR_SELECT 410 bool "Support Cyrix processors" if PROCESSOR_SELECT
444 depends on M386 || M486 || M586 || M586TSC || M586MMX || (EXPERT && !64BIT) 411 depends on M486 || M586 || M586TSC || M586MMX || (EXPERT && !64BIT)
445 ---help--- 412 ---help---
446 This enables detection, tunings and quirks for Cyrix processors 413 This enables detection, tunings and quirks for Cyrix processors
447 414
@@ -495,7 +462,7 @@ config CPU_SUP_TRANSMETA_32
495config CPU_SUP_UMC_32 462config CPU_SUP_UMC_32
496 default y 463 default y
497 bool "Support UMC processors" if PROCESSOR_SELECT 464 bool "Support UMC processors" if PROCESSOR_SELECT
498 depends on M386 || M486 || (EXPERT && !64BIT) 465 depends on M486 || (EXPERT && !64BIT)
499 ---help--- 466 ---help---
500 This enables detection, tunings and quirks for UMC processors 467 This enables detection, tunings and quirks for UMC processors
501 468