diff options
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r-- | arch/x86/Kconfig | 283 |
1 files changed, 178 insertions, 105 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 9d4714e0020c..18a58ecfe684 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -23,6 +23,8 @@ config X86 | |||
23 | select HAVE_OPROFILE | 23 | select HAVE_OPROFILE |
24 | select HAVE_KPROBES | 24 | select HAVE_KPROBES |
25 | select HAVE_KRETPROBES | 25 | select HAVE_KRETPROBES |
26 | select HAVE_DYNAMIC_FTRACE | ||
27 | select HAVE_FTRACE | ||
26 | select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) | 28 | select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) |
27 | select HAVE_ARCH_KGDB if !X86_VOYAGER | 29 | select HAVE_ARCH_KGDB if !X86_VOYAGER |
28 | select HAVE_GENERIC_DMA_COHERENT if X86_32 | 30 | select HAVE_GENERIC_DMA_COHERENT if X86_32 |
@@ -122,7 +124,7 @@ config ARCH_HAS_CACHE_LINE_SIZE | |||
122 | def_bool y | 124 | def_bool y |
123 | 125 | ||
124 | config HAVE_SETUP_PER_CPU_AREA | 126 | config HAVE_SETUP_PER_CPU_AREA |
125 | def_bool X86_64 || (X86_SMP && !X86_VOYAGER) | 127 | def_bool X86_64_SMP || (X86_SMP && !X86_VOYAGER) |
126 | 128 | ||
127 | config HAVE_CPUMASK_OF_CPU_MAP | 129 | config HAVE_CPUMASK_OF_CPU_MAP |
128 | def_bool X86_64_SMP | 130 | def_bool X86_64_SMP |
@@ -169,6 +171,7 @@ config GENERIC_PENDING_IRQ | |||
169 | config X86_SMP | 171 | config X86_SMP |
170 | bool | 172 | bool |
171 | depends on SMP && ((X86_32 && !X86_VOYAGER) || X86_64) | 173 | depends on SMP && ((X86_32 && !X86_VOYAGER) || X86_64) |
174 | select USE_GENERIC_SMP_HELPERS | ||
172 | default y | 175 | default y |
173 | 176 | ||
174 | config X86_32_SMP | 177 | config X86_32_SMP |
@@ -182,12 +185,12 @@ config X86_64_SMP | |||
182 | config X86_HT | 185 | config X86_HT |
183 | bool | 186 | bool |
184 | depends on SMP | 187 | depends on SMP |
185 | depends on (X86_32 && !(X86_VISWS || X86_VOYAGER)) || X86_64 | 188 | depends on (X86_32 && !X86_VOYAGER) || X86_64 |
186 | default y | 189 | default y |
187 | 190 | ||
188 | config X86_BIOS_REBOOT | 191 | config X86_BIOS_REBOOT |
189 | bool | 192 | bool |
190 | depends on !X86_VISWS && !X86_VOYAGER | 193 | depends on !X86_VOYAGER |
191 | default y | 194 | default y |
192 | 195 | ||
193 | config X86_TRAMPOLINE | 196 | config X86_TRAMPOLINE |
@@ -231,6 +234,26 @@ config SMP | |||
231 | 234 | ||
232 | If you don't know what to do here, say N. | 235 | If you don't know what to do here, say N. |
233 | 236 | ||
237 | config X86_FIND_SMP_CONFIG | ||
238 | def_bool y | ||
239 | depends on X86_MPPARSE || X86_VOYAGER | ||
240 | |||
241 | if ACPI | ||
242 | config X86_MPPARSE | ||
243 | def_bool y | ||
244 | bool "Enable MPS table" | ||
245 | depends on X86_LOCAL_APIC | ||
246 | help | ||
247 | For old smp systems that do not have proper acpi support. Newer systems | ||
248 | (esp with 64bit cpus) with acpi support, MADT and DSDT will override it | ||
249 | endif | ||
250 | |||
251 | if !ACPI | ||
252 | config X86_MPPARSE | ||
253 | def_bool y | ||
254 | depends on X86_LOCAL_APIC | ||
255 | endif | ||
256 | |||
234 | choice | 257 | choice |
235 | prompt "Subarchitecture Type" | 258 | prompt "Subarchitecture Type" |
236 | default X86_PC | 259 | default X86_PC |
@@ -252,7 +275,7 @@ config X86_ELAN | |||
252 | 275 | ||
253 | config X86_VOYAGER | 276 | config X86_VOYAGER |
254 | bool "Voyager (NCR)" | 277 | bool "Voyager (NCR)" |
255 | depends on X86_32 && (SMP || BROKEN) | 278 | depends on X86_32 && (SMP || BROKEN) && !PCI |
256 | help | 279 | help |
257 | Voyager is an MCA-based 32-way capable SMP architecture proprietary | 280 | Voyager is an MCA-based 32-way capable SMP architecture proprietary |
258 | to NCR Corp. Machine classes 345x/35xx/4100/51xx are Voyager-based. | 281 | to NCR Corp. Machine classes 345x/35xx/4100/51xx are Voyager-based. |
@@ -262,16 +285,27 @@ config X86_VOYAGER | |||
262 | If you do not specifically know you have a Voyager based machine, | 285 | If you do not specifically know you have a Voyager based machine, |
263 | say N here, otherwise the kernel you build will not be bootable. | 286 | say N here, otherwise the kernel you build will not be bootable. |
264 | 287 | ||
288 | config X86_GENERICARCH | ||
289 | bool "Generic architecture" | ||
290 | depends on X86_32 | ||
291 | help | ||
292 | This option compiles in the NUMAQ, Summit, bigsmp, ES7000, default | ||
293 | subarchitectures. It is intended for a generic binary kernel. | ||
294 | if you select them all, kernel will probe it one by one. and will | ||
295 | fallback to default. | ||
296 | |||
297 | if X86_GENERICARCH | ||
298 | |||
265 | config X86_NUMAQ | 299 | config X86_NUMAQ |
266 | bool "NUMAQ (IBM/Sequent)" | 300 | bool "NUMAQ (IBM/Sequent)" |
267 | depends on SMP && X86_32 | 301 | depends on SMP && X86_32 && PCI && X86_MPPARSE |
268 | select NUMA | 302 | select NUMA |
269 | help | 303 | help |
270 | This option is used for getting Linux to run on a (IBM/Sequent) NUMA | 304 | This option is used for getting Linux to run on a NUMAQ (IBM/Sequent) |
271 | multiquad box. This changes the way that processors are bootstrapped, | 305 | NUMA multiquad box. This changes the way that processors are |
272 | and uses Clustered Logical APIC addressing mode instead of Flat Logical. | 306 | bootstrapped, and uses Clustered Logical APIC addressing mode instead |
273 | You will need a new lynxer.elf file to flash your firmware with - send | 307 | of Flat Logical. You will need a new lynxer.elf file to flash your |
274 | email to <Martin.Bligh@us.ibm.com>. | 308 | firmware with - send email to <Martin.Bligh@us.ibm.com>. |
275 | 309 | ||
276 | config X86_SUMMIT | 310 | config X86_SUMMIT |
277 | bool "Summit/EXA (IBM x440)" | 311 | bool "Summit/EXA (IBM x440)" |
@@ -280,46 +314,21 @@ config X86_SUMMIT | |||
280 | This option is needed for IBM systems that use the Summit/EXA chipset. | 314 | This option is needed for IBM systems that use the Summit/EXA chipset. |
281 | In particular, it is needed for the x440. | 315 | In particular, it is needed for the x440. |
282 | 316 | ||
283 | If you don't have one of these computers, you should say N here. | 317 | config X86_ES7000 |
284 | If you want to build a NUMA kernel, you must select ACPI. | 318 | bool "Support for Unisys ES7000 IA32 series" |
319 | depends on X86_32 && SMP | ||
320 | help | ||
321 | Support for Unisys ES7000 systems. Say 'Y' here if this kernel is | ||
322 | supposed to run on an IA32-based Unisys ES7000 system. | ||
285 | 323 | ||
286 | config X86_BIGSMP | 324 | config X86_BIGSMP |
287 | bool "Support for other sub-arch SMP systems with more than 8 CPUs" | 325 | bool "Support for big SMP systems with more than 8 CPUs" |
288 | depends on X86_32 && SMP | 326 | depends on X86_32 && SMP |
289 | help | 327 | help |
290 | This option is needed for the systems that have more than 8 CPUs | 328 | This option is needed for the systems that have more than 8 CPUs |
291 | and if the system is not of any sub-arch type above. | 329 | and if the system is not of any sub-arch type above. |
292 | 330 | ||
293 | If you don't have such a system, you should say N here. | 331 | endif |
294 | |||
295 | config X86_VISWS | ||
296 | bool "SGI 320/540 (Visual Workstation)" | ||
297 | depends on X86_32 | ||
298 | help | ||
299 | The SGI Visual Workstation series is an IA32-based workstation | ||
300 | based on SGI systems chips with some legacy PC hardware attached. | ||
301 | |||
302 | Say Y here to create a kernel to run on the SGI 320 or 540. | ||
303 | |||
304 | A kernel compiled for the Visual Workstation will not run on PCs | ||
305 | and vice versa. See <file:Documentation/sgi-visws.txt> for details. | ||
306 | |||
307 | config X86_GENERICARCH | ||
308 | bool "Generic architecture (Summit, bigsmp, ES7000, default)" | ||
309 | depends on X86_32 | ||
310 | help | ||
311 | This option compiles in the Summit, bigsmp, ES7000, default subarchitectures. | ||
312 | It is intended for a generic binary kernel. | ||
313 | If you want a NUMA kernel, select ACPI. We need SRAT for NUMA. | ||
314 | |||
315 | config X86_ES7000 | ||
316 | bool "Support for Unisys ES7000 IA32 series" | ||
317 | depends on X86_32 && SMP | ||
318 | help | ||
319 | Support for Unisys ES7000 systems. Say 'Y' here if this kernel is | ||
320 | supposed to run on an IA32-based Unisys ES7000 system. | ||
321 | Only choose this option if you have such a system, otherwise you | ||
322 | should say N here. | ||
323 | 332 | ||
324 | config X86_RDC321X | 333 | config X86_RDC321X |
325 | bool "RDC R-321x SoC" | 334 | bool "RDC R-321x SoC" |
@@ -338,7 +347,7 @@ config X86_RDC321X | |||
338 | config X86_VSMP | 347 | config X86_VSMP |
339 | bool "Support for ScaleMP vSMP" | 348 | bool "Support for ScaleMP vSMP" |
340 | select PARAVIRT | 349 | select PARAVIRT |
341 | depends on X86_64 | 350 | depends on X86_64 && PCI |
342 | help | 351 | help |
343 | Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is | 352 | Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is |
344 | supposed to run on these EM64T-based machines. Only choose this option | 353 | supposed to run on these EM64T-based machines. Only choose this option |
@@ -346,6 +355,18 @@ config X86_VSMP | |||
346 | 355 | ||
347 | endchoice | 356 | endchoice |
348 | 357 | ||
358 | config X86_VISWS | ||
359 | bool "SGI 320/540 (Visual Workstation)" | ||
360 | depends on X86_32 && PCI && !X86_VOYAGER && X86_MPPARSE && PCI_GODIRECT | ||
361 | help | ||
362 | The SGI Visual Workstation series is an IA32-based workstation | ||
363 | based on SGI systems chips with some legacy PC hardware attached. | ||
364 | |||
365 | Say Y here to create a kernel to run on the SGI 320 or 540. | ||
366 | |||
367 | A kernel compiled for the Visual Workstation will run on general | ||
368 | PCs as well. See <file:Documentation/sgi-visws.txt> for details. | ||
369 | |||
349 | config SCHED_NO_NO_OMIT_FRAME_POINTER | 370 | config SCHED_NO_NO_OMIT_FRAME_POINTER |
350 | def_bool y | 371 | def_bool y |
351 | prompt "Single-depth WCHAN output" | 372 | prompt "Single-depth WCHAN output" |
@@ -374,7 +395,7 @@ config VMI | |||
374 | bool "VMI Guest support" | 395 | bool "VMI Guest support" |
375 | select PARAVIRT | 396 | select PARAVIRT |
376 | depends on X86_32 | 397 | depends on X86_32 |
377 | depends on !(X86_VISWS || X86_VOYAGER) | 398 | depends on !X86_VOYAGER |
378 | help | 399 | help |
379 | VMI provides a paravirtualized interface to the VMware ESX server | 400 | VMI provides a paravirtualized interface to the VMware ESX server |
380 | (it could be used by other hypervisors in theory too, but is not | 401 | (it could be used by other hypervisors in theory too, but is not |
@@ -385,7 +406,7 @@ config KVM_CLOCK | |||
385 | bool "KVM paravirtualized clock" | 406 | bool "KVM paravirtualized clock" |
386 | select PARAVIRT | 407 | select PARAVIRT |
387 | select PARAVIRT_CLOCK | 408 | select PARAVIRT_CLOCK |
388 | depends on !(X86_VISWS || X86_VOYAGER) | 409 | depends on !X86_VOYAGER |
389 | help | 410 | help |
390 | Turning on this option will allow you to run a paravirtualized clock | 411 | Turning on this option will allow you to run a paravirtualized clock |
391 | when running over the KVM hypervisor. Instead of relying on a PIT | 412 | when running over the KVM hypervisor. Instead of relying on a PIT |
@@ -396,7 +417,7 @@ config KVM_CLOCK | |||
396 | config KVM_GUEST | 417 | config KVM_GUEST |
397 | bool "KVM Guest support" | 418 | bool "KVM Guest support" |
398 | select PARAVIRT | 419 | select PARAVIRT |
399 | depends on !(X86_VISWS || X86_VOYAGER) | 420 | depends on !X86_VOYAGER |
400 | help | 421 | help |
401 | This option enables various optimizations for running under the KVM | 422 | This option enables various optimizations for running under the KVM |
402 | hypervisor. | 423 | hypervisor. |
@@ -405,7 +426,7 @@ source "arch/x86/lguest/Kconfig" | |||
405 | 426 | ||
406 | config PARAVIRT | 427 | config PARAVIRT |
407 | bool "Enable paravirtualization code" | 428 | bool "Enable paravirtualization code" |
408 | depends on !(X86_VISWS || X86_VOYAGER) | 429 | depends on !X86_VOYAGER |
409 | help | 430 | help |
410 | This changes the kernel so it can modify itself when it is run | 431 | This changes the kernel so it can modify itself when it is run |
411 | under a hypervisor, potentially improving performance significantly | 432 | under a hypervisor, potentially improving performance significantly |
@@ -418,51 +439,32 @@ config PARAVIRT_CLOCK | |||
418 | 439 | ||
419 | endif | 440 | endif |
420 | 441 | ||
421 | config MEMTEST_BOOTPARAM | 442 | config PARAVIRT_DEBUG |
422 | bool "Memtest boot parameter" | 443 | bool "paravirt-ops debugging" |
444 | depends on PARAVIRT && DEBUG_KERNEL | ||
445 | help | ||
446 | Enable to debug paravirt_ops internals. Specifically, BUG if | ||
447 | a paravirt_op is missing when it is called. | ||
448 | |||
449 | config MEMTEST | ||
450 | bool "Memtest" | ||
423 | depends on X86_64 | 451 | depends on X86_64 |
424 | default y | ||
425 | help | 452 | help |
426 | This option adds a kernel parameter 'memtest', which allows memtest | 453 | This option adds a kernel parameter 'memtest', which allows memtest |
427 | to be disabled at boot. If this option is selected, memtest | 454 | to be set. |
428 | functionality can be disabled with memtest=0 on the kernel | 455 | memtest=0, mean disabled; -- default |
429 | command line. The purpose of this option is to allow a single | 456 | memtest=1, mean do 1 test pattern; |
430 | kernel image to be distributed with memtest built in, but not | 457 | ... |
431 | necessarily enabled. | 458 | memtest=4, mean do 4 test patterns. |
432 | 459 | If you are unsure how to answer this question, answer N. | |
433 | If you are unsure how to answer this question, answer Y. | ||
434 | |||
435 | config MEMTEST_BOOTPARAM_VALUE | ||
436 | int "Memtest boot parameter default value (0-4)" | ||
437 | depends on MEMTEST_BOOTPARAM | ||
438 | range 0 4 | ||
439 | default 0 | ||
440 | help | ||
441 | This option sets the default value for the kernel parameter | ||
442 | 'memtest', which allows memtest to be disabled at boot. If this | ||
443 | option is set to 0 (zero), the memtest kernel parameter will | ||
444 | default to 0, disabling memtest at bootup. If this option is | ||
445 | set to 4, the memtest kernel parameter will default to 4, | ||
446 | enabling memtest at bootup, and use that as pattern number. | ||
447 | |||
448 | If you are unsure how to answer this question, answer 0. | ||
449 | |||
450 | config ACPI_SRAT | ||
451 | def_bool y | ||
452 | depends on X86_32 && ACPI && NUMA && (X86_SUMMIT || X86_GENERICARCH) | ||
453 | select ACPI_NUMA | ||
454 | |||
455 | config HAVE_ARCH_PARSE_SRAT | ||
456 | def_bool y | ||
457 | depends on ACPI_SRAT | ||
458 | 460 | ||
459 | config X86_SUMMIT_NUMA | 461 | config X86_SUMMIT_NUMA |
460 | def_bool y | 462 | def_bool y |
461 | depends on X86_32 && NUMA && (X86_SUMMIT || X86_GENERICARCH) | 463 | depends on X86_32 && NUMA && X86_GENERICARCH |
462 | 464 | ||
463 | config X86_CYCLONE_TIMER | 465 | config X86_CYCLONE_TIMER |
464 | def_bool y | 466 | def_bool y |
465 | depends on X86_32 && X86_SUMMIT || X86_GENERICARCH | 467 | depends on X86_GENERICARCH |
466 | 468 | ||
467 | config ES7000_CLUSTERED_APIC | 469 | config ES7000_CLUSTERED_APIC |
468 | def_bool y | 470 | def_bool y |
@@ -550,6 +552,21 @@ config CALGARY_IOMMU_ENABLED_BY_DEFAULT | |||
550 | Calgary anyway, pass 'iommu=calgary' on the kernel command line. | 552 | Calgary anyway, pass 'iommu=calgary' on the kernel command line. |
551 | If unsure, say Y. | 553 | If unsure, say Y. |
552 | 554 | ||
555 | config AMD_IOMMU | ||
556 | bool "AMD IOMMU support" | ||
557 | select SWIOTLB | ||
558 | depends on X86_64 && PCI && ACPI | ||
559 | help | ||
560 | With this option you can enable support for AMD IOMMU hardware in | ||
561 | your system. An IOMMU is a hardware component which provides | ||
562 | remapping of DMA memory accesses from devices. With an AMD IOMMU you | ||
563 | can isolate the the DMA memory of different devices and protect the | ||
564 | system from misbehaving device drivers or hardware. | ||
565 | |||
566 | You can find out if your system has an AMD IOMMU if you look into | ||
567 | your BIOS for an option to enable it or if you have an IVRS ACPI | ||
568 | table. | ||
569 | |||
553 | # need this always selected by IOMMU for the VIA workaround | 570 | # need this always selected by IOMMU for the VIA workaround |
554 | config SWIOTLB | 571 | config SWIOTLB |
555 | bool | 572 | bool |
@@ -561,21 +578,36 @@ config SWIOTLB | |||
561 | 3 GB of memory. If unsure, say Y. | 578 | 3 GB of memory. If unsure, say Y. |
562 | 579 | ||
563 | config IOMMU_HELPER | 580 | config IOMMU_HELPER |
564 | def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB) | 581 | def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU) |
582 | config MAXSMP | ||
583 | bool "Configure Maximum number of SMP Processors and NUMA Nodes" | ||
584 | depends on X86_64 && SMP | ||
585 | default n | ||
586 | help | ||
587 | Configure maximum number of CPUS and NUMA Nodes for this architecture. | ||
588 | If unsure, say N. | ||
565 | 589 | ||
590 | if MAXSMP | ||
566 | config NR_CPUS | 591 | config NR_CPUS |
567 | int "Maximum number of CPUs (2-255)" | 592 | int |
568 | range 2 255 | 593 | default "4096" |
594 | endif | ||
595 | |||
596 | if !MAXSMP | ||
597 | config NR_CPUS | ||
598 | int "Maximum number of CPUs (2-4096)" | ||
599 | range 2 4096 | ||
569 | depends on SMP | 600 | depends on SMP |
570 | default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000 | 601 | default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000 |
571 | default "8" | 602 | default "8" |
572 | help | 603 | help |
573 | This allows you to specify the maximum number of CPUs which this | 604 | This allows you to specify the maximum number of CPUs which this |
574 | kernel will support. The maximum supported value is 255 and the | 605 | kernel will support. The maximum supported value is 4096 and the |
575 | minimum value which makes sense is 2. | 606 | minimum value which makes sense is 2. |
576 | 607 | ||
577 | This is purely to save memory - each supported CPU adds | 608 | This is purely to save memory - each supported CPU adds |
578 | approximately eight kilobytes to the kernel image. | 609 | approximately eight kilobytes to the kernel image. |
610 | endif | ||
579 | 611 | ||
580 | config SCHED_SMT | 612 | config SCHED_SMT |
581 | bool "SMT (Hyperthreading) scheduler support" | 613 | bool "SMT (Hyperthreading) scheduler support" |
@@ -599,7 +631,7 @@ source "kernel/Kconfig.preempt" | |||
599 | 631 | ||
600 | config X86_UP_APIC | 632 | config X86_UP_APIC |
601 | bool "Local APIC support on uniprocessors" | 633 | bool "Local APIC support on uniprocessors" |
602 | depends on X86_32 && !SMP && !(X86_VISWS || X86_VOYAGER || X86_GENERICARCH) | 634 | depends on X86_32 && !SMP && !(X86_VOYAGER || X86_GENERICARCH) |
603 | help | 635 | help |
604 | A local APIC (Advanced Programmable Interrupt Controller) is an | 636 | A local APIC (Advanced Programmable Interrupt Controller) is an |
605 | integrated interrupt controller in the CPU. If you have a single-CPU | 637 | integrated interrupt controller in the CPU. If you have a single-CPU |
@@ -624,11 +656,11 @@ config X86_UP_IOAPIC | |||
624 | 656 | ||
625 | config X86_LOCAL_APIC | 657 | config X86_LOCAL_APIC |
626 | def_bool y | 658 | def_bool y |
627 | depends on X86_64 || (X86_32 && (X86_UP_APIC || ((X86_VISWS || SMP) && !X86_VOYAGER) || X86_GENERICARCH)) | 659 | depends on X86_64 || (X86_32 && (X86_UP_APIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH)) |
628 | 660 | ||
629 | config X86_IO_APIC | 661 | config X86_IO_APIC |
630 | def_bool y | 662 | def_bool y |
631 | depends on X86_64 || (X86_32 && (X86_UP_IOAPIC || (SMP && !(X86_VISWS || X86_VOYAGER)) || X86_GENERICARCH)) | 663 | depends on X86_64 || (X86_32 && (X86_UP_IOAPIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH)) |
632 | 664 | ||
633 | config X86_VISWS_APIC | 665 | config X86_VISWS_APIC |
634 | def_bool y | 666 | def_bool y |
@@ -682,7 +714,7 @@ config X86_MCE_NONFATAL | |||
682 | 714 | ||
683 | config X86_MCE_P4THERMAL | 715 | config X86_MCE_P4THERMAL |
684 | bool "check for P4 thermal throttling interrupt." | 716 | bool "check for P4 thermal throttling interrupt." |
685 | depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP) && !X86_VISWS | 717 | depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP) |
686 | help | 718 | help |
687 | Enabling this feature will cause a message to be printed when the P4 | 719 | Enabling this feature will cause a message to be printed when the P4 |
688 | enters thermal throttling. | 720 | enters thermal throttling. |
@@ -912,9 +944,9 @@ config X86_PAE | |||
912 | config NUMA | 944 | config NUMA |
913 | bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" | 945 | bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" |
914 | depends on SMP | 946 | depends on SMP |
915 | depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || (X86_SUMMIT || X86_GENERICARCH) && ACPI) && EXPERIMENTAL) | 947 | depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL) |
916 | default n if X86_PC | 948 | default n if X86_PC |
917 | default y if (X86_NUMAQ || X86_SUMMIT) | 949 | default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) |
918 | help | 950 | help |
919 | Enable NUMA (Non Uniform Memory Access) support. | 951 | Enable NUMA (Non Uniform Memory Access) support. |
920 | The kernel will try to allocate memory used by a CPU on the | 952 | The kernel will try to allocate memory used by a CPU on the |
@@ -966,13 +998,25 @@ config NUMA_EMU | |||
966 | into virtual nodes when booted with "numa=fake=N", where N is the | 998 | into virtual nodes when booted with "numa=fake=N", where N is the |
967 | number of nodes. This is only useful for debugging. | 999 | number of nodes. This is only useful for debugging. |
968 | 1000 | ||
1001 | if MAXSMP | ||
1002 | |||
969 | config NODES_SHIFT | 1003 | config NODES_SHIFT |
970 | int "Max num nodes shift(1-15)" | 1004 | int |
971 | range 1 15 if X86_64 | 1005 | default "9" |
1006 | endif | ||
1007 | |||
1008 | if !MAXSMP | ||
1009 | config NODES_SHIFT | ||
1010 | int "Maximum NUMA Nodes (as a power of 2)" | ||
1011 | range 1 9 if X86_64 | ||
972 | default "6" if X86_64 | 1012 | default "6" if X86_64 |
973 | default "4" if X86_NUMAQ | 1013 | default "4" if X86_NUMAQ |
974 | default "3" | 1014 | default "3" |
975 | depends on NEED_MULTIPLE_NODES | 1015 | depends on NEED_MULTIPLE_NODES |
1016 | help | ||
1017 | Specify the maximum number of NUMA Nodes available on the target | ||
1018 | system. Increases memory reserved to accomodate various tables. | ||
1019 | endif | ||
976 | 1020 | ||
977 | config HAVE_ARCH_BOOTMEM_NODE | 1021 | config HAVE_ARCH_BOOTMEM_NODE |
978 | def_bool y | 1022 | def_bool y |
@@ -1091,6 +1135,37 @@ config MTRR | |||
1091 | 1135 | ||
1092 | See <file:Documentation/mtrr.txt> for more information. | 1136 | See <file:Documentation/mtrr.txt> for more information. |
1093 | 1137 | ||
1138 | config MTRR_SANITIZER | ||
1139 | bool | ||
1140 | prompt "MTRR cleanup support" | ||
1141 | depends on MTRR | ||
1142 | help | ||
1143 | Convert MTRR layout from continuous to discrete, so X drivers can | ||
1144 | add writeback entries. | ||
1145 | |||
1146 | Can be disabled with disable_mtrr_cleanup on the kernel command line. | ||
1147 | The largest mtrr entry size for a continous block can be set with | ||
1148 | mtrr_chunk_size. | ||
1149 | |||
1150 | If unsure, say N. | ||
1151 | |||
1152 | config MTRR_SANITIZER_ENABLE_DEFAULT | ||
1153 | int "MTRR cleanup enable value (0-1)" | ||
1154 | range 0 1 | ||
1155 | default "0" | ||
1156 | depends on MTRR_SANITIZER | ||
1157 | help | ||
1158 | Enable mtrr cleanup default value | ||
1159 | |||
1160 | config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT | ||
1161 | int "MTRR cleanup spare reg num (0-7)" | ||
1162 | range 0 7 | ||
1163 | default "1" | ||
1164 | depends on MTRR_SANITIZER | ||
1165 | help | ||
1166 | mtrr cleanup spare entries default, it can be changed via | ||
1167 | mtrr_spare_reg_nr=N on the kernel command line. | ||
1168 | |||
1094 | config X86_PAT | 1169 | config X86_PAT |
1095 | bool | 1170 | bool |
1096 | prompt "x86 PAT support" | 1171 | prompt "x86 PAT support" |
@@ -1191,7 +1266,6 @@ config KEXEC | |||
1191 | 1266 | ||
1192 | config CRASH_DUMP | 1267 | config CRASH_DUMP |
1193 | bool "kernel crash dumps (EXPERIMENTAL)" | 1268 | bool "kernel crash dumps (EXPERIMENTAL)" |
1194 | depends on EXPERIMENTAL | ||
1195 | depends on X86_64 || (X86_32 && HIGHMEM) | 1269 | depends on X86_64 || (X86_32 && HIGHMEM) |
1196 | help | 1270 | help |
1197 | Generate crash dump after being started by kexec. | 1271 | Generate crash dump after being started by kexec. |
@@ -1340,7 +1414,7 @@ config X86_APM_BOOT | |||
1340 | 1414 | ||
1341 | menuconfig APM | 1415 | menuconfig APM |
1342 | tristate "APM (Advanced Power Management) BIOS support" | 1416 | tristate "APM (Advanced Power Management) BIOS support" |
1343 | depends on X86_32 && PM_SLEEP && !X86_VISWS | 1417 | depends on X86_32 && PM_SLEEP |
1344 | ---help--- | 1418 | ---help--- |
1345 | APM is a BIOS specification for saving power using several different | 1419 | APM is a BIOS specification for saving power using several different |
1346 | techniques. This is mostly useful for battery powered laptops with | 1420 | techniques. This is mostly useful for battery powered laptops with |
@@ -1476,8 +1550,7 @@ endmenu | |||
1476 | menu "Bus options (PCI etc.)" | 1550 | menu "Bus options (PCI etc.)" |
1477 | 1551 | ||
1478 | config PCI | 1552 | config PCI |
1479 | bool "PCI support" if !X86_VISWS && !X86_VSMP | 1553 | bool "PCI support" |
1480 | depends on !X86_VOYAGER | ||
1481 | default y | 1554 | default y |
1482 | select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC) | 1555 | select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC) |
1483 | help | 1556 | help |
@@ -1488,7 +1561,7 @@ config PCI | |||
1488 | 1561 | ||
1489 | choice | 1562 | choice |
1490 | prompt "PCI access mode" | 1563 | prompt "PCI access mode" |
1491 | depends on X86_32 && PCI && !X86_VISWS | 1564 | depends on X86_32 && PCI |
1492 | default PCI_GOANY | 1565 | default PCI_GOANY |
1493 | ---help--- | 1566 | ---help--- |
1494 | On PCI systems, the BIOS can be used to detect the PCI devices and | 1567 | On PCI systems, the BIOS can be used to detect the PCI devices and |
@@ -1525,12 +1598,12 @@ endchoice | |||
1525 | 1598 | ||
1526 | config PCI_BIOS | 1599 | config PCI_BIOS |
1527 | def_bool y | 1600 | def_bool y |
1528 | depends on X86_32 && !X86_VISWS && PCI && (PCI_GOBIOS || PCI_GOANY) | 1601 | depends on X86_32 && PCI && (PCI_GOBIOS || PCI_GOANY) |
1529 | 1602 | ||
1530 | # x86-64 doesn't support PCI BIOS access from long mode so always go direct. | 1603 | # x86-64 doesn't support PCI BIOS access from long mode so always go direct. |
1531 | config PCI_DIRECT | 1604 | config PCI_DIRECT |
1532 | def_bool y | 1605 | def_bool y |
1533 | depends on PCI && (X86_64 || (PCI_GODIRECT || PCI_GOANY || PCI_GOOLPC) || X86_VISWS) | 1606 | depends on PCI && (X86_64 || (PCI_GODIRECT || PCI_GOANY || PCI_GOOLPC)) |
1534 | 1607 | ||
1535 | config PCI_MMCONFIG | 1608 | config PCI_MMCONFIG |
1536 | def_bool y | 1609 | def_bool y |
@@ -1590,7 +1663,7 @@ if X86_32 | |||
1590 | 1663 | ||
1591 | config ISA | 1664 | config ISA |
1592 | bool "ISA support" | 1665 | bool "ISA support" |
1593 | depends on !(X86_VOYAGER || X86_VISWS) | 1666 | depends on !X86_VOYAGER |
1594 | help | 1667 | help |
1595 | Find out whether you have ISA slots on your motherboard. ISA is the | 1668 | Find out whether you have ISA slots on your motherboard. ISA is the |
1596 | name of a bus system, i.e. the way the CPU talks to the other stuff | 1669 | name of a bus system, i.e. the way the CPU talks to the other stuff |
@@ -1617,7 +1690,7 @@ config EISA | |||
1617 | source "drivers/eisa/Kconfig" | 1690 | source "drivers/eisa/Kconfig" |
1618 | 1691 | ||
1619 | config MCA | 1692 | config MCA |
1620 | bool "MCA support" if !(X86_VISWS || X86_VOYAGER) | 1693 | bool "MCA support" if !X86_VOYAGER |
1621 | default y if X86_VOYAGER | 1694 | default y if X86_VOYAGER |
1622 | help | 1695 | help |
1623 | MicroChannel Architecture is found in some IBM PS/2 machines and | 1696 | MicroChannel Architecture is found in some IBM PS/2 machines and |