Merge of master.kernel.org:/home/rmk/linux-2.6-serial.git
[linux-2.6/kvm.git] / arch / alpha / Kconfig
blob0c79b9d95f74ee4383ed16dd11048ecdf37b3920
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
5 config ALPHA
6         bool
7         default y
8         help
9           The Alpha is a 64-bit general-purpose processor designed and
10           marketed by the Digital Equipment Corporation of blessed memory,
11           now Hewlett-Packard.  The Alpha Linux project has a home page at
12           <http://www.alphalinux.org/>.
14 config 64BIT
15         def_bool y
17 config MMU
18         bool
19         default y
21 config UID16
22         bool
24 config RWSEM_GENERIC_SPINLOCK
25         bool
27 config RWSEM_XCHGADD_ALGORITHM
28         bool
29         default y
31 config GENERIC_CALIBRATE_DELAY
32         bool
33         default y
35 config GENERIC_ISA_DMA
36         bool
37         default y
39 config GENERIC_IOMAP
40         bool
41         default n
43 source "init/Kconfig"
46 menu "System setup"
48 choice
49         prompt "Alpha system type"
50         default ALPHA_GENERIC
51         ---help---
52           This is the system type of your hardware.  A "generic" kernel will
53           run on any supported Alpha system. However, if you configure a
54           kernel for your specific system, it will be faster and smaller.
56           To find out what type of Alpha system you have, you may want to
57           check out the Linux/Alpha FAQ, accessible on the WWW from
58           <http://www.alphalinux.org/>. In summary:
60           Alcor/Alpha-XLT     AS 600
61           Alpha-XL            XL-233, XL-266
62           AlphaBook1          Alpha laptop
63           Avanti              AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
64           Cabriolet           AlphaPC64, AlphaPCI64
65           DP264               DP264
66           EB164               EB164 21164 evaluation board
67           EB64+               EB64+ 21064 evaluation board
68           EB66                EB66 21066 evaluation board
69           EB66+               EB66+ 21066 evaluation board
70           Jensen              DECpc 150, DEC 2000 model 300,
71           DEC 2000 model 500
72           LX164               AlphaPC164-LX
73           Lynx                AS 2100A
74           Miata               Personal Workstation 433a, 433au, 500a,
75           500au, 600a, or 600au
76           Marvel              AlphaServer ES47 / ES80 / GS1280
77           Mikasa              AS 1000
78           Noname              AXPpci33, UDB (Multia)
79           Noritake            AS 1000A, AS 600A, AS 800
80           PC164               AlphaPC164
81           Rawhide             AS 1200, AS 4000, AS 4100
82           Ruffian             RPX164-2, AlphaPC164-UX, AlphaPC164-BX
83           SX164               AlphaPC164-SX
84           Sable               AS 2000, AS 2100
85           Shark               DS 20L
86           Takara              Takara
87           Titan               AlphaServer ES45 / DS25
88           Wildfire            AlphaServer GS 40/80/160/320
90           If you don't know what to do, choose "generic".
92 config ALPHA_GENERIC
93         bool "Generic"
94         help
95           A generic kernel will run on all supported Alpha hardware.
97 config ALPHA_ALCOR
98         bool "Alcor/Alpha-XLT"
99         help
100           For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data
101           slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O
102           Address, CIA) - a 383 pin plastic PGA).  It provides a DRAM
103           controller (256-bit memory bus) and a PCI interface.  It also does
104           all the work required to support an external Bcache and to maintain
105           memory coherence when a PCI device DMAs into (or out of) memory.
107 config ALPHA_XL
108         bool "Alpha-XL"
109         help
110           XL-233 and XL-266-based Alpha systems.
112 config ALPHA_BOOK1
113         bool "AlphaBook1"
114         help
115           Dec AlphaBook1/Burns Alpha-based laptops.
117 config ALPHA_AVANTI_CH
118         bool "Avanti"
120 config ALPHA_CABRIOLET
121         bool "Cabriolet"
122         help
123           Cabriolet AlphaPC64, AlphaPCI64 systems.  Derived from EB64+ but now
124           baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA
125           slots, 4 PCI slots (one pair are on a shared slot), uses plug-in
126           Bcache SIMMs.  Requires power supply with 3.3V output.
128 config ALPHA_DP264
129         bool "DP264"
130         help
131           Various 21264 systems with the tsunami core logic chipset.
132           API Networks: 264DP, UP2000(+), CS20;
133           Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40.
135 config ALPHA_EB164
136         bool "EB164"
137         help
138           EB164 21164 evaluation board from DEC.  Uses 21164 and ALCOR.  Has
139           ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is
140           shared with an ISA slot) and 2 32-bit PCI slots.  Uses plus-in
141           Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD,
142           MOUSE (PS2 style), RTC/NVRAM.  Boot ROM is Flash.  PC-AT-sized
143           motherboard.  Requires power supply with 3.3V output.
145 config ALPHA_EB64P_CH
146         bool "EB64+"
148 config ALPHA_EB66
149         bool "EB66"
150         help
151           A Digital DS group board.  Uses 21066 or 21066A.  I/O sub-system is
152           identical to EB64+.  Baby PC-AT size.  Runs from standard PC power
153           supply.  The EB66 schematic was published as a marketing poster
154           advertising the 21066 as "the first microprocessor in the world with
155           embedded PCI".
157 config ALPHA_EB66P
158         bool "EB66+"
159         help
160           Later variant of the EB66 board.
162 config ALPHA_EIGER
163         bool "Eiger"
164         help
165           Apparently an obscure OEM single-board computer based on the
166           Typhoon/Tsunami chipset family. Information on it is scanty.
168 config ALPHA_JENSEN
169         bool "Jensen"
170         help
171           DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one
172           of the first-generation Alpha systems. A number of these systems
173           seem to be available on the second- hand market. The Jensen is a
174           floor-standing tower system which originally used a 150MHz 21064 It
175           used programmable logic to interface a 486 EISA I/O bridge to the
176           CPU.
178 config ALPHA_LX164
179         bool "LX164"
180         help
181           A technical overview of this board is available at
182           <http://www.unix-ag.org/Linux-Alpha/Architectures/LX164.html>.
184 config ALPHA_LYNX
185         bool "Lynx"
186         help
187           AlphaServer 2100A-based systems.
189 config ALPHA_MARVEL
190         bool "Marvel"
191         help
192           AlphaServer ES47 / ES80 / GS1280 based on EV7.
194 config ALPHA_MIATA
195         bool "Miata"
196         help
197           The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a,
198           or 600au).  There is an Installation HOWTO for this hardware at
199           <http://eijk.homelinux.org/~stefan/miata.html>.
201 config ALPHA_MIKASA
202         bool "Mikasa"
203         help
204           AlphaServer 1000-based Alpha systems.
206 config ALPHA_NAUTILUS
207         bool "Nautilus"
208         help
209           Alpha systems based on the AMD 751 & ALI 1543C chipsets.
211 config ALPHA_NONAME_CH
212         bool "Noname"
214 config ALPHA_NORITAKE
215         bool "Noritake"
216         help
217           AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based
218           systems.
220 config ALPHA_PC164
221         bool "PC164"
223 config ALPHA_P2K
224         bool "Platform2000"
226 config ALPHA_RAWHIDE
227         bool "Rawhide"
228         help
229           AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines.
230           See HOWTO at
231           <http://www.alphalinux.org/docs/rawhide/4100_install.shtml>.
233 config ALPHA_RUFFIAN
234         bool "Ruffian"
235         help
236           Samsung APC164UX.  There is a page on known problems and workarounds
237           at <http://www.alphalinux.org/faq/FAQ-11.html>.
239 config ALPHA_RX164
240         bool "RX164"
242 config ALPHA_SX164
243         bool "SX164"
245 config ALPHA_SABLE
246         bool "Sable"
247         help
248           Digital AlphaServer 2000 and 2100-based systems.
250 config ALPHA_SHARK
251         bool "Shark"
253 config ALPHA_TAKARA
254         bool "Takara"
255         help
256           Alpha 11164-based OEM single-board computer.
258 config ALPHA_TITAN
259         bool "Titan"
260         help
261           AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset.
263 config ALPHA_WILDFIRE
264         bool "Wildfire"
265         help
266           AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
268 endchoice
270 # clear all implied options (don't want default values for those):
271 # Most of these machines have ISA slots; not exactly sure which don't,
272 # and this doesn't activate hordes of code, so do it always.
273 config ISA
274         bool
275         default y
276         help
277           Find out whether you have ISA slots on your motherboard.  ISA is the
278           name of a bus system, i.e. the way the CPU talks to the other stuff
279           inside your box.  Other bus systems are PCI, EISA, MicroChannel
280           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
281           newer boards don't support it.  If you have ISA, say Y, otherwise N.
283 config PCI
284         bool
285         depends on !ALPHA_JENSEN
286         default y
287         help
288           Find out whether you have a PCI motherboard. PCI is the name of a
289           bus system, i.e. the way the CPU talks to the other stuff inside
290           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
291           VESA. If you have PCI, say Y, otherwise N.
293           The PCI-HOWTO, available from
294           <http://www.tldp.org/docs.html#howto>, contains valuable
295           information about which PCI hardware does work under Linux and which
296           doesn't.
298 config PCI_DOMAINS
299         bool
300         default y
302 config ALPHA_CORE_AGP
303         bool
304         depends on ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL
305         default y
307 config ALPHA_NONAME
308         bool
309         depends on ALPHA_BOOK1 || ALPHA_NONAME_CH
310         default y
311         help
312           The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia
313           UDB).  This design was produced by Digital's Technical OEM (TOEM)
314           group. It uses the 21066 processor running at 166MHz or 233MHz. It
315           is a baby-AT size, and runs from a standard PC power supply. It has
316           5 ISA slots and 3 PCI slots (one pair are a shared slot). There are
317           2 versions, with either PS/2 or large DIN connectors for the
318           keyboard.
320 config ALPHA_EV4
321         bool
322         depends on ALPHA_JENSEN || (ALPHA_SABLE && !ALPHA_GAMMA) || ALPHA_LYNX || ALPHA_NORITAKE && !ALPHA_PRIMO || ALPHA_MIKASA && !ALPHA_PRIMO || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL || ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
323         default y if !ALPHA_LYNX
325 config ALPHA_LCA
326         bool
327         depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
328         default y
330 config ALPHA_APECS
331         bool
332         depends on !ALPHA_PRIMO && (ALPHA_NORITAKE || ALPHA_MIKASA) || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL
333         default y
335 config ALPHA_EB64P
336         bool
337         depends on ALPHA_CABRIOLET || ALPHA_EB64P_CH
338         default y
339         help
340           Uses 21064 or 21064A and APECs.  Has ISA and PCI expansion (3 ISA,
341           2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs.
342           ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI
343           (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style),
344           SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM.  PC-AT size.
345           Runs from standard PC power supply.
347 config ALPHA_EV5
348         bool "EV5 CPU(s) (model 5/xxx)?" if ALPHA_LYNX
349         default y if ALPHA_RX164 || ALPHA_RAWHIDE || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_SABLE && ALPHA_GAMMA || ALPHA_NORITAKE && ALPHA_PRIMO || ALPHA_MIKASA && ALPHA_PRIMO || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR
351 config ALPHA_EV4
352         bool
353         default y if ALPHA_LYNX && !ALPHA_EV5
355 config ALPHA_CIA
356         bool
357         depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_NORITAKE && ALPHA_PRIMO || ALPHA_MIKASA && ALPHA_PRIMO || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR
358         default y
360 config ALPHA_EV56
361         bool "EV56 CPU (speed >= 366MHz)?" if ALPHA_ALCOR
362         default y if ALPHA_RX164 || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_PC164 || ALPHA_TAKARA
364 config ALPHA_EV56
365         prompt "EV56 CPU (speed >= 333MHz)?"
366         depends on ALPHA_NORITAKE && ALPHA_PRIMO
368 config ALPHA_EV56
369         prompt "EV56 CPU (speed >= 400MHz)?"
370         depends on ALPHA_RAWHIDE
372 config ALPHA_PRIMO
373         bool "EV5 CPU daughtercard (model 5/xxx)?"
374         depends on ALPHA_NORITAKE || ALPHA_MIKASA
375         help
376           Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx.
378 config ALPHA_GAMMA
379         bool "EV5 CPU(s) (model 5/xxx)?"
380         depends on ALPHA_SABLE
381         help
382           Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx.
384 config ALPHA_GAMMA
385         bool
386         depends on ALPHA_LYNX
387         default y
389 config ALPHA_T2
390         bool
391         depends on ALPHA_SABLE || ALPHA_LYNX
392         default y
394 config ALPHA_PYXIS
395         bool
396         depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN
397         default y
399 config ALPHA_EV6
400         bool
401         depends on ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER || ALPHA_MARVEL
402         default y
404 config ALPHA_TSUNAMI
405         bool
406         depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER
407         default y
409 config ALPHA_EV67
410         bool "EV67 (or later) CPU (speed > 600MHz)?" if ALPHA_DP264 || ALPHA_EIGER
411         default y if ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
412         help
413           Is this a machine based on the EV67 core?  If in doubt, select N here
414           and the machine will be treated as an EV6.
416 config ALPHA_EV7
417         bool
418         depends on ALPHA_MARVEL
419         default y
421 config ALPHA_MCPCIA
422         bool
423         depends on ALPHA_RAWHIDE
424         default y
426 config ALPHA_POLARIS
427         bool
428         depends on ALPHA_RX164
429         default y
431 config ALPHA_IRONGATE
432         bool
433         depends on ALPHA_NAUTILUS
434         default y
436 config ALPHA_AVANTI
437         bool
438         depends on ALPHA_XL || ALPHA_AVANTI_CH
439         default y
440         help
441           Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based
442           Alphas. Info at
443           <http://www.unix-ag.org/Linux-Alpha/Architectures/Avanti.html>.
445 config ALPHA_BROKEN_IRQ_MASK
446         bool
447         depends on ALPHA_GENERIC || ALPHA_PC164
448         default y
450 config ALPHA_SRM
451         bool "Use SRM as bootloader" if ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_NAUTILUS || ALPHA_NONAME
452         default y if ALPHA_JENSEN || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_DP264 || ALPHA_RAWHIDE || ALPHA_EIGER || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
453         ---help---
454           There are two different types of booting firmware on Alphas: SRM,
455           which is command line driven, and ARC, which uses menus and arrow
456           keys. Details about the Linux/Alpha booting process are contained in
457           the Linux/Alpha FAQ, accessible on the WWW from
458           <http://www.alphalinux.org/>.
460           The usual way to load Linux on an Alpha machine is to use MILO
461           (a bootloader that lets you pass command line parameters to the
462           kernel just like lilo does for the x86 architecture) which can be
463           loaded either from ARC or can be installed directly as a permanent
464           firmware replacement from floppy (which requires changing a certain
465           jumper on the motherboard). If you want to do either of these, say N
466           here. If MILO doesn't work on your system (true for Jensen
467           motherboards), you can bypass it altogether and boot Linux directly
468           from an SRM console; say Y here in order to do that. Note that you
469           won't be able to boot from an IDE disk using SRM.
471           If unsure, say N.
473 config EISA
474         bool
475         depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE
476         default y
478 config SMP
479         bool "Symmetric multi-processing support"
480         depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL
481         ---help---
482           This enables support for systems with more than one CPU. If you have
483           a system with only one CPU, like most personal computers, say N. If
484           you have a system with more than one CPU, say Y.
486           If you say N here, the kernel will run on single and multiprocessor
487           machines, but will use only one CPU of a multiprocessor machine. If
488           you say Y here, the kernel will run on many, but not all,
489           singleprocessor machines. On a singleprocessor machine, the kernel
490           will run faster if you say N here.
492           See also the <file:Documentation/smp.txt>, and the SMP-HOWTO
493           available at <http://www.tldp.org/docs.html#howto>.
495           If you don't know what to do here, say N.
497 config HAVE_DEC_LOCK
498         bool
499         depends on SMP
500         default y
502 config NR_CPUS
503         int "Maximum number of CPUs (2-64)"
504         range 2 64
505         depends on SMP
506         default "64"
508 config DISCONTIGMEM
509         bool "Discontiguous Memory Support (EXPERIMENTAL)"
510         depends on EXPERIMENTAL
511         help
512           Say Y to upport efficient handling of discontiguous physical memory,
513           for architectures which are either NUMA (Non-Uniform Memory Access)
514           or have huge holes in the physical address space for other reasons.
515           See <file:Documentation/vm/numa> for more.
517 config NUMA
518         bool "NUMA Support (EXPERIMENTAL)"
519         depends on DISCONTIGMEM
520         help
521           Say Y to compile the kernel to support NUMA (Non-Uniform Memory
522           Access).  This option is for configuring high-end multiprocessor
523           server machines.  If in doubt, say N.
525 # LARGE_VMALLOC is racy, if you *really* need it then fix it first
526 config ALPHA_LARGE_VMALLOC
527         bool
528         ---help---
529           Process creation and other aspects of virtual memory management can
530           be streamlined if we restrict the kernel to one PGD for all vmalloc
531           allocations.  This equates to about 8GB.
533           Under normal circumstances, this is so far and above what is needed
534           as to be laughable.  However, there are certain applications (such
535           as benchmark-grade in-kernel web serving) that can make use of as
536           much vmalloc space as is available.
538           Say N unless you know you need gobs and gobs of vmalloc space.
540 config VERBOSE_MCHECK
541         bool "Verbose Machine Checks"
543 config VERBOSE_MCHECK_ON
544         int "Verbose Printing Mode (0=off, 1=on, 2=all)"
545         depends on VERBOSE_MCHECK
546         default 1
547         ---help---
548           This option allows the default printing mode to be set, and then
549           possibly overridden by a boot command argument.
551           For example, if one wanted the option of printing verbose
552           machine checks, but wanted the default to be as if verbose
553           machine check printing was turned off, then one would choose
554           the printing mode to be 0. Then, upon reboot, one could add
555           the boot command line "verbose_mcheck=1" to get the normal
556           verbose machine check printing, or "verbose_mcheck=2" to get
557           the maximum information available.
559           Take the default (1) unless you want more control or more info.
561 source "drivers/pci/Kconfig"
562 source "drivers/eisa/Kconfig"
564 source "drivers/pcmcia/Kconfig"
566 config SRM_ENV
567         tristate "SRM environment through procfs"
568         depends on PROC_FS
569         ---help---
570           If you enable this option, a subdirectory inside /proc called
571           /proc/srm_environment will give you access to the all important
572           SRM environment variables (those which have a name) and also
573           to all others (by their internal number).
575           SRM is something like a BIOS for Alpha machines. There are some
576           other such BIOSes, like AlphaBIOS, which this driver cannot
577           support (hey, that's not SRM!).
579           Despite the fact that this driver doesn't work on all Alphas (but
580           only on those which have SRM as their firmware), it's save to
581           build it even if your particular machine doesn't know about SRM
582           (or if you intend to compile a generic kernel). It will simply
583           not create those subdirectory in /proc (and give you some warning,
584           of course).
586           This driver is also available as a module and will be called
587           srm_env then.
589 source "fs/Kconfig.binfmt"
591 endmenu
593 source "drivers/Kconfig"
595 source "fs/Kconfig"
597 source "arch/alpha/oprofile/Kconfig"
599 source "arch/alpha/Kconfig.debug"
601 source "security/Kconfig"
603 source "crypto/Kconfig"
605 source "lib/Kconfig"