mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-16 01:04:08 +08:00
f2db633d30
Similar to x86/sparc/powerpc implementations except: 1) we implement an extremely efficient has_zero()/find_zero() sequence with both prep_zero_mask() and create_zero_mask() no-operations. 2) Our output from prep_zero_mask() differs in that only the lowest eight bits are used to represent the zero bytes nevertheless it can be safely ORed with other similar masks from prep_zero_mask() and forms input to create_zero_mask(), the two fundamental properties prep_zero_mask() must satisfy. Tests on EV67 and EV68 CPUs revealed that the generic code is essentially as fast (to within 0.5% of CPU cycles) of the old Alpha specific code for large quadword-aligned strings, despite the 30% extra CPU instructions executed. In contrast, the generic code for unaligned strings is substantially slower (by more than a factor of 3) than the old Alpha specific code. Signed-off-by: Michael Cree <mcree@orcon.net.nz> Acked-by: Matt Turner <mattst88@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
673 lines
19 KiB
Plaintext
673 lines
19 KiB
Plaintext
config ALPHA
|
|
bool
|
|
default y
|
|
select HAVE_AOUT
|
|
select HAVE_IDE
|
|
select HAVE_OPROFILE
|
|
select HAVE_SYSCALL_WRAPPERS
|
|
select HAVE_IRQ_WORK
|
|
select HAVE_PCSPKR_PLATFORM
|
|
select HAVE_PERF_EVENTS
|
|
select HAVE_DMA_ATTRS
|
|
select HAVE_GENERIC_HARDIRQS
|
|
select GENERIC_IRQ_PROBE
|
|
select AUTO_IRQ_AFFINITY if SMP
|
|
select GENERIC_IRQ_SHOW
|
|
select ARCH_WANT_OPTIONAL_GPIOLIB
|
|
select ARCH_WANT_IPC_PARSE_VERSION
|
|
select ARCH_HAVE_NMI_SAFE_CMPXCHG
|
|
select GENERIC_SMP_IDLE_THREAD
|
|
select GENERIC_CMOS_UPDATE
|
|
select GENERIC_STRNCPY_FROM_USER
|
|
select GENERIC_STRNLEN_USER
|
|
help
|
|
The Alpha is a 64-bit general-purpose processor designed and
|
|
marketed by the Digital Equipment Corporation of blessed memory,
|
|
now Hewlett-Packard. The Alpha Linux project has a home page at
|
|
<http://www.alphalinux.org/>.
|
|
|
|
config 64BIT
|
|
def_bool y
|
|
|
|
config MMU
|
|
bool
|
|
default y
|
|
|
|
config RWSEM_GENERIC_SPINLOCK
|
|
bool
|
|
|
|
config RWSEM_XCHGADD_ALGORITHM
|
|
bool
|
|
default y
|
|
|
|
config ARCH_HAS_ILOG2_U32
|
|
bool
|
|
default n
|
|
|
|
config ARCH_HAS_ILOG2_U64
|
|
bool
|
|
default n
|
|
|
|
config GENERIC_CALIBRATE_DELAY
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_GPIO
|
|
bool
|
|
|
|
config ZONE_DMA
|
|
bool
|
|
default y
|
|
|
|
config ARCH_DMA_ADDR_T_64BIT
|
|
def_bool y
|
|
|
|
config NEED_DMA_MAP_STATE
|
|
def_bool y
|
|
|
|
config NEED_SG_DMA_LENGTH
|
|
def_bool y
|
|
|
|
config GENERIC_ISA_DMA
|
|
bool
|
|
default y
|
|
|
|
source "init/Kconfig"
|
|
source "kernel/Kconfig.freezer"
|
|
|
|
|
|
menu "System setup"
|
|
|
|
choice
|
|
prompt "Alpha system type"
|
|
default ALPHA_GENERIC
|
|
---help---
|
|
This is the system type of your hardware. A "generic" kernel will
|
|
run on any supported Alpha system. However, if you configure a
|
|
kernel for your specific system, it will be faster and smaller.
|
|
|
|
To find out what type of Alpha system you have, you may want to
|
|
check out the Linux/Alpha FAQ, accessible on the WWW from
|
|
<http://www.alphalinux.org/>. In summary:
|
|
|
|
Alcor/Alpha-XLT AS 600, AS 500, XL-300, XL-366
|
|
Alpha-XL XL-233, XL-266
|
|
AlphaBook1 Alpha laptop
|
|
Avanti AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
|
|
Cabriolet AlphaPC64, AlphaPCI64
|
|
DP264 DP264 / DS20 / ES40 / DS10 / DS10L
|
|
EB164 EB164 21164 evaluation board
|
|
EB64+ EB64+ 21064 evaluation board
|
|
EB66 EB66 21066 evaluation board
|
|
EB66+ EB66+ 21066 evaluation board
|
|
Jensen DECpc 150, DEC 2000 models 300, 500
|
|
LX164 AlphaPC164-LX
|
|
Lynx AS 2100A
|
|
Miata Personal Workstation 433/500/600 a/au
|
|
Marvel AlphaServer ES47 / ES80 / GS1280
|
|
Mikasa AS 1000
|
|
Noname AXPpci33, UDB (Multia)
|
|
Noritake AS 1000A, AS 600A, AS 800
|
|
PC164 AlphaPC164
|
|
Rawhide AS 1200, AS 4000, AS 4100
|
|
Ruffian RPX164-2, AlphaPC164-UX, AlphaPC164-BX
|
|
SX164 AlphaPC164-SX
|
|
Sable AS 2000, AS 2100
|
|
Shark DS 20L
|
|
Takara Takara (OEM)
|
|
Titan AlphaServer ES45 / DS25 / DS15
|
|
Wildfire AlphaServer GS 40/80/160/320
|
|
|
|
If you don't know what to do, choose "generic".
|
|
|
|
config ALPHA_GENERIC
|
|
bool "Generic"
|
|
help
|
|
A generic kernel will run on all supported Alpha hardware.
|
|
|
|
config ALPHA_ALCOR
|
|
bool "Alcor/Alpha-XLT"
|
|
help
|
|
For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data
|
|
slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O
|
|
Address, CIA) - a 383 pin plastic PGA). It provides a DRAM
|
|
controller (256-bit memory bus) and a PCI interface. It also does
|
|
all the work required to support an external Bcache and to maintain
|
|
memory coherence when a PCI device DMAs into (or out of) memory.
|
|
|
|
config ALPHA_XL
|
|
bool "Alpha-XL"
|
|
help
|
|
XL-233 and XL-266-based Alpha systems.
|
|
|
|
config ALPHA_BOOK1
|
|
bool "AlphaBook1"
|
|
help
|
|
Dec AlphaBook1/Burns Alpha-based laptops.
|
|
|
|
config ALPHA_AVANTI_CH
|
|
bool "Avanti"
|
|
|
|
config ALPHA_CABRIOLET
|
|
bool "Cabriolet"
|
|
help
|
|
Cabriolet AlphaPC64, AlphaPCI64 systems. Derived from EB64+ but now
|
|
baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA
|
|
slots, 4 PCI slots (one pair are on a shared slot), uses plug-in
|
|
Bcache SIMMs. Requires power supply with 3.3V output.
|
|
|
|
config ALPHA_DP264
|
|
bool "DP264"
|
|
help
|
|
Various 21264 systems with the tsunami core logic chipset.
|
|
API Networks: 264DP, UP2000(+), CS20;
|
|
Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40.
|
|
|
|
config ALPHA_EB164
|
|
bool "EB164"
|
|
help
|
|
EB164 21164 evaluation board from DEC. Uses 21164 and ALCOR. Has
|
|
ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is
|
|
shared with an ISA slot) and 2 32-bit PCI slots. Uses plus-in
|
|
Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD,
|
|
MOUSE (PS2 style), RTC/NVRAM. Boot ROM is Flash. PC-AT-sized
|
|
motherboard. Requires power supply with 3.3V output.
|
|
|
|
config ALPHA_EB64P_CH
|
|
bool "EB64+"
|
|
|
|
config ALPHA_EB66
|
|
bool "EB66"
|
|
help
|
|
A Digital DS group board. Uses 21066 or 21066A. I/O sub-system is
|
|
identical to EB64+. Baby PC-AT size. Runs from standard PC power
|
|
supply. The EB66 schematic was published as a marketing poster
|
|
advertising the 21066 as "the first microprocessor in the world with
|
|
embedded PCI".
|
|
|
|
config ALPHA_EB66P
|
|
bool "EB66+"
|
|
help
|
|
Later variant of the EB66 board.
|
|
|
|
config ALPHA_EIGER
|
|
bool "Eiger"
|
|
help
|
|
Apparently an obscure OEM single-board computer based on the
|
|
Typhoon/Tsunami chipset family. Information on it is scanty.
|
|
|
|
config ALPHA_JENSEN
|
|
bool "Jensen"
|
|
help
|
|
DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one
|
|
of the first-generation Alpha systems. A number of these systems
|
|
seem to be available on the second- hand market. The Jensen is a
|
|
floor-standing tower system which originally used a 150MHz 21064 It
|
|
used programmable logic to interface a 486 EISA I/O bridge to the
|
|
CPU.
|
|
|
|
config ALPHA_LX164
|
|
bool "LX164"
|
|
help
|
|
A technical overview of this board is available at
|
|
<http://www.unix-ag.org/Linux-Alpha/Architectures/LX164.html>.
|
|
|
|
config ALPHA_LYNX
|
|
bool "Lynx"
|
|
help
|
|
AlphaServer 2100A-based systems.
|
|
|
|
config ALPHA_MARVEL
|
|
bool "Marvel"
|
|
help
|
|
AlphaServer ES47 / ES80 / GS1280 based on EV7.
|
|
|
|
config ALPHA_MIATA
|
|
bool "Miata"
|
|
help
|
|
The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a,
|
|
or 600au).
|
|
|
|
config ALPHA_MIKASA
|
|
bool "Mikasa"
|
|
help
|
|
AlphaServer 1000-based Alpha systems.
|
|
|
|
config ALPHA_NAUTILUS
|
|
bool "Nautilus"
|
|
help
|
|
Alpha systems based on the AMD 751 & ALI 1543C chipsets.
|
|
|
|
config ALPHA_NONAME_CH
|
|
bool "Noname"
|
|
|
|
config ALPHA_NORITAKE
|
|
bool "Noritake"
|
|
help
|
|
AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based
|
|
systems.
|
|
|
|
config ALPHA_PC164
|
|
bool "PC164"
|
|
|
|
config ALPHA_P2K
|
|
bool "Platform2000"
|
|
|
|
config ALPHA_RAWHIDE
|
|
bool "Rawhide"
|
|
help
|
|
AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines.
|
|
See HOWTO at
|
|
<http://www.alphalinux.org/docs/rawhide/4100_install.shtml>.
|
|
|
|
config ALPHA_RUFFIAN
|
|
bool "Ruffian"
|
|
help
|
|
Samsung APC164UX. There is a page on known problems and workarounds
|
|
at <http://www.alphalinux.org/faq/FAQ-11.html>.
|
|
|
|
config ALPHA_RX164
|
|
bool "RX164"
|
|
|
|
config ALPHA_SX164
|
|
bool "SX164"
|
|
|
|
config ALPHA_SABLE
|
|
bool "Sable"
|
|
help
|
|
Digital AlphaServer 2000 and 2100-based systems.
|
|
|
|
config ALPHA_SHARK
|
|
bool "Shark"
|
|
|
|
config ALPHA_TAKARA
|
|
bool "Takara"
|
|
help
|
|
Alpha 11164-based OEM single-board computer.
|
|
|
|
config ALPHA_TITAN
|
|
bool "Titan"
|
|
help
|
|
AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset.
|
|
|
|
config ALPHA_WILDFIRE
|
|
bool "Wildfire"
|
|
help
|
|
AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
|
|
|
|
endchoice
|
|
|
|
# clear all implied options (don't want default values for those):
|
|
# Most of these machines have ISA slots; not exactly sure which don't,
|
|
# and this doesn't activate hordes of code, so do it always.
|
|
config ISA
|
|
bool
|
|
default y
|
|
help
|
|
Find out whether you have ISA slots on your motherboard. ISA is the
|
|
name of a bus system, i.e. the way the CPU talks to the other stuff
|
|
inside your box. Other bus systems are PCI, EISA, MicroChannel
|
|
(MCA) or VESA. ISA is an older system, now being displaced by PCI;
|
|
newer boards don't support it. If you have ISA, say Y, otherwise N.
|
|
|
|
config ISA_DMA_API
|
|
bool
|
|
default y
|
|
|
|
config PCI
|
|
bool
|
|
depends on !ALPHA_JENSEN
|
|
select GENERIC_PCI_IOMAP
|
|
default y
|
|
help
|
|
Find out whether you have a PCI motherboard. PCI is the name of a
|
|
bus system, i.e. the way the CPU talks to the other stuff inside
|
|
your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
|
|
VESA. If you have PCI, say Y, otherwise N.
|
|
|
|
config PCI_DOMAINS
|
|
bool
|
|
default y
|
|
|
|
config PCI_SYSCALL
|
|
def_bool PCI
|
|
|
|
config IOMMU_HELPER
|
|
def_bool PCI
|
|
|
|
config ALPHA_NONAME
|
|
bool
|
|
depends on ALPHA_BOOK1 || ALPHA_NONAME_CH
|
|
default y
|
|
help
|
|
The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia
|
|
UDB). This design was produced by Digital's Technical OEM (TOEM)
|
|
group. It uses the 21066 processor running at 166MHz or 233MHz. It
|
|
is a baby-AT size, and runs from a standard PC power supply. It has
|
|
5 ISA slots and 3 PCI slots (one pair are a shared slot). There are
|
|
2 versions, with either PS/2 or large DIN connectors for the
|
|
keyboard.
|
|
|
|
config ALPHA_EV4
|
|
bool
|
|
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
|
|
default y if !ALPHA_LYNX
|
|
|
|
config ALPHA_LCA
|
|
bool
|
|
depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
|
|
default y
|
|
|
|
config ALPHA_APECS
|
|
bool
|
|
depends on !ALPHA_PRIMO && (ALPHA_NORITAKE || ALPHA_MIKASA) || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL
|
|
default y
|
|
|
|
config ALPHA_EB64P
|
|
bool
|
|
depends on ALPHA_CABRIOLET || ALPHA_EB64P_CH
|
|
default y
|
|
help
|
|
Uses 21064 or 21064A and APECs. Has ISA and PCI expansion (3 ISA,
|
|
2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs.
|
|
ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI
|
|
(NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style),
|
|
SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM. PC-AT size.
|
|
Runs from standard PC power supply.
|
|
|
|
config ALPHA_EV5
|
|
bool "EV5 CPU(s) (model 5/xxx)?" if ALPHA_LYNX
|
|
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
|
|
|
|
config ALPHA_EV4
|
|
bool
|
|
default y if ALPHA_LYNX && !ALPHA_EV5
|
|
|
|
config ALPHA_CIA
|
|
bool
|
|
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
|
|
default y
|
|
|
|
config ALPHA_EV56
|
|
bool "EV56 CPU (speed >= 366MHz)?" if ALPHA_ALCOR
|
|
default y if ALPHA_RX164 || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_PC164 || ALPHA_TAKARA
|
|
|
|
config ALPHA_EV56
|
|
prompt "EV56 CPU (speed >= 333MHz)?"
|
|
depends on ALPHA_NORITAKE || ALPHA_PRIMO
|
|
|
|
config ALPHA_EV56
|
|
prompt "EV56 CPU (speed >= 400MHz)?"
|
|
depends on ALPHA_RAWHIDE
|
|
|
|
config ALPHA_PRIMO
|
|
bool "EV5 CPU daughtercard (model 5/xxx)?"
|
|
depends on ALPHA_NORITAKE || ALPHA_MIKASA
|
|
help
|
|
Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx.
|
|
|
|
config ALPHA_GAMMA
|
|
bool "EV5 CPU(s) (model 5/xxx)?"
|
|
depends on ALPHA_SABLE
|
|
help
|
|
Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx.
|
|
|
|
config ALPHA_GAMMA
|
|
bool
|
|
depends on ALPHA_LYNX
|
|
default y
|
|
|
|
config ALPHA_T2
|
|
bool
|
|
depends on ALPHA_SABLE || ALPHA_LYNX
|
|
default y
|
|
|
|
config ALPHA_PYXIS
|
|
bool
|
|
depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN
|
|
default y
|
|
|
|
config ALPHA_EV6
|
|
bool
|
|
depends on ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER || ALPHA_MARVEL
|
|
default y
|
|
|
|
config ALPHA_TSUNAMI
|
|
bool
|
|
depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER
|
|
default y
|
|
|
|
config ALPHA_EV67
|
|
bool "EV67 (or later) CPU (speed > 600MHz)?" if ALPHA_DP264 || ALPHA_EIGER
|
|
default y if ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
|
|
help
|
|
Is this a machine based on the EV67 core? If in doubt, select N here
|
|
and the machine will be treated as an EV6.
|
|
|
|
config ALPHA_MCPCIA
|
|
bool
|
|
depends on ALPHA_RAWHIDE
|
|
default y
|
|
|
|
config ALPHA_POLARIS
|
|
bool
|
|
depends on ALPHA_RX164
|
|
default y
|
|
|
|
config ALPHA_IRONGATE
|
|
bool
|
|
depends on ALPHA_NAUTILUS
|
|
default y
|
|
|
|
config GENERIC_HWEIGHT
|
|
bool
|
|
default y if !ALPHA_EV67
|
|
|
|
config ALPHA_AVANTI
|
|
bool
|
|
depends on ALPHA_XL || ALPHA_AVANTI_CH
|
|
default y
|
|
help
|
|
Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based
|
|
Alphas. Info at
|
|
<http://www.unix-ag.org/Linux-Alpha/Architectures/Avanti.html>.
|
|
|
|
config ALPHA_BROKEN_IRQ_MASK
|
|
bool
|
|
depends on ALPHA_GENERIC || ALPHA_PC164
|
|
default y
|
|
|
|
config VGA_HOSE
|
|
bool
|
|
depends on VGA_CONSOLE && (ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL || ALPHA_TSUNAMI)
|
|
default y
|
|
help
|
|
Support VGA on an arbitrary hose; needed for several platforms
|
|
which always have multiple hoses, and whose consoles support it.
|
|
|
|
|
|
config ALPHA_SRM
|
|
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
|
|
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
|
|
---help---
|
|
There are two different types of booting firmware on Alphas: SRM,
|
|
which is command line driven, and ARC, which uses menus and arrow
|
|
keys. Details about the Linux/Alpha booting process are contained in
|
|
the Linux/Alpha FAQ, accessible on the WWW from
|
|
<http://www.alphalinux.org/>.
|
|
|
|
The usual way to load Linux on an Alpha machine is to use MILO
|
|
(a bootloader that lets you pass command line parameters to the
|
|
kernel just like lilo does for the x86 architecture) which can be
|
|
loaded either from ARC or can be installed directly as a permanent
|
|
firmware replacement from floppy (which requires changing a certain
|
|
jumper on the motherboard). If you want to do either of these, say N
|
|
here. If MILO doesn't work on your system (true for Jensen
|
|
motherboards), you can bypass it altogether and boot Linux directly
|
|
from an SRM console; say Y here in order to do that. Note that you
|
|
won't be able to boot from an IDE disk using SRM.
|
|
|
|
If unsure, say N.
|
|
|
|
config EISA
|
|
bool
|
|
depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE
|
|
default y
|
|
|
|
config ARCH_MAY_HAVE_PC_FDC
|
|
def_bool y
|
|
|
|
config SMP
|
|
bool "Symmetric multi-processing support"
|
|
depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL
|
|
select USE_GENERIC_SMP_HELPERS
|
|
---help---
|
|
This enables support for systems with more than one CPU. If you have
|
|
a system with only one CPU, like most personal computers, say N. If
|
|
you have a system with more than one CPU, say Y.
|
|
|
|
If you say N here, the kernel will run on single and multiprocessor
|
|
machines, but will use only one CPU of a multiprocessor machine. If
|
|
you say Y here, the kernel will run on many, but not all,
|
|
singleprocessor machines. On a singleprocessor machine, the kernel
|
|
will run faster if you say N here.
|
|
|
|
See also the SMP-HOWTO available at
|
|
<http://www.tldp.org/docs.html#howto>.
|
|
|
|
If you don't know what to do here, say N.
|
|
|
|
config HAVE_DEC_LOCK
|
|
bool
|
|
depends on SMP
|
|
default y
|
|
|
|
config NR_CPUS
|
|
int "Maximum number of CPUs (2-32)"
|
|
range 2 32
|
|
depends on SMP
|
|
default "32" if ALPHA_GENERIC || ALPHA_MARVEL
|
|
default "4" if !ALPHA_GENERIC && !ALPHA_MARVEL
|
|
help
|
|
MARVEL support can handle a maximum of 32 CPUs, all the others
|
|
with working support have a maximum of 4 CPUs.
|
|
|
|
config ARCH_DISCONTIGMEM_ENABLE
|
|
bool "Discontiguous Memory Support (EXPERIMENTAL)"
|
|
depends on EXPERIMENTAL
|
|
help
|
|
Say Y to support efficient handling of discontiguous physical memory,
|
|
for architectures which are either NUMA (Non-Uniform Memory Access)
|
|
or have huge holes in the physical address space for other reasons.
|
|
See <file:Documentation/vm/numa> for more.
|
|
|
|
source "mm/Kconfig"
|
|
|
|
config NUMA
|
|
bool "NUMA Support (EXPERIMENTAL)"
|
|
depends on DISCONTIGMEM && BROKEN
|
|
help
|
|
Say Y to compile the kernel to support NUMA (Non-Uniform Memory
|
|
Access). This option is for configuring high-end multiprocessor
|
|
server machines. If in doubt, say N.
|
|
|
|
config NODES_SHIFT
|
|
int
|
|
default "7"
|
|
depends on NEED_MULTIPLE_NODES
|
|
|
|
# LARGE_VMALLOC is racy, if you *really* need it then fix it first
|
|
config ALPHA_LARGE_VMALLOC
|
|
bool
|
|
---help---
|
|
Process creation and other aspects of virtual memory management can
|
|
be streamlined if we restrict the kernel to one PGD for all vmalloc
|
|
allocations. This equates to about 8GB.
|
|
|
|
Under normal circumstances, this is so far and above what is needed
|
|
as to be laughable. However, there are certain applications (such
|
|
as benchmark-grade in-kernel web serving) that can make use of as
|
|
much vmalloc space as is available.
|
|
|
|
Say N unless you know you need gobs and gobs of vmalloc space.
|
|
|
|
config VERBOSE_MCHECK
|
|
bool "Verbose Machine Checks"
|
|
|
|
config VERBOSE_MCHECK_ON
|
|
int "Verbose Printing Mode (0=off, 1=on, 2=all)"
|
|
depends on VERBOSE_MCHECK
|
|
default 1
|
|
---help---
|
|
This option allows the default printing mode to be set, and then
|
|
possibly overridden by a boot command argument.
|
|
|
|
For example, if one wanted the option of printing verbose
|
|
machine checks, but wanted the default to be as if verbose
|
|
machine check printing was turned off, then one would choose
|
|
the printing mode to be 0. Then, upon reboot, one could add
|
|
the boot command line "verbose_mcheck=1" to get the normal
|
|
verbose machine check printing, or "verbose_mcheck=2" to get
|
|
the maximum information available.
|
|
|
|
Take the default (1) unless you want more control or more info.
|
|
|
|
config HZ
|
|
int
|
|
default 1200 if ALPHA_RAWHIDE
|
|
default 1024
|
|
|
|
source "drivers/pci/Kconfig"
|
|
source "drivers/eisa/Kconfig"
|
|
|
|
source "drivers/pcmcia/Kconfig"
|
|
|
|
config SRM_ENV
|
|
tristate "SRM environment through procfs"
|
|
depends on PROC_FS
|
|
---help---
|
|
If you enable this option, a subdirectory inside /proc called
|
|
/proc/srm_environment will give you access to the all important
|
|
SRM environment variables (those which have a name) and also
|
|
to all others (by their internal number).
|
|
|
|
SRM is something like a BIOS for Alpha machines. There are some
|
|
other such BIOSes, like AlphaBIOS, which this driver cannot
|
|
support (hey, that's not SRM!).
|
|
|
|
Despite the fact that this driver doesn't work on all Alphas (but
|
|
only on those which have SRM as their firmware), it's save to
|
|
build it even if your particular machine doesn't know about SRM
|
|
(or if you intend to compile a generic kernel). It will simply
|
|
not create those subdirectory in /proc (and give you some warning,
|
|
of course).
|
|
|
|
This driver is also available as a module and will be called
|
|
srm_env then.
|
|
|
|
source "fs/Kconfig.binfmt"
|
|
|
|
endmenu
|
|
|
|
source "net/Kconfig"
|
|
|
|
source "drivers/Kconfig"
|
|
|
|
source "fs/Kconfig"
|
|
|
|
source "arch/alpha/Kconfig.debug"
|
|
|
|
# DUMMY_CONSOLE may be defined in drivers/video/console/Kconfig
|
|
# but we also need it if VGA_HOSE is set
|
|
config DUMMY_CONSOLE
|
|
bool
|
|
depends on VGA_HOSE
|
|
default y
|
|
|
|
source "security/Kconfig"
|
|
|
|
source "crypto/Kconfig"
|
|
|
|
source "lib/Kconfig"
|
|
|