kbuild: silence CHK/UPD messages according to $(quiet)
[deliverable/linux.git] / arch / ia64 / Kconfig
CommitLineData
1da177e4
LT
1#
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
06f87adf
LB
14 select PCI if (!IA64_HP_SIM)
15 select ACPI if (!IA64_HP_SIM)
8140a90e 16 select PM if (!IA64_HP_SIM)
f282b970 17 select ARCH_SUPPORTS_MSI
42d4b839 18 select HAVE_OPROFILE
3f550096 19 select HAVE_KPROBES
1da177e4
LT
20 default y
21 help
22 The Itanium Processor Family is Intel's 64-bit successor to
23 the 32-bit X86 line. The IA-64 Linux project has a home
24 page at <http://www.linuxia64.org/> and a mailing list at
25 <linux-ia64@vger.kernel.org>.
26
27config 64BIT
28 bool
9f271d57 29 select ATA_NONSTANDARD if ATA
1da177e4
LT
30 default y
31
66701b14 32config ZONE_DMA
09ae1f58
CL
33 def_bool y
34 depends on !IA64_SGI_SN2
66701b14 35
2bd62a40
CL
36config QUICKLIST
37 bool
38 default y
39
1da177e4
LT
40config MMU
41 bool
42 default y
43
6c654b5f
JL
44config SWIOTLB
45 bool
6c654b5f 46
95c354fe
NP
47config GENERIC_LOCKBREAK
48 bool
49 default y
50 depends on SMP && PREEMPT
51
1da177e4
LT
52config RWSEM_XCHGADD_ALGORITHM
53 bool
54 default y
55
f0d1b0b3
DH
56config ARCH_HAS_ILOG2_U32
57 bool
58 default n
59
60config ARCH_HAS_ILOG2_U64
61 bool
62 default n
63
d9c23400
MG
64config HUGETLB_PAGE_SIZE_VARIABLE
65 bool
66 depends on HUGETLB_PAGE
67 default y
68
2875aef8
AM
69config GENERIC_FIND_NEXT_BIT
70 bool
71 default y
72
1da177e4
LT
73config GENERIC_CALIBRATE_DELAY
74 bool
75 default y
76
0aa366f3
TL
77config GENERIC_TIME
78 bool
79 default y
80
81config GENERIC_TIME_VSYSCALL
1da177e4
LT
82 bool
83 default y
84
988c388a 85config HAVE_SETUP_PER_CPU_AREA
b32ef636 86 def_bool y
87
3ed3bce8
MD
88config DMI
89 bool
90 default y
91
1da177e4
LT
92config EFI
93 bool
94 default y
95
96config GENERIC_IOMAP
97 bool
98 default y
99
7d12e522
AB
100config SCHED_NO_NO_OMIT_FRAME_POINTER
101 bool
102 default y
103
f14f75b8
JS
104config IA64_UNCACHED_ALLOCATOR
105 bool
106 select GENERIC_ALLOCATOR
107
e65e1fc2
AV
108config AUDIT_ARCH
109 bool
110 default y
111
1da177e4
LT
112choice
113 prompt "System type"
114 default IA64_GENERIC
115
116config IA64_GENERIC
117 bool "generic"
118 select NUMA
119 select ACPI_NUMA
d1598e05 120 select SWIOTLB
1da177e4
LT
121 help
122 This selects the system type of your hardware. A "generic" kernel
123 will run on any supported IA-64 system. However, if you configure
124 a kernel for your specific system, it will be faster and smaller.
125
126 generic For any supported IA-64 system
127 DIG-compliant For DIG ("Developer's Interface Guide") compliant systems
128 HP-zx1/sx1000 For HP systems
129 HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices.
130 SGI-SN2 For SGI Altix systems
131 Ski-simulator For the HP simulator <http://www.hpl.hp.com/research/linux/ski/>
132
133 If you don't know what to do, choose "generic".
134
135config IA64_DIG
136 bool "DIG-compliant"
d1598e05 137 select SWIOTLB
1da177e4
LT
138
139config IA64_HP_ZX1
140 bool "HP-zx1/sx1000"
141 help
142 Build a kernel that runs on HP zx1 and sx1000 systems. This adds
143 support for the HP I/O MMU.
144
145config IA64_HP_ZX1_SWIOTLB
146 bool "HP-zx1/sx1000 with software I/O TLB"
d1598e05 147 select SWIOTLB
1da177e4
LT
148 help
149 Build a kernel that runs on HP zx1 and sx1000 systems even when they
150 have broken PCI devices which cannot DMA to full 32 bits. Apart
151 from support for the HP I/O MMU, this includes support for the software
152 I/O TLB, which allows supporting the broken devices at the expense of
153 wasting some kernel memory (about 2MB by default).
154
155config IA64_SGI_SN2
156 bool "SGI-SN2"
157 help
158 Selecting this option will optimize the kernel for use on sn2 based
159 systems, but the resulting kernel binary will not run on other
160 types of ia64 systems. If you have an SGI Altix system, it's safe
161 to select this option. If in doubt, select ia64 generic support
162 instead.
163
164config IA64_HP_SIM
165 bool "Ski-simulator"
d1598e05 166 select SWIOTLB
1da177e4
LT
167
168endchoice
169
170choice
171 prompt "Processor type"
172 default ITANIUM
173
174config ITANIUM
175 bool "Itanium"
176 help
177 Select your IA-64 processor type. The default is Itanium.
178 This choice is safe for all IA-64 systems, but may not perform
179 optimally on systems with, say, Itanium 2 or newer processors.
180
181config MCKINLEY
182 bool "Itanium 2"
183 help
184 Select this to configure for an Itanium 2 (McKinley) processor.
185
186endchoice
187
188choice
189 prompt "Kernel page size"
190 default IA64_PAGE_SIZE_16KB
191
192config IA64_PAGE_SIZE_4KB
193 bool "4KB"
194 help
195 This lets you select the page size of the kernel. For best IA-64
196 performance, a page size of 8KB or 16KB is recommended. For best
197 IA-32 compatibility, a page size of 4KB should be selected (the vast
198 majority of IA-32 binaries work perfectly fine with a larger page
199 size). For Itanium 2 or newer systems, a page size of 64KB can also
200 be selected.
201
202 4KB For best IA-32 compatibility
203 8KB For best IA-64 performance
204 16KB For best IA-64 performance
205 64KB Requires Itanium 2 or newer processor.
206
207 If you don't know what to do, choose 16KB.
208
209config IA64_PAGE_SIZE_8KB
210 bool "8KB"
211
212config IA64_PAGE_SIZE_16KB
213 bool "16KB"
214
215config IA64_PAGE_SIZE_64KB
216 depends on !ITANIUM
217 bool "64KB"
218
219endchoice
220
837cd0bd
RH
221choice
222 prompt "Page Table Levels"
223 default PGTABLE_3
224
225config PGTABLE_3
226 bool "3 Levels"
227
228config PGTABLE_4
229 depends on !IA64_PAGE_SIZE_64KB
230 bool "4 Levels"
231
232endchoice
233
b5d23e5b
CL
234source kernel/Kconfig.hz
235
1da177e4
LT
236config IA64_BRL_EMU
237 bool
238 depends on ITANIUM
239 default y
240
241# align cache-sensitive data to 128 bytes
242config IA64_L1_CACHE_SHIFT
243 int
244 default "7" if MCKINLEY
245 default "6" if ITANIUM
246
1da177e4
LT
247config IA64_CYCLONE
248 bool "Cyclone (EXA) Time Source support"
249 help
250 Say Y here to enable support for IBM EXA Cyclone time source.
251 If you're unsure, answer N.
252
253config IOSAPIC
254 bool
255 depends on !IA64_HP_SIM
256 default y
257
b0d82bd5
DN
258config IA64_SGI_SN_XP
259 tristate "Support communication between SGI SSIs"
f79b3488 260 depends on IA64_GENERIC || IA64_SGI_SN2
65ed0b33 261 select IA64_UNCACHED_ALLOCATOR
b0d82bd5
DN
262 help
263 An SGI machine can be divided into multiple Single System
264 Images which act independently of each other and have
265 hardware based memory protection from the others. Enabling
266 this feature will allow for direct communication between SSIs
267 based on a network adapter and DMA messaging.
268
1da177e4 269config FORCE_MAX_ZONEORDER
da9577c5
BP
270 int "MAX_ORDER (11 - 17)" if !HUGETLB_PAGE
271 range 11 17 if !HUGETLB_PAGE
272 default "17" if HUGETLB_PAGE
273 default "11"
1da177e4
LT
274
275config SMP
276 bool "Symmetric multi-processing support"
277 help
278 This enables support for systems with more than one CPU. If you have
279 a system with only one CPU, say N. If you have a system with more
280 than one CPU, say Y.
281
282 If you say N here, the kernel will run on single and multiprocessor
283 systems, but will use only one CPU of a multiprocessor system. If
284 you say Y here, the kernel will run on many, but not all,
285 single processor systems. On a single processor system, the kernel
286 will run faster if you say N here.
287
03502faa
AB
288 See also the SMP-HOWTO available at
289 <http://www.tldp.org/docs.html#howto>.
1da177e4
LT
290
291 If you don't know what to do here, say N.
292
293config NR_CPUS
54703d36
JS
294 int "Maximum number of CPUs (2-1024)"
295 range 2 1024
1da177e4 296 depends on SMP
c57d68ca 297 default "1024"
1da177e4
LT
298 help
299 You should set this to the number of CPUs in your system, but
300 keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
301 only use 2 CPUs on a >2 CPU system. Setting this to a value larger
302 than 64 will cause the use of a CPU mask array, causing a small
303 performance hit.
304
305config HOTPLUG_CPU
306 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
307 depends on SMP && EXPERIMENTAL
308 select HOTPLUG
309 default n
310 ---help---
311 Say Y here to experiment with turning CPUs off and on. CPUs
312 can be controlled through /sys/devices/system/cpu/cpu#.
313 Say N if you want to disable CPU hotplug.
314
cc57637b
YG
315config ARCH_ENABLE_MEMORY_HOTPLUG
316 def_bool y
317
0c0e6195
KH
318config ARCH_ENABLE_MEMORY_HOTREMOVE
319 def_bool y
320
7a9bdd88
SS
321config SCHED_SMT
322 bool "SMT scheduler support"
323 depends on SMP
7a9bdd88
SS
324 help
325 Improves the CPU scheduler's decision making when dealing with
326 Intel IA64 chips with MultiThreading at a cost of slightly increased
327 overhead in some places. If unsure say N here.
328
ff741906
AR
329config PERMIT_BSP_REMOVE
330 bool "Support removal of Bootstrap Processor"
331 depends on HOTPLUG_CPU
332 default n
333 ---help---
334 Say Y here if your platform SAL will support removal of BSP with HOTPLUG_CPU
335 support.
336
337config FORCE_CPEI_RETARGET
338 bool "Force assumption that CPEI can be re-targetted"
339 depends on PERMIT_BSP_REMOVE
340 default n
341 ---help---
342 Say Y if you need to force the assumption that CPEI can be re-targetted to
343 any cpu in the system. This hint is available via ACPI 3.0 specifications.
344 Tiger4 systems are capable of re-directing CPEI to any CPU other than BSP.
345 This option it useful to enable this feature on older BIOS's as well.
346 You can also enable this by using boot command line option force_cpei=1.
347
0b0517a4 348source "kernel/Kconfig.preempt"
1da177e4 349
3f22ab27
DH
350source "mm/Kconfig"
351
da9577c5
BP
352config ARCH_SELECT_MEMORY_MODEL
353 def_bool y
354
355config ARCH_DISCONTIGMEM_ENABLE
356 def_bool y
357 help
358 Say Y to support efficient handling of discontiguous physical memory,
359 for architectures which are either NUMA (Non-Uniform Memory Access)
360 or have huge holes in the physical address space for other reasons.
361 See <file:Documentation/vm/numa> for more.
362
363config ARCH_FLATMEM_ENABLE
364 def_bool y
365
366config ARCH_SPARSEMEM_ENABLE
367 def_bool y
368 depends on ARCH_DISCONTIGMEM_ENABLE
ef229c5a 369 select SPARSEMEM_VMEMMAP_ENABLE
da9577c5
BP
370
371config ARCH_DISCONTIGMEM_DEFAULT
372 def_bool y if (IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB)
373 depends on ARCH_DISCONTIGMEM_ENABLE
374
375config NUMA
376 bool "NUMA support"
377 depends on !IA64_HP_SIM && !FLATMEM
378 default y if IA64_SGI_SN2
6c33eb39 379 select ACPI_NUMA if ACPI
da9577c5
BP
380 help
381 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
382 Access). This option is for configuring high-end multiprocessor
383 server systems. If in doubt, say N.
384
c80d79d7
YG
385config NODES_SHIFT
386 int "Max num nodes shift(3-10)"
387 range 3 10
c57d68ca 388 default "10"
c80d79d7
YG
389 depends on NEED_MULTIPLE_NODES
390 help
391 This option specifies the maximum number of nodes in your SSI system.
392 MAX_NUMNODES will be 2^(This value).
393 If in doubt, use the default.
394
05e0caad
MG
395config ARCH_POPULATES_NODE_MAP
396 def_bool y
397
da9577c5
BP
398# VIRTUAL_MEM_MAP and FLAT_NODE_MEM_MAP are functionally equivalent.
399# VIRTUAL_MEM_MAP has been retained for historical reasons.
400config VIRTUAL_MEM_MAP
401 bool "Virtual mem map"
402 depends on !SPARSEMEM
403 default y if !IA64_HP_SIM
404 help
405 Say Y to compile the kernel with support for a virtual mem map.
406 This code also only takes effect if a memory hole of greater than
407 1 Gb is found during boot. You must turn this option on if you
408 require the DISCONTIGMEM option for your machine. If you are
409 unsure, say Y.
410
411config HOLES_IN_ZONE
412 bool
413 default y if VIRTUAL_MEM_MAP
414
415config HAVE_ARCH_EARLY_PFN_TO_NID
416 def_bool y
417 depends on NEED_MULTIPLE_NODES
418
10ad400b
YG
419config HAVE_ARCH_NODEDATA_EXTENSION
420 def_bool y
421 depends on NUMA
422
1da177e4
LT
423config IA32_SUPPORT
424 bool "Support for Linux/x86 binaries"
425 help
426 IA-64 processors can execute IA-32 (X86) instructions. By
427 saying Y here, the kernel will include IA-32 system call
428 emulation support which makes it possible to transparently
429 run IA-32 Linux binaries on an IA-64 Linux system.
430 If in doubt, say Y.
431
432config COMPAT
433 bool
434 depends on IA32_SUPPORT
435 default y
436
7a6c8135
TL
437config COMPAT_FOR_U64_ALIGNMENT
438 def_bool COMPAT
439
1da177e4
LT
440config IA64_MCA_RECOVERY
441 tristate "MCA recovery from errors other than TLB."
442
443config PERFMON
444 bool "Performance monitor support"
445 help
446 Selects whether support for the IA-64 performance monitor hardware
447 is included in the kernel. This makes some kernel data-structures a
448 little bigger and slows down execution a bit, but it is generally
449 a good idea to turn this on. If you're unsure, say Y.
450
451config IA64_PALINFO
452 tristate "/proc/pal support"
453 help
454 If you say Y here, you are able to get PAL (Processor Abstraction
455 Layer) information in /proc/pal. This contains useful information
456 about the processors in your systems, such as cache and TLB sizes
457 and the PAL firmware version in use.
458
459 To use this option, you have to ensure that the "/proc file system
460 support" (CONFIG_PROC_FS) is enabled, too.
461
e9ef08bd
FY
462config IA64_MC_ERR_INJECT
463 tristate "MC error injection support"
464 help
01dd2fbf
ML
465 Adds support for MC error injection. If enabled, the kernel
466 will provide a sysfs interface for user applications to
467 call MC error injection PAL procedures to inject various errors.
e9ef08bd
FY
468 This is a useful tool for MCA testing.
469
470 If you're unsure, do not select this option.
471
466575f4
JS
472config SGI_SN
473 def_bool y if (IA64_SGI_SN2 || IA64_GENERIC)
474
2ab561a1
DMT
475config IA64_ESI
476 bool "ESI (Extensible SAL Interface) support"
477 help
478 If you say Y here, support is built into the kernel to
479 make ESI calls. ESI calls are used to support vendor-specific
480 firmware extensions, such as the ability to inject memory-errors
481 for test-purposes. If you're unsure, say N.
482
28eda5b8
BH
483config IA64_HP_AML_NFW
484 bool "Support ACPI AML calls to native firmware"
485 help
486 This driver installs a global ACPI Operation Region handler for
487 region 0xA1. AML methods can use this OpRegion to call arbitrary
488 native firmware functions. The driver installs the OpRegion
489 handler if there is an HPQ5001 device or if the user supplies
490 the "force" module parameter, e.g., with the "aml_nfw.force"
491 kernel command line option.
492
c1311af1
BC
493source "drivers/sn/Kconfig"
494
a7956113
ZN
495config KEXEC
496 bool "kexec system call (EXPERIMENTAL)"
497 depends on EXPERIMENTAL && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU)
498 help
499 kexec is a system call that implements the ability to shutdown your
500 current kernel, and to start another kernel. It is like a reboot
3dde6ad8 501 but it is independent of the system firmware. And like a reboot
a7956113
ZN
502 you can start any kernel with it, not just Linux.
503
01dd2fbf 504 The name comes from the similarity to the exec system call.
a7956113
ZN
505
506 It is an ongoing process to be certain the hardware in a machine
507 is properly shutdown, so do not be surprised if this code does not
508 initially work for you. It may help to enable device hotplugging
509 support. As of this writing the exact hardware interface is
510 strongly in flux, so no good recommendation can be made.
511
512config CRASH_DUMP
513 bool "kernel crash dumps (EXPERIMENTAL)"
514 depends on EXPERIMENTAL && IA64_MCA_RECOVERY && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU)
515 help
516 Generate crash dump after being started by kexec.
517
1da177e4
LT
518source "drivers/firmware/Kconfig"
519
520source "fs/Kconfig.binfmt"
521
522endmenu
523
524menu "Power management and ACPI"
525
eb7b6b32 526source "kernel/power/Kconfig"
1da177e4
LT
527
528source "drivers/acpi/Kconfig"
529
4db8699b
VP
530if PM
531
532source "arch/ia64/kernel/cpufreq/Kconfig"
533
534endif
535
1da177e4
LT
536endmenu
537
538if !IA64_HP_SIM
539
540menu "Bus options (PCI, PCMCIA)"
541
542config PCI
543 bool "PCI support"
544 help
85f265d8
CH
545 Real IA-64 machines all have PCI/PCI-X/PCI Express busses. Say Y
546 here unless you are using a simulator without PCI support.
1da177e4
LT
547
548config PCI_DOMAINS
36e23590
MW
549 def_bool PCI
550
551config PCI_SYSCALL
552 def_bool PCI
1da177e4 553
b7bb575c
KK
554source "drivers/pci/pcie/Kconfig"
555
1da177e4
LT
556source "drivers/pci/Kconfig"
557
558source "drivers/pci/hotplug/Kconfig"
559
560source "drivers/pcmcia/Kconfig"
561
562endmenu
563
564endif
565
d5950b43
SR
566source "net/Kconfig"
567
1da177e4
LT
568source "drivers/Kconfig"
569
1a4b0fc5
JS
570config MSPEC
571 tristate "Memory special operations driver"
572 depends on IA64
573 select IA64_UNCACHED_ALLOCATOR
574 help
575 If you have an ia64 and you want to enable memory special
576 operations support (formerly known as fetchop), say Y here,
577 otherwise say N.
578
1da177e4
LT
579source "fs/Kconfig"
580
581source "lib/Kconfig"
582
583#
584# Use the generic interrupt handling code in kernel/irq/:
585#
586config GENERIC_HARDIRQS
587 bool
588 default y
589
590config GENERIC_IRQ_PROBE
591 bool
592 default y
593
54d5d424
AR
594config GENERIC_PENDING_IRQ
595 bool
596 depends on GENERIC_HARDIRQS && SMP
597 default y
598
0d7012a9
IM
599config IRQ_PER_CPU
600 bool
601 default y
602
1da177e4
LT
603source "arch/ia64/hp/sim/Kconfig"
604
1da177e4
LT
605source "arch/ia64/Kconfig.debug"
606
607source "security/Kconfig"
608
609source "crypto/Kconfig"
This page took 0.356705 seconds and 5 git commands to generate.