Kconfig (87ce786ae5f24e336195805a9fc7428a6f922478) Kconfig (d25e26b61d59370eee8b7f2634641eb0fa76e952)
1# x86 configuration
2mainmenu "Linux Kernel Configuration for x86"
3
4# Select 32 or 64 bit
5config 64BIT
6 bool "64-bit kernel" if ARCH = "x86"
7 default ARCH = "x86_64"
8 help

--- 563 unchanged lines hidden (view full) ---

572 Support for software bounce buffers used on x86-64 systems
573 which don't have a hardware IOMMU (e.g. the current generation
574 of Intel's x86-64 CPUs). Using this PCI devices which can only
575 access 32-bits of memory can be used on systems with more than
576 3 GB of memory. If unsure, say Y.
577
578config IOMMU_HELPER
579 def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU)
1# x86 configuration
2mainmenu "Linux Kernel Configuration for x86"
3
4# Select 32 or 64 bit
5config 64BIT
6 bool "64-bit kernel" if ARCH = "x86"
7 default ARCH = "x86_64"
8 help

--- 563 unchanged lines hidden (view full) ---

572 Support for software bounce buffers used on x86-64 systems
573 which don't have a hardware IOMMU (e.g. the current generation
574 of Intel's x86-64 CPUs). Using this PCI devices which can only
575 access 32-bits of memory can be used on systems with more than
576 3 GB of memory. If unsure, say Y.
577
578config IOMMU_HELPER
579 def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU)
580
580config MAXSMP
581 bool "Configure Maximum number of SMP Processors and NUMA Nodes"
581config MAXSMP
582 bool "Configure Maximum number of SMP Processors and NUMA Nodes"
582 depends on X86_64 && SMP
583 depends on X86_64 && SMP && BROKEN
583 default n
584 help
585 Configure maximum number of CPUS and NUMA Nodes for this architecture.
586 If unsure, say N.
587
584 default n
585 help
586 Configure maximum number of CPUS and NUMA Nodes for this architecture.
587 If unsure, say N.
588
588if MAXSMP
589config NR_CPUS
589config NR_CPUS
590 int
591 default "4096"
592endif
593
594if !MAXSMP
595config NR_CPUS
596 int "Maximum number of CPUs (2-4096)"
597 range 2 4096
590 int "Maximum number of CPUs (2-512)" if !MAXSMP
591 range 2 512
598 depends on SMP
592 depends on SMP
593 default "4096" if MAXSMP
599 default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000
600 default "8"
601 help
602 This allows you to specify the maximum number of CPUs which this
594 default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000
595 default "8"
596 help
597 This allows you to specify the maximum number of CPUs which this
603 kernel will support. The maximum supported value is 4096 and the
598 kernel will support. The maximum supported value is 512 and the
604 minimum value which makes sense is 2.
605
606 This is purely to save memory - each supported CPU adds
607 approximately eight kilobytes to the kernel image.
599 minimum value which makes sense is 2.
600
601 This is purely to save memory - each supported CPU adds
602 approximately eight kilobytes to the kernel image.
608endif
609
610config SCHED_SMT
611 bool "SMT (Hyperthreading) scheduler support"
612 depends on X86_HT
613 help
614 SMT scheduler support improves the CPU scheduler's decision making
615 when dealing with Intel Pentium 4 chips with HyperThreading at a
616 cost of slightly increased overhead in some places. If unsure say

--- 329 unchanged lines hidden (view full) ---

946 default n if X86_PC
947 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
948 help
949 Enable NUMA (Non Uniform Memory Access) support.
950 The kernel will try to allocate memory used by a CPU on the
951 local memory controller of the CPU and add some more
952 NUMA awareness to the kernel.
953
603
604config SCHED_SMT
605 bool "SMT (Hyperthreading) scheduler support"
606 depends on X86_HT
607 help
608 SMT scheduler support improves the CPU scheduler's decision making
609 when dealing with Intel Pentium 4 chips with HyperThreading at a
610 cost of slightly increased overhead in some places. If unsure say

--- 329 unchanged lines hidden (view full) ---

940 default n if X86_PC
941 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
942 help
943 Enable NUMA (Non Uniform Memory Access) support.
944 The kernel will try to allocate memory used by a CPU on the
945 local memory controller of the CPU and add some more
946 NUMA awareness to the kernel.
947
954 For i386 this is currently highly experimental and should be only
948 For 32-bit this is currently highly experimental and should be only
955 used for kernel development. It might also cause boot failures.
949 used for kernel development. It might also cause boot failures.
956 For x86_64 this is recommended on all multiprocessor Opteron systems.
950 For 64-bit this is recommended on all multiprocessor Opteron systems.
957 If the system is EM64T, you should say N unless your system is
958 EM64T NUMA.
959
960comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI"
961 depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI)
962
963config K8_NUMA
964 def_bool y

--- 26 unchanged lines hidden (view full) ---

991config NUMA_EMU
992 bool "NUMA emulation"
993 depends on X86_64 && NUMA
994 help
995 Enable NUMA emulation. A flat machine will be split
996 into virtual nodes when booted with "numa=fake=N", where N is the
997 number of nodes. This is only useful for debugging.
998
951 If the system is EM64T, you should say N unless your system is
952 EM64T NUMA.
953
954comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI"
955 depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI)
956
957config K8_NUMA
958 def_bool y

--- 26 unchanged lines hidden (view full) ---

985config NUMA_EMU
986 bool "NUMA emulation"
987 depends on X86_64 && NUMA
988 help
989 Enable NUMA emulation. A flat machine will be split
990 into virtual nodes when booted with "numa=fake=N", where N is the
991 number of nodes. This is only useful for debugging.
992
999if MAXSMP
1000
1001config NODES_SHIFT
993config NODES_SHIFT
1002 int
1003 default "9"
1004endif
1005
1006if !MAXSMP
1007config NODES_SHIFT
1008 int "Maximum NUMA Nodes (as a power of 2)"
994 int "Maximum NUMA Nodes (as a power of 2)" if !MAXSMP
1009 range 1 9 if X86_64
995 range 1 9 if X86_64
996 default "9" if MAXSMP
1010 default "6" if X86_64
1011 default "4" if X86_NUMAQ
1012 default "3"
1013 depends on NEED_MULTIPLE_NODES
1014 help
1015 Specify the maximum number of NUMA Nodes available on the target
1016 system. Increases memory reserved to accomodate various tables.
997 default "6" if X86_64
998 default "4" if X86_NUMAQ
999 default "3"
1000 depends on NEED_MULTIPLE_NODES
1001 help
1002 Specify the maximum number of NUMA Nodes available on the target
1003 system. Increases memory reserved to accomodate various tables.
1017endif
1018
1019config HAVE_ARCH_BOOTMEM_NODE
1020 def_bool y
1021 depends on X86_32 && NUMA
1022
1023config ARCH_HAVE_MEMORY_PRESENT
1024 def_bool y
1025 depends on X86_32 && DISCONTIGMEM

--- 232 unchanged lines hidden (view full) ---

1258
1259 It is an ongoing process to be certain the hardware in a machine
1260 is properly shutdown, so do not be surprised if this code does not
1261 initially work for you. It may help to enable device hotplugging
1262 support. As of this writing the exact hardware interface is
1263 strongly in flux, so no good recommendation can be made.
1264
1265config CRASH_DUMP
1004
1005config HAVE_ARCH_BOOTMEM_NODE
1006 def_bool y
1007 depends on X86_32 && NUMA
1008
1009config ARCH_HAVE_MEMORY_PRESENT
1010 def_bool y
1011 depends on X86_32 && DISCONTIGMEM

--- 232 unchanged lines hidden (view full) ---

1244
1245 It is an ongoing process to be certain the hardware in a machine
1246 is properly shutdown, so do not be surprised if this code does not
1247 initially work for you. It may help to enable device hotplugging
1248 support. As of this writing the exact hardware interface is
1249 strongly in flux, so no good recommendation can be made.
1250
1251config CRASH_DUMP
1266 bool "kernel crash dumps (EXPERIMENTAL)"
1252 bool "kernel crash dumps"
1267 depends on X86_64 || (X86_32 && HIGHMEM)
1268 help
1269 Generate crash dump after being started by kexec.
1270 This should be normally only set in special crash dump kernels
1271 which are loaded in the main kernel with kexec-tools into
1272 a specially reserved region and then later executed after
1273 a crash by kdump/kexec. The crash dump kernel must be compiled
1274 to a memory address not used by the main kernel or BIOS using

--- 377 unchanged lines hidden (view full) ---

1652 def_bool y
1653 depends on DMAR
1654 help
1655 Floppy disk drivers are know to bypass DMA API calls
1656 thereby failing to work when IOMMU is enabled. This
1657 workaround will setup a 1:1 mapping for the first
1658 16M to make floppy (an ISA device) work.
1659
1253 depends on X86_64 || (X86_32 && HIGHMEM)
1254 help
1255 Generate crash dump after being started by kexec.
1256 This should be normally only set in special crash dump kernels
1257 which are loaded in the main kernel with kexec-tools into
1258 a specially reserved region and then later executed after
1259 a crash by kdump/kexec. The crash dump kernel must be compiled
1260 to a memory address not used by the main kernel or BIOS using

--- 377 unchanged lines hidden (view full) ---

1638 def_bool y
1639 depends on DMAR
1640 help
1641 Floppy disk drivers are know to bypass DMA API calls
1642 thereby failing to work when IOMMU is enabled. This
1643 workaround will setup a 1:1 mapping for the first
1644 16M to make floppy (an ISA device) work.
1645
1660config INTR_REMAP
1661 bool "Support for Interrupt Remapping (EXPERIMENTAL)"
1662 depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL
1663 help
1664 Supports Interrupt remapping for IO-APIC and MSI devices.
1665 To use x2apic mode in the CPU's which support x2APIC enhancements or
1666 to support platforms with CPU's having > 8 bit APIC ID, say Y.
1667
1668source "drivers/pci/pcie/Kconfig"
1669
1670source "drivers/pci/Kconfig"
1671
1672# x86_64 have no ISA slots, but do have ISA-style DMA.
1673config ISA_DMA_API
1674 def_bool y
1675

--- 144 unchanged lines hidden ---
1646source "drivers/pci/pcie/Kconfig"
1647
1648source "drivers/pci/Kconfig"
1649
1650# x86_64 have no ISA slots, but do have ISA-style DMA.
1651config ISA_DMA_API
1652 def_bool y
1653

--- 144 unchanged lines hidden ---