upgrade to linux 2.6.9-1.11_FC2
[linux-2.6.git] / arch / ia64 / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 mainmenu "IA-64 Linux Kernel Configuration"
7
8 source "init/Kconfig"
9
10 menu "Processor type and features"
11
12 config IA64
13         bool
14         default y
15         help
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>.
20
21 config 64BIT
22         bool
23         default y
24
25 config MMU
26         bool
27         default y
28
29 config RWSEM_XCHGADD_ALGORITHM
30         bool
31         default y
32
33 config TIME_INTERPOLATION
34         bool
35         default y
36
37 config EFI
38         bool
39         default y
40
41 config GENERIC_IOMAP
42         bool
43         default y
44
45 choice
46         prompt "System type"
47         default IA64_GENERIC
48
49 config IA64_GENERIC
50         bool "generic"
51         select VIRTUAL_MEM_MAP
52         help
53           This selects the system type of your hardware.  A "generic" kernel
54           will run on any supported IA-64 system.  However, if you configure
55           a kernel for your specific system, it will be faster and smaller.
56
57           generic        For any supported IA-64 system
58           DIG-compliant  For DIG ("Developer's Interface Guide") compliant systems
59           HP-zx1/sx1000  For HP systems
60           SGI-SN2        For SGI Altix systems
61           Ski-simulator  For the HP simulator <http://www.hpl.hp.com/research/linux/ski/>
62
63           If you don't know what to do, choose "generic".
64
65 config IA64_DIG
66         bool "DIG-compliant"
67
68 config IA64_HP_ZX1
69         bool "HP-zx1/sx1000"
70         help
71           Build a kernel that runs on HP zx1 and sx1000 systems.  This adds
72           support for the HP I/O MMU.
73
74 config IA64_SGI_SN2
75         bool "SGI-SN2"
76         help
77           Selecting this option will optimize the kernel for use on sn2 based
78           systems, but the resulting kernel binary will not run on other
79           types of ia64 systems.  If you have an SGI Altix system, it's safe
80           to select this option.  If in doubt, select ia64 generic support
81           instead.
82
83 config IA64_HP_SIM
84         bool "Ski-simulator"
85
86 endchoice
87
88 choice
89         prompt "Processor type"
90         default ITANIUM
91
92 config ITANIUM
93         bool "Itanium"
94         help
95           Select your IA-64 processor type.  The default is Itanium.
96           This choice is safe for all IA-64 systems, but may not perform
97           optimally on systems with, say, Itanium 2 or newer processors.
98
99 config MCKINLEY
100         bool "Itanium 2"
101         help
102           Select this to configure for an Itanium 2 (McKinley) processor.
103
104 endchoice
105
106 choice
107         prompt "Kernel page size"
108         default IA64_PAGE_SIZE_16KB
109
110 config IA64_PAGE_SIZE_4KB
111         bool "4KB"
112         help
113           This lets you select the page size of the kernel.  For best IA-64
114           performance, a page size of 8KB or 16KB is recommended.  For best
115           IA-32 compatibility, a page size of 4KB should be selected (the vast
116           majority of IA-32 binaries work perfectly fine with a larger page
117           size).  For Itanium 2 or newer systems, a page size of 64KB can also
118           be selected.
119
120           4KB                For best IA-32 compatibility
121           8KB                For best IA-64 performance
122           16KB               For best IA-64 performance
123           64KB               Requires Itanium 2 or newer processor.
124
125           If you don't know what to do, choose 16KB.
126
127 config IA64_PAGE_SIZE_8KB
128         bool "8KB"
129
130 config IA64_PAGE_SIZE_16KB
131         bool "16KB"
132
133 config IA64_PAGE_SIZE_64KB
134         depends on !ITANIUM
135         bool "64KB"
136
137 endchoice
138
139 config IA64_BRL_EMU
140         bool
141         depends on ITANIUM
142         default y
143
144 config ITANIUM_BSTEP_SPECIFIC
145         bool "Itanium B-step specific code"
146         depends on ITANIUM
147         help
148           Select this option to build a kernel for an Itanium prototype system
149           with a B-step CPU.  You have a B-step CPU if the "revision" field in
150           /proc/cpuinfo has a value in the range from 1 to 4.
151
152 # align cache-sensitive data to 128 bytes
153 config IA64_L1_CACHE_SHIFT
154         int
155         default "7" if MCKINLEY
156         default "6" if ITANIUM
157
158 # align cache-sensitive data to 64 bytes
159 config NUMA
160         bool "NUMA support"
161         depends on !IA64_HP_SIM
162         default y if IA64_SGI_SN2
163         help
164           Say Y to compile the kernel to support NUMA (Non-Uniform Memory
165           Access).  This option is for configuring high-end multiprocessor
166           server systems.  If in doubt, say N.
167
168 config VIRTUAL_MEM_MAP
169         bool "Virtual mem map"
170         default y if !IA64_HP_SIM
171         help
172           Say Y to compile the kernel with support for a virtual mem map.
173           This code also only takes effect if a memory hole of greater than
174           1 Gb is found during boot.  You must turn this option on if you
175           require the DISCONTIGMEM option for your machine. If you are
176           unsure, say Y.
177
178 config DISCONTIGMEM
179         bool "Discontiguous memory support"
180         depends on (IA64_DIG || IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1) && NUMA && VIRTUAL_MEM_MAP
181         default y if (IA64_SGI_SN2 || IA64_GENERIC) && NUMA
182         help
183           Say Y to support efficient handling of discontiguous physical memory,
184           for architectures which are either NUMA (Non-Uniform Memory Access)
185           or have huge holes in the physical address space for other reasons.
186           See <file:Documentation/vm/numa> for more.
187
188 config IA64_CYCLONE
189         bool "Cyclone (EXA) Time Source support"
190         help
191           Say Y here to enable support for IBM EXA Cyclone time source.
192           If you're unsure, answer N.
193
194 config IOSAPIC
195         bool
196         depends on !IA64_HP_SIM
197         default y
198
199 config IA64_SGI_SN_SIM
200         bool "SGI Medusa Simulator Support"
201         depends on IA64_SGI_SN2
202         help
203           If you are compiling a kernel that will run under SGI's IA-64
204           simulator (Medusa) then say Y, otherwise say N.
205
206 config FORCE_MAX_ZONEORDER
207         int
208         default "18"
209
210 config SMP
211         bool "Symmetric multi-processing support"
212         help
213           This enables support for systems with more than one CPU. If you have
214           a system with only one CPU, say N.  If you have a system with more
215           than one CPU, say Y.
216
217           If you say N here, the kernel will run on single and multiprocessor
218           systems, but will use only one CPU of a multiprocessor system.  If
219           you say Y here, the kernel will run on many, but not all,
220           single processor systems.  On a single processor system, the kernel
221           will run faster if you say N here.
222
223           See also the <file:Documentation/smp.txt> and the SMP-HOWTO
224           available at <http://www.tldp.org/docs.html#howto>.
225
226           If you don't know what to do here, say N.
227
228 config NR_CPUS
229         int "Maximum number of CPUs (2-512)"
230         range 2 512
231         depends on SMP
232         default "64"
233         help
234           You should set this to the number of CPUs in your system, but
235           keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
236           only use 2 CPUs on a >2 CPU system.  Setting this to a value larger
237           than 64 will cause the use of a CPU mask array, causing a small
238           performance hit.
239
240 config HOTPLUG_CPU
241     bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
242     depends on SMP && HOTPLUG && EXPERIMENTAL
243         default n
244     ---help---
245       Say Y here to experiment with turning CPUs off and on.  CPUs
246       can be controlled through /sys/devices/system/cpu/cpu#.
247       Say N if you want to disable CPU hotplug.
248
249 config PREEMPT
250         bool "Preemptible Kernel"
251         help
252           This option reduces the latency of the kernel when reacting to
253           real-time or interactive events by allowing a low priority process to
254           be preempted even if it is in kernel mode executing a system call.
255           This allows applications to run more reliably even when the system is
256           under load.
257
258           Say Y here if you are building a kernel for a desktop, embedded
259           or real-time system.  Say N if you are unsure.
260
261 config HAVE_DEC_LOCK
262         bool
263         depends on (SMP || PREEMPT)
264         default y
265
266 config IA32_SUPPORT
267         bool "Support for Linux/x86 binaries"
268         help
269           IA-64 processors can execute IA-32 (X86) instructions.  By
270           saying Y here, the kernel will include IA-32 system call
271           emulation support which makes it possible to transparently
272           run IA-32 Linux binaries on an IA-64 Linux system.
273           If in doubt, say Y.
274
275 config COMPAT
276         bool
277         depends on IA32_SUPPORT
278         default y
279
280 config IA64_MCA_RECOVERY
281         tristate "MCA recovery from errors other than TLB."
282
283 config PERFMON
284         bool "Performance monitor support"
285         help
286           Selects whether support for the IA-64 performance monitor hardware
287           is included in the kernel.  This makes some kernel data-structures a
288           little bigger and slows down execution a bit, but it is generally
289           a good idea to turn this on.  If you're unsure, say Y.
290
291 config IA64_PALINFO
292         tristate "/proc/pal support"
293         help
294           If you say Y here, you are able to get PAL (Processor Abstraction
295           Layer) information in /proc/pal.  This contains useful information
296           about the processors in your systems, such as cache and TLB sizes
297           and the PAL firmware version in use.
298
299           To use this option, you have to ensure that the "/proc file system
300           support" (CONFIG_PROC_FS) is enabled, too.
301
302 source "drivers/firmware/Kconfig"
303
304 source "fs/Kconfig.binfmt"
305
306 endmenu
307
308 menu "Power management and ACPI"
309
310 config PM
311         bool "Power Management support"
312         depends on IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
313         default y
314         help
315           "Power Management" means that parts of your computer are shut
316           off or put into a power conserving "sleep" mode if they are not
317           being used.  There are two competing standards for doing this: APM
318           and ACPI.  If you want to use either one, say Y here and then also
319           to the requisite support below.
320
321           Power Management is most important for battery powered laptop
322           computers; if you have a laptop, check out the Linux Laptop home
323           page on the WWW at <http://www.linux-on-laptops.com/> and the
324           Battery Powered Linux mini-HOWTO, available from
325           <http://www.tldp.org/docs.html#howto>.
326
327           Note that, even if you say N here, Linux on the x86 architecture
328           will issue the hlt instruction if nothing is to be done, thereby
329           sending the processor to sleep and saving power.
330
331 config ACPI
332         bool
333         depends on !IA64_HP_SIM
334         default y
335
336 if !IA64_HP_SIM
337
338 source "drivers/acpi/Kconfig"
339
340 endif
341
342 endmenu
343
344 if !IA64_HP_SIM
345
346 menu "Bus options (PCI, PCMCIA)"
347
348 config PCI
349         bool "PCI support"
350         help
351           Find out whether you have a PCI motherboard. PCI is the name of a
352           bus system, i.e. the way the CPU talks to the other stuff inside
353           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
354           VESA. If you have PCI, say Y, otherwise N.
355
356           The PCI-HOWTO, available from
357           <http://www.tldp.org/docs.html#howto>, contains valuable
358           information about which PCI hardware does work under Linux and which
359           doesn't.
360
361 config PCI_DOMAINS
362         bool
363         default PCI
364
365 source "drivers/pci/Kconfig"
366
367 source "drivers/pci/hotplug/Kconfig"
368
369 source "drivers/pcmcia/Kconfig"
370
371 endmenu
372
373 endif
374
375 source "drivers/Kconfig"
376
377 source "fs/Kconfig"
378
379 source "lib/Kconfig"
380
381 source "arch/ia64/hp/sim/Kconfig"
382
383 source "arch/ia64/oprofile/Kconfig"
384
385 source "arch/ia64/Kconfig.debug"
386
387 source "kernel/vserver/Kconfig"
388
389 source "security/Kconfig"
390
391 source "crypto/Kconfig"