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"
16 The Itanium Processor Family is Intel's 64-bit successor to
17 the 32-bit X86 line. The IA-64 Linux project has a home
18 page at <http://www.linuxia64.org/> and a mailing list at
19 <linux-ia64@vger.kernel.org>.
29 config RWSEM_XCHGADD_ALGORITHM
33 config TIME_INTERPOLATION
49 select VIRTUAL_MEM_MAP
52 This selects the system type of your hardware. A "generic" kernel
53 will run on any supported IA-64 system. However, if you configure
54 a kernel for your specific system, it will be faster and smaller.
56 generic For any supported IA-64 system
57 DIG-compliant For DIG ("Developer's Interface Guide") compliant systems
58 HP-zx1/sx1000 For HP systems
59 SGI-SN2 For SGI Altix systems
60 Ski-simulator For the HP simulator <http://www.hpl.hp.com/research/linux/ski/>
62 If you don't know what to do, choose "generic".
70 Build a kernel that runs on HP zx1 and sx1000 systems. This adds
71 support for the HP I/O MMU.
82 prompt "Processor type"
88 Select your IA-64 processor type. The default is Itanium.
89 This choice is safe for all IA-64 systems, but may not perform
90 optimally on systems with, say, Itanium 2 or newer processors.
95 Select this to configure for an Itanium 2 (McKinley) processor.
100 prompt "Kernel page size"
101 default IA64_PAGE_SIZE_16KB
103 config IA64_PAGE_SIZE_4KB
106 This lets you select the page size of the kernel. For best IA-64
107 performance, a page size of 8KB or 16KB is recommended. For best
108 IA-32 compatibility, a page size of 4KB should be selected (the vast
109 majority of IA-32 binaries work perfectly fine with a larger page
110 size). For Itanium 2 or newer systems, a page size of 64KB can also
113 4KB For best IA-32 compatibility
114 8KB For best IA-64 performance
115 16KB For best IA-64 performance
116 64KB Requires Itanium 2 or newer processor.
118 If you don't know what to do, choose 16KB.
120 config IA64_PAGE_SIZE_8KB
123 config IA64_PAGE_SIZE_16KB
126 config IA64_PAGE_SIZE_64KB
137 config ITANIUM_BSTEP_SPECIFIC
138 bool "Itanium B-step specific code"
141 Select this option to build a kernel for an Itanium prototype system
142 with a B-step CPU. You have a B-step CPU if the "revision" field in
143 /proc/cpuinfo has a value in the range from 1 to 4.
145 # align cache-sensitive data to 128 bytes
146 config IA64_L1_CACHE_SHIFT
148 default "7" if MCKINLEY
149 default "6" if ITANIUM
151 # align cache-sensitive data to 64 bytes
152 config MCKINLEY_ASTEP_SPECIFIC
153 bool "McKinley A-step specific code"
156 Select this option to build a kernel for an IA-64 McKinley prototype
157 system with any A-stepping CPU.
159 config MCKINLEY_A0_SPECIFIC
160 bool "McKinley A0/A1-step specific code"
161 depends on MCKINLEY_ASTEP_SPECIFIC
163 Select this option to build a kernel for an IA-64 McKinley prototype
164 system with an A0 or A1 stepping CPU.
168 depends on !IA64_HP_SIM
169 default y if IA64_SGI_SN2
171 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
172 Access). This option is for configuring high-end multiprocessor
173 server systems. If in doubt, say N.
175 config VIRTUAL_MEM_MAP
176 bool "Virtual mem map"
177 default y if !IA64_HP_SIM
179 Say Y to compile the kernel with support for a virtual mem map.
180 This code also only takes effect if a memory hole of greater than
181 1 Gb is found during boot. You must turn this option on if you
182 require the DISCONTIGMEM option for your machine. If you are
186 bool "Discontiguous memory support"
187 depends on (IA64_DIG || IA64_SGI_SN2 || IA64_GENERIC) && NUMA && VIRTUAL_MEM_MAP
188 default y if (IA64_SGI_SN2 || IA64_GENERIC) && NUMA
190 Say Y to support efficient handling of discontiguous physical memory,
191 for architectures which are either NUMA (Non-Uniform Memory Access)
192 or have huge holes in the physical address space for other reasons.
193 See <file:Documentation/vm/numa> for more.
196 bool "Support Cyclone(EXA) Time Source"
198 Say Y here to enable support for IBM EXA Cyclone time source.
199 If you're unsure, answer N.
203 depends on !IA64_HP_SIM
206 config IA64_SGI_SN_SIM
207 bool "SGI Medusa Simulator Support"
208 depends on IA64_SGI_SN2
210 If you are compiling a kernel that will run under SGI's IA-64
211 simulator (Medusa) then say Y, otherwise say N.
213 config FORCE_MAX_ZONEORDER
218 bool "Symmetric multi-processing support"
220 This enables support for systems with more than one CPU. If you have
221 a system with only one CPU, say N. If you have a system with more
224 If you say N here, the kernel will run on single and multiprocessor
225 systems, but will use only one CPU of a multiprocessor system. If
226 you say Y here, the kernel will run on many, but not all,
227 single processor systems. On a single processor system, the kernel
228 will run faster if you say N here.
230 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
231 available at <http://www.tldp.org/docs.html#howto>.
233 If you don't know what to do here, say N.
236 int "Maximum number of CPUs (2-512)"
241 You should set this to the number of CPUs in your system, but
242 keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
243 only use 2 CPUs on a >2 CPU system. Setting this to a value larger
244 than 64 will cause the use of a CPU mask array, causing a small
248 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
249 depends on SMP && HOTPLUG && EXPERIMENTAL
252 Say Y here to experiment with turning CPUs off and on. CPUs
253 can be controlled through /sys/devices/system/cpu/cpu#.
254 Say N if you want to disable CPU hotplug.
257 bool "Preemptible Kernel"
259 This option reduces the latency of the kernel when reacting to
260 real-time or interactive events by allowing a low priority process to
261 be preempted even if it is in kernel mode executing a system call.
262 This allows applications to run more reliably even when the system is
265 Say Y here if you are building a kernel for a desktop, embedded
266 or real-time system. Say N if you are unsure.
270 depends on (SMP || PREEMPT)
274 bool "Support for Linux/x86 binaries"
276 IA-64 processors can execute IA-32 (X86) instructions. By
277 saying Y here, the kernel will include IA-32 system call
278 emulation support which makes it possible to transparently
279 run IA-32 Linux binaries on an IA-64 Linux system.
284 depends on IA32_SUPPORT
288 bool "Performance monitor support"
290 Selects whether support for the IA-64 performance monitor hardware
291 is included in the kernel. This makes some kernel data-structures a
292 little bigger and slows down execution a bit, but it is generally
293 a good idea to turn this on. If you're unsure, say Y.
296 tristate "/proc/pal support"
298 If you say Y here, you are able to get PAL (Processor Abstraction
299 Layer) information in /proc/pal. This contains useful information
300 about the processors in your systems, such as cache and TLB sizes
301 and the PAL firmware version in use.
303 To use this option, you have to ensure that the "/proc file system
304 support" (CONFIG_PROC_FS) is enabled, too.
306 source "drivers/firmware/Kconfig"
308 source "fs/Kconfig.binfmt"
312 menu "Power management and ACPI"
315 bool "Power Management support"
316 depends on IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
319 "Power Management" means that parts of your computer are shut
320 off or put into a power conserving "sleep" mode if they are not
321 being used. There are two competing standards for doing this: APM
322 and ACPI. If you want to use either one, say Y here and then also
323 to the requisite support below.
325 Power Management is most important for battery powered laptop
326 computers; if you have a laptop, check out the Linux Laptop home
327 page on the WWW at <http://www.linux-on-laptops.com/> and the
328 Battery Powered Linux mini-HOWTO, available from
329 <http://www.tldp.org/docs.html#howto>.
331 Note that, even if you say N here, Linux on the x86 architecture
332 will issue the hlt instruction if nothing is to be done, thereby
333 sending the processor to sleep and saving power.
337 depends on !IA64_HP_SIM
342 source "drivers/acpi/Kconfig"
350 menu "Bus options (PCI, PCMCIA)"
355 Find out whether you have a PCI motherboard. PCI is the name of a
356 bus system, i.e. the way the CPU talks to the other stuff inside
357 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
358 VESA. If you have PCI, say Y, otherwise N.
360 The PCI-HOWTO, available from
361 <http://www.tldp.org/docs.html#howto>, contains valuable
362 information about which PCI hardware does work under Linux and which
369 source "drivers/pci/Kconfig"
371 source "drivers/pci/hotplug/Kconfig"
373 source "drivers/pcmcia/Kconfig"
379 source "drivers/Kconfig"
385 source "arch/ia64/hp/sim/Kconfig"
387 source "arch/ia64/oprofile/Kconfig"
389 menu "Kernel hacking"
392 prompt "Physical memory granularity"
393 default IA64_GRANULE_64MB
395 config IA64_GRANULE_16MB
398 IA-64 identity-mapped regions use a large page size called "granules".
400 Select "16MB" for a small granule size.
401 Select "64MB" for a large granule size. This is the current default.
403 config IA64_GRANULE_64MB
405 depends on !(IA64_GENERIC || IA64_HP_ZX1)
410 bool "Kernel debugging"
412 Say Y here if you are developing drivers or trying to debug and
413 identify kernel problems.
415 config IA64_PRINT_HAZARDS
416 bool "Print possible IA-64 dependency violations to console"
417 depends on DEBUG_KERNEL
419 Selecting this option prints more information for Illegal Dependency
420 Faults, that is, for Read-after-Write (RAW), Write-after-Write (WAW),
421 or Write-after-Read (WAR) violations. This option is ignored if you
422 are compiling for an Itanium A step processor
423 (CONFIG_ITANIUM_ASTEP_SPECIFIC). If you're unsure, select Y.
427 depends on DEBUG_KERNEL
429 The Virtual Hash Page Table (VHPT) enhances virtual address
430 translation performance. Normally you want the VHPT active but you
431 can select this option to disable the VHPT for debugging. If you're
435 bool "Magic SysRq key"
436 depends on DEBUG_KERNEL
438 If you say Y here, you will have some control over the system even
439 if the system crashes for example during kernel debugging (e.g., you
440 will be able to flush the buffer cache to disk, reboot the system
441 immediately or dump some status information). This is accomplished
442 by pressing various keys while holding SysRq (Alt+PrintScreen). It
443 also works on a serial console (on PC hardware at least), if you
444 send a BREAK and then within 5 seconds a command keypress. The
445 keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
446 unless you really know what this hack does.
449 bool "Debug memory allocations"
450 depends on DEBUG_KERNEL
452 Say Y here to have the kernel do limited verification on memory
453 allocation as well as poisoning memory on free to catch use of freed
456 config DEBUG_SPINLOCK
457 bool "Spinlock debugging"
458 depends on DEBUG_KERNEL
460 Say Y here and build SMP to catch missing spinlock initialization
461 and certain other kinds of spinlock errors commonly made. This is
462 best used in conjunction with the NMI watchdog so that spinlock
463 deadlocks are also debuggable.
465 config DEBUG_SPINLOCK_SLEEP
466 bool "Sleep-inside-spinlock checking"
468 If you say Y here, various routines which may sleep will become very
469 noisy if they are called with a spinlock held.
471 config IA64_DEBUG_CMPXCHG
472 bool "Turn on compare-and-exchange bug checking (slow!)"
473 depends on DEBUG_KERNEL
475 Selecting this option turns on bug checking for the IA-64
476 compare-and-exchange instructions. This is slow! Itaniums
477 from step B3 or later don't have this problem. If you're unsure,
480 config IA64_DEBUG_IRQ
481 bool "Turn on irq debug checks (slow!)"
482 depends on DEBUG_KERNEL
484 Selecting this option turns on bug checking for the IA-64 irq_save
485 and restore instructions. It's useful for tracking down spinlock
486 problems, but slow! If you're unsure, select N.
489 bool "Compile the kernel with debug info"
490 depends on DEBUG_KERNEL
492 If you say Y here the resulting kernel image will include
493 debugging info resulting in a larger kernel image.
494 Say Y here only if you plan to use gdb to debug the kernel.
495 If you don't debug the kernel, you can say N.
497 config SYSVIPC_COMPAT
499 depends on COMPAT && SYSVIPC
503 source "kernel/vserver/Kconfig"
505 source "security/Kconfig"
507 source "crypto/Kconfig"