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