source: trunk/packages/xen-common/xen-common/linux-2.6-xen-sparse/arch/ia64/Kconfig @ 34

Last change on this file since 34 was 34, checked in by hartmans, 17 years ago

Add xen and xen-common

File size: 13.9 KB
Line 
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
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 SWIOTLB
30       bool
31       default y
32
33config RWSEM_XCHGADD_ALGORITHM
34        bool
35        default y
36
37config GENERIC_FIND_NEXT_BIT
38        bool
39        default y
40
41config GENERIC_CALIBRATE_DELAY
42        bool
43        default y
44
45config TIME_INTERPOLATION
46        bool
47        default y
48
49config DMI
50        bool
51        default y
52
53config EFI
54        bool
55        default y
56
57config GENERIC_IOMAP
58        bool
59        default y
60
61config XEN
62        bool "Xen hypervisor support"
63        default y
64        help
65          Enable Xen hypervisor support.  Resulting kernel runs
66          both as a guest OS on Xen and natively on hardware.
67
68config XEN_IA64_VDSO_PARAVIRT
69        bool
70        depends on XEN && !ITANIUM
71        default y
72        help
73          vDSO paravirtualization
74
75config XEN_IA64_EXPOSE_P2M
76        bool "Xen/IA64 exposure p2m table"
77        depends on XEN
78        default y
79        help
80          expose p2m from xen
81
82config XEN_IA64_EXPOSE_P2M_USE_DTR
83        bool "Xen/IA64 map p2m table with dtr"
84        depends on XEN_IA64_EXPOSE_P2M
85        default y
86        help
87          use dtr to map the exposed p2m table
88
89config SCHED_NO_NO_OMIT_FRAME_POINTER
90        bool
91        default y
92
93config IA64_UNCACHED_ALLOCATOR
94        bool
95        select GENERIC_ALLOCATOR
96
97config DMA_IS_DMA32
98        bool
99        default y
100
101config DMA_IS_NORMAL
102        bool
103        depends on IA64_SGI_SN2
104        default y
105
106config AUDIT_ARCH
107        bool
108        default y
109
110choice
111        prompt "System type"
112        default IA64_GENERIC
113
114config IA64_GENERIC
115        bool "generic"
116        select ACPI
117        select PCI
118        select NUMA
119        select ACPI_NUMA
120        help
121          This selects the system type of your hardware.  A "generic" kernel
122          will run on any supported IA-64 system.  However, if you configure
123          a kernel for your specific system, it will be faster and smaller.
124
125          generic               For any supported IA-64 system
126          DIG-compliant         For DIG ("Developer's Interface Guide") compliant systems
127          HP-zx1/sx1000         For HP systems
128          HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices.
129          SGI-SN2               For SGI Altix systems
130          Ski-simulator         For the HP simulator <http://www.hpl.hp.com/research/linux/ski/>
131
132          If you don't know what to do, choose "generic".
133
134config IA64_DIG
135        bool "DIG-compliant"
136
137config IA64_HP_ZX1
138        bool "HP-zx1/sx1000"
139        help
140          Build a kernel that runs on HP zx1 and sx1000 systems.  This adds
141          support for the HP I/O MMU.
142
143config IA64_HP_ZX1_SWIOTLB
144        bool "HP-zx1/sx1000 with software I/O TLB"
145        help
146          Build a kernel that runs on HP zx1 and sx1000 systems even when they
147          have broken PCI devices which cannot DMA to full 32 bits.  Apart
148          from support for the HP I/O MMU, this includes support for the software
149          I/O TLB, which allows supporting the broken devices at the expense of
150          wasting some kernel memory (about 2MB by default).
151
152config IA64_SGI_SN2
153        bool "SGI-SN2"
154        help
155          Selecting this option will optimize the kernel for use on sn2 based
156          systems, but the resulting kernel binary will not run on other
157          types of ia64 systems.  If you have an SGI Altix system, it's safe
158          to select this option.  If in doubt, select ia64 generic support
159          instead.
160
161config IA64_HP_SIM
162        bool "Ski-simulator"
163
164endchoice
165
166choice
167        prompt "Processor type"
168        default ITANIUM
169
170config ITANIUM
171        bool "Itanium"
172        help
173          Select your IA-64 processor type.  The default is Itanium.
174          This choice is safe for all IA-64 systems, but may not perform
175          optimally on systems with, say, Itanium 2 or newer processors.
176
177config MCKINLEY
178        bool "Itanium 2"
179        help
180          Select this to configure for an Itanium 2 (McKinley) processor.
181
182endchoice
183
184choice
185        prompt "Kernel page size"
186        default IA64_PAGE_SIZE_16KB
187
188config IA64_PAGE_SIZE_4KB
189        bool "4KB"
190        help
191          This lets you select the page size of the kernel.  For best IA-64
192          performance, a page size of 8KB or 16KB is recommended.  For best
193          IA-32 compatibility, a page size of 4KB should be selected (the vast
194          majority of IA-32 binaries work perfectly fine with a larger page
195          size).  For Itanium 2 or newer systems, a page size of 64KB can also
196          be selected.
197
198          4KB                For best IA-32 compatibility
199          8KB                For best IA-64 performance
200          16KB               For best IA-64 performance
201          64KB               Requires Itanium 2 or newer processor.
202
203          If you don't know what to do, choose 16KB.
204
205config IA64_PAGE_SIZE_8KB
206        bool "8KB"
207
208config IA64_PAGE_SIZE_16KB
209        bool "16KB"
210
211config IA64_PAGE_SIZE_64KB
212        depends on !ITANIUM
213        bool "64KB"
214
215endchoice
216
217choice
218        prompt "Page Table Levels"
219        default PGTABLE_3
220
221config PGTABLE_3
222        bool "3 Levels"
223
224config PGTABLE_4
225        depends on !IA64_PAGE_SIZE_64KB
226        bool "4 Levels"
227
228endchoice
229
230source kernel/Kconfig.hz
231
232config IA64_BRL_EMU
233        bool
234        depends on ITANIUM
235        default y
236
237# align cache-sensitive data to 128 bytes
238config IA64_L1_CACHE_SHIFT
239        int
240        default "7" if MCKINLEY
241        default "6" if ITANIUM
242
243config IA64_CYCLONE
244        bool "Cyclone (EXA) Time Source support"
245        help
246          Say Y here to enable support for IBM EXA Cyclone time source.
247          If you're unsure, answer N.
248
249config IOSAPIC
250        bool
251        depends on !IA64_HP_SIM
252        default y
253
254config IA64_SGI_SN_XP
255        tristate "Support communication between SGI SSIs"
256        depends on IA64_GENERIC || IA64_SGI_SN2
257        select IA64_UNCACHED_ALLOCATOR
258        help
259          An SGI machine can be divided into multiple Single System
260          Images which act independently of each other and have
261          hardware based memory protection from the others.  Enabling
262          this feature will allow for direct communication between SSIs
263          based on a network adapter and DMA messaging.
264
265config FORCE_MAX_ZONEORDER
266        int "MAX_ORDER (11 - 17)"  if !HUGETLB_PAGE
267        range 11 17  if !HUGETLB_PAGE
268        default "17" if HUGETLB_PAGE
269        default "11"
270
271config SMP
272        bool "Symmetric multi-processing support"
273        help
274          This enables support for systems with more than one CPU. If you have
275          a system with only one CPU, say N.  If you have a system with more
276          than one CPU, say Y.
277
278          If you say N here, the kernel will run on single and multiprocessor
279          systems, but will use only one CPU of a multiprocessor system.  If
280          you say Y here, the kernel will run on many, but not all,
281          single processor systems.  On a single processor system, the kernel
282          will run faster if you say N here.
283
284          See also the <file:Documentation/smp.txt> and the SMP-HOWTO
285          available at <http://www.tldp.org/docs.html#howto>.
286
287          If you don't know what to do here, say N.
288
289config NR_CPUS
290        int "Maximum number of CPUs (2-1024)"
291        range 2 1024
292        depends on SMP
293        default "1024"
294        help
295          You should set this to the number of CPUs in your system, but
296          keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
297          only use 2 CPUs on a >2 CPU system.  Setting this to a value larger
298          than 64 will cause the use of a CPU mask array, causing a small
299          performance hit.
300
301config HOTPLUG_CPU
302        bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
303        depends on SMP && EXPERIMENTAL
304        select HOTPLUG
305        default n
306        ---help---
307          Say Y here to experiment with turning CPUs off and on.  CPUs
308          can be controlled through /sys/devices/system/cpu/cpu#.
309          Say N if you want to disable CPU hotplug.
310
311config ARCH_ENABLE_MEMORY_HOTPLUG
312        def_bool y
313
314config SCHED_SMT
315        bool "SMT scheduler support"
316        depends on SMP
317        help
318          Improves the CPU scheduler's decision making when dealing with
319          Intel IA64 chips with MultiThreading at a cost of slightly increased
320          overhead in some places. If unsure say N here.
321
322config PERMIT_BSP_REMOVE
323        bool "Support removal of Bootstrap Processor"
324        depends on HOTPLUG_CPU
325        default n
326        ---help---
327        Say Y here if your platform SAL will support removal of BSP with HOTPLUG_CPU
328        support.
329
330config FORCE_CPEI_RETARGET
331        bool "Force assumption that CPEI can be re-targetted"
332        depends on PERMIT_BSP_REMOVE
333        default n
334        ---help---
335        Say Y if you need to force the assumption that CPEI can be re-targetted to
336        any cpu in the system. This hint is available via ACPI 3.0 specifications.
337        Tiger4 systems are capable of re-directing CPEI to any CPU other than BSP.
338        This option it useful to enable this feature on older BIOS's as well.
339        You can also enable this by using boot command line option force_cpei=1.
340
341config PREEMPT
342        bool "Preemptible Kernel"
343        help
344          This option reduces the latency of the kernel when reacting to
345          real-time or interactive events by allowing a low priority process to
346          be preempted even if it is in kernel mode executing a system call.
347          This allows applications to run more reliably even when the system is
348          under load.
349
350          Say Y here if you are building a kernel for a desktop, embedded
351          or real-time system.  Say N if you are unsure.
352
353source "mm/Kconfig"
354
355config ARCH_SELECT_MEMORY_MODEL
356        def_bool y
357
358config ARCH_DISCONTIGMEM_ENABLE
359        def_bool y
360        help
361          Say Y to support efficient handling of discontiguous physical memory,
362          for architectures which are either NUMA (Non-Uniform Memory Access)
363          or have huge holes in the physical address space for other reasons.
364          See <file:Documentation/vm/numa> for more.
365
366config ARCH_FLATMEM_ENABLE
367        def_bool y
368
369config ARCH_SPARSEMEM_ENABLE
370        def_bool y
371        depends on ARCH_DISCONTIGMEM_ENABLE
372
373config ARCH_DISCONTIGMEM_DEFAULT
374        def_bool y if (IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB)
375        depends on ARCH_DISCONTIGMEM_ENABLE
376
377config NUMA
378        bool "NUMA support"
379        depends on !IA64_HP_SIM && !FLATMEM
380        default y if IA64_SGI_SN2
381        help
382          Say Y to compile the kernel to support NUMA (Non-Uniform Memory
383          Access).  This option is for configuring high-end multiprocessor
384          server systems.  If in doubt, say N.
385
386config NODES_SHIFT
387        int "Max num nodes shift(3-10)"
388        range 3 10
389        default "10"
390        depends on NEED_MULTIPLE_NODES
391        help
392          This option specifies the maximum number of nodes in your SSI system.
393          MAX_NUMNODES will be 2^(This value).
394          If in doubt, use the default.
395
396# VIRTUAL_MEM_MAP and FLAT_NODE_MEM_MAP are functionally equivalent.
397# VIRTUAL_MEM_MAP has been retained for historical reasons.
398config VIRTUAL_MEM_MAP
399        bool "Virtual mem map"
400        depends on !SPARSEMEM
401        default y if !IA64_HP_SIM
402        help
403          Say Y to compile the kernel with support for a virtual mem map.
404          This code also only takes effect if a memory hole of greater than
405          1 Gb is found during boot.  You must turn this option on if you
406          require the DISCONTIGMEM option for your machine. If you are
407          unsure, say Y.
408
409config HOLES_IN_ZONE
410        bool
411        default y if VIRTUAL_MEM_MAP
412
413config HAVE_ARCH_EARLY_PFN_TO_NID
414        def_bool y
415        depends on NEED_MULTIPLE_NODES
416
417config HAVE_ARCH_NODEDATA_EXTENSION
418        def_bool y
419        depends on NUMA
420
421config IA32_SUPPORT
422        bool "Support for Linux/x86 binaries"
423        help
424          IA-64 processors can execute IA-32 (X86) instructions.  By
425          saying Y here, the kernel will include IA-32 system call
426          emulation support which makes it possible to transparently
427          run IA-32 Linux binaries on an IA-64 Linux system.
428          If in doubt, say Y.
429
430config COMPAT
431        bool
432        depends on IA32_SUPPORT
433        default y
434
435config IA64_MCA_RECOVERY
436        tristate "MCA recovery from errors other than TLB."
437
438config PERFMON
439        bool "Performance monitor support"
440        help
441          Selects whether support for the IA-64 performance monitor hardware
442          is included in the kernel.  This makes some kernel data-structures a
443          little bigger and slows down execution a bit, but it is generally
444          a good idea to turn this on.  If you're unsure, say Y.
445
446config IA64_PALINFO
447        tristate "/proc/pal support"
448        help
449          If you say Y here, you are able to get PAL (Processor Abstraction
450          Layer) information in /proc/pal.  This contains useful information
451          about the processors in your systems, such as cache and TLB sizes
452          and the PAL firmware version in use.
453
454          To use this option, you have to ensure that the "/proc file system
455          support" (CONFIG_PROC_FS) is enabled, too.
456
457config SGI_SN
458        def_bool y if (IA64_SGI_SN2 || IA64_GENERIC)
459
460source "drivers/sn/Kconfig"
461
462source "drivers/firmware/Kconfig"
463
464source "fs/Kconfig.binfmt"
465
466endmenu
467
468menu "Power management and ACPI"
469
470source "kernel/power/Kconfig"
471
472source "drivers/acpi/Kconfig"
473
474if PM
475
476source "arch/ia64/kernel/cpufreq/Kconfig"
477
478endif
479
480endmenu
481
482if !IA64_HP_SIM
483
484menu "Bus options (PCI, PCMCIA)"
485
486config PCI
487        bool "PCI support"
488        help
489          Real IA-64 machines all have PCI/PCI-X/PCI Express busses.  Say Y
490          here unless you are using a simulator without PCI support.
491
492config PCI_DOMAINS
493        bool
494        default PCI
495
496config XEN_PCIDEV_FRONTEND
497        bool "Xen PCI Frontend"
498        depends on PCI && XEN
499        default y
500        help
501          The PCI device frontend driver allows the kernel to import arbitrary
502          PCI devices from a PCI backend to support PCI driver domains.
503
504config XEN_PCIDEV_FE_DEBUG
505        bool "Xen PCI Frontend Debugging"
506        depends on XEN_PCIDEV_FRONTEND
507        default n
508        help
509          Enables some debug statements within the PCI Frontend.
510
511source "drivers/pci/pcie/Kconfig"
512
513source "drivers/pci/Kconfig"
514
515source "drivers/pci/hotplug/Kconfig"
516
517source "drivers/pcmcia/Kconfig"
518
519endmenu
520
521endif
522
523source "net/Kconfig"
524
525source "drivers/Kconfig"
526
527source "fs/Kconfig"
528
529source "lib/Kconfig"
530
531#
532# Use the generic interrupt handling code in kernel/irq/:
533#
534config GENERIC_HARDIRQS
535        bool
536        default y
537
538config GENERIC_IRQ_PROBE
539        bool
540        default y
541
542config GENERIC_PENDING_IRQ
543        bool
544        depends on GENERIC_HARDIRQS && SMP
545        default y
546
547config IRQ_PER_CPU
548        bool
549        default y
550
551source "arch/ia64/hp/sim/Kconfig"
552
553menu "Instrumentation Support"
554        depends on EXPERIMENTAL
555
556source "arch/ia64/oprofile/Kconfig"
557
558config KPROBES
559        bool "Kprobes (EXPERIMENTAL)"
560        depends on EXPERIMENTAL && MODULES
561        help
562          Kprobes allows you to trap at almost any kernel address and
563          execute a callback function.  register_kprobe() establishes
564          a probepoint and specifies the callback.  Kprobes is useful
565          for kernel debugging, non-intrusive instrumentation and testing.
566          If in doubt, say "N".
567endmenu
568
569source "arch/ia64/Kconfig.debug"
570
571source "security/Kconfig"
572
573source "crypto/Kconfig"
574
575#
576# override default values of drivers/xen/Kconfig
577#
578if XEN
579config XEN_SMPBOOT
580        default n
581endif
582
583source "drivers/xen/Kconfig"
Note: See TracBrowser for help on using the repository browser.