Linux-2.6.12-rc2
[pandora-kernel.git] / arch / alpha / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
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/>.
13
14 config 64BIT
15         def_bool y
16
17 config MMU
18         bool
19         default y
20
21 config UID16
22         bool
23
24 config RWSEM_GENERIC_SPINLOCK
25         bool
26
27 config RWSEM_XCHGADD_ALGORITHM
28         bool
29         default y
30
31 config GENERIC_CALIBRATE_DELAY
32         bool
33         default y
34
35 config GENERIC_ISA_DMA
36         bool
37         default y
38
39 config GENERIC_IOMAP
40         bool
41         default n
42
43 source "init/Kconfig"
44
45
46 menu "System setup"
47
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.
55
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:
59
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
89
90           If you don't know what to do, choose "generic".
91
92 config ALPHA_GENERIC
93         bool "Generic"
94         help
95           A generic kernel will run on all supported Alpha hardware.
96
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.
106
107 config ALPHA_XL
108         bool "Alpha-XL"
109         help
110           XL-233 and XL-266-based Alpha systems.
111
112 config ALPHA_BOOK1
113         bool "AlphaBook1"
114         help
115           Dec AlphaBook1/Burns Alpha-based laptops.
116
117 config ALPHA_AVANTI_CH
118         bool "Avanti"
119
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.
127
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.
134
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.
144
145 config ALPHA_EB64P_CH
146         bool "EB64+"
147
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".
156
157 config ALPHA_EB66P
158         bool "EB66+"
159         help
160           Later variant of the EB66 board.
161
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.
167
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.
177
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>.
183
184 config ALPHA_LYNX
185         bool "Lynx"
186         help
187           AlphaServer 2100A-based systems.
188
189 config ALPHA_MARVEL
190         bool "Marvel"
191         help
192           AlphaServer ES47 / ES80 / GS1280 based on EV7.
193
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>.
200
201 config ALPHA_MIKASA
202         bool "Mikasa"
203         help
204           AlphaServer 1000-based Alpha systems.
205
206 config ALPHA_NAUTILUS
207         bool "Nautilus"
208         help
209           Alpha systems based on the AMD 751 & ALI 1543C chipsets.
210
211 config ALPHA_NONAME_CH
212         bool "Noname"
213
214 config ALPHA_NORITAKE
215         bool "Noritake"
216         help
217           AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based
218           systems.
219
220 config ALPHA_PC164
221         bool "PC164"
222
223 config ALPHA_P2K
224         bool "Platform2000"
225
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>.
232
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>.
238
239 config ALPHA_RX164
240         bool "RX164"
241
242 config ALPHA_SX164
243         bool "SX164"
244
245 config ALPHA_SABLE
246         bool "Sable"
247         help
248           Digital AlphaServer 2000 and 2100-based systems.
249
250 config ALPHA_SHARK
251         bool "Shark"
252
253 config ALPHA_TAKARA
254         bool "Takara"
255         help
256           Alpha 11164-based OEM single-board computer.
257
258 config ALPHA_TITAN
259         bool "Titan"
260         help
261           AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset.
262
263 config ALPHA_WILDFIRE
264         bool "Wildfire"
265         help
266           AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
267
268 endchoice
269
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.
282
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.
292
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.
297
298 config PCI_DOMAINS
299         bool
300         default y
301
302 config ALPHA_CORE_AGP
303         bool
304         depends on ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL
305         default y
306
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.
319
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
324
325 config ALPHA_LCA
326         bool
327         depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
328         default y
329
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
334
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.
346
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
350
351 config ALPHA_EV4
352         bool
353         default y if ALPHA_LYNX && !ALPHA_EV5
354
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
359
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
363
364 config ALPHA_EV56
365         prompt "EV56 CPU (speed >= 333MHz)?"
366         depends on ALPHA_NORITAKE && ALPHA_PRIMO
367
368 config ALPHA_EV56
369         prompt "EV56 CPU (speed >= 400MHz)?"
370         depends on ALPHA_RAWHIDE
371
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.
377
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.
383
384 config ALPHA_GAMMA
385         bool
386         depends on ALPHA_LYNX
387         default y
388
389 config ALPHA_T2
390         bool
391         depends on ALPHA_SABLE || ALPHA_LYNX
392         default y
393
394 config ALPHA_PYXIS
395         bool
396         depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN
397         default y
398
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
403
404 config ALPHA_TSUNAMI
405         bool
406         depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER
407         default y
408
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.
415
416 config ALPHA_EV7
417         bool
418         depends on ALPHA_MARVEL
419         default y
420
421 config ALPHA_MCPCIA
422         bool
423         depends on ALPHA_RAWHIDE
424         default y
425
426 config ALPHA_POLARIS
427         bool
428         depends on ALPHA_RX164
429         default y
430
431 config ALPHA_IRONGATE
432         bool
433         depends on ALPHA_NAUTILUS
434         default y
435
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>.
444
445 config ALPHA_BROKEN_IRQ_MASK
446         bool
447         depends on ALPHA_GENERIC || ALPHA_PC164
448         default y
449
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/>.
459
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.
470
471           If unsure, say N.
472
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
477
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.
485
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.
491
492           See also the <file:Documentation/smp.txt>, and the SMP-HOWTO
493           available at <http://www.tldp.org/docs.html#howto>.
494
495           If you don't know what to do here, say N.
496
497 config HAVE_DEC_LOCK
498         bool
499         depends on SMP
500         default y
501
502 config NR_CPUS
503         int "Maximum number of CPUs (2-64)"
504         range 2 64
505         depends on SMP
506         default "64"
507
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.
516
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.
524
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.
532
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.
537
538           Say N unless you know you need gobs and gobs of vmalloc space.
539
540 config VERBOSE_MCHECK
541         bool "Verbose Machine Checks"
542
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.
550
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.
558
559           Take the default (1) unless you want more control or more info.
560
561 source "drivers/pci/Kconfig"
562 source "drivers/eisa/Kconfig"
563
564 source "drivers/pcmcia/Kconfig"
565
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).
574
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!).
578
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).
585
586           This driver is also available as a module and will be called
587           srm_env then.
588
589 source "fs/Kconfig.binfmt"
590
591 endmenu
592
593 source "drivers/Kconfig"
594
595 source "fs/Kconfig"
596
597 source "arch/alpha/oprofile/Kconfig"
598
599 source "arch/alpha/Kconfig.debug"
600
601 source "security/Kconfig"
602
603 source "crypto/Kconfig"
604
605 source "lib/Kconfig"
606