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/>.
24 config RWSEM_GENERIC_SPINLOCK
27 config RWSEM_XCHGADD_ALGORITHM
31 config GENERIC_CALIBRATE_DELAY
35 config GENERIC_ISA_DMA
43 config GENERIC_HARDIRQS
47 config GENERIC_IRQ_PROBE
51 config AUTO_IRQ_AFFINITY
62 prompt "Alpha system type"
65 This is the system type of your hardware. A "generic" kernel will
66 run on any supported Alpha system. However, if you configure a
67 kernel for your specific system, it will be faster and smaller.
69 To find out what type of Alpha system you have, you may want to
70 check out the Linux/Alpha FAQ, accessible on the WWW from
71 <http://www.alphalinux.org/>. In summary:
73 Alcor/Alpha-XLT AS 600
74 Alpha-XL XL-233, XL-266
75 AlphaBook1 Alpha laptop
76 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
77 Cabriolet AlphaPC64, AlphaPCI64
79 EB164 EB164 21164 evaluation board
80 EB64+ EB64+ 21064 evaluation board
81 EB66 EB66 21066 evaluation board
82 EB66+ EB66+ 21066 evaluation board
83 Jensen DECpc 150, DEC 2000 model 300,
87 Miata Personal Workstation 433a, 433au, 500a,
89 Marvel AlphaServer ES47 / ES80 / GS1280
91 Noname AXPpci33, UDB (Multia)
92 Noritake AS 1000A, AS 600A, AS 800
94 Rawhide AS 1200, AS 4000, AS 4100
95 Ruffian RPX164-2, AlphaPC164-UX, AlphaPC164-BX
97 Sable AS 2000, AS 2100
100 Titan AlphaServer ES45 / DS25
101 Wildfire AlphaServer GS 40/80/160/320
103 If you don't know what to do, choose "generic".
108 A generic kernel will run on all supported Alpha hardware.
111 bool "Alcor/Alpha-XLT"
113 For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data
114 slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O
115 Address, CIA) - a 383 pin plastic PGA). It provides a DRAM
116 controller (256-bit memory bus) and a PCI interface. It also does
117 all the work required to support an external Bcache and to maintain
118 memory coherence when a PCI device DMAs into (or out of) memory.
123 XL-233 and XL-266-based Alpha systems.
128 Dec AlphaBook1/Burns Alpha-based laptops.
130 config ALPHA_AVANTI_CH
133 config ALPHA_CABRIOLET
136 Cabriolet AlphaPC64, AlphaPCI64 systems. Derived from EB64+ but now
137 baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA
138 slots, 4 PCI slots (one pair are on a shared slot), uses plug-in
139 Bcache SIMMs. Requires power supply with 3.3V output.
144 Various 21264 systems with the tsunami core logic chipset.
145 API Networks: 264DP, UP2000(+), CS20;
146 Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40.
151 EB164 21164 evaluation board from DEC. Uses 21164 and ALCOR. Has
152 ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is
153 shared with an ISA slot) and 2 32-bit PCI slots. Uses plus-in
154 Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD,
155 MOUSE (PS2 style), RTC/NVRAM. Boot ROM is Flash. PC-AT-sized
156 motherboard. Requires power supply with 3.3V output.
158 config ALPHA_EB64P_CH
164 A Digital DS group board. Uses 21066 or 21066A. I/O sub-system is
165 identical to EB64+. Baby PC-AT size. Runs from standard PC power
166 supply. The EB66 schematic was published as a marketing poster
167 advertising the 21066 as "the first microprocessor in the world with
173 Later variant of the EB66 board.
178 Apparently an obscure OEM single-board computer based on the
179 Typhoon/Tsunami chipset family. Information on it is scanty.
184 DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one
185 of the first-generation Alpha systems. A number of these systems
186 seem to be available on the second- hand market. The Jensen is a
187 floor-standing tower system which originally used a 150MHz 21064 It
188 used programmable logic to interface a 486 EISA I/O bridge to the
194 A technical overview of this board is available at
195 <http://www.unix-ag.org/Linux-Alpha/Architectures/LX164.html>.
200 AlphaServer 2100A-based systems.
205 AlphaServer ES47 / ES80 / GS1280 based on EV7.
210 The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a,
211 or 600au). There is an Installation HOWTO for this hardware at
212 <http://eijk.homelinux.org/~stefan/miata.html>.
217 AlphaServer 1000-based Alpha systems.
219 config ALPHA_NAUTILUS
222 Alpha systems based on the AMD 751 & ALI 1543C chipsets.
224 config ALPHA_NONAME_CH
227 config ALPHA_NORITAKE
230 AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based
242 AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines.
244 <http://www.alphalinux.org/docs/rawhide/4100_install.shtml>.
249 Samsung APC164UX. There is a page on known problems and workarounds
250 at <http://www.alphalinux.org/faq/FAQ-11.html>.
261 Digital AlphaServer 2000 and 2100-based systems.
269 Alpha 11164-based OEM single-board computer.
274 AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset.
276 config ALPHA_WILDFIRE
279 AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
283 # clear all implied options (don't want default values for those):
284 # Most of these machines have ISA slots; not exactly sure which don't,
285 # and this doesn't activate hordes of code, so do it always.
290 Find out whether you have ISA slots on your motherboard. ISA is the
291 name of a bus system, i.e. the way the CPU talks to the other stuff
292 inside your box. Other bus systems are PCI, EISA, MicroChannel
293 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
294 newer boards don't support it. If you have ISA, say Y, otherwise N.
302 depends on !ALPHA_JENSEN
305 Find out whether you have a PCI motherboard. PCI is the name of a
306 bus system, i.e. the way the CPU talks to the other stuff inside
307 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
308 VESA. If you have PCI, say Y, otherwise N.
310 The PCI-HOWTO, available from
311 <http://www.tldp.org/docs.html#howto>, contains valuable
312 information about which PCI hardware does work under Linux and which
319 config ALPHA_CORE_AGP
321 depends on ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL
326 depends on ALPHA_BOOK1 || ALPHA_NONAME_CH
329 The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia
330 UDB). This design was produced by Digital's Technical OEM (TOEM)
331 group. It uses the 21066 processor running at 166MHz or 233MHz. It
332 is a baby-AT size, and runs from a standard PC power supply. It has
333 5 ISA slots and 3 PCI slots (one pair are a shared slot). There are
334 2 versions, with either PS/2 or large DIN connectors for the
339 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
340 default y if !ALPHA_LYNX
344 depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
349 depends on !ALPHA_PRIMO && (ALPHA_NORITAKE || ALPHA_MIKASA) || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL
354 depends on ALPHA_CABRIOLET || ALPHA_EB64P_CH
357 Uses 21064 or 21064A and APECs. Has ISA and PCI expansion (3 ISA,
358 2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs.
359 ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI
360 (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style),
361 SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM. PC-AT size.
362 Runs from standard PC power supply.
365 bool "EV5 CPU(s) (model 5/xxx)?" if ALPHA_LYNX
366 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
370 default y if ALPHA_LYNX && !ALPHA_EV5
374 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
378 bool "EV56 CPU (speed >= 366MHz)?" if ALPHA_ALCOR
379 default y if ALPHA_RX164 || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_PC164 || ALPHA_TAKARA
382 prompt "EV56 CPU (speed >= 333MHz)?"
383 depends on ALPHA_NORITAKE && ALPHA_PRIMO
386 prompt "EV56 CPU (speed >= 400MHz)?"
387 depends on ALPHA_RAWHIDE
390 bool "EV5 CPU daughtercard (model 5/xxx)?"
391 depends on ALPHA_NORITAKE || ALPHA_MIKASA
393 Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx.
396 bool "EV5 CPU(s) (model 5/xxx)?"
397 depends on ALPHA_SABLE
399 Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx.
403 depends on ALPHA_LYNX
408 depends on ALPHA_SABLE || ALPHA_LYNX
413 depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN
418 depends on ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER || ALPHA_MARVEL
423 depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER
427 bool "EV67 (or later) CPU (speed > 600MHz)?" if ALPHA_DP264 || ALPHA_EIGER
428 default y if ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
430 Is this a machine based on the EV67 core? If in doubt, select N here
431 and the machine will be treated as an EV6.
435 depends on ALPHA_MARVEL
440 depends on ALPHA_RAWHIDE
445 depends on ALPHA_RX164
448 config ALPHA_IRONGATE
450 depends on ALPHA_NAUTILUS
455 depends on ALPHA_XL || ALPHA_AVANTI_CH
458 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based
460 <http://www.unix-ag.org/Linux-Alpha/Architectures/Avanti.html>.
462 config ALPHA_BROKEN_IRQ_MASK
464 depends on ALPHA_GENERIC || ALPHA_PC164
468 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
469 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
471 There are two different types of booting firmware on Alphas: SRM,
472 which is command line driven, and ARC, which uses menus and arrow
473 keys. Details about the Linux/Alpha booting process are contained in
474 the Linux/Alpha FAQ, accessible on the WWW from
475 <http://www.alphalinux.org/>.
477 The usual way to load Linux on an Alpha machine is to use MILO
478 (a bootloader that lets you pass command line parameters to the
479 kernel just like lilo does for the x86 architecture) which can be
480 loaded either from ARC or can be installed directly as a permanent
481 firmware replacement from floppy (which requires changing a certain
482 jumper on the motherboard). If you want to do either of these, say N
483 here. If MILO doesn't work on your system (true for Jensen
484 motherboards), you can bypass it altogether and boot Linux directly
485 from an SRM console; say Y here in order to do that. Note that you
486 won't be able to boot from an IDE disk using SRM.
492 depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE
495 config ARCH_MAY_HAVE_PC_FDC
499 bool "Symmetric multi-processing support"
500 depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL
502 This enables support for systems with more than one CPU. If you have
503 a system with only one CPU, like most personal computers, say N. If
504 you have a system with more than one CPU, say Y.
506 If you say N here, the kernel will run on single and multiprocessor
507 machines, but will use only one CPU of a multiprocessor machine. If
508 you say Y here, the kernel will run on many, but not all,
509 singleprocessor machines. On a singleprocessor machine, the kernel
510 will run faster if you say N here.
512 See also the <file:Documentation/smp.txt>, and the SMP-HOWTO
513 available at <http://www.tldp.org/docs.html#howto>.
515 If you don't know what to do here, say N.
523 int "Maximum number of CPUs (2-64)"
528 config ARCH_DISCONTIGMEM_ENABLE
529 bool "Discontiguous Memory Support (EXPERIMENTAL)"
530 depends on EXPERIMENTAL
532 Say Y to upport efficient handling of discontiguous physical memory,
533 for architectures which are either NUMA (Non-Uniform Memory Access)
534 or have huge holes in the physical address space for other reasons.
535 See <file:Documentation/vm/numa> for more.
540 bool "NUMA Support (EXPERIMENTAL)"
541 depends on DISCONTIGMEM && BROKEN
543 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
544 Access). This option is for configuring high-end multiprocessor
545 server machines. If in doubt, say N.
547 # LARGE_VMALLOC is racy, if you *really* need it then fix it first
548 config ALPHA_LARGE_VMALLOC
551 Process creation and other aspects of virtual memory management can
552 be streamlined if we restrict the kernel to one PGD for all vmalloc
553 allocations. This equates to about 8GB.
555 Under normal circumstances, this is so far and above what is needed
556 as to be laughable. However, there are certain applications (such
557 as benchmark-grade in-kernel web serving) that can make use of as
558 much vmalloc space as is available.
560 Say N unless you know you need gobs and gobs of vmalloc space.
562 config VERBOSE_MCHECK
563 bool "Verbose Machine Checks"
565 config VERBOSE_MCHECK_ON
566 int "Verbose Printing Mode (0=off, 1=on, 2=all)"
567 depends on VERBOSE_MCHECK
570 This option allows the default printing mode to be set, and then
571 possibly overridden by a boot command argument.
573 For example, if one wanted the option of printing verbose
574 machine checks, but wanted the default to be as if verbose
575 machine check printing was turned off, then one would choose
576 the printing mode to be 0. Then, upon reboot, one could add
577 the boot command line "verbose_mcheck=1" to get the normal
578 verbose machine check printing, or "verbose_mcheck=2" to get
579 the maximum information available.
581 Take the default (1) unless you want more control or more info.
583 source "drivers/pci/Kconfig"
584 source "drivers/eisa/Kconfig"
586 source "drivers/pcmcia/Kconfig"
589 tristate "SRM environment through procfs"
592 If you enable this option, a subdirectory inside /proc called
593 /proc/srm_environment will give you access to the all important
594 SRM environment variables (those which have a name) and also
595 to all others (by their internal number).
597 SRM is something like a BIOS for Alpha machines. There are some
598 other such BIOSes, like AlphaBIOS, which this driver cannot
599 support (hey, that's not SRM!).
601 Despite the fact that this driver doesn't work on all Alphas (but
602 only on those which have SRM as their firmware), it's save to
603 build it even if your particular machine doesn't know about SRM
604 (or if you intend to compile a generic kernel). It will simply
605 not create those subdirectory in /proc (and give you some warning,
608 This driver is also available as a module and will be called
611 source "fs/Kconfig.binfmt"
617 source "drivers/Kconfig"
621 source "arch/alpha/oprofile/Kconfig"
623 source "arch/alpha/Kconfig.debug"
625 source "security/Kconfig"
627 source "crypto/Kconfig"