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
47 select VIRTUAL_MEM_MAP
49 This selects the system type of your hardware. A "generic" kernel
50 will run on any supported IA-64 system. However, if you configure
51 a kernel for your specific system, it will be faster and smaller.
53 generic For any supported IA-64 system
54 DIG-compliant For DIG ("Developer's Interface Guide") compliant systems
55 HP-zx1/sx1000 For HP systems
56 SGI-SN2 For SGI Altix systems
57 Ski-simulator For the HP simulator <http://www.hpl.hp.com/research/linux/ski/>
59 If you don't know what to do, choose "generic".
67 Build a kernel that runs on HP zx1 and sx1000 systems. This adds
68 support for the HP I/O MMU.
79 prompt "Processor type"
85 Select your IA-64 processor type. The default is Itanium.
86 This choice is safe for all IA-64 systems, but may not perform
87 optimally on systems with, say, Itanium 2 or newer processors.
92 Select this to configure for an Itanium 2 (McKinley) processor.
97 prompt "Kernel page size"
98 default IA64_PAGE_SIZE_16KB
100 config IA64_PAGE_SIZE_4KB
103 This lets you select the page size of the kernel. For best IA-64
104 performance, a page size of 8KB or 16KB is recommended. For best
105 IA-32 compatibility, a page size of 4KB should be selected (the vast
106 majority of IA-32 binaries work perfectly fine with a larger page
107 size). For Itanium 2 or newer systems, a page size of 64KB can also
110 4KB For best IA-32 compatibility
111 8KB For best IA-64 performance
112 16KB For best IA-64 performance
113 64KB Requires Itanium 2 or newer processor.
115 If you don't know what to do, choose 16KB.
117 config IA64_PAGE_SIZE_8KB
120 config IA64_PAGE_SIZE_16KB
123 config IA64_PAGE_SIZE_64KB
134 config ITANIUM_BSTEP_SPECIFIC
135 bool "Itanium B-step specific code"
138 Select this option to build a kernel for an Itanium prototype system
139 with a B-step CPU. You have a B-step CPU if the "revision" field in
140 /proc/cpuinfo has a value in the range from 1 to 4.
142 # align cache-sensitive data to 128 bytes
143 config IA64_L1_CACHE_SHIFT
145 default "7" if MCKINLEY
146 default "6" if ITANIUM
148 # align cache-sensitive data to 64 bytes
149 config MCKINLEY_ASTEP_SPECIFIC
150 bool "McKinley A-step specific code"
153 Select this option to build a kernel for an IA-64 McKinley prototype
154 system with any A-stepping CPU.
156 config MCKINLEY_A0_SPECIFIC
157 bool "McKinley A0/A1-step specific code"
158 depends on MCKINLEY_ASTEP_SPECIFIC
160 Select this option to build a kernel for an IA-64 McKinley prototype
161 system with an A0 or A1 stepping CPU.
165 depends on !IA64_HP_SIM
166 default y if IA64_SGI_SN2
168 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
169 Access). This option is for configuring high-end multiprocessor
170 server systems. If in doubt, say N.
172 config VIRTUAL_MEM_MAP
173 bool "Virtual mem map"
174 default y if !IA64_HP_SIM
176 Say Y to compile the kernel with support for a virtual mem map.
177 This code also only takes effect if a memory hole of greater than
178 1 Gb is found during boot. You must turn this option on if you
179 require the DISCONTIGMEM option for your machine. If you are
183 bool "Discontiguous memory support"
184 depends on (IA64_DIG || IA64_SGI_SN2 || IA64_GENERIC) && NUMA && VIRTUAL_MEM_MAP
185 default y if (IA64_SGI_SN2 || IA64_GENERIC) && NUMA
187 Say Y to support efficient handling of discontiguous physical memory,
188 for architectures which are either NUMA (Non-Uniform Memory Access)
189 or have huge holes in the physical address space for other reasons.
190 See <file:Documentation/vm/numa> for more.
193 bool "Support Cyclone(EXA) Time Source"
195 Say Y here to enable support for IBM EXA Cyclone time source.
196 If you're unsure, answer N.
200 depends on !IA64_HP_SIM
203 config IA64_SGI_SN_SIM
204 bool "SGI Medusa Simulator Support"
205 depends on IA64_SGI_SN2
207 If you are compiling a kernel that will run under SGI's IA-64
208 simulator (Medusa) then say Y, otherwise say N.
210 config FORCE_MAX_ZONEORDER
215 bool "Symmetric multi-processing support"
217 This enables support for systems with more than one CPU. If you have
218 a system with only one CPU, say N. If you have a system with more
221 If you say N here, the kernel will run on single and multiprocessor
222 systems, but will use only one CPU of a multiprocessor system. If
223 you say Y here, the kernel will run on many, but not all,
224 single processor systems. On a single processor system, the kernel
225 will run faster if you say N here.
227 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
228 available at <http://www.tldp.org/docs.html#howto>.
230 If you don't know what to do here, say N.
233 int "Maximum number of CPUs (2-512)"
238 You should set this to the number of CPUs in your system, but
239 keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
240 only use 2 CPUs on a >2 CPU system. Setting this to a value larger
241 than 64 will cause the use of a CPU mask array, causing a small
245 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
246 depends on SMP && HOTPLUG && EXPERIMENTAL
249 Say Y here to experiment with turning CPUs off and on. CPUs
250 can be controlled through /sys/devices/system/cpu/cpu#.
251 Say N if you want to disable CPU hotplug.
254 bool "Preemptible Kernel"
256 This option reduces the latency of the kernel when reacting to
257 real-time or interactive events by allowing a low priority process to
258 be preempted even if it is in kernel mode executing a system call.
259 This allows applications to run more reliably even when the system is
262 Say Y here if you are building a kernel for a desktop, embedded
263 or real-time system. Say N if you are unsure.
267 depends on (SMP || PREEMPT)
271 bool "Support for Linux/x86 binaries"
273 IA-64 processors can execute IA-32 (X86) instructions. By
274 saying Y here, the kernel will include IA-32 system call
275 emulation support which makes it possible to transparently
276 run IA-32 Linux binaries on an IA-64 Linux system.
281 depends on IA32_SUPPORT
285 bool "Performance monitor support"
287 Selects whether support for the IA-64 performance monitor hardware
288 is included in the kernel. This makes some kernel data-structures a
289 little bigger and slows down execution a bit, but it is generally
290 a good idea to turn this on. If you're unsure, say Y.
293 tristate "/proc/pal support"
295 If you say Y here, you are able to get PAL (Processor Abstraction
296 Layer) information in /proc/pal. This contains useful information
297 about the processors in your systems, such as cache and TLB sizes
298 and the PAL firmware version in use.
300 To use this option, you have to ensure that the "/proc file system
301 support" (CONFIG_PROC_FS) is enabled, too.
303 source "drivers/firmware/Kconfig"
305 source "fs/Kconfig.binfmt"
309 menu "Power management and ACPI"
312 bool "Power Management support"
313 depends on IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
316 "Power Management" means that parts of your computer are shut
317 off or put into a power conserving "sleep" mode if they are not
318 being used. There are two competing standards for doing this: APM
319 and ACPI. If you want to use either one, say Y here and then also
320 to the requisite support below.
322 Power Management is most important for battery powered laptop
323 computers; if you have a laptop, check out the Linux Laptop home
324 page on the WWW at <http://www.linux-on-laptops.com/> and the
325 Battery Powered Linux mini-HOWTO, available from
326 <http://www.tldp.org/docs.html#howto>.
328 Note that, even if you say N here, Linux on the x86 architecture
329 will issue the hlt instruction if nothing is to be done, thereby
330 sending the processor to sleep and saving power.
334 depends on !IA64_HP_SIM
339 source "drivers/acpi/Kconfig"
347 menu "Bus options (PCI, PCMCIA)"
352 Find out whether you have a PCI motherboard. PCI is the name of a
353 bus system, i.e. the way the CPU talks to the other stuff inside
354 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
355 VESA. If you have PCI, say Y, otherwise N.
357 The PCI-HOWTO, available from
358 <http://www.tldp.org/docs.html#howto>, contains valuable
359 information about which PCI hardware does work under Linux and which
366 source "drivers/pci/Kconfig"
368 source "drivers/pci/hotplug/Kconfig"
370 source "drivers/pcmcia/Kconfig"
376 source "drivers/Kconfig"
382 source "arch/ia64/hp/sim/Kconfig"
384 source "arch/ia64/oprofile/Kconfig"
386 menu "Kernel hacking"
389 prompt "Physical memory granularity"
390 default IA64_GRANULE_64MB
392 config IA64_GRANULE_16MB
395 IA-64 identity-mapped regions use a large page size called "granules".
397 Select "16MB" for a small granule size.
398 Select "64MB" for a large granule size. This is the current default.
400 config IA64_GRANULE_64MB
402 depends on !(IA64_GENERIC || IA64_HP_ZX1)
407 bool "Kernel debugging"
409 Say Y here if you are developing drivers or trying to debug and
410 identify kernel problems.
412 config IA64_PRINT_HAZARDS
413 bool "Print possible IA-64 dependency violations to console"
414 depends on DEBUG_KERNEL
416 Selecting this option prints more information for Illegal Dependency
417 Faults, that is, for Read-after-Write (RAW), Write-after-Write (WAW),
418 or Write-after-Read (WAR) violations. This option is ignored if you
419 are compiling for an Itanium A step processor
420 (CONFIG_ITANIUM_ASTEP_SPECIFIC). If you're unsure, select Y.
424 depends on DEBUG_KERNEL
426 The Virtual Hash Page Table (VHPT) enhances virtual address
427 translation performance. Normally you want the VHPT active but you
428 can select this option to disable the VHPT for debugging. If you're
432 bool "Magic SysRq key"
433 depends on DEBUG_KERNEL
435 If you say Y here, you will have some control over the system even
436 if the system crashes for example during kernel debugging (e.g., you
437 will be able to flush the buffer cache to disk, reboot the system
438 immediately or dump some status information). This is accomplished
439 by pressing various keys while holding SysRq (Alt+PrintScreen). It
440 also works on a serial console (on PC hardware at least), if you
441 send a BREAK and then within 5 seconds a command keypress. The
442 keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
443 unless you really know what this hack does.
446 bool "Debug memory allocations"
447 depends on DEBUG_KERNEL
449 Say Y here to have the kernel do limited verification on memory
450 allocation as well as poisoning memory on free to catch use of freed
453 config DEBUG_SPINLOCK
454 bool "Spinlock debugging"
455 depends on DEBUG_KERNEL
457 Say Y here and build SMP to catch missing spinlock initialization
458 and certain other kinds of spinlock errors commonly made. This is
459 best used in conjunction with the NMI watchdog so that spinlock
460 deadlocks are also debuggable.
462 config DEBUG_SPINLOCK_SLEEP
463 bool "Sleep-inside-spinlock checking"
465 If you say Y here, various routines which may sleep will become very
466 noisy if they are called with a spinlock held.
468 config IA64_DEBUG_CMPXCHG
469 bool "Turn on compare-and-exchange bug checking (slow!)"
470 depends on DEBUG_KERNEL
472 Selecting this option turns on bug checking for the IA-64
473 compare-and-exchange instructions. This is slow! Itaniums
474 from step B3 or later don't have this problem. If you're unsure,
477 config IA64_DEBUG_IRQ
478 bool "Turn on irq debug checks (slow!)"
479 depends on DEBUG_KERNEL
481 Selecting this option turns on bug checking for the IA-64 irq_save
482 and restore instructions. It's useful for tracking down spinlock
483 problems, but slow! If you're unsure, select N.
486 bool "Compile the kernel with debug info"
487 depends on DEBUG_KERNEL
489 If you say Y here the resulting kernel image will include
490 debugging info resulting in a larger kernel image.
491 Say Y here only if you plan to use gdb to debug the kernel.
492 If you don't debug the kernel, you can say N.
494 config SYSVIPC_COMPAT
496 depends on COMPAT && SYSVIPC
500 source "kernel/vserver/Kconfig"
502 source "security/Kconfig"
504 source "crypto/Kconfig"