fb55bf555e0df88fb6908eee46f57e133420e821
[linux-flexiantxendom0-3.2.10.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@linuxia64.org.
20
21 config MMU
22         bool
23         default y
24
25 config RWSEM_XCHGADD_ALGORITHM
26         bool
27         default y
28
29 choice
30         prompt "IA-64 processor type"
31         default ITANIUM
32
33 config ITANIUM
34         bool "Itanium"
35         help
36           Select your IA-64 processor type.  The default is Intel Itanium.
37           This choice is safe for all IA-64 systems, but may not perform
38           optimally on systems with, say, Itanium 2 or newer processors.
39
40 config MCKINLEY
41         bool "Itanium 2"
42         help
43           Select this to configure for an Itanium 2 (McKinley) processor.
44
45 endchoice
46
47 choice
48         prompt "IA-64 system type"
49         default IA64_GENERIC
50
51 config IA64_GENERIC
52         bool "generic"
53         ---help---
54           This selects the system type of your hardware.  A "generic" kernel
55           will run on any supported IA-64 system.  However, if you configure
56           a kernel for your specific system, it will be faster and smaller.
57
58           To find out what type of IA-64 system you have, you may want to
59           check the IA-64 Linux web site at <http://www.linux-ia64.org/>.
60           As of the time of this writing, most hardware is DIG compliant,
61           so the "DIG-compliant" option is usually the right choice.
62
63           HP-simulator   For the HP simulator
64           (<http://software.hp.com/ia64linux/>).
65           HP-zx1         For HP zx1-based systems.
66           SN1-simulator  For the SGI SN1 simulator.
67           DIG-compliant  For DIG ("Developer's Interface Guide") compliant
68           systems.
69
70           If you don't know what to do, choose "generic".
71
72 config IA64_DIG
73         bool "DIG-compliant"
74
75 config IA64_HP_SIM
76         bool "HP-simulator"
77
78 config IA64_HP_ZX1
79         bool "HP-zx1"
80         help
81           Build a kernel that runs on HP zx1-based systems.  This adds support
82           for the zx1 I/O MMU and makes root bus bridges appear in PCI config
83           space (required for zx1 agpgart support).
84
85 config IA64_SGI_SN1
86         bool "SGI-SN1"
87
88 config IA64_SGI_SN2
89         bool "SGI-SN2"
90
91 endchoice
92
93 choice
94         prompt "Kernel page size"
95         default IA64_PAGE_SIZE_16KB
96
97 config IA64_PAGE_SIZE_4KB
98         bool "4KB"
99         ---help---
100           This lets you select the page size of the kernel.  For best IA-64
101           performance, a page size of 8KB or 16KB is recommended.  For best
102           IA-32 compatibility, a page size of 4KB should be selected (the vast
103           majority of IA-32 binaries work perfectly fine with a larger page
104           size).  For Itanium 2 or newer systems, a page size of 64KB can also
105           be selected.
106
107           4KB                For best IA-32 compatibility
108           8KB                For best IA-64 performance
109           16KB               For best IA-64 performance
110           64KB               Requires Itanium 2 or newer processor.
111
112           If you don't know what to do, choose 16KB.
113
114 config IA64_PAGE_SIZE_8KB
115         bool "8KB"
116
117 config IA64_PAGE_SIZE_16KB
118         bool "16KB"
119
120 config IA64_PAGE_SIZE_64KB
121         depends on !ITANIUM
122         bool "64KB"
123
124 endchoice
125
126 config ACPI
127         bool
128         depends on !IA64_HP_SIM
129         default y
130         ---help---
131           ACPI/OSPM support for Linux is currently under development. As such,
132           this support is preliminary and EXPERIMENTAL.  Configuring ACPI
133           support enables kernel interfaces that allow higher level software
134           (OSPM) to manipulate ACPI defined hardware and software interfaces,
135           including the evaluation of ACPI control methods.  If unsure, choose
136           N here.  Note, this option will enlarge your kernel by about 120K.
137
138           This support requires an ACPI compliant platform (hardware/firmware).
139           If both ACPI and Advanced Power Management (APM) support are
140           configured, whichever is loaded first shall be used.
141
142           This code DOES NOT currently provide a complete OSPM implementation
143           -- it has not yet reached APM's level of functionality.  When fully
144           implemented, Linux ACPI/OSPM will provide a more robust functional
145           replacement for legacy configuration and power management
146           interfaces, including the Plug-and-Play BIOS specification (PnP
147           BIOS), the Multi-Processor Specification (MPS), and the Advanced
148           Power Management specification (APM).
149
150           Linux support for ACPI/OSPM is based on Intel Corporation's ACPI
151           Component Architecture (ACPI CA). The latest ACPI CA source code,
152           documentation, debug builds, and implementation status information
153           can be downloaded from:
154           <http://developer.intel.com/technology/iapc/acpi/downloads.htm>.
155
156           The ACPI Sourceforge project may also be of interest:
157           <http://sf.net/projects/acpi/>
158
159 config ACPI_EFI
160         bool
161         depends on !IA64_HP_SIM
162         default y
163
164 config ACPI_INTERPRETER
165         bool
166         depends on !IA64_HP_SIM
167         default y
168
169 config ACPI_KERNEL_CONFIG
170         bool
171         depends on !IA64_HP_SIM
172         default y
173         help
174           If you say `Y' here, Linux's ACPI support will use the
175           hardware-level system descriptions found on IA-64 systems.
176
177 config IA64_BRL_EMU
178         bool
179         depends on ITANIUM
180         default y
181
182 config ITANIUM_BSTEP_SPECIFIC
183         bool "Enable Itanium B-step specific code"
184         depends on ITANIUM
185         help
186           Select this option to build a kernel for an Itanium prototype system
187           with a B-step CPU.  You have a B-step CPU if the "revision" field in
188           /proc/cpuinfo has a value in the range from 1 to 4.
189
190 # align cache-sensitive data to 128 bytes
191 config IA64_L1_CACHE_SHIFT
192         int
193         default "7" if MCKINLEY || ITANIUM && IA64_SGI_SN1
194         default "6" if ITANIUM && !IA64_SGI_SN1
195
196 # align cache-sensitive data to 64 bytes
197 config MCKINLEY_ASTEP_SPECIFIC
198         bool "Enable McKinley A-step specific code"
199         depends on MCKINLEY
200         help
201           Select this option to build a kernel for an IA-64 McKinley prototype
202           system with any A-stepping CPU.
203
204 config MCKINLEY_A0_SPECIFIC
205         bool "Enable McKinley A0/A1-step specific code"
206         depends on MCKINLEY_ASTEP_SPECIFIC
207         help
208           Select this option to build a kernel for an IA-64 McKinley prototype
209           system with an A0 or A1 stepping CPU.
210
211 config NUMA
212         bool "Enable NUMA support" if IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
213         default y if IA64_SGI_SN1 || IA64_SGI_SN2
214         help
215           Say Y to compile the kernel to support NUMA (Non-Uniform Memory
216           Access).  This option is for configuring high-end multiprocessor
217           server systems.  If in doubt, say N.
218
219 choice
220         prompt "Maximum Memory per NUMA Node" if NUMA && IA64_DIG
221         depends on NUMA && IA64_DIG
222         default IA64_NODESIZE_16GB
223
224 config IA64_NODESIZE_16GB
225         bool "16GB"
226
227 config IA64_NODESIZE_64GB
228         bool "64GB"
229
230 config IA64_NODESIZE_256GB
231         bool "256GB"
232
233 endchoice
234
235 config DISCONTIGMEM
236         bool
237         depends on IA64_SGI_SN1 || IA64_SGI_SN2 || (IA64_GENERIC || IA64_DIG || IA64_HP_ZX1) && NUMA
238         default y
239         help
240           Say Y to support efficient handling of discontiguous physical memory,
241           for architectures which are either NUMA (Non-Uniform Memory Access)
242           or have huge holes in the physical address space for other reasons.
243           See <file:Documentation/vm/numa> for more.
244
245 config VIRTUAL_MEM_MAP
246         bool "Enable Virtual Mem Map"
247         depends on !NUMA
248         default y if IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
249         help
250           Say Y to compile the kernel with support for a virtual mem map.
251           This is an alternate method of supporting large holes in the
252           physical address space on non NUMA machines. Since the DISCONTIGMEM
253           option is not supported on machines with the ZX1 chipset, this is
254           the only way of supporting more than 1 Gb of memory on those
255           machines. This code also only takes effect if a memory hole of
256           greater than 1 Gb is found during boot, so it is safe to enable
257           unless you require the DISCONTIGMEM option for your machine. If you
258           are unsure, say Y.
259
260 config IA64_MCA
261         bool "Enable IA-64 Machine Check Abort" if IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
262         default y if IA64_SGI_SN1 || IA64_SGI_SN2
263         help
264           Say Y here to enable machine check support for IA-64.  If you're
265           unsure, answer Y.
266
267 config PM
268         bool
269         depends on IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
270         default y
271         ---help---
272           "Power Management" means that parts of your computer are shut
273           off or put into a power conserving "sleep" mode if they are not
274           being used.  There are two competing standards for doing this: APM
275           and ACPI.  If you want to use either one, say Y here and then also
276           to the requisite support below.
277
278           Power Management is most important for battery powered laptop
279           computers; if you have a laptop, check out the Linux Laptop home
280           page on the WWW at
281           <http://www.cs.utexas.edu/users/kharker/linux-laptop/> and the
282           Battery Powered Linux mini-HOWTO, available from
283           <http://www.tldp.org/docs.html#howto>.
284
285           Note that, even if you say N here, Linux on the x86 architecture
286           will issue the hlt instruction if nothing is to be done, thereby
287           sending the processor to sleep and saving power.
288
289 config IOSAPIC
290         bool
291         depends on IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
292         default y
293
294 config IA64_SGI_SN
295         bool
296         depends on IA64_SGI_SN1 || IA64_SGI_SN2
297         default y
298
299 config IA64_SGI_SN_DEBUG
300         bool "Enable extra debugging code"
301         depends on IA64_SGI_SN1 || IA64_SGI_SN2
302         help
303           Turns on extra debugging code in the SGI SN (Scalable NUMA) platform
304           for IA-64.  Unless you are debugging problems on an SGI SN IA-64 box,
305           say N.
306
307 config IA64_SGI_SN_SIM
308         bool "Enable SGI Medusa Simulator Support"
309         depends on IA64_SGI_SN1 || IA64_SGI_SN2
310         help
311           If you are compiling a kernel that will run under SGI's IA-64
312           simulator (Medusa) then say Y, otherwise say N.
313
314 config IA64_SGI_AUTOTEST
315         bool "Enable autotest (llsc). Option to run cache test instead of booting"
316         depends on IA64_SGI_SN1 || IA64_SGI_SN2
317         help
318           Build a kernel used for hardware validation. If you include the
319           keyword "autotest" on the boot command line, the kernel does NOT boot.
320           Instead, it starts all cpus and runs cache coherency tests instead.
321
322           If unsure, say N.
323
324 config SERIAL_SGI_L1_PROTOCOL
325         bool "Enable protocol mode for the L1 console"
326         depends on IA64_SGI_SN1 || IA64_SGI_SN2
327         help
328           Uses protocol mode instead of raw mode for the level 1 console on the
329           SGI SN (Scalable NUMA) platform for IA-64.  If you are compiling for
330           an SGI SN box then Y is the recommended value, otherwise say N.
331
332 config PERCPU_IRQ
333         bool
334         depends on IA64_SGI_SN1 || IA64_SGI_SN2
335         default y
336
337 config PCIBA
338         tristate "PCIBA support"
339         depends on IA64_SGI_SN1 || IA64_SGI_SN2
340         help
341           IRIX PCIBA-inspired user mode PCI interface for the SGI SN (Scalable
342           NUMA) platform for IA-64.  Unless you are compiling a kernel for an
343           SGI SN IA-64 box, say N.
344
345 # On IA-64, we always want an ELF /proc/kcore.
346 config KCORE_ELF
347         bool
348         default y
349         ---help---
350           If you enabled support for /proc file system then the file
351           /proc/kcore will contain the kernel core image. This can be used
352           in gdb:
353
354           $ cd /usr/src/linux ; gdb vmlinux /proc/kcore
355
356           You have two choices here: ELF and A.OUT. Selecting ELF will make
357           /proc/kcore appear in ELF core format as defined by the Executable
358           and Linking Format specification. Selecting A.OUT will choose the
359           old "a.out" format which may be necessary for some old versions
360           of binutils or on some architectures.
361
362           This is especially useful if you have compiled the kernel with the
363           "-g" option to preserve debugging information. It is mainly used
364           for examining kernel data structures on the live kernel so if you
365           don't understand what this means or are not a kernel hacker, just
366           leave it at its default value ELF.
367
368 config FORCE_MAX_ZONEORDER
369         int
370         default "18"
371
372 config HUGETLB_PAGE
373         bool "IA-64 Huge TLB Page Support"
374
375 choice
376         prompt "IA-64 Huge TLB Page Size"
377         depends on HUGETLB_PAGE
378         default HUGETLB_PAGE_SIZE_16MB
379
380 config HUGETLB_PAGE_SIZE_4GB
381         depends on MCKINLEY
382         bool "4GB"
383
384 config HUGETLB_PAGE_SIZE_256MB
385         bool "256MB"
386
387 config HUGETLB_PAGE_SIZE_64MB
388         bool "64MB"
389
390 config HUGETLB_PAGE_SIZE_16MB
391         bool "16MB"
392
393 config HUGETLB_PAGE_SIZE_4MB
394         bool "4MB"
395
396 config HUGETLB_PAGE_SIZE_1MB
397         bool "1MB"
398
399 config HUGETLB_PAGE_SIZE_256KB
400         bool "256KB"
401
402 endchoice
403
404 config IA64_PAL_IDLE
405         bool "Use PAL_HALT_LIGHT in idle loop"
406         ---help---
407           Say Y here to enable use of PAL_HALT_LIGHT in the cpu_idle loop.
408           This allows the CPU to enter a low power state when idle.  You
409           can enable CONFIG_IA64_PALINFO and check /proc/pal/cpu0/power_info
410           to see the power consumption and latency for this state.  If you're
411           unsure your firmware supports it, answer N.
412
413 config SMP
414         bool "SMP support"
415         ---help---
416           This enables support for systems with more than one CPU. If you have
417           a system with only one CPU say N. If you have a system with more than
418           one CPU, say Y.
419
420           If you say N here, the kernel will run on single and multiprocessor
421           systems, but will use only one CPU of a multiprocessor system. If
422           you say Y here, the kernel will run on many, but not all,
423           singleprocessor system. On a singleprocessor system, the kernel
424           will run faster if you say N here.
425
426           See also the <file:Documentation/smp.tex>,
427           <file:Documentation/smp.txt>, and the SMP-HOWTO available at
428           <http://www.tldp.org/docs.html#howto>.
429
430           If you don't know what to do here, say N.
431
432 config PREEMPT
433         bool "Preemptible Kernel"
434         help
435           This option reduces the latency of the kernel when reacting to
436           real-time or interactive events by allowing a low priority process to
437           be preempted even if it is in kernel mode executing a system call.
438           This allows applications to run more reliably even when the system is
439           under load.
440
441           Say Y here if you are building a kernel for a desktop, embedded
442           or real-time system.  Say N if you are unsure.
443
444 config IA32_SUPPORT
445         bool "Support running of Linux/x86 binaries"
446         help
447           IA-64 processors can execute IA-32 (X86) instructions.  By
448           saying Y here, the kernel will include IA-32 system call
449           emulation support which makes it possible to transparently
450           run IA-32 Linux binaries on an IA-64 Linux system.
451           If in doubt, say Y.
452
453 config COMPAT
454         bool
455         depends on IA32_SUPPORT
456         default y
457
458 config PERFMON
459         bool "Performance monitor support"
460         help
461           Selects whether support for the IA-64 performance monitor hardware
462           is included in the kernel.  This makes some kernel data-structures a
463           little bigger and slows down execution a bit, but it is generally
464           a good idea to turn this on.  If you're unsure, say Y.
465
466 config IA64_PALINFO
467         tristate "/proc/pal support"
468         help
469           If you say Y here, you are able to get PAL (Processor Abstraction
470           Layer) information in /proc/pal.  This contains useful information
471           about the processors in your systems, such as cache and TLB sizes
472           and the PAL firmware version in use.
473
474           To use this option, you have to ensure that the "/proc file system
475           support" (CONFIG_PROC_FS) is enabled, too.
476
477 config EFI_VARS
478         tristate "/proc/efi/vars support"
479         help
480           If you say Y here, you are able to get EFI (Extensible Firmware
481           Interface) variable information in /proc/efi/vars.  You may read,
482           write, create, and destroy EFI variables through this interface.
483
484           To use this option, you have to check that the "/proc file system
485           support" (CONFIG_PROC_FS) is enabled, too.
486
487 config NR_CPUS
488         int "Maximum number of CPUs (2-64)"
489         depends on SMP
490         default "64"
491
492 config BINFMT_ELF
493         tristate "Kernel support for ELF binaries"
494         ---help---
495           ELF (Executable and Linkable Format) is a format for libraries and
496           executables used across different architectures and operating
497           systems. Saying Y here will enable your kernel to run ELF binaries.
498
499           Information about ELF is contained in the ELF HOWTO available from
500           <http://www.tldp.org/docs.html#howto>.
501
502 config BINFMT_MISC
503         tristate "Kernel support for MISC binaries"
504         ---help---
505           If you say Y here, it will be possible to plug wrapper-driven binary
506           formats into the kernel. You will like this especially when you use
507           programs that need an interpreter to run like Java, Python or
508           Emacs-Lisp.  Once you have registered such a binary class with the
509           kernel, you can start one of those programs simply by typing in its
510           name at a shell prompt; Linux will automatically feed it to the
511           correct interpreter.
512
513           You can do other nice things, too. Read the file
514           <file:Documentation/binfmt_misc.txt> to learn how to use this
515           feature, and <file:Documentation/java.txt> for information about how
516           to include Java support.
517
518           You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
519           use this part of the kernel.
520
521           You may say M here for module support and later load the module when
522           you have use for it; the module is called binfmt_misc. If you
523           don't know what to answer at this point, say Y.
524
525 if !IA64_HP_SIM
526
527 source "drivers/acpi/Kconfig"
528
529 config PCI
530         bool "PCI support"
531         help
532           Find out whether you have a PCI motherboard. PCI is the name of a
533           bus system, i.e. the way the CPU talks to the other stuff inside
534           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
535           VESA. If you have PCI, say Y, otherwise N.
536
537           The PCI-HOWTO, available from
538           <http://www.tldp.org/docs.html#howto>, contains valuable
539           information about which PCI hardware does work under Linux and which
540           doesn't.
541
542 source "drivers/pci/Kconfig"
543
544 config HOTPLUG
545         bool "Support for hot-pluggable devices"
546         ---help---
547           Say Y here if you want to plug devices into your computer while
548           the system is running, and be able to use them quickly.  In many
549           cases, the devices can likewise be unplugged at any time too.
550
551           One well known example of this is PCMCIA- or PC-cards, credit-card
552           size devices such as network cards, modems or hard drives which are
553           plugged into slots found on all modern laptop computers.  Another
554           example, used on modern desktops as well as laptops, is USB.
555
556           Enable HOTPLUG and KMOD, and build a modular kernel.  Get agent
557           software (at <http://linux-hotplug.sourceforge.net/>) and install it.
558           Then your kernel will automatically call out to a user mode "policy
559           agent" (/sbin/hotplug) to load modules and set up software needed
560           to use devices as you hotplug them.
561
562 source "drivers/hotplug/Kconfig"
563
564 source "drivers/pcmcia/Kconfig"
565
566 source "drivers/parport/Kconfig"
567
568 endif
569
570 endmenu
571
572 if !IA64_HP_SIM
573
574 source "drivers/mtd/Kconfig"
575
576 source "drivers/pnp/Kconfig"
577
578 source "drivers/block/Kconfig"
579
580 source "drivers/ieee1394/Kconfig"
581
582 source "drivers/message/i2o/Kconfig"
583
584 source "drivers/md/Kconfig"
585
586 source "drivers/message/fusion/Kconfig"
587
588
589 menu "ATA/ATAPI/MFM/RLL support"
590
591 config IDE
592         tristate "ATA/ATAPI/MFM/RLL support"
593         ---help---
594           If you say Y here, your kernel will be able to manage low cost mass
595           storage units such as ATA/(E)IDE and ATAPI units. The most common
596           cases are IDE hard drives and ATAPI CD-ROM drives.
597
598           If your system is pure SCSI and doesn't use these interfaces, you
599           can say N here.
600
601           Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
602           for mass storage units such as hard disks. It was designed by
603           Western Digital and Compaq Computer in 1984. It was then named
604           ST506. Quite a number of disks use the IDE interface.
605
606           AT Attachment (ATA) is the superset of the IDE specifications.
607           ST506 was also called ATA-1.
608
609           Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
610           ATA-3. It provides support for larger disks (up to 8.4GB by means of
611           the LBA standard), more disks (4 instead of 2) and for other mass
612           storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
613           ATA-4 and provides faster (and more CPU friendly) transfer modes
614           than previous PIO (Programmed processor Input/Output) from previous
615           ATA/IDE standards by means of fast DMA controllers.
616
617           ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
618           CD-ROM drives, similar in many respects to the SCSI protocol.
619
620           SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
621           designed in order to prevent data corruption and disk crash by
622           detecting pre hardware failure conditions (heat, access time, and
623           the like...). Disks built since June 1995 may follow this standard.
624           The kernel itself don't manage this; however there are quite a
625           number of user programs such as smart that can query the status of
626           SMART parameters disk.
627
628           If you want to compile this driver as a module ( = code which can be
629           inserted in and removed from the running kernel whenever you want),
630           say M here and read <file:Documentation/modules.txt>. The module
631           will be called ide.
632
633           For further information, please read <file:Documentation/ide.txt>.
634
635           If unsure, say Y.
636
637 source "drivers/ide/Kconfig"
638
639 endmenu
640
641 endif
642
643
644 menu "SCSI support"
645
646 config SCSI
647         tristate "SCSI support"
648         ---help---
649           If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
650           any other SCSI device under Linux, say Y and make sure that you know
651           the name of your SCSI host adapter (the card inside your computer
652           that "speaks" the SCSI protocol, also called SCSI controller),
653           because you will be asked for it.
654
655           You also need to say Y here if you want support for the parallel
656           port version of the 100 MB IOMEGA ZIP drive.
657
658           This driver is also available as a module ( = code which can be
659           inserted in and removed from the running kernel whenever you want).
660           The module will be called scsi_mod.  If you want to compile it as
661           a module, say M here and read <file:Documentation/modules.txt> and
662           <file:Documentation/scsi/scsi.txt>.  However, do not compile this as a
663           module if your root file system (the one containing the directory /)
664           is located on a SCSI device.
665
666 source "drivers/scsi/Kconfig"
667
668 endmenu
669
670 source "net/Kconfig"
671
672
673 if !IA64_HP_SIM
674
675 source "net/ax25/Kconfig"
676
677 source "drivers/isdn/Kconfig"
678
679
680 menu "CD-ROM drivers (not for SCSI or IDE/ATAPI drives)"
681
682 config CD_NO_IDESCSI
683         bool "Support non-SCSI/IDE/ATAPI CDROM drives"
684         ---help---
685           If you have a CD-ROM drive that is neither SCSI nor IDE/ATAPI, say Y
686           here, otherwise N. Read the CD-ROM-HOWTO, available from
687           <http://www.tldp.org/docs.html#howto>.
688
689           Note that the answer to this question doesn't directly affect the
690           kernel: saying N will just cause the configurator to skip all
691           the questions about these CD-ROM drives. If you are unsure what you
692           have, say Y and find out whether you have one of the following
693           drives.
694
695           For each of these drivers, a file Documentation/cdrom/{driver_name}
696           exists. Especially in cases where you do not know exactly which kind
697           of drive you have you should read there. Most of these drivers use a
698           file drivers/cdrom/{driver_name}.h where you can define your
699           interface parameters and switch some internal goodies.
700
701           All these CD-ROM drivers are also usable as a module ( = code which
702           can be inserted in and removed from the running kernel whenever you
703           want). If you want to compile them as module, say M instead of Y and
704           read <file:Documentation/modules.txt>.
705
706           If you want to use any of these CD-ROM drivers, you also have to
707           answer Y or M to "ISO 9660 CD-ROM file system support" below (this
708           answer will get "defaulted" for you if you enable any of the Linux
709           CD-ROM drivers).
710
711 source "drivers/cdrom/Kconfig"
712
713 endmenu
714
715 #
716 # input before char - char/joystick depends on it. As does USB.
717 #
718 source "drivers/input/Kconfig"
719
720 source "drivers/char/Kconfig"
721
722 #source drivers/misc/Config.in
723 source "drivers/media/Kconfig"
724
725 endif
726
727
728 menu "Block devices"
729         depends on IA64_HP_SIM
730
731 config BLK_DEV_LOOP
732         tristate "Loopback device support"
733
734 config BLK_DEV_NBD
735         tristate "Network block device support"
736         depends on NET
737
738 config BLK_DEV_RAM
739         tristate "RAM disk support"
740
741 config BLK_DEV_RAM_SIZE
742         int "Default RAM disk size"
743         depends on BLK_DEV_RAM
744         default "4096"
745
746 endmenu
747
748 source "fs/Kconfig"
749
750 if !IA64_HP_SIM
751
752 source "drivers/video/Kconfig"
753
754 menu "Sound"
755
756 config SOUND
757         tristate "Sound card support"
758         ---help---
759           If you have a sound card in your computer, i.e. if it can say more
760           than an occasional beep, say Y.  Be sure to have all the information
761           about your sound card and its configuration down (I/O port,
762           interrupt and DMA channel), because you will be asked for it.
763
764           You want to read the Sound-HOWTO, available from
765           <http://www.tldp.org/docs.html#howto>. General information about
766           the modular sound system is contained in the files
767           <file:Documentation/sound/Introduction>.  The file
768           <file:Documentation/sound/README.OSS> contains some slightly
769           outdated but still useful information as well.
770
771 source "sound/Kconfig"
772
773 endmenu
774
775 source "drivers/usb/Kconfig"
776
777 source "lib/Kconfig"
778
779 source "net/bluetooth/Kconfig"
780
781 endif
782
783 source "arch/ia64/hp/sim/Kconfig"
784
785
786 menu "Kernel hacking"
787
788 config FSYS
789         bool "Light-weight system-call support (via epc)"
790
791 choice
792         prompt "Physical memory granularity"
793         default IA64_GRANULE_64MB
794
795 config IA64_GRANULE_16MB
796         bool "16MB"
797         help
798           IA-64 identity-mapped regions use a large page size called "granules".
799
800           Select "16MB" for a small granule size.
801           Select "64MB" for a large granule size.  This is the current default.
802
803 config IA64_GRANULE_64MB
804         bool "64MB"
805
806 endchoice
807
808 config DEBUG_KERNEL
809         bool "Kernel debugging"
810         help
811           Say Y here if you are developing drivers or trying to debug and
812           identify kernel problems.
813
814 config KALLSYMS
815         bool "Load all symbols for debugging/kksymoops"
816         depends on DEBUG_KERNEL
817         help
818           Say Y here to let the kernel print out symbolic crash information and
819           symbolic stack backtraces. This increases the size of the kernel
820           somewhat, as all symbols have to be loaded into the kernel image.
821
822 config IA64_PRINT_HAZARDS
823         bool "Print possible IA-64 dependency violations to console"
824         depends on DEBUG_KERNEL
825         help
826           Selecting this option prints more information for Illegal Dependency
827           Faults, that is, for Read-after-Write (RAW), Write-after-Write (WAW),
828           or Write-after-Read (WAR) violations.  This option is ignored if you
829           are compiling for an Itanium A step processor
830           (CONFIG_ITANIUM_ASTEP_SPECIFIC).  If you're unsure, select Y.
831
832 config DISABLE_VHPT
833         bool "Disable VHPT"
834         depends on DEBUG_KERNEL
835         help
836           The Virtual Hash Page Table (VHPT) enhances virtual address
837           translation performance.  Normally you want the VHPT active but you
838           can select this option to disable the VHPT for debugging.  If you're
839           unsure, answer N.
840
841 config MAGIC_SYSRQ
842         bool "Magic SysRq key"
843         depends on DEBUG_KERNEL
844         help
845           If you say Y here, you will have some control over the system even
846           if the system crashes for example during kernel debugging (e.g., you
847           will be able to flush the buffer cache to disk, reboot the system
848           immediately or dump some status information). This is accomplished
849           by pressing various keys while holding SysRq (Alt+PrintScreen). It
850           also works on a serial console (on PC hardware at least), if you
851           send a BREAK and then within 5 seconds a command keypress. The
852           keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
853           unless you really know what this hack does.
854
855 config IA64_EARLY_PRINTK
856         bool "Early printk support"
857         depends on DEBUG_KERNEL
858         help
859           Selecting this option uses the VGA screen or serial console for
860           printk() output before the consoles are initialised.  It is useful
861           for debugging problems early in the boot process, but only if you
862           have a suitable VGA/serial console attached.  If you're unsure,
863           select N.
864
865 config IA64_EARLY_PRINTK_UART
866         bool "Early printk on MMIO serial port"
867         depends on IA64_EARLY_PRINTK
868
869 config IA64_EARLY_PRINTK_UART_BASE
870         hex "UART MMIO base address"
871         depends on IA64_EARLY_PRINTK_UART
872         default "ff5e0000"
873
874 config IA64_EARLY_PRINTK_VGA
875         bool "Early printk on VGA"
876         depends on IA64_EARLY_PRINTK
877
878 config DEBUG_SLAB
879         bool "Debug memory allocations"
880         depends on DEBUG_KERNEL
881         help
882           Say Y here to have the kernel do limited verification on memory
883           allocation as well as poisoning memory on free to catch use of freed
884           memory.
885
886 config DEBUG_SPINLOCK
887         bool "Spinlock debugging"
888         depends on DEBUG_KERNEL
889         help
890           Say Y here and build SMP to catch missing spinlock initialization
891           and certain other kinds of spinlock errors commonly made.  This is
892           best used in conjunction with the NMI watchdog so that spinlock
893           deadlocks are also debuggable.
894
895 config DEBUG_SPINLOCK_SLEEP
896           bool "Sleep-inside-spinlock checking"
897           help
898             If you say Y here, various routines which may sleep will become very
899             noisy if they are called with a spinlock held.
900
901 config IA64_DEBUG_CMPXCHG
902         bool "Turn on compare-and-exchange bug checking (slow!)"
903         depends on DEBUG_KERNEL
904         help
905           Selecting this option turns on bug checking for the IA-64
906           compare-and-exchange instructions.  This is slow!  Itaniums
907           from step B3 or later don't have this problem. If you're unsure,
908           select N.
909
910 config IA64_DEBUG_IRQ
911         bool "Turn on irq debug checks (slow!)"
912         depends on DEBUG_KERNEL
913         help
914           Selecting this option turns on bug checking for the IA-64 irq_save
915           and restore instructions.  It's useful for tracking down spinlock
916           problems, but slow!  If you're unsure, select N.
917
918 endmenu
919
920 source "security/Kconfig"
921
922 source "crypto/Kconfig"
923
924 source "rpmify/Kconfig"
925