2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 mainmenu "IA-64 Linux Kernel Configuration"
10 menu "Processor type and features"
14 select PCI if (!IA64_HP_SIM)
15 select ACPI if (!IA64_HP_SIM)
16 select PM if (!IA64_HP_SIM)
17 select ARCH_SUPPORTS_MSI
21 <<<<<<< HEAD:arch/ia64/Kconfig
23 select HAVE_KRETPROBES
24 >>>>>>> 264e3e889d86e552b4191d69bb60f4f3b383135a:arch/ia64/Kconfig
27 The Itanium Processor Family is Intel's 64-bit successor to
28 the 32-bit X86 line. The IA-64 Linux project has a home
29 page at <http://www.linuxia64.org/> and a mailing list at
30 <linux-ia64@vger.kernel.org>.
34 select ATA_NONSTANDARD if ATA
39 depends on !IA64_SGI_SN2
52 config GENERIC_LOCKBREAK
55 depends on SMP && PREEMPT
57 config RWSEM_XCHGADD_ALGORITHM
61 config ARCH_HAS_ILOG2_U32
65 config ARCH_HAS_ILOG2_U64
69 config HUGETLB_PAGE_SIZE_VARIABLE
71 depends on HUGETLB_PAGE
74 config GENERIC_FIND_NEXT_BIT
78 config GENERIC_CALIBRATE_DELAY
86 config GENERIC_TIME_VSYSCALL
90 config HAVE_SETUP_PER_CPU_AREA
105 config SCHED_NO_NO_OMIT_FRAME_POINTER
109 config IA64_UNCACHED_ALLOCATOR
111 select GENERIC_ALLOCATOR
127 This selects the system type of your hardware. A "generic" kernel
128 will run on any supported IA-64 system. However, if you configure
129 a kernel for your specific system, it will be faster and smaller.
131 generic For any supported IA-64 system
132 DIG-compliant For DIG ("Developer's Interface Guide") compliant systems
133 HP-zx1/sx1000 For HP systems
134 HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices.
135 SGI-SN2 For SGI Altix systems
136 Ski-simulator For the HP simulator <http://www.hpl.hp.com/research/linux/ski/>
138 If you don't know what to do, choose "generic".
147 Build a kernel that runs on HP zx1 and sx1000 systems. This adds
148 support for the HP I/O MMU.
150 config IA64_HP_ZX1_SWIOTLB
151 bool "HP-zx1/sx1000 with software I/O TLB"
154 Build a kernel that runs on HP zx1 and sx1000 systems even when they
155 have broken PCI devices which cannot DMA to full 32 bits. Apart
156 from support for the HP I/O MMU, this includes support for the software
157 I/O TLB, which allows supporting the broken devices at the expense of
158 wasting some kernel memory (about 2MB by default).
162 <<<<<<< HEAD:arch/ia64/Kconfig
166 >>>>>>> 264e3e889d86e552b4191d69bb60f4f3b383135a:arch/ia64/Kconfig
168 Selecting this option will optimize the kernel for use on sn2 based
169 systems, but the resulting kernel binary will not run on other
170 types of ia64 systems. If you have an SGI Altix system, it's safe
171 to select this option. If in doubt, select ia64 generic support
181 prompt "Processor type"
187 Select your IA-64 processor type. The default is Itanium.
188 This choice is safe for all IA-64 systems, but may not perform
189 optimally on systems with, say, Itanium 2 or newer processors.
194 Select this to configure for an Itanium 2 (McKinley) processor.
199 prompt "Kernel page size"
200 default IA64_PAGE_SIZE_16KB
202 config IA64_PAGE_SIZE_4KB
205 This lets you select the page size of the kernel. For best IA-64
206 performance, a page size of 8KB or 16KB is recommended. For best
207 IA-32 compatibility, a page size of 4KB should be selected (the vast
208 majority of IA-32 binaries work perfectly fine with a larger page
209 size). For Itanium 2 or newer systems, a page size of 64KB can also
212 4KB For best IA-32 compatibility
213 8KB For best IA-64 performance
214 16KB For best IA-64 performance
215 64KB Requires Itanium 2 or newer processor.
217 If you don't know what to do, choose 16KB.
219 config IA64_PAGE_SIZE_8KB
222 config IA64_PAGE_SIZE_16KB
225 config IA64_PAGE_SIZE_64KB
232 prompt "Page Table Levels"
239 depends on !IA64_PAGE_SIZE_64KB
250 source kernel/Kconfig.hz
258 # align cache-sensitive data to 128 bytes
259 config IA64_L1_CACHE_SHIFT
261 default "7" if MCKINLEY
262 default "6" if ITANIUM
265 bool "Cyclone (EXA) Time Source support"
267 Say Y here to enable support for IBM EXA Cyclone time source.
268 If you're unsure, answer N.
272 depends on !IA64_HP_SIM
275 config IA64_SGI_SN_XP
276 tristate "Support communication between SGI SSIs"
277 depends on IA64_GENERIC || IA64_SGI_SN2
278 select IA64_UNCACHED_ALLOCATOR
280 An SGI machine can be divided into multiple Single System
281 Images which act independently of each other and have
282 hardware based memory protection from the others. Enabling
283 this feature will allow for direct communication between SSIs
284 based on a network adapter and DMA messaging.
286 config FORCE_MAX_ZONEORDER
287 int "MAX_ORDER (11 - 17)" if !HUGETLB_PAGE
288 range 11 17 if !HUGETLB_PAGE
289 default "17" if HUGETLB_PAGE
293 bool "Symmetric multi-processing support"
295 This enables support for systems with more than one CPU. If you have
296 a system with only one CPU, say N. If you have a system with more
299 If you say N here, the kernel will run on single and multiprocessor
300 systems, but will use only one CPU of a multiprocessor system. If
301 you say Y here, the kernel will run on many, but not all,
302 single processor systems. On a single processor system, the kernel
303 will run faster if you say N here.
305 See also the SMP-HOWTO available at
306 <http://www.tldp.org/docs.html#howto>.
308 If you don't know what to do here, say N.
311 int "Maximum number of CPUs (2-1024)"
316 You should set this to the number of CPUs in your system, but
317 keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
318 only use 2 CPUs on a >2 CPU system. Setting this to a value larger
319 than 64 will cause the use of a CPU mask array, causing a small
323 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
324 depends on SMP && EXPERIMENTAL
328 Say Y here to experiment with turning CPUs off and on. CPUs
329 can be controlled through /sys/devices/system/cpu/cpu#.
330 Say N if you want to disable CPU hotplug.
332 config ARCH_ENABLE_MEMORY_HOTPLUG
335 config ARCH_ENABLE_MEMORY_HOTREMOVE
339 bool "SMT scheduler support"
342 Improves the CPU scheduler's decision making when dealing with
343 Intel IA64 chips with MultiThreading at a cost of slightly increased
344 overhead in some places. If unsure say N here.
346 config PERMIT_BSP_REMOVE
347 bool "Support removal of Bootstrap Processor"
348 depends on HOTPLUG_CPU
351 Say Y here if your platform SAL will support removal of BSP with HOTPLUG_CPU
354 config FORCE_CPEI_RETARGET
355 bool "Force assumption that CPEI can be re-targetted"
356 depends on PERMIT_BSP_REMOVE
359 Say Y if you need to force the assumption that CPEI can be re-targetted to
360 any cpu in the system. This hint is available via ACPI 3.0 specifications.
361 Tiger4 systems are capable of re-directing CPEI to any CPU other than BSP.
362 This option it useful to enable this feature on older BIOS's as well.
363 You can also enable this by using boot command line option force_cpei=1.
365 source "kernel/Kconfig.preempt"
369 config ARCH_SELECT_MEMORY_MODEL
372 config ARCH_DISCONTIGMEM_ENABLE
375 Say Y to support efficient handling of discontiguous physical memory,
376 for architectures which are either NUMA (Non-Uniform Memory Access)
377 or have huge holes in the physical address space for other reasons.
378 See <file:Documentation/vm/numa> for more.
380 config ARCH_FLATMEM_ENABLE
383 config ARCH_SPARSEMEM_ENABLE
385 depends on ARCH_DISCONTIGMEM_ENABLE
386 select SPARSEMEM_VMEMMAP_ENABLE
388 config ARCH_DISCONTIGMEM_DEFAULT
389 def_bool y if (IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB)
390 depends on ARCH_DISCONTIGMEM_ENABLE
394 depends on !IA64_HP_SIM && !FLATMEM
395 default y if IA64_SGI_SN2
396 select ACPI_NUMA if ACPI
398 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
399 Access). This option is for configuring high-end multiprocessor
400 server systems. If in doubt, say N.
403 int "Max num nodes shift(3-10)"
406 depends on NEED_MULTIPLE_NODES
408 This option specifies the maximum number of nodes in your SSI system.
409 MAX_NUMNODES will be 2^(This value).
410 If in doubt, use the default.
412 config ARCH_POPULATES_NODE_MAP
415 # VIRTUAL_MEM_MAP and FLAT_NODE_MEM_MAP are functionally equivalent.
416 # VIRTUAL_MEM_MAP has been retained for historical reasons.
417 config VIRTUAL_MEM_MAP
418 bool "Virtual mem map"
419 depends on !SPARSEMEM
420 default y if !IA64_HP_SIM
422 Say Y to compile the kernel with support for a virtual mem map.
423 This code also only takes effect if a memory hole of greater than
424 1 Gb is found during boot. You must turn this option on if you
425 require the DISCONTIGMEM option for your machine. If you are
430 default y if VIRTUAL_MEM_MAP
432 config HAVE_ARCH_EARLY_PFN_TO_NID
434 depends on NEED_MULTIPLE_NODES
436 config HAVE_ARCH_NODEDATA_EXTENSION
441 bool "Support for Linux/x86 binaries"
443 IA-64 processors can execute IA-32 (X86) instructions. By
444 saying Y here, the kernel will include IA-32 system call
445 emulation support which makes it possible to transparently
446 run IA-32 Linux binaries on an IA-64 Linux system.
451 depends on IA32_SUPPORT
454 config COMPAT_FOR_U64_ALIGNMENT
457 config IA64_MCA_RECOVERY
458 tristate "MCA recovery from errors other than TLB."
461 bool "Performance monitor support"
463 Selects whether support for the IA-64 performance monitor hardware
464 is included in the kernel. This makes some kernel data-structures a
465 little bigger and slows down execution a bit, but it is generally
466 a good idea to turn this on. If you're unsure, say Y.
469 tristate "/proc/pal support"
471 If you say Y here, you are able to get PAL (Processor Abstraction
472 Layer) information in /proc/pal. This contains useful information
473 about the processors in your systems, such as cache and TLB sizes
474 and the PAL firmware version in use.
476 To use this option, you have to ensure that the "/proc file system
477 support" (CONFIG_PROC_FS) is enabled, too.
479 config IA64_MC_ERR_INJECT
480 tristate "MC error injection support"
482 Adds support for MC error injection. If enabled, the kernel
483 will provide a sysfs interface for user applications to
484 call MC error injection PAL procedures to inject various errors.
485 This is a useful tool for MCA testing.
487 If you're unsure, do not select this option.
490 def_bool y if (IA64_SGI_SN2 || IA64_GENERIC)
493 bool "ESI (Extensible SAL Interface) support"
495 If you say Y here, support is built into the kernel to
496 make ESI calls. ESI calls are used to support vendor-specific
497 firmware extensions, such as the ability to inject memory-errors
498 for test-purposes. If you're unsure, say N.
500 config IA64_HP_AML_NFW
501 bool "Support ACPI AML calls to native firmware"
503 This driver installs a global ACPI Operation Region handler for
504 region 0xA1. AML methods can use this OpRegion to call arbitrary
505 native firmware functions. The driver installs the OpRegion
506 handler if there is an HPQ5001 device or if the user supplies
507 the "force" module parameter, e.g., with the "aml_nfw.force"
508 kernel command line option.
510 source "drivers/sn/Kconfig"
513 bool "kexec system call (EXPERIMENTAL)"
514 depends on EXPERIMENTAL && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU)
516 kexec is a system call that implements the ability to shutdown your
517 current kernel, and to start another kernel. It is like a reboot
518 but it is independent of the system firmware. And like a reboot
519 you can start any kernel with it, not just Linux.
521 The name comes from the similarity to the exec system call.
523 It is an ongoing process to be certain the hardware in a machine
524 is properly shutdown, so do not be surprised if this code does not
525 initially work for you. It may help to enable device hotplugging
526 support. As of this writing the exact hardware interface is
527 strongly in flux, so no good recommendation can be made.
530 bool "kernel crash dumps (EXPERIMENTAL)"
531 depends on EXPERIMENTAL && IA64_MCA_RECOVERY && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU)
533 Generate crash dump after being started by kexec.
535 source "drivers/firmware/Kconfig"
537 source "fs/Kconfig.binfmt"
541 menu "Power management and ACPI"
543 source "kernel/power/Kconfig"
545 source "drivers/acpi/Kconfig"
549 source "arch/ia64/kernel/cpufreq/Kconfig"
557 menu "Bus options (PCI, PCMCIA)"
562 Real IA-64 machines all have PCI/PCI-X/PCI Express busses. Say Y
563 here unless you are using a simulator without PCI support.
571 source "drivers/pci/pcie/Kconfig"
573 source "drivers/pci/Kconfig"
575 source "drivers/pci/hotplug/Kconfig"
577 source "drivers/pcmcia/Kconfig"
585 source "drivers/Kconfig"
588 tristate "Memory special operations driver"
590 select IA64_UNCACHED_ALLOCATOR
592 If you have an ia64 and you want to enable memory special
593 operations support (formerly known as fetchop), say Y here,
601 # Use the generic interrupt handling code in kernel/irq/:
603 config GENERIC_HARDIRQS
607 config GENERIC_IRQ_PROBE
611 config GENERIC_PENDING_IRQ
613 depends on GENERIC_HARDIRQS && SMP
620 source "arch/ia64/hp/sim/Kconfig"
622 source "arch/ia64/Kconfig.debug"
624 source "security/Kconfig"
626 source "crypto/Kconfig"