You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
616 lines
15 KiB
616 lines
15 KiB
config PGTABLE_LEVELS |
|
int "Page Table Levels" if !IA64_PAGE_SIZE_64KB |
|
range 3 4 if !IA64_PAGE_SIZE_64KB |
|
default 3 |
|
|
|
source "init/Kconfig" |
|
|
|
source "kernel/Kconfig.freezer" |
|
|
|
menu "Processor type and features" |
|
|
|
config IA64 |
|
bool |
|
select ARCH_MIGHT_HAVE_PC_PARPORT |
|
select ARCH_MIGHT_HAVE_PC_SERIO |
|
select PCI if (!IA64_HP_SIM) |
|
select ACPI if (!IA64_HP_SIM) |
|
select ACPI_SYSTEM_POWER_STATES_SUPPORT if ACPI |
|
select ARCH_MIGHT_HAVE_ACPI_PDC if ACPI |
|
select HAVE_UNSTABLE_SCHED_CLOCK |
|
select HAVE_IDE |
|
select HAVE_OPROFILE |
|
select HAVE_KPROBES |
|
select HAVE_KRETPROBES |
|
select HAVE_FTRACE_MCOUNT_RECORD |
|
select HAVE_DYNAMIC_FTRACE if (!ITANIUM) |
|
select HAVE_FUNCTION_TRACER |
|
select HAVE_DMA_ATTRS |
|
select TTY |
|
select HAVE_ARCH_TRACEHOOK |
|
select HAVE_DMA_API_DEBUG |
|
select HAVE_MEMBLOCK |
|
select HAVE_MEMBLOCK_NODE_MAP |
|
select HAVE_VIRT_CPU_ACCOUNTING |
|
select ARCH_HAS_SG_CHAIN |
|
select VIRT_TO_BUS |
|
select ARCH_DISCARD_MEMBLOCK |
|
select GENERIC_IRQ_PROBE |
|
select GENERIC_PENDING_IRQ if SMP |
|
select GENERIC_IRQ_SHOW |
|
select GENERIC_IRQ_LEGACY |
|
select ARCH_WANT_OPTIONAL_GPIOLIB |
|
select ARCH_HAVE_NMI_SAFE_CMPXCHG |
|
select GENERIC_IOMAP |
|
select GENERIC_SMP_IDLE_THREAD |
|
select ARCH_INIT_TASK |
|
select ARCH_TASK_STRUCT_ALLOCATOR |
|
select ARCH_THREAD_STACK_ALLOCATOR |
|
select ARCH_CLOCKSOURCE_DATA |
|
select GENERIC_TIME_VSYSCALL_OLD |
|
select SYSCTL_ARCH_UNALIGN_NO_WARN |
|
select HAVE_MOD_ARCH_SPECIFIC |
|
select MODULES_USE_ELF_RELA |
|
select ARCH_USE_CMPXCHG_LOCKREF |
|
select HAVE_ARCH_AUDITSYSCALL |
|
default y |
|
help |
|
The Itanium Processor Family is Intel's 64-bit successor to |
|
the 32-bit X86 line. The IA-64 Linux project has a home |
|
page at <http://www.linuxia64.org/> and a mailing list at |
|
<linux-ia64@vger.kernel.org>. |
|
|
|
config 64BIT |
|
bool |
|
select ATA_NONSTANDARD if ATA |
|
default y |
|
|
|
config ZONE_DMA |
|
def_bool y |
|
depends on !IA64_SGI_SN2 |
|
|
|
config QUICKLIST |
|
bool |
|
default y |
|
|
|
config MMU |
|
bool |
|
default y |
|
|
|
config ARCH_DMA_ADDR_T_64BIT |
|
def_bool y |
|
|
|
config NEED_DMA_MAP_STATE |
|
def_bool y |
|
|
|
config NEED_SG_DMA_LENGTH |
|
def_bool y |
|
|
|
config SWIOTLB |
|
bool |
|
|
|
config STACKTRACE_SUPPORT |
|
def_bool y |
|
|
|
config GENERIC_LOCKBREAK |
|
def_bool n |
|
|
|
config RWSEM_XCHGADD_ALGORITHM |
|
bool |
|
default y |
|
|
|
config HUGETLB_PAGE_SIZE_VARIABLE |
|
bool |
|
depends on HUGETLB_PAGE |
|
default y |
|
|
|
config GENERIC_CALIBRATE_DELAY |
|
bool |
|
default y |
|
|
|
config HAVE_SETUP_PER_CPU_AREA |
|
def_bool y |
|
|
|
config DMI |
|
bool |
|
default y |
|
select DMI_SCAN_MACHINE_NON_EFI_FALLBACK |
|
|
|
config EFI |
|
bool |
|
select UCS2_STRING |
|
default y |
|
|
|
config SCHED_OMIT_FRAME_POINTER |
|
bool |
|
default y |
|
|
|
config IA64_UNCACHED_ALLOCATOR |
|
bool |
|
select GENERIC_ALLOCATOR |
|
|
|
config ARCH_USES_PG_UNCACHED |
|
def_bool y |
|
depends on IA64_UNCACHED_ALLOCATOR |
|
|
|
config AUDIT_ARCH |
|
bool |
|
default y |
|
|
|
choice |
|
prompt "System type" |
|
default IA64_GENERIC |
|
|
|
config IA64_GENERIC |
|
bool "generic" |
|
select NUMA |
|
select ACPI_NUMA |
|
select SWIOTLB |
|
select PCI_MSI |
|
help |
|
This selects the system type of your hardware. A "generic" kernel |
|
will run on any supported IA-64 system. However, if you configure |
|
a kernel for your specific system, it will be faster and smaller. |
|
|
|
generic For any supported IA-64 system |
|
DIG-compliant For DIG ("Developer's Interface Guide") compliant systems |
|
DIG+Intel+IOMMU For DIG systems with Intel IOMMU |
|
HP-zx1/sx1000 For HP systems |
|
HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices. |
|
SGI-SN2 For SGI Altix systems |
|
SGI-UV For SGI UV systems |
|
Ski-simulator For the HP simulator <http://www.hpl.hp.com/research/linux/ski/> |
|
|
|
If you don't know what to do, choose "generic". |
|
|
|
config IA64_DIG |
|
bool "DIG-compliant" |
|
select SWIOTLB |
|
|
|
config IA64_DIG_VTD |
|
bool "DIG+Intel+IOMMU" |
|
select INTEL_IOMMU |
|
select PCI_MSI |
|
|
|
config IA64_HP_ZX1 |
|
bool "HP-zx1/sx1000" |
|
help |
|
Build a kernel that runs on HP zx1 and sx1000 systems. This adds |
|
support for the HP I/O MMU. |
|
|
|
config IA64_HP_ZX1_SWIOTLB |
|
bool "HP-zx1/sx1000 with software I/O TLB" |
|
select SWIOTLB |
|
help |
|
Build a kernel that runs on HP zx1 and sx1000 systems even when they |
|
have broken PCI devices which cannot DMA to full 32 bits. Apart |
|
from support for the HP I/O MMU, this includes support for the software |
|
I/O TLB, which allows supporting the broken devices at the expense of |
|
wasting some kernel memory (about 2MB by default). |
|
|
|
config IA64_SGI_SN2 |
|
bool "SGI-SN2" |
|
select NUMA |
|
select ACPI_NUMA |
|
help |
|
Selecting this option will optimize the kernel for use on sn2 based |
|
systems, but the resulting kernel binary will not run on other |
|
types of ia64 systems. If you have an SGI Altix system, it's safe |
|
to select this option. If in doubt, select ia64 generic support |
|
instead. |
|
|
|
config IA64_SGI_UV |
|
bool "SGI-UV" |
|
select NUMA |
|
select ACPI_NUMA |
|
select SWIOTLB |
|
help |
|
Selecting this option will optimize the kernel for use on UV based |
|
systems, but the resulting kernel binary will not run on other |
|
types of ia64 systems. If you have an SGI UV system, it's safe |
|
to select this option. If in doubt, select ia64 generic support |
|
instead. |
|
|
|
config IA64_HP_SIM |
|
bool "Ski-simulator" |
|
select SWIOTLB |
|
depends on !PM |
|
|
|
endchoice |
|
|
|
choice |
|
prompt "Processor type" |
|
default ITANIUM |
|
|
|
config ITANIUM |
|
bool "Itanium" |
|
help |
|
Select your IA-64 processor type. The default is Itanium. |
|
This choice is safe for all IA-64 systems, but may not perform |
|
optimally on systems with, say, Itanium 2 or newer processors. |
|
|
|
config MCKINLEY |
|
bool "Itanium 2" |
|
help |
|
Select this to configure for an Itanium 2 (McKinley) processor. |
|
|
|
endchoice |
|
|
|
choice |
|
prompt "Kernel page size" |
|
default IA64_PAGE_SIZE_16KB |
|
|
|
config IA64_PAGE_SIZE_4KB |
|
bool "4KB" |
|
help |
|
This lets you select the page size of the kernel. For best IA-64 |
|
performance, a page size of 8KB or 16KB is recommended. For best |
|
IA-32 compatibility, a page size of 4KB should be selected (the vast |
|
majority of IA-32 binaries work perfectly fine with a larger page |
|
size). For Itanium 2 or newer systems, a page size of 64KB can also |
|
be selected. |
|
|
|
4KB For best IA-32 compatibility |
|
8KB For best IA-64 performance |
|
16KB For best IA-64 performance |
|
64KB Requires Itanium 2 or newer processor. |
|
|
|
If you don't know what to do, choose 16KB. |
|
|
|
config IA64_PAGE_SIZE_8KB |
|
bool "8KB" |
|
|
|
config IA64_PAGE_SIZE_16KB |
|
bool "16KB" |
|
|
|
config IA64_PAGE_SIZE_64KB |
|
depends on !ITANIUM |
|
bool "64KB" |
|
|
|
endchoice |
|
|
|
if IA64_HP_SIM |
|
config HZ |
|
default 32 |
|
endif |
|
|
|
if !IA64_HP_SIM |
|
source kernel/Kconfig.hz |
|
endif |
|
|
|
config IA64_BRL_EMU |
|
bool |
|
depends on ITANIUM |
|
default y |
|
|
|
# align cache-sensitive data to 128 bytes |
|
config IA64_L1_CACHE_SHIFT |
|
int |
|
default "7" if MCKINLEY |
|
default "6" if ITANIUM |
|
|
|
config IA64_CYCLONE |
|
bool "Cyclone (EXA) Time Source support" |
|
help |
|
Say Y here to enable support for IBM EXA Cyclone time source. |
|
If you're unsure, answer N. |
|
|
|
config IOSAPIC |
|
bool |
|
depends on !IA64_HP_SIM |
|
default y |
|
|
|
config FORCE_MAX_ZONEORDER |
|
int "MAX_ORDER (11 - 17)" if !HUGETLB_PAGE |
|
range 11 17 if !HUGETLB_PAGE |
|
default "17" if HUGETLB_PAGE |
|
default "11" |
|
|
|
config SMP |
|
bool "Symmetric multi-processing support" |
|
help |
|
This enables support for systems with more than one CPU. If you have |
|
a system with only one CPU, say N. If you have a system with more |
|
than one CPU, say Y. |
|
|
|
If you say N here, the kernel will run on single and multiprocessor |
|
systems, but will use only one CPU of a multiprocessor system. If |
|
you say Y here, the kernel will run on many, but not all, |
|
single processor systems. On a single processor system, the kernel |
|
will run faster if you say N here. |
|
|
|
See also the SMP-HOWTO available at |
|
<http://www.tldp.org/docs.html#howto>. |
|
|
|
If you don't know what to do here, say N. |
|
|
|
config NR_CPUS |
|
int "Maximum number of CPUs (2-4096)" |
|
range 2 4096 |
|
depends on SMP |
|
default "4096" |
|
help |
|
You should set this to the number of CPUs in your system, but |
|
keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but |
|
only use 2 CPUs on a >2 CPU system. Setting this to a value larger |
|
than 64 will cause the use of a CPU mask array, causing a small |
|
performance hit. |
|
|
|
config HOTPLUG_CPU |
|
bool "Support for hot-pluggable CPUs" |
|
depends on SMP |
|
default n |
|
---help--- |
|
Say Y here to experiment with turning CPUs off and on. CPUs |
|
can be controlled through /sys/devices/system/cpu/cpu#. |
|
Say N if you want to disable CPU hotplug. |
|
|
|
config ARCH_ENABLE_MEMORY_HOTPLUG |
|
def_bool y |
|
|
|
config ARCH_ENABLE_MEMORY_HOTREMOVE |
|
def_bool y |
|
|
|
config SCHED_SMT |
|
bool "SMT scheduler support" |
|
depends on SMP |
|
help |
|
Improves the CPU scheduler's decision making when dealing with |
|
Intel IA64 chips with MultiThreading at a cost of slightly increased |
|
overhead in some places. If unsure say N here. |
|
|
|
config PERMIT_BSP_REMOVE |
|
bool "Support removal of Bootstrap Processor" |
|
depends on HOTPLUG_CPU |
|
default n |
|
---help--- |
|
Say Y here if your platform SAL will support removal of BSP with HOTPLUG_CPU |
|
support. |
|
|
|
config FORCE_CPEI_RETARGET |
|
bool "Force assumption that CPEI can be re-targeted" |
|
depends on PERMIT_BSP_REMOVE |
|
default n |
|
---help--- |
|
Say Y if you need to force the assumption that CPEI can be re-targeted to |
|
any cpu in the system. This hint is available via ACPI 3.0 specifications. |
|
Tiger4 systems are capable of re-directing CPEI to any CPU other than BSP. |
|
This option it useful to enable this feature on older BIOS's as well. |
|
You can also enable this by using boot command line option force_cpei=1. |
|
|
|
source "kernel/Kconfig.preempt" |
|
|
|
source "mm/Kconfig" |
|
|
|
config ARCH_SELECT_MEMORY_MODEL |
|
def_bool y |
|
|
|
config ARCH_DISCONTIGMEM_ENABLE |
|
def_bool y |
|
help |
|
Say Y to support efficient handling of discontiguous physical memory, |
|
for architectures which are either NUMA (Non-Uniform Memory Access) |
|
or have huge holes in the physical address space for other reasons. |
|
See <file:Documentation/vm/numa> for more. |
|
|
|
config ARCH_FLATMEM_ENABLE |
|
def_bool y |
|
|
|
config ARCH_SPARSEMEM_ENABLE |
|
def_bool y |
|
depends on ARCH_DISCONTIGMEM_ENABLE |
|
select SPARSEMEM_VMEMMAP_ENABLE |
|
|
|
config ARCH_DISCONTIGMEM_DEFAULT |
|
def_bool y if (IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB) |
|
depends on ARCH_DISCONTIGMEM_ENABLE |
|
|
|
config NUMA |
|
bool "NUMA support" |
|
depends on !IA64_HP_SIM && !FLATMEM |
|
default y if IA64_SGI_SN2 |
|
select ACPI_NUMA if ACPI |
|
help |
|
Say Y to compile the kernel to support NUMA (Non-Uniform Memory |
|
Access). This option is for configuring high-end multiprocessor |
|
server systems. If in doubt, say N. |
|
|
|
config NODES_SHIFT |
|
int "Max num nodes shift(3-10)" |
|
range 3 10 |
|
default "10" |
|
depends on NEED_MULTIPLE_NODES |
|
help |
|
This option specifies the maximum number of nodes in your SSI system. |
|
MAX_NUMNODES will be 2^(This value). |
|
If in doubt, use the default. |
|
|
|
# VIRTUAL_MEM_MAP and FLAT_NODE_MEM_MAP are functionally equivalent. |
|
# VIRTUAL_MEM_MAP has been retained for historical reasons. |
|
config VIRTUAL_MEM_MAP |
|
bool "Virtual mem map" |
|
depends on !SPARSEMEM |
|
default y if !IA64_HP_SIM |
|
help |
|
Say Y to compile the kernel with support for a virtual mem map. |
|
This code also only takes effect if a memory hole of greater than |
|
1 Gb is found during boot. You must turn this option on if you |
|
require the DISCONTIGMEM option for your machine. If you are |
|
unsure, say Y. |
|
|
|
config HOLES_IN_ZONE |
|
bool |
|
default y if VIRTUAL_MEM_MAP |
|
|
|
config HAVE_ARCH_EARLY_PFN_TO_NID |
|
def_bool NUMA && SPARSEMEM |
|
|
|
config HAVE_ARCH_NODEDATA_EXTENSION |
|
def_bool y |
|
depends on NUMA |
|
|
|
config USE_PERCPU_NUMA_NODE_ID |
|
def_bool y |
|
depends on NUMA |
|
|
|
config HAVE_MEMORYLESS_NODES |
|
def_bool NUMA |
|
|
|
config ARCH_PROC_KCORE_TEXT |
|
def_bool y |
|
depends on PROC_KCORE |
|
|
|
config IA64_MCA_RECOVERY |
|
tristate "MCA recovery from errors other than TLB." |
|
|
|
config PERFMON |
|
bool "Performance monitor support" |
|
help |
|
Selects whether support for the IA-64 performance monitor hardware |
|
is included in the kernel. This makes some kernel data-structures a |
|
little bigger and slows down execution a bit, but it is generally |
|
a good idea to turn this on. If you're unsure, say Y. |
|
|
|
config IA64_PALINFO |
|
tristate "/proc/pal support" |
|
help |
|
If you say Y here, you are able to get PAL (Processor Abstraction |
|
Layer) information in /proc/pal. This contains useful information |
|
about the processors in your systems, such as cache and TLB sizes |
|
and the PAL firmware version in use. |
|
|
|
To use this option, you have to ensure that the "/proc file system |
|
support" (CONFIG_PROC_FS) is enabled, too. |
|
|
|
config IA64_MC_ERR_INJECT |
|
tristate "MC error injection support" |
|
help |
|
Adds support for MC error injection. If enabled, the kernel |
|
will provide a sysfs interface for user applications to |
|
call MC error injection PAL procedures to inject various errors. |
|
This is a useful tool for MCA testing. |
|
|
|
If you're unsure, do not select this option. |
|
|
|
config SGI_SN |
|
def_bool y if (IA64_SGI_SN2 || IA64_GENERIC) |
|
|
|
config IA64_ESI |
|
bool "ESI (Extensible SAL Interface) support" |
|
help |
|
If you say Y here, support is built into the kernel to |
|
make ESI calls. ESI calls are used to support vendor-specific |
|
firmware extensions, such as the ability to inject memory-errors |
|
for test-purposes. If you're unsure, say N. |
|
|
|
config IA64_HP_AML_NFW |
|
bool "Support ACPI AML calls to native firmware" |
|
help |
|
This driver installs a global ACPI Operation Region handler for |
|
region 0xA1. AML methods can use this OpRegion to call arbitrary |
|
native firmware functions. The driver installs the OpRegion |
|
handler if there is an HPQ5001 device or if the user supplies |
|
the "force" module parameter, e.g., with the "aml_nfw.force" |
|
kernel command line option. |
|
|
|
source "drivers/sn/Kconfig" |
|
|
|
config KEXEC |
|
bool "kexec system call" |
|
depends on !IA64_HP_SIM && (!SMP || HOTPLUG_CPU) |
|
select KEXEC_CORE |
|
help |
|
kexec is a system call that implements the ability to shutdown your |
|
current kernel, and to start another kernel. It is like a reboot |
|
but it is independent of the system firmware. And like a reboot |
|
you can start any kernel with it, not just Linux. |
|
|
|
The name comes from the similarity to the exec system call. |
|
|
|
It is an ongoing process to be certain the hardware in a machine |
|
is properly shutdown, so do not be surprised if this code does not |
|
initially work for you. As of this writing the exact hardware |
|
interface is strongly in flux, so no good recommendation can be |
|
made. |
|
|
|
config CRASH_DUMP |
|
bool "kernel crash dumps" |
|
depends on IA64_MCA_RECOVERY && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU) |
|
help |
|
Generate crash dump after being started by kexec. |
|
|
|
source "drivers/firmware/Kconfig" |
|
|
|
source "fs/Kconfig.binfmt" |
|
|
|
endmenu |
|
|
|
menu "Power management and ACPI options" |
|
|
|
source "kernel/power/Kconfig" |
|
|
|
source "drivers/acpi/Kconfig" |
|
|
|
if PM |
|
menu "CPU Frequency scaling" |
|
source "drivers/cpufreq/Kconfig" |
|
endmenu |
|
endif |
|
|
|
endmenu |
|
|
|
if !IA64_HP_SIM |
|
|
|
menu "Bus options (PCI, PCMCIA)" |
|
|
|
config PCI |
|
bool "PCI support" |
|
help |
|
Real IA-64 machines all have PCI/PCI-X/PCI Express busses. Say Y |
|
here unless you are using a simulator without PCI support. |
|
|
|
config PCI_DOMAINS |
|
def_bool PCI |
|
|
|
config PCI_SYSCALL |
|
def_bool PCI |
|
|
|
source "drivers/pci/pcie/Kconfig" |
|
|
|
source "drivers/pci/Kconfig" |
|
|
|
source "drivers/pci/hotplug/Kconfig" |
|
|
|
source "drivers/pcmcia/Kconfig" |
|
|
|
endmenu |
|
|
|
endif |
|
|
|
source "net/Kconfig" |
|
|
|
source "drivers/Kconfig" |
|
|
|
source "arch/ia64/hp/sim/Kconfig" |
|
|
|
config MSPEC |
|
tristate "Memory special operations driver" |
|
depends on IA64 |
|
select IA64_UNCACHED_ALLOCATOR |
|
help |
|
If you have an ia64 and you want to enable memory special |
|
operations support (formerly known as fetchop), say Y here, |
|
otherwise say N. |
|
|
|
source "fs/Kconfig" |
|
|
|
source "arch/ia64/Kconfig.debug" |
|
|
|
source "security/Kconfig" |
|
|
|
source "crypto/Kconfig" |
|
|
|
source "lib/Kconfig" |
|
|
|
config IOMMU_HELPER |
|
def_bool (IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB || IA64_GENERIC || SWIOTLB)
|
|
|