2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
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/>.
21 config RWSEM_GENERIC_SPINLOCK
24 config RWSEM_XCHGADD_ALGORITHM
28 config GENERIC_CALIBRATE_DELAY
32 config GENERIC_ISA_DMA
40 config GENERIC_HARDIRQS
44 config GENERIC_IRQ_PROBE
48 config AUTO_IRQ_AFFINITY
59 prompt "Alpha system type"
62 This is the system type of your hardware. A "generic" kernel will
63 run on any supported Alpha system. However, if you configure a
64 kernel for your specific system, it will be faster and smaller.
66 To find out what type of Alpha system you have, you may want to
67 check out the Linux/Alpha FAQ, accessible on the WWW from
68 <http://www.alphalinux.org/>. In summary:
70 Alcor/Alpha-XLT AS 600
71 Alpha-XL XL-233, XL-266
72 AlphaBook1 Alpha laptop
73 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
74 Cabriolet AlphaPC64, AlphaPCI64
76 EB164 EB164 21164 evaluation board
77 EB64+ EB64+ 21064 evaluation board
78 EB66 EB66 21066 evaluation board
79 EB66+ EB66+ 21066 evaluation board
80 Jensen DECpc 150, DEC 2000 model 300,
84 Miata Personal Workstation 433a, 433au, 500a,
86 Marvel AlphaServer ES47 / ES80 / GS1280
88 Noname AXPpci33, UDB (Multia)
89 Noritake AS 1000A, AS 600A, AS 800
91 Rawhide AS 1200, AS 4000, AS 4100
92 Ruffian RPX164-2, AlphaPC164-UX, AlphaPC164-BX
94 Sable AS 2000, AS 2100
97 Titan AlphaServer ES45 / DS25
98 Wildfire AlphaServer GS 40/80/160/320
100 If you don't know what to do, choose "generic".
105 A generic kernel will run on all supported Alpha hardware.
108 bool "Alcor/Alpha-XLT"
110 For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data
111 slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O
112 Address, CIA) - a 383 pin plastic PGA). It provides a DRAM
113 controller (256-bit memory bus) and a PCI interface. It also does
114 all the work required to support an external Bcache and to maintain
115 memory coherence when a PCI device DMAs into (or out of) memory.
120 XL-233 and XL-266-based Alpha systems.
125 Dec AlphaBook1/Burns Alpha-based laptops.
127 config ALPHA_AVANTI_CH
130 config ALPHA_CABRIOLET
133 Cabriolet AlphaPC64, AlphaPCI64 systems. Derived from EB64+ but now
134 baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA
135 slots, 4 PCI slots (one pair are on a shared slot), uses plug-in
136 Bcache SIMMs. Requires power supply with 3.3V output.
141 Various 21264 systems with the tsunami core logic chipset.
142 API Networks: 264DP, UP2000(+), CS20;
143 Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40.
148 EB164 21164 evaluation board from DEC. Uses 21164 and ALCOR. Has
149 ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is
150 shared with an ISA slot) and 2 32-bit PCI slots. Uses plus-in
151 Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD,
152 MOUSE (PS2 style), RTC/NVRAM. Boot ROM is Flash. PC-AT-sized
153 motherboard. Requires power supply with 3.3V output.
155 config ALPHA_EB64P_CH
161 A Digital DS group board. Uses 21066 or 21066A. I/O sub-system is
162 identical to EB64+. Baby PC-AT size. Runs from standard PC power
163 supply. The EB66 schematic was published as a marketing poster
164 advertising the 21066 as "the first microprocessor in the world with
170 Later variant of the EB66 board.
175 Apparently an obscure OEM single-board computer based on the
176 Typhoon/Tsunami chipset family. Information on it is scanty.
181 DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one
182 of the first-generation Alpha systems. A number of these systems
183 seem to be available on the second- hand market. The Jensen is a
184 floor-standing tower system which originally used a 150MHz 21064 It
185 used programmable logic to interface a 486 EISA I/O bridge to the
191 A technical overview of this board is available at
192 <http://www.unix-ag.org/Linux-Alpha/Architectures/LX164.html>.
197 AlphaServer 2100A-based systems.
202 AlphaServer ES47 / ES80 / GS1280 based on EV7.
207 The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a,
208 or 600au). There is an Installation HOWTO for this hardware at
209 <http://eijk.homelinux.org/~stefan/miata.html>.
214 AlphaServer 1000-based Alpha systems.
216 config ALPHA_NAUTILUS
219 Alpha systems based on the AMD 751 & ALI 1543C chipsets.
221 config ALPHA_NONAME_CH
224 config ALPHA_NORITAKE
227 AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based
239 AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines.
241 <http://www.alphalinux.org/docs/rawhide/4100_install.shtml>.
246 Samsung APC164UX. There is a page on known problems and workarounds
247 at <http://www.alphalinux.org/faq/FAQ-11.html>.
258 Digital AlphaServer 2000 and 2100-based systems.
266 Alpha 11164-based OEM single-board computer.
271 AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset.
273 config ALPHA_WILDFIRE
276 AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
280 # clear all implied options (don't want default values for those):
281 # Most of these machines have ISA slots; not exactly sure which don't,
282 # and this doesn't activate hordes of code, so do it always.
287 Find out whether you have ISA slots on your motherboard. ISA is the
288 name of a bus system, i.e. the way the CPU talks to the other stuff
289 inside your box. Other bus systems are PCI, EISA, MicroChannel
290 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
291 newer boards don't support it. If you have ISA, say Y, otherwise N.
299 depends on !ALPHA_JENSEN
302 Find out whether you have a PCI motherboard. PCI is the name of a
303 bus system, i.e. the way the CPU talks to the other stuff inside
304 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
305 VESA. If you have PCI, say Y, otherwise N.
307 The PCI-HOWTO, available from
308 <http://www.tldp.org/docs.html#howto>, contains valuable
309 information about which PCI hardware does work under Linux and which
316 config ALPHA_CORE_AGP
318 depends on ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL
323 depends on ALPHA_BOOK1 || ALPHA_NONAME_CH
326 The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia
327 UDB). This design was produced by Digital's Technical OEM (TOEM)
328 group. It uses the 21066 processor running at 166MHz or 233MHz. It
329 is a baby-AT size, and runs from a standard PC power supply. It has
330 5 ISA slots and 3 PCI slots (one pair are a shared slot). There are
331 2 versions, with either PS/2 or large DIN connectors for the
336 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
337 default y if !ALPHA_LYNX
341 depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
346 depends on !ALPHA_PRIMO && (ALPHA_NORITAKE || ALPHA_MIKASA) || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL
351 depends on ALPHA_CABRIOLET || ALPHA_EB64P_CH
354 Uses 21064 or 21064A and APECs. Has ISA and PCI expansion (3 ISA,
355 2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs.
356 ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI
357 (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style),
358 SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM. PC-AT size.
359 Runs from standard PC power supply.
362 bool "EV5 CPU(s) (model 5/xxx)?" if ALPHA_LYNX
363 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
367 default y if ALPHA_LYNX && !ALPHA_EV5
371 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
375 bool "EV56 CPU (speed >= 366MHz)?" if ALPHA_ALCOR
376 default y if ALPHA_RX164 || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_PC164 || ALPHA_TAKARA
379 prompt "EV56 CPU (speed >= 333MHz)?"
380 depends on ALPHA_NORITAKE && ALPHA_PRIMO
383 prompt "EV56 CPU (speed >= 400MHz)?"
384 depends on ALPHA_RAWHIDE
387 bool "EV5 CPU daughtercard (model 5/xxx)?"
388 depends on ALPHA_NORITAKE || ALPHA_MIKASA
390 Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx.
393 bool "EV5 CPU(s) (model 5/xxx)?"
394 depends on ALPHA_SABLE
396 Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx.
400 depends on ALPHA_LYNX
405 depends on ALPHA_SABLE || ALPHA_LYNX
410 depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN
415 depends on ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER || ALPHA_MARVEL
420 depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER
424 bool "EV67 (or later) CPU (speed > 600MHz)?" if ALPHA_DP264 || ALPHA_EIGER
425 default y if ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
427 Is this a machine based on the EV67 core? If in doubt, select N here
428 and the machine will be treated as an EV6.
432 depends on ALPHA_MARVEL
437 depends on ALPHA_RAWHIDE
442 depends on ALPHA_RX164
445 config ALPHA_IRONGATE
447 depends on ALPHA_NAUTILUS
452 depends on ALPHA_XL || ALPHA_AVANTI_CH
455 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based
457 <http://www.unix-ag.org/Linux-Alpha/Architectures/Avanti.html>.
459 config ALPHA_BROKEN_IRQ_MASK
461 depends on ALPHA_GENERIC || ALPHA_PC164
465 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
466 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
468 There are two different types of booting firmware on Alphas: SRM,
469 which is command line driven, and ARC, which uses menus and arrow
470 keys. Details about the Linux/Alpha booting process are contained in
471 the Linux/Alpha FAQ, accessible on the WWW from
472 <http://www.alphalinux.org/>.
474 The usual way to load Linux on an Alpha machine is to use MILO
475 (a bootloader that lets you pass command line parameters to the
476 kernel just like lilo does for the x86 architecture) which can be
477 loaded either from ARC or can be installed directly as a permanent
478 firmware replacement from floppy (which requires changing a certain
479 jumper on the motherboard). If you want to do either of these, say N
480 here. If MILO doesn't work on your system (true for Jensen
481 motherboards), you can bypass it altogether and boot Linux directly
482 from an SRM console; say Y here in order to do that. Note that you
483 won't be able to boot from an IDE disk using SRM.
489 depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE
492 config ARCH_MAY_HAVE_PC_FDC
496 bool "Symmetric multi-processing support"
497 depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL
499 This enables support for systems with more than one CPU. If you have
500 a system with only one CPU, like most personal computers, say N. If
501 you have a system with more than one CPU, say Y.
503 If you say N here, the kernel will run on single and multiprocessor
504 machines, but will use only one CPU of a multiprocessor machine. If
505 you say Y here, the kernel will run on many, but not all,
506 singleprocessor machines. On a singleprocessor machine, the kernel
507 will run faster if you say N here.
509 See also the <file:Documentation/smp.txt>, and the SMP-HOWTO
510 available at <http://www.tldp.org/docs.html#howto>.
512 If you don't know what to do here, say N.
520 int "Maximum number of CPUs (2-64)"
525 config ARCH_DISCONTIGMEM_ENABLE
526 bool "Discontiguous Memory Support (EXPERIMENTAL)"
527 depends on EXPERIMENTAL
529 Say Y to upport efficient handling of discontiguous physical memory,
530 for architectures which are either NUMA (Non-Uniform Memory Access)
531 or have huge holes in the physical address space for other reasons.
532 See <file:Documentation/vm/numa> for more.
537 bool "NUMA Support (EXPERIMENTAL)"
538 depends on DISCONTIGMEM && BROKEN
540 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
541 Access). This option is for configuring high-end multiprocessor
542 server machines. If in doubt, say N.
544 # LARGE_VMALLOC is racy, if you *really* need it then fix it first
545 config ALPHA_LARGE_VMALLOC
548 Process creation and other aspects of virtual memory management can
549 be streamlined if we restrict the kernel to one PGD for all vmalloc
550 allocations. This equates to about 8GB.
552 Under normal circumstances, this is so far and above what is needed
553 as to be laughable. However, there are certain applications (such
554 as benchmark-grade in-kernel web serving) that can make use of as
555 much vmalloc space as is available.
557 Say N unless you know you need gobs and gobs of vmalloc space.
559 config VERBOSE_MCHECK
560 bool "Verbose Machine Checks"
562 config VERBOSE_MCHECK_ON
563 int "Verbose Printing Mode (0=off, 1=on, 2=all)"
564 depends on VERBOSE_MCHECK
567 This option allows the default printing mode to be set, and then
568 possibly overridden by a boot command argument.
570 For example, if one wanted the option of printing verbose
571 machine checks, but wanted the default to be as if verbose
572 machine check printing was turned off, then one would choose
573 the printing mode to be 0. Then, upon reboot, one could add
574 the boot command line "verbose_mcheck=1" to get the normal
575 verbose machine check printing, or "verbose_mcheck=2" to get
576 the maximum information available.
578 Take the default (1) unless you want more control or more info.
580 source "drivers/pci/Kconfig"
581 source "drivers/eisa/Kconfig"
583 source "drivers/pcmcia/Kconfig"
586 tristate "SRM environment through procfs"
589 If you enable this option, a subdirectory inside /proc called
590 /proc/srm_environment will give you access to the all important
591 SRM environment variables (those which have a name) and also
592 to all others (by their internal number).
594 SRM is something like a BIOS for Alpha machines. There are some
595 other such BIOSes, like AlphaBIOS, which this driver cannot
596 support (hey, that's not SRM!).
598 Despite the fact that this driver doesn't work on all Alphas (but
599 only on those which have SRM as their firmware), it's save to
600 build it even if your particular machine doesn't know about SRM
601 (or if you intend to compile a generic kernel). It will simply
602 not create those subdirectory in /proc (and give you some warning,
605 This driver is also available as a module and will be called
608 source "fs/Kconfig.binfmt"
614 source "drivers/Kconfig"
618 source "arch/alpha/oprofile/Kconfig"
620 source "arch/alpha/Kconfig.debug"
622 source "security/Kconfig"
624 source "crypto/Kconfig"