Commit 4b05796f authored by Roman Zippel's avatar Roman Zippel Committed by Linus Torvalds

[PATCH] new kernel configuration 4/7

This adds the arch config files. (part 2)
parent b54c4129
#
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/config-language.txt.
#
mainmenu "Linux Kernel Configuration"
source "init/Kconfig"
menu "Machine selection"
choice
prompt "Machine type"
default SGI_IP27
config SGI_IP22
bool "SGI-IP22,Indy/Indigo2"
help
This are the SGI Indy, Challenge S and Indigo2, as well as certain
OEM variants like the Tandem CMN B006S. To compile a Linux kernel
that runs on these, say Y here.
config SGI_IP27
bool "SGI-IP27,Origin200/2000"
help
This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
workstations. To compile a Linux kernel that runs on these, say Y
here.
endchoice
config SGI_SN0_N_MODE
bool "IP27 N-Mode"
depends on SGI_IP27
help
The nodes of Origin 200, Origin 2000 and Onyx 2 systems can be
configured in either N-Modes which allows for more nodes or M-Mode
which allows for more memory. Your system is most probably
running in M-Mode, so you should say N here.
config DISCONTIGMEM
bool "Discontiguous Memory Support"
depends on SGI_IP27
help
Say Y to upport 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.
config NUMA
bool "NUMA Support"
depends on SGI_IP27
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 MAPPED_KERNEL
bool "Mapped kernel support"
depends on SGI_IP27
help
Change the way a Linux kernel is loaded unto memory on a MIPS64
machine. This is required in order to support text replication and
NUMA. If you need to undersatand it, read the source code.
config REPLICATE_KTEXT
bool "Kernel text replication support"
depends on SGI_IP27
help
Say Y here to enable replicating the kernel text across multiple
nodes in a NUMA cluster. This trades memory for speed.
config REPLICATE_EXHANDLERS
bool "Exception handler replication support"
depends on SGI_IP27
help
Say Y here to enable replicating the kernel exception handlers
across multiple nodes in a NUMA cluster. This trades memory for
speed.
config SMP
bool "Multi-Processing support"
depends on SGI_IP27
---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.
Note that if you say Y here and choose architecture "586" or
"Pentium" under "Processor family", the kernel will not work on 486
architectures. Similarly, multiprocessor kernels for the "PPro"
architecture may not work on all Pentium based boards.
People using multiprocessor machines who say Y here should also say
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
Management" code will be disabled if you say Y here.
See also the <file:Documentation/smp.tex>,
<file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>,
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
<http://www.linuxdoc.org/docs.html#howto>.
If you don't know what to do here, say N.
#bool ' IP27 XXL' CONFIG_SGI_SN0_XXL
endmenu
#
# Select some configuration options automatically based on user selections
#
config RWSEM_GENERIC_SPINLOCK
bool
default y
config RWSEM_XCHGADD_ALGORITHM
bool
config GENERIC_ISA_DMA
bool
default y
config PCI
bool
depends on SGI_IP27
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.
The PCI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, contains valuable
information about which PCI hardware does work under Linux and which
doesn't.
config ISA
bool
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 EISA
bool
depends on ISA
default y
---help---
The Extended Industry Standard Architecture (EISA) bus was
developed as an open alternative to the IBM MicroChannel bus.
The EISA bus provided some of the features of the IBM MicroChannel
bus while maintaining backward compatibility with cards made for
the older ISA bus. The EISA bus saw limited use between 1988 and
1995 when it was made obsolete by the PCI bus.
Say Y here if you are building a kernel for an EISA-based machine.
Otherwise, say N.
config BOOT_ELF32
bool
depends on SGI_IP22
default y
config ARC32
bool
depends on SGI_IP22
default y
config BOARD_SCACHE
bool
depends on SGI_IP22
default y
config ARC_MEMORY
bool
depends on SGI_IP22
default y
config SGI
bool
depends on SGI_IP22
default y
config L1_CACHE_SHIFT
int
default "7" if SGI_IP27
default "5" if SGI_IP22
config BOOT_ELF64
bool
depends on SGI_IP27
default y
config ARC64
bool
depends on SGI_IP27
default y
config COHERENT_IO
bool
depends on SGI_IP27
default y
config MAPPED_PCI_IO
bool
depends on SGI_IP27
default y
config QL_ISP_A64
bool
depends on SGI_IP27
default y
config MCA
bool
help
MicroChannel Architecture is found in some IBM PS/2 machines and
laptops. It is a bus system similar to PCI or ISA. See
<file:Documentation/mca.txt> (and especially the web page given
there) before attempting to build an MCA bus kernel.
config SBUS
bool
menu "CPU selection"
choice
prompt "CPU type"
default CPU_R4X00
config CPU_R4300
bool "R4300"
help
MIPS Technologies R4300-series processors.
config CPU_R4X00
bool "R4x00"
help
MIPS Technologies R4000-series processors other than 4300, including
the 4640, 4650, and 4700.
config CPU_R5000
bool "R5000"
help
MIPS Technologies R5000-series processors other than the Nevada.
config CPU_NEVADA
bool "R52x0"
help
MIPS Technologies R52x0-series ("Nevada") processors.
config CPU_R8000
bool "R8000"
help
MIPS Technologies R8000-series processors.
config CPU_R10000
bool "R10000"
help
MIPS Technologies R10000-series processors.
endchoice
endmenu
menu "General setup"
config MIPS_INSANE_LARGE
bool "Support for large 64-bit configurations"
depends on CPU_R10000
help
MIPS R10000 does support a 44 bit / 16TB address space as opposed to
previous 64-bit processors which only supported 40 bit / 1TB. If you
need processes of more than 1TB virtual address space, say Y here.
This will result in additional memory usage, so it is not
recommended for normal users.
config CPU_LITTLE_ENDIAN
bool "Generate little endian code"
help
Some MIPS machines can be configured for either little or big endian
byte order. These modes require different kernels. Say Y if your
machine is little endian, N if it's a big endian machine.
config MIPS_FPU_EMULATOR
bool "Kernel floating-point emulation"
depends on EXPERIMENTAL
help
This option enables the MIPS software floatingpoint support. Due to
the way floating point works you should always enable this option
unless you exactly know what you're doing.
config HOTPLUG
bool "Support for hot-pluggable devices"
---help---
Say Y here if you want to plug devices into your computer while
the system is running, and be able to use them quickly. In many
cases, the devices can likewise be unplugged at any time too.
One well known example of this is PCMCIA- or PC-cards, credit-card
size devices such as network cards, modems or hard drives which are
plugged into slots found on all modern laptop computers. Another
example, used on modern desktops as well as laptops, is USB.
Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
software (at <http://linux-hotplug.sourceforge.net/>) and install it.
Then your kernel will automatically call out to a user mode "policy
agent" (/sbin/hotplug) to load modules and set up software needed
to use devices as you hotplug them.
source "drivers/pcmcia/Kconfig"
config ARC_CONSOLE
bool "ARC console support"
depends on ARC32
config BINFMT_ELF
tristate "Kernel support for 64-bit ELF binaries"
---help---
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems. Saying Y here will enable your kernel to run ELF binaries
and enlarge it by about 13 KB. ELF support under Linux has now all
but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
because it is portable (this does *not* mean that you will be able
to run executables from different architectures or operating systems
however) and makes building run-time libraries very easy. Many new
executables are distributed solely in ELF format. You definitely
want to say Y here.
Information about ELF is contained in the ELF HOWTO available from
<http://www.linuxdoc.org/docs.html#howto>.
If you find that after upgrading from Linux kernel 1.2 and saying Y
here, you still can't run any ELF binaries (they just crash), then
you'll have to install the newest ELF runtime libraries, including
ld.so (check the file <file:Documentation/Changes> for location and
latest version).
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called binfmt_elf.o. Saying M or N here is dangerous because
some crucial programs on your system might be in ELF format.
config MIPS32_COMPAT
bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
help
Select this option if you want Linux/MIPS 32-bit binary
compatibility. Since all software available for Linux/MIPS is
currently 32-bit you should say Y here.
config BINFMT_ELF32
bool
depends on MIPS32_COMPAT
default y
help
This allows you to run 32-bit Linux/ELF binaries on your Ultra.
Everybody wants this; say Y.
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
endmenu
source "drivers/pci/Kconfig"
source "drivers/mtd/Kconfig"
source "drivers/parport/Kconfig"
source "drivers/block/Kconfig"
source "drivers/md/Kconfig"
menu "ATA/ATAPI/MFM/RLL support"
config IDE
tristate "ATA/ATAPI/MFM/RLL support"
---help---
If you say Y here, your kernel will be able to manage low cost mass
storage units such as ATA/(E)IDE and ATAPI units. The most common
cases are IDE hard drives and ATAPI CD-ROM drives.
If your system is pure SCSI and doesn't use these interfaces, you
can say N here.
Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
for mass storage units such as hard disks. It was designed by
Western Digital and Compaq Computer in 1984. It was then named
ST506. Quite a number of disks use the IDE interface.
AT Attachment (ATA) is the superset of the IDE specifications.
ST506 was also called ATA-1.
Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
ATA-3. It provides support for larger disks (up to 8.4GB by means of
the LBA standard), more disks (4 instead of 2) and for other mass
storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
ATA-4 and provides faster (and more CPU friendly) transfer modes
than previous PIO (Programmed processor Input/Output) from previous
ATA/IDE standards by means of fast DMA controllers.
ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
CD-ROM drives, similar in many respects to the SCSI protocol.
SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
designed in order to prevent data corruption and disk crash by
detecting pre hardware failure conditions (heat, access time, and
the like...). Disks built since June 1995 may follow this standard.
The kernel itself don't manage this; however there are quite a
number of user programs such as smart that can query the status of
SMART parameters disk.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called ide.o.
For further information, please read <file:Documentation/ide.txt>.
If unsure, say Y.
source "drivers/ide/Kconfig"
endmenu
menu "SCSI support"
config SCSI
tristate "SCSI support"
---help---
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
any other SCSI device under Linux, say Y and make sure that you know
the name of your SCSI host adapter (the card inside your computer
that "speaks" the SCSI protocol, also called SCSI controller),
because you will be asked for it.
You also need to say Y here if you want support for the parallel
port version of the 100 MB IOMEGA ZIP drive.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called scsi_mod.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. However, do not compile this as a
module if your root file system (the one containing the directory /)
is located on a SCSI device.
source "drivers/scsi/Kconfig"
endmenu
#source drivers/message/i2o/Config.in
source "net/Kconfig"
menu "Network device support"
depends on NET
config NETDEVICES
bool "Network device support"
---help---
You can say N here if you don't intend to connect your Linux box to
any other computer at all or if all your connections will be over a
telephone line with a modem either via UUCP (UUCP is a protocol to
forward mail and news between unix hosts over telephone lines; read
the UUCP-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell
account or a BBS, even using term (term is a program which gives you
almost full Internet connectivity if you have a regular dial up
shell account on some Internet connected Unix computer. Read
<http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>).
You'll have to say Y if your computer contains a network card that
you want to use under Linux (make sure you know its name because you
will be asked for it and read the Ethernet-HOWTO (especially if you
plan to use more than one network card under Linux)) or if you want
to use SLIP (Serial Line Internet Protocol is the protocol used to
send Internet traffic over telephone lines or null modem cables) or
CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better
and newer replacement for SLIP) or PLIP (Parallel Line Internet
Protocol is mainly used to create a mini network by connecting the
parallel ports of two local machines) or AX.25/KISS (protocol for
sending Internet traffic over amateur radio links).
Make sure to read the NET-3-HOWTO. Eventually, you will have to read
Olaf Kirch's excellent and free book "Network Administrator's
Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If
unsure, say Y.
source "drivers/net/Kconfig"
source "drivers/atm/Kconfig"
endmenu
source "net/ax25/Kconfig"
source "net/irda/Kconfig"
source "drivers/isdn/Kconfig"
source "drivers/telephony/Kconfig"
menu "Old CD-ROM drivers (not SCSI, not IDE)"
config CD_NO_IDESCSI
bool "Support non-SCSI/IDE/ATAPI CDROM drives"
---help---
If you have a CD-ROM drive that is neither SCSI nor IDE/ATAPI, say Y
here, otherwise N. Read the CD-ROM-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
Note that the answer to this question doesn't directly affect the
kernel: saying N will just cause the configurator to skip all
the questions about these CD-ROM drives. If you are unsure what you
have, say Y and find out whether you have one of the following
drives.
For each of these drivers, a file Documentation/cdrom/{driver_name}
exists. Especially in cases where you do not know exactly which kind
of drive you have you should read there. Most of these drivers use a
file drivers/cdrom/{driver_name}.h where you can define your
interface parameters and switch some internal goodies.
All these CD-ROM drivers are also usable as a module ( = code which
can be inserted in and removed from the running kernel whenever you
want). If you want to compile them as module, say M instead of Y and
read <file:Documentation/modules.txt>.
If you want to use any of these CD-ROM drivers, you also have to
answer Y or M to "ISO 9660 CD-ROM file system support" below (this
answer will get "defaulted" for you if you enable any of the Linux
CD-ROM drivers).
source "drivers/cdrom/Kconfig"
endmenu
source "drivers/input/Kconfig"
source "drivers/char/Kconfig"
#source drivers/misc/Config.in
source "drivers/media/Kconfig"
source "fs/Kconfig"
menu "Console drivers"
depends on VT
source "drivers/video/Kconfig"
config SGI_NEWPORT_CONSOLE
tristate "SGI Newport Console support"
depends on SGI_IP22
help
Say Y here if you want the console on the Newport aka XL graphics
card of your Indy. Most people say Y here.
config DUMMY_CONSOLE
bool
depends on SGI_IP22 && SGI_NEWPORT_CONSOLE!=y
default y
config FONT_8x16
bool
depends on SGI_IP22 && SGI_NEWPORT_CONSOLE=y
default y
endmenu
config KCORE_ELF
bool
depends on PROC_FS
default y
---help---
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image. This can be used
in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
You have two choices here: ELF and A.OUT. Selecting ELF will make
/proc/kcore appear in ELF core format as defined by the Executable
and Linking Format specification. Selecting A.OUT will choose the
old "a.out" format which may be necessary for some old versions
of binutils or on some architectures.
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel so if you
don't understand what this means or are not a kernel hacker, just
leave it at its default value ELF.
menu "Sound"
config SOUND
tristate "Sound card support"
---help---
If you have a sound card in your computer, i.e. if it can say more
than an occasional beep, say Y. Be sure to have all the information
about your sound card and its configuration down (I/O port,
interrupt and DMA channel), because you will be asked for it.
You want to read the Sound-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. General information about
the modular sound system is contained in the files
<file:Documentation/sound/Introduction>. The file
<file:Documentation/sound/README.OSS> contains some slightly
outdated but still useful information as well.
If you have a PnP sound card and you want to configure it at boot
time using the ISA PnP tools (read
<http://www.roestock.demon.co.uk/isapnptools/>), then you need to
compile the sound card support as a module ( = code which can be
inserted in and removed from the running kernel whenever you want)
and load that module after the PnP configuration is finished. To do
this, say M here and read <file:Documentation/modules.txt> as well
as <file:Documentation/sound/README.modules>; the module will be
called soundcore.o.
I'm told that even without a sound card, you can make your computer
say more than an occasional beep, by programming the PC speaker.
Kernel patches and supporting utilities to do that are in the pcsp
package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
source "sound/Kconfig"
endmenu
source "drivers/sgi/Kconfig"
source "drivers/usb/Kconfig"
menu "Kernel hacking"
#bool 'Debug kmalloc/kfree' CONFIG_DEBUG_MALLOC
config CROSSCOMPILE
bool "Are you using a crosscompiler"
help
Say Y here if you are compiling the kernel on a different
architecture than the one it is intended to run on.
config MIPS_FPE_MODULE
bool "Build fp execption handler module"
depends on MODULES
help
Build the floating point exception handler module. This option is
only useful for people working on the floating point exception
handler. If you don't, say N.
config REMOTE_DEBUG
bool "Remote GDB kernel debugging"
help
If you say Y here, it will be possible to remotely debug the MIPS
kernel using gdb. This enlarges your kernel image disk size by
several megabytes and requires a machine with more than 16 MB,
better 32 MB RAM to avoid excessive linking time. This is only
useful for kernel hackers. If unsure, say N.
config MAGIC_SYSRQ
bool "Magic SysRq key"
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
config MIPS_UNCACHED
bool "Run uncached"
depends on !SMP
help
If you say Y here there kernel will disable all CPU caches. This will
reduce the system's performance dramatically but can help finding
otherwise hard to track bugs. It can also useful if you're doing
hardware debugging with a logic analyzer and need to see all traffic
on the bus.
config NR_CPUS
int "Maximum number of CPUs (2-64)"
depends on SMP
default "64"
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"
#
# For a description of the syntax of this configuration file,
# see the Configure script.
#
mainmenu "Linux Kernel Configuration"
config PARISC
bool
default y
help
The PA-RISC microprocessor is a RISC chip designed by
Hewlett-Packard and used in their line of workstations. The PA-RISC
Linux project has a home page at <www.parisc-linux.org>.
config UID16
bool
config RWSEM_GENERIC_SPINLOCK
bool
default y
config RWSEM_XCHGADD_ALGORITHM
bool
config GENERIC_ISA_DMA
bool
default y
source "init/Kconfig"
menu "General options"
# bool 'Symmetric multi-processing support' CONFIG_SMP
config SMP
bool
---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.
Note that if you say Y here and choose architecture "586" or
"Pentium" under "Processor family", the kernel will not work on 486
architectures. Similarly, multiprocessor kernels for the "PPro"
architecture may not work on all Pentium based boards.
People using multiprocessor machines who say Y here should also say
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
Management" code will be disabled if you say Y here.
See also the <file:Documentation/smp.tex>,
<file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>,
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
<http://www.linuxdoc.org/docs.html#howto>.
If you don't know what to do here, say N.
config NR_CPUS
int "Maximum number of CPUs (2-32)"
depends on SMP
default "32"
config KWDB
bool "Kernel Debugger support"
help
Include in-kernel hooks for kdb, the source level debugger for the
PA-RISC port.
# define_bool CONFIG_KWDB n
# bool 'GSC/Gecko bus support' CONFIG_GSC y
config GSC
bool
default y
config IOMMU_CCIO
bool "U2/Uturn I/O MMU"
help
Say Y here to enable DMA management routines for the first
generation of PA-RISC cache-coherent machines. Programs the
U2/Uturn chip in "Virtual Mode" and use the I/O MMU.
config GSC_LASI
bool "LASI I/O support"
help
Say Y here to directly support the LASI controller chip found on
PA-RISC workstations. Linux-oriented documentation for this chip
can be found at <http://www.parisc-linux.org/documentation/>.
config PCI
bool "PCI support"
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.
The PCI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, contains valuable
information about which PCI hardware does work under Linux and which
doesn't.
config GSC_DINO
bool "GSCtoPCI/DINO PCI support"
depends on PCI
config PCI_LBA
bool "LBA/Elroy PCI support"
depends on PCI
help
Say Y here to give the PA-RISC kernel access to PCI configuration
and IO-port space on PA-RISC workstations equipped with a Lower Bus
Adapter (LBA). This includes A, B, C, J, L, and N-class machines
with 4-digit model numbers, also the A300.
config IOSAPIC
bool
depends on PCI_LBA
default y
config IOMMU_SBA
bool
depends on PCI_LBA
default y
#
# if [ "$CONFIG_PCI_EPIC" = "y" ]; then...
#
endmenu
menu "General setup"
config BINFMT_SOM
tristate "Kernel support for SOM binaries"
help
SOM is a binary executable format inherited from HP/UX. Say Y here
to be able to load and execute SOM binaries directly.
config BINFMT_ELF
tristate "Kernel support for ELF binaries"
---help---
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems. Saying Y here will enable your kernel to run ELF binaries
and enlarge it by about 13 KB. ELF support under Linux has now all
but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
because it is portable (this does *not* mean that you will be able
to run executables from different architectures or operating systems
however) and makes building run-time libraries very easy. Many new
executables are distributed solely in ELF format. You definitely
want to say Y here.
Information about ELF is contained in the ELF HOWTO available from
<http://www.linuxdoc.org/docs.html#howto>.
If you find that after upgrading from Linux kernel 1.2 and saying Y
here, you still can't run any ELF binaries (they just crash), then
you'll have to install the newest ELF runtime libraries, including
ld.so (check the file <file:Documentation/Changes> for location and
latest version).
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called binfmt_elf.o. Saying M or N here is dangerous because
some crucial programs on your system might be in ELF format.
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
config BINFMT_JAVA
tristate "Kernel support for JAVA binaries (obsolete)"
depends on EXPERIMENTAL
help
If you say Y here, the kernel will load and execute Java J-code
binaries directly. Note: this option is obsolete and scheduled for
removal, use CONFIG_BINFMT_MISC instead.
endmenu
##source drivers/parport/Config.in
menu "Parallel port support"
config PARPORT
tristate "Parallel port support"
---help---
If you want to use devices connected to your machine's parallel port
(the connector at the computer with 25 holes), e.g. printer, ZIP
drive, PLIP link (Parallel Line Internet Protocol is mainly used to
create a mini network by connecting the parallel ports of two local
machines) etc., then you need to say Y here; please read
<file:Documentation/parport.txt> and
<file:drivers/parport/BUGS-parport>.
For extensive information about drivers for many devices attaching
to the parallel port see <http://www.torque.net/linux-pp.html> on
the WWW.
It is possible to share a single parallel port among several devices
and it is safe to compile all the corresponding drivers into the
kernel. If you want to compile parallel port support as a module
( = code which can be inserted in and removed from the running
kernel whenever you want), say M here and read
<file:Documentation/modules.txt>. The module will be called
parport.o. If you have more than one parallel port and want to
specify which port and IRQ to be used by this driver at module load
time, take a look at <file:Documentation/parport.txt>.
If unsure, say Y.
config PARPORT_PC
tristate "PC-style hardware"
depends on PCI && PARPORT
---help---
You should say Y here if you have a PC-style parallel port. All IBM
PC compatible computers and some Alphas have PC-style parallel
ports.
This code is also available as a module. If you want to compile it
as a module ( = code which can be inserted in and removed from the
running kernel whenever you want), say M here and read
<file:Documentation/modules.txt>. The module will be called
parport_pc.o.
If unsure, say Y.
config PARPORT_PC_FIFO
bool "Use FIFO/DMA if available"
depends on PARPORT_PC
help
Many parallel port chipsets provide hardware that can speed up
printing. Say Y here if you want to take advantage of that.
As well as actually having a FIFO, or DMA capability, the kernel
will need to know which IRQ the parallel port has. By default,
parallel port interrupts will not be used, and so neither will the
FIFO. See <file:Documentation/parport.txt> to find out how to
specify which IRQ/DMA to use.
config PARPORT_PC_SUPERIO
bool "SuperIO chipset support (EXPERIMENTAL)"
depends on PARPORT_PC && EXPERIMENTAL
help
Saying Y here enables some probes for Super-IO chipsets in order to
find out things like base addresses, IRQ lines and DMA channels. It
is safe to say N.
config PARPORT_GSC
tristate "LASI/ASP builtin parallel-port"
depends on GSC_LASI && PARPORT
help
Say Y here to build in low-level parallel-support for PC-style
hardware integrated in the LASI-Controller (on the GSC Bus) for
HP-PARISC workstations.
# If exactly one hardware type is selected then parport will optimise away
# support for loading any others. Defeat this if the user is keen.
config PARPORT_OTHER
bool "Support foreign hardware"
depends on PARPORT
help
Say Y here if you want to be able to load driver modules to support
other non-standard types of parallel ports. This causes a
performance loss, so most people say N.
config PARPORT_1284
bool "IEEE 1284 transfer modes"
depends on PARPORT
help
If you have a printer that supports status readback or device ID, or
want to use a device that uses enhanced parallel port transfer modes
such as EPP and ECP, say Y here to enable advanced IEEE 1284
transfer modes. Also say Y if you want device ID information to
appear in /proc/sys/dev/parport/*/autoprobe*. It is safe to say N.
endmenu
source "drivers/block/Kconfig"
menu "SCSI support"
config SCSI
tristate "SCSI support"
---help---
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
any other SCSI device under Linux, say Y and make sure that you know
the name of your SCSI host adapter (the card inside your computer
that "speaks" the SCSI protocol, also called SCSI controller),
because you will be asked for it.
You also need to say Y here if you want support for the parallel
port version of the 100 MB IOMEGA ZIP drive.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called scsi_mod.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. However, do not compile this as a
module if your root file system (the one containing the directory /)
is located on a SCSI device.
comment "SCSI support type (disk, tape, CDrom)"
depends on SCSI
config BLK_DEV_SD
tristate "SCSI disk support"
depends on SCSI
---help---
If you want to use a SCSI hard disk or the SCSI or parallel port
version of the IOMEGA ZIP drive under Linux, say Y and read the
SCSI-HOWTO, the Disk-HOWTO and the Multi-Disk-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. This is NOT for SCSI
CD-ROMs.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called sd_mod.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. Do not compile this driver as a
module if your root file system (the one containing the directory /)
is located on a SCSI disk. In this case, do not compile the driver
for your SCSI host adapter (below) as a module either.
config SD_EXTRA_DEVS
int "Maximum number of SCSI disks that can be loaded as modules"
depends on BLK_DEV_SD
default "40"
---help---
This controls the amount of additional space allocated in tables for
drivers that are loaded as modules after the kernel is booted. In
the event that the SCSI core itself was loaded as a module, this
value is the number of additional disks that can be loaded after the
first host driver is loaded.
Admittedly this isn't pretty, but there are tons of race conditions
involved with resizing the internal arrays on the fly. Someday this
flag will go away, and everything will work automatically.
If you don't understand what's going on, go with the default.
config CHR_DEV_ST
tristate "SCSI tape support"
depends on SCSI
---help---
If you want to use a SCSI tape drive under Linux, say Y and read the
SCSI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, and
<file:drivers/scsi/README.st> in the kernel source. This is NOT for
SCSI CD-ROMs.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called st.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>.
config BLK_DEV_SR
tristate "SCSI CDROM support"
depends on SCSI
---help---
If you want to use a SCSI CD-ROM under Linux, say Y and read the
SCSI-HOWTO and the CD-ROM-HOWTO at
<http://www.linuxdoc.org/docs.html#howto>. Also make sure to say Y
or M to "ISO 9660 CD-ROM file system support" later.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called sr_mod.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>.
config BLK_DEV_SR_VENDOR
bool "Enable vendor-specific extensions (for SCSI CDROM)"
depends on BLK_DEV_SR
help
This enables the usage of vendor specific SCSI commands. This is
required to support multisession CDs with old NEC/TOSHIBA cdrom
drives (and HP Writers). If you have such a drive and get the first
session only, try saying Y here; everybody else says N.
config SR_EXTRA_DEVS
int "Maximum number of CDROM devices that can be loaded as modules"
depends on BLK_DEV_SR
default "2"
---help---
This controls the amount of additional space allocated in tables for
drivers that are loaded as modules after the kernel is booted. In
the event that the SCSI core itself was loaded as a module, this
value is the number of additional CD-ROMs that can be loaded after
the first host driver is loaded.
Admittedly this isn't pretty, but there are tons of race conditions
involved with resizing the internal arrays on the fly. Someday this
flag will go away, and everything will work automatically.
If you don't understand what's going on, go with the default.
config CHR_DEV_SG
tristate "SCSI generic support"
depends on SCSI
---help---
If you want to use SCSI scanners, synthesizers or CD-writers or just
about anything having "SCSI" in its name other than hard disks,
CD-ROMs or tapes, say Y here. These won't be supported by the kernel
directly, so you need some additional software which knows how to
talk to these devices using the SCSI protocol:
For scanners, look at SANE (<http://www.mostang.com/sane/>). For CD
writer software look at Cdrtools
(<http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html>)
and for burning a "disk at once": CDRDAO
(<http://cdrdao.sourceforge.net/>). Cdparanoia is a high
quality digital reader of audio CDs (<http://www.xiph.org/paranoia/>).
For other devices, it's possible that you'll have to write the
driver software yourself. Please read the file
<file:Documentation/scsi-generic.txt> for more information.
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. The module will be called sg.o. If unsure,
say N.
comment "Some SCSI devices (e.g. CD jukebox) support multiple LUNs"
depends on SCSI
config SCSI_MULTI_LUN
bool "Probe all LUNs on each SCSI device"
depends on SCSI
help
If you have a SCSI device that supports more than one LUN (Logical
Unit Number), e.g. a CD jukebox, and only one LUN is detected, you
can say Y here to force the SCSI driver to probe for multiple LUNs.
A SCSI device with multiple LUNs acts logically like multiple SCSI
devices. The vast majority of SCSI devices have only one LUN, and
so most people can say N here and should in fact do so, because it
is safer.
config SCSI_CONSTANTS
bool "Verbose SCSI error reporting (kernel size +=12K)"
depends on SCSI
help
The error messages regarding your SCSI hardware will be easier to
understand if you say Y here; it will enlarge your kernel by about
12 KB. If in doubt, say Y.
menu "SCSI low-level drivers"
depends on SCSI!=n
config SCSI_LASI
tristate "Lasi SCSI support"
depends on GSC_LASI && SCSI
config SCSI_ZALON
tristate "Zalon SCSI support"
depends on GSC_LASI && SCSI
help
The Zalon is an interface chip that sits between the PA-RISC
processor and the NCR 53c720 SCSI controller on K-series PA-RISC
boards (these are used, among other places, on some HP 780
workstations). Say Y here to make sure it gets initialized
correctly before the Linux kernel tries to talk to the controller.
config SCSI_SYM53C8XX
tristate "SYM53C8XX SCSI support"
depends on PCI && SCSI
---help---
This driver supports all the features of recent 53C8XX chips (used
in PCI SCSI controllers), notably the hardware phase mismatch
feature of the SYM53C896.
Older versions of the 53C8XX chips are not supported by this
driver. If your system uses either a 810 rev. < 16, a 815, or a 825
rev. < 16 PCI SCSI processor, you must use the generic NCR53C8XX
driver ("NCR53C8XX SCSI support" above) or configure both the
NCR53C8XX and this SYM53C8XX drivers either as module or linked to
the kernel image.
When both drivers are linked into the kernel, the SYM53C8XX driver
is called first at initialization and you can use the 'excl=ioaddr'
driver boot option to exclude attachment of adapters by the
SYM53C8XX driver. For example, entering
'sym53c8xx=excl:0xb400,excl=0xc000' at the lilo prompt prevents
adapters at io address 0xb400 and 0xc000 from being attached by the
SYM53C8XX driver, thus allowing the NCR53C8XX driver to attach them.
The 'excl' option is also supported by the NCR53C8XX driver.
Please read <file:drivers/scsi/README.ncr53c8xx> for more
information.
config SCSI_NCR53C8XX_DEFAULT_TAGS
int "default tagged command queue depth"
depends on SCSI_ZALON || SCSI_SYM53C8XX
default "8"
---help---
"Tagged command queuing" is a feature of SCSI-2 which improves
performance: the host adapter can send several SCSI commands to a
device's queue even if previous commands haven't finished yet.
Because the device is intelligent, it can optimize its operations
(like head positioning) based on its own request queue. Some SCSI
devices don't implement this properly; if you want to disable this
feature, enter 0 or 1 here (it doesn't matter which).
The default value is 8 and should be supported by most hard disks.
This value can be overridden from the boot command line using the
'tags' option as follows (example):
'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to
4, set queue depth to 16 for target 2 and target 3 on controller 0
and set queue depth to 10 for target 0 / lun 2 on controller 1.
The normal answer therefore is to go with the default 8 and to use
a boot command line option for devices that need to use a different
command queue depth.
There is no safe option other than using good SCSI devices.
config SCSI_NCR53C8XX_MAX_TAGS
int "maximum number of queued commands"
depends on SCSI_ZALON || SCSI_SYM53C8XX
default "32"
---help---
This option allows you to specify the maximum number of commands
that can be queued to any device, when tagged command queuing is
possible. The default value is 32. Minimum is 2, maximum is 64.
Modern hard disks are able to support 64 tags and even more, but
do not seem to be faster when more than 32 tags are being used.
So, the normal answer here is to go with the default value 32 unless
you are using very large hard disks with large cache (>= 1 MB) that
are able to take advantage of more than 32 tagged commands.
There is no safe option and the default answer is recommended.
config SCSI_NCR53C8XX_SYNC
int "synchronous transfers frequency in MHz"
depends on SCSI_ZALON || SCSI_SYM53C8XX
default "20"
---help---
The SCSI Parallel Interface-2 Standard defines 5 classes of transfer
rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80. The numbers
are respectively the maximum data transfer rates in mega-transfers
per second for each class. For example, a FAST-20 Wide 16 device is
able to transfer data at 20 million 16 bit packets per second for a
total rate of 40 MB/s.
You may specify 0 if you want to only use asynchronous data
transfers. This is the safest and slowest option. Otherwise, specify
a value between 5 and 80, depending on the capability of your SCSI
controller. The higher the number, the faster the data transfer.
Note that 80 should normally be ok since the driver decreases the
value automatically according to the controller's capabilities.
Your answer to this question is ignored for controllers with NVRAM,
since the driver will get this information from the user set-up. It
also can be overridden using a boot setup option, as follows
(example): 'ncr53c8xx=sync:12' will allow the driver to negotiate
for FAST-20 synchronous data transfer (20 mega-transfers per
second).
The normal answer therefore is not to go with the default but to
select the maximum value 80 allowing the driver to use the maximum
value supported by each controller. If this causes problems with
your SCSI devices, you should come back and decrease the value.
There is no safe option other than using good cabling, right
terminations and SCSI conformant devices.
config SCSI_NCR53C8XX_PROFILE
bool "enable profiling"
depends on SCSI_ZALON || SCSI_SYM53C8XX
help
This option allows you to enable profiling information gathering.
These statistics are not very accurate due to the low frequency
of the kernel clock (100 Hz on i386) and have performance impact
on systems that use very fast devices.
The normal answer therefore is N.
config SCSI_NCR53C8XX_IOMAPPED
bool "use normal IO"
depends on SCSI_ZALON || SCSI_SYM53C8XX
help
If you say Y here, the driver will use normal IO, as opposed to
memory mapped IO. Memory mapped IO has less latency than normal IO
and works for most Intel-based hardware. Under Linux/Alpha only
normal IO is currently supported by the driver and so, this option
has no effect on those systems.
The normal answer therefore is N; try Y only if you encounter SCSI
related problems.
endmenu
endmenu
source "net/Kconfig"
menu "Network device support"
depends on NET
config NETDEVICES
bool "Network device support"
---help---
You can say N here if you don't intend to connect your Linux box to
any other computer at all or if all your connections will be over a
telephone line with a modem either via UUCP (UUCP is a protocol to
forward mail and news between unix hosts over telephone lines; read
the UUCP-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell
account or a BBS, even using term (term is a program which gives you
almost full Internet connectivity if you have a regular dial up
shell account on some Internet connected Unix computer. Read
<http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>).
You'll have to say Y if your computer contains a network card that
you want to use under Linux (make sure you know its name because you
will be asked for it and read the Ethernet-HOWTO (especially if you
plan to use more than one network card under Linux)) or if you want
to use SLIP (Serial Line Internet Protocol is the protocol used to
send Internet traffic over telephone lines or null modem cables) or
CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better
and newer replacement for SLIP) or PLIP (Parallel Line Internet
Protocol is mainly used to create a mini network by connecting the
parallel ports of two local machines) or AX.25/KISS (protocol for
sending Internet traffic over amateur radio links).
Make sure to read the NET-3-HOWTO. Eventually, you will have to read
Olaf Kirch's excellent and free book "Network Administrator's
Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If
unsure, say Y.
config LASI_82596
tristate "Lasi ethernet"
depends on NETDEVICES && GSC_LASI
help
Say Y here to support the on-board Intel 82596 ethernet controller
built into Hewlett-Packard PA-RISC machines.
source "drivers/net/Kconfig"
endmenu
source "drivers/char/Kconfig"
source "fs/Kconfig"
menu "Sound Drivers"
config SOUND
tristate "Sound card support"
---help---
If you have a sound card in your computer, i.e. if it can say more
than an occasional beep, say Y. Be sure to have all the information
about your sound card and its configuration down (I/O port,
interrupt and DMA channel), because you will be asked for it.
You want to read the Sound-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. General information about
the modular sound system is contained in the files
<file:Documentation/sound/Introduction>. The file
<file:Documentation/sound/README.OSS> contains some slightly
outdated but still useful information as well.
If you have a PnP sound card and you want to configure it at boot
time using the ISA PnP tools (read
<http://www.roestock.demon.co.uk/isapnptools/>), then you need to
compile the sound card support as a module ( = code which can be
inserted in and removed from the running kernel whenever you want)
and load that module after the PnP configuration is finished. To do
this, say M here and read <file:Documentation/modules.txt> as well
as <file:Documentation/sound/README.modules>; the module will be
called soundcore.o.
I'm told that even without a sound card, you can make your computer
say more than an occasional beep, by programming the PC speaker.
Kernel patches and supporting utilities to do that are in the pcsp
package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
source "sound/Kconfig"
endmenu
menu "Console drivers"
depends on VT
source "drivers/video/Kconfig"
# bool 'IODC console' CONFIG_IODC_CONSOLE
config STI_CONSOLE
bool "STI console"
help
The STI console is the builtin display/keyboard on HP-PARISC
machines. Say Y here to build support for it into your kernel.
The alternative is to use your primary serial port as a console.
config DUMMY_CONSOLE
bool
depends on STI_CONSOLE || !IODC_CONSOLE && GSC_PS2
default y
endmenu
# endmenu
menu "Kernel hacking"
#bool 'Debug kmalloc/kfree' CONFIG_DEBUG_MALLOC
config MAGIC_SYSRQ
bool "Magic SysRq key"
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"
#
# MPC8260 Communication options
#
menu "MPC8260 CPM Options"
depends on 8260
config SCC_CONSOLE
bool "Enable SCC Console"
config SCC_ENET
bool "CPM SCC Ethernet"
depends on NET_ETHERNET
#
# CONFIG_FEC_ENET is only used to get netdevices to call our init
# function. Any combination of FCC1,2,3 are supported.
#
config FEC_ENET
bool "FCC Ethernet"
depends on NET_ETHERNET
config FCC1_ENET
bool "Ethernet on FCC1"
depends on FEC_ENET
help
Use MPC8260 fast Ethernet controller 1 to drive Ethernet (default).
config FCC2_ENET
bool "Ethernet on FCC2"
depends on FEC_ENET
help
Use MPC8260 fast Ethernet controller 2 to drive Ethernet.
config FCC3_ENET
bool "Ethernet on FCC3"
depends on FEC_ENET
help
Use MPC8260 fast Ethernet controller 3 to drive Ethernet.
config USE_MDIO
bool "Use MDIO for PHY configuration"
depends on FEC_ENET
choice
prompt "Type of PHY"
depends on 8260 && USE_MDIO
default FCC_LXT971
config FCC_LXT970
bool "LXT970"
config FCC_LXT971
bool "LXT971"
config FCC_QS6612
bool "QS6612"
endchoice
comment "Generic MPC8260 Options"
config DCACHE_DISABLE
bool "Disable data cache"
help
This option allows you to run the kernel with data cache disabled.
Say Y if you experience CPM lock-ups.
endmenu
#
# MPC8xx Communication options
#
menu "MPC8xx CPM Options"
depends on 8xx
config SCC_ENET
bool "CPM SCC Ethernet"
depends on NET_ETHERNET
help
Enable Ethernet support via the Motorola MPC8xx serial
commmunications controller.
choice
prompt "SCC used for Ethernet"
depends on SCC_ENET
default SCC1_ENET
config SCC1_ENET
bool "SCC1"
help
Use MPC8xx serial communications controller 1 to drive Ethernet
(default).
config SCC2_ENET
bool "SCC2"
help
Use MPC8xx serial communications controller 2 to drive Ethernet.
config SCC3_ENET
bool "SCC3"
help
Use MPC8xx serial communications controller 3 to drive Ethernet.
endchoice
config FEC_ENET
bool "860T FEC Ethernet"
depends on NET_ETHERNET
help
Enable Ethernet support via the Fast Ethernet Controller (FCC) on
the Motorola MPC8260.
config USE_MDIO
bool "Use MDIO for PHY configuration"
depends on FEC_ENET
help
On some boards the hardware configuration of the ethernet PHY can be
used without any software interaction over the MDIO interface, so
all MII code can be omitted. Say N here if unsure or if you don't
need link status reports.
config ENET_BIG_BUFFERS
bool "Use Big CPM Ethernet Buffers"
depends on NET_ETHERNET
help
Allocate large buffers for MPC8xx Etherenet. Increases throughput
and decreases the likelihood of dropped packets, but costs memory.
config SMC2_UART
bool "Use SMC2 for UART"
help
If you would like to use SMC2 as a serial port, say Y here.
If in doubt, say Y here.
config ALTSMC2
bool "Use Alternate SMC2 I/O (823/850)"
depends on SMC2_UART
help
If you have an MPC823 or MPC850 and would like to use the alternate
SMC2 for I/O, say Y here.
If in doubt, say N here.
config CONS_SMC2
bool "Use SMC2 for Console"
depends on SMC2_UART
help
If you are going to have a serial console on your device and are
using SMC2 for your serial port, say Y here, else say N.
config USE_SCC_IO
bool "Enable SCC2 and SCC3 for UART"
help
If your MPC8xx board has other SCC ports that you would like to use
for for a serial port, say Y here.
If in doubt, say N here.
config HTDMSOUND
bool "Embedded Planet HIOX Audio"
depends on SOUND=y
# This doesn't really belong here, but it is convenient to ask
# 8xx specific questions.
comment "Generic MPC8xx Options"
config 8xx_COPYBACK
bool "Copy-Back Data Cache (else Writethrough)"
help
Saying Y here will cause the cache on an MPC8xx processor to be used
in Copy-Back mode. If you say N here, it is used in Writethrough
mode.
If in doubt, say Y here.
config 8xx_CPU6
bool "CPU6 Silicon Errata (860 Pre Rev. C)"
help
MPC860 CPUs, prior to Rev C have some bugs in the silicon, which
require workarounds for Linux (and most other OSes to work). If you
get a BUG() very early in boot, this might fix the problem. For
more details read the document entitled "MPC860 Family Device Errata
Reference" on Motorola's website. This option also incurs a
performance hit.
If in doubt, say N here.
config UCODE_PATCH
bool "I2C/SPI Microcode Patch"
help
Motorola releases microcode updates for their 8xx CPM modules. The
microcode update file has updates for IIC, SMC and USB. Currently only
the USB update is available by default, if the MPC8xx USB option is
enabled. If in doubt, say 'N' here.
endmenu
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/config-language.txt.
#
config UID16
bool
config RWSEM_GENERIC_SPINLOCK
bool
config RWSEM_XCHGADD_ALGORITHM
bool
default y
config HAVE_DEC_LOCK
bool
default y
mainmenu "Linux/PowerPC Kernel Configuration"
source "init/Kconfig"
menu "Platform support"
config PPC
bool
default y
---help---
The PowerPC is a modern RISC architecture descended from the POWER
architecture designed by IBM. The PowerPC architecture is designed
to allow high-speed implementations which can execute several
instructions in each clock cycle. IBM and Motorola design and
manufacture PowerPC processors aimed at embedded, desktop and server
applications. PowerPC chips are used in Apple Power Macintoshes
(including iMacs, iBooks and PowerBooks), in IBM pSeries (RS/6000)
and iSeries (AS/400) machines, and in a broad range of embedded
applications. The Linux PowerPC port has a home page at
<http://penguinppc.org/intro.shtml>.
config PPC32
bool
default y
choice
prompt "Processor Type"
default 6xx
config 6xx
bool "6xx/7xx/74xx/8260"
help
There are four types of PowerPC chips supported. The more common
types (601, 603, 604, 740, 750, 7400), the Motorola embedded
versions (821, 823, 850, 855, 860, 8260), the IBM embedded versions
(403 and 405) and the high end 64 bit Power processors (POWER 3)
Unless you are building a kernel for one of the embedded processor
systems, or a 64 bit IBM RS/6000, choose 6xx. Note that the kernel
runs in 32-bit mode even on 64-bit chips. Also note that because
the 82xx family has a 603e core, specific support for that chipset
is asked later on.
config 40x
bool "40x"
config POWER3
bool "POWER3"
config 8xx
bool "8xx"
config PPC_ISERIES
bool "iSeries"
endchoice
config 4xx
bool
depends on 40x
default y
config 8260
bool "MPC8260 CPM Support"
depends on 6xx
help
The MPC8260 CPM (Communications Processor Module) is a typical
embedded CPU made by Motorola. Selecting this option means that
you wish to build a kernel for a machine with specifically an 8260
for a CPU.
If in doubt, say N.
config GENERIC_ISA_DMA
bool
depends on POWER3 || 6xx && !8260
default y
config PPC64BRIDGE
bool
depends on PPC_ISERIES || POWER3
default y
config ALL_PPC
bool
depends on ALL_PPC_CH || POWER3
default y
---help---
Linux currently supports several different kinds of PowerPC-based
machines: Apple Power Macintoshes and clones (such as the Motorola
Starmax series), PReP (PowerPC Reference Platform) machines (such
as the Motorola PowerStacks, Motorola cPCI/VME embedded systems,
and some IBM RS/6000 systems), CHRP (Common Hardware Reference
Platform) machines (including all of the recent IBM RS/6000 and
pSeries machines), and several embedded PowerPC systems containing
4xx, 6xx, 7xx, 8xx, 74xx, and 82xx processors. Currently, the
default option is to build a kernel which works on the first three.
Select CHRP/PowerMac/PReP if configuring for an IBM RS/6000 or
pSeries machine, a Power Macintosh (including iMacs, iBooks and
Powerbooks), or a PReP machine.
Select Gemini if configuring for a Synergy Microsystems' Gemini
series Single Board Computer. More information is available at:
<http://www.synergymicro.com/PressRel/97_10_15.html>.
Select APUS if configuring for a PowerUP Amiga. More information is
available at: <http://linux-apus.sourceforge.net/>.
config PPC_STD_MMU
bool
depends on 6xx || POWER3
default y
config SERIAL_CONSOLE
bool
depends on 8xx || 8260
default y
---help---
If you say Y here, it will be possible to use a serial port as the
system console (the system console is the device which receives all
kernel messages and warnings and which allows logins in single user
mode). This could be useful if some terminal or printer is connected
to that serial port.
Even if you say Y here, the currently visible virtual console
(/dev/tty0) will still be used as the system console by default, but
you can alter that using a kernel command line option such as
"console=ttyS1". (Try "man bootparam" or see the documentation of
your boot loader (lilo or loadlin) about how to pass options to the
kernel at boot time.)
If you don't have a graphics card installed and you say Y here, the
kernel will automatically use the first serial line, /dev/ttyS0, as
system console.
If unsure, say N.
choice
prompt "Machine Type"
depends on 8260
default WILLOW_1
config EST8260
bool "EST8260"
---help---
EST8260:
The EST8260 is a single-board computer manufactured by Wind River
Systems, Inc. (formerly Embedded Support Tools Corp.) and based on
the MPC8260. Wind River Systems has a website at
<http://www.windriver.com/>, but the EST8260 cannot be found on it
and has probably been discontinued or rebadged.
TQM8260:
MPC8260 based module, little larger than credit card,
up to 128 MB global + 64 MB local RAM, 32 MB Flash,
32 kB EEPROM, 256 kB L@ Cache, 10baseT + 100baseT Ethernet,
2 x serial ports, ...
Manufacturer: TQ Components, www.tq-group.de
Date of Release: June 2001
End of Life: not yet :-)
URL: <http://www.denx.de/PDF/TQM82xx_SPEC_Rev005.pdf>
PM826:
Modular system with MPC8260 CPU
Manufacturer: MicroSys GmbH, <http://www.microsys.de/>
Date of Release: mid 2001
End of life: -
URL: <http://www.microsys.de/html/pm826.html>
CU824:
VMEBus Board with PCI extension with MPC8240 CPU
Manufacturer: MicroSys GmbH, http://www.microsys.de/
Date of Release: early 2001 (?)
End of life: -
URL: <http://www.microsys.de/html/cu824.html>
config SBS8260
bool "SBS8260"
config RPX6
bool "RPXSUPER"
config TQM8260
bool "TQM8260"
config WILLOW_1
bool "Willow"
endchoice
choice
prompt "Machine Type"
depends on 40x
default WALNUT
config ASH
bool "Ash"
config CEDER
bool "Ceder"
config CPCI405
bool "CPCI405"
config EP405
bool "EP405/EP405PC"
config OAK
bool "Oak"
help
Select Oak if you have an IBM 403GCX "Oak" Evaluation Board.
Select Walnut if you have an IBM 405GP "Walnut" Evaluation Board.
More information on these boards is available at:
<http://www.chips.ibm.com/products/powerpc/tools/evk_pn.html#GCX>.
config REDWOOD_4
bool "Redwood-4"
config REDWOOD_5
bool "Redwood-5"
config TIVO
bool "Tivo"
config WALNUT
bool "Walnut"
help
Select Walnut if you have an IBM 405GP "Walnut" Evaluation Board.
endchoice
config EP405PC
bool "EP405PC Support"
depends on EP405
config NOT_COHERENT_CACHE
bool
depends on 40x || 8xx
default y
choice
prompt "Machine Type"
depends on 8xx
default RPXLITE
config RPXLITE
bool "RPX-Lite"
---help---
Single-board computers based around the PowerPC MPC8xx chips and
intended for embedded applications. The following types are
supported:
RPX-Lite:
Embedded Planet RPX Lite. PC104 form-factor SBC based on the MPC823.
RPX-Classic:
Embedded Planet RPX Classic Low-fat. Credit-card-size SBC based on
the MPC 860
BSE-IP:
Bright Star Engineering ip-Engine.
TQM823L:
TQM850L:
TQM855L:
TQM860L:
MPC8xx based family of mini modules, half credit card size,
up to 64 MB of RAM, 8 MB Flash, (Fast) Ethernet, 2 x serial ports,
2 x CAN bus interface, ...
Manufacturer: TQ Components, www.tq-group.de
Date of Release: October (?) 1999
End of Life: not yet :-)
URL:
- module: <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>
- starter kit: <http://www.denx.de/PDF/STK8xxLHWM201.pdf>
- images: <http://www.denx.de/embedded-ppc-en.html>
FPS850L:
FingerPrint Sensor System (based on TQM850L)
Manufacturer: IKENDI AG, <http://www.ikendi.com/>
Date of Release: November 1999
End of life: end 2000 ?
URL: see TQM850L
SPD823TS:
MPC823 based board used in the "Tele Server" product
Manufacturer: Speech Design, <http://www.speech-design.de/>
Date of Release: Mid 2000 (?)
End of life: -
URL: <http://www.speech-design.de/>
select "English", then "Teleteam Solutions", then "TeleServer"
IVMS8:
MPC860 based board used in the "Integrated Voice Mail System",
Small Version (8 voice channels)
Manufacturer: Speech Design, <http://www.speech-design.de/>
Date of Release: December 2000 (?)
End of life: -
URL: <http://www.speech-design.de/>
IVML24:
MPC860 based board used in the "Integrated Voice Mail System",
Large Version (24 voice channels)
Manufacturer: Speech Design, <http://www.speech-design.de/>
Date of Release: March 2001 (?)
End of life: -
URL: <http://www.speech-design.de/>
SM850:
Service Module (based on TQM850L)
Manufacturer: Dependable Computer Systems, <http://www.decomsys.com/>
Date of Release: end 2000 (?)
End of life: mid 2001 (?)
URL: <http://www.tz-mikroelektronik.de/ServiceModule/index.html>
HERMES:
Hermes-Pro ISDN/LAN router with integrated 8 x hub
Manufacturer: Multidata Gesellschaft fr Datentechnik und Informatik
<http://www.multidata.de/>
Date of Release: 2000 (?)
End of life: -
URL: <http://www.multidata.de/english/products/hpro.htm>
IP860:
VMEBus IP (Industry Pack) carrier board with MPC860
Manufacturer: MicroSys GmbH, <http://www.microsys.de/>
Date of Release: ?
End of life: -
URL: <http://www.microsys.de/html/ip860.html>
PCU_E:
PCU = Peripheral Controller Unit, Extended
Manufacturer: Siemens AG, ICN (Information and Communication Networks)
<http://www.siemens.de/page/1,3771,224315-1-999_2_226207-0,00.html>
Date of Release: April 2001
End of life: August 2001
URL: n. a.
config RPXCLASSIC
bool "RPX-Classic"
help
The RPX-Classic is a single-board computer based on the Motorola
MPC860. It features 16MB of DRAM and a variable amount of flash,
I2C EEPROM, thermal monitoring, a PCMCIA slot, a DIP switch and two
LEDs. Variants with Ethernet ports exist. Say Y here to support it
directly.
config BSEIP
bool "BSE-IP"
help
Say Y here to support the Bright Star Engineering ipEngine SBC.
This is a credit-card-sized device featuring a MPC823 processor,
26MB DRAM, 4MB flash, Ethernet, a 16K-gate FPGA, USB, an LCD/video
controller, and two RS232 ports.
config FADS
bool "FADS"
config TQM823L
bool "TQM823L"
help
Say Y here to support the TQM823L, one of an MPC8xx-based family of
mini SBCs (half credit-card size) from TQ Components first released
in late 1999. Technical references are at
<http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
<http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
<http://www.denx.de/embedded-ppc-en.html>.
config TQM850L
bool "TQM850L"
help
Say Y here to support the TQM850L, one of an MPC8xx-based family of
mini SBCs (half credit-card size) from TQ Components first released
in late 1999. Technical references are at
<http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
<http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
<http://www.denx.de/embedded-ppc-en.html>.
config TQM855L
bool "TQM855L"
help
Say Y here to support the TQM855L, one of an MPC8xx-based family of
mini SBCs (half credit-card size) from TQ Components first released
in late 1999. Technical references are at
<http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
<http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
<http://www.denx.de/embedded-ppc-en.html>.
config TQM860L
bool "TQM860L"
help
Say Y here to support the TQM860L, one of an MPC8xx-based family of
mini SBCs (half credit-card size) from TQ Components first released
in late 1999. Technical references are at
<http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
<http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
<http://www.denx.de/embedded-ppc-en.html>.
config FPS850L
bool "FPS850L"
config SPD823TS
bool "SPD823TS"
help
Say Y here to support the Speech Design 823 Tele-Server from Speech
Design, released in 2000. The manufacturer's website is at
<http://www.speech-design.de/>.
config IVMS8
bool "IVMS8"
help
Say Y here to support the Integrated Voice-Mail Small 8-channel SBC
from Speech Design, released March 2001. The manufacturer's website
is at <http://www.speech-design.de/>.
config IVML24
bool "IVML24"
help
Say Y here to support the Integrated Voice-Mail Large 24-channel SBC
from Speech Design, released March 2001. The manufacturer's website
is at <http://www.speech-design.de/>.
config SM850
bool "SM850"
help
Say Y here to support the Service Module 850 from Dependable
Computer Systems, an SBC based on the TQM850L module by TQ
Components. This board is no longer in production. The
manufacturer's website is at <http://www.decomsys.com/>.
config HERMES_PRO
bool "HERMES"
config IP860
bool "IP860"
config LWMON
bool "LWMON"
config PCU_E
bool "PCU_E"
config CCM
bool "CCM"
config LANTEC
bool "LANTEC"
config MBX
bool "MBX"
help
MBX is a line of Motorola single-board computer based around the
MPC821 and MPC860 processors, and intended for embedded-controller
applications. Say Y here to support these boards directly.
config WINCEPT
bool "WinCept"
help
The Wincept 100/110 is a Motorola single-board computer based on the
MPC821 PowerPC, introduced in 1998 and designed to be used in
thin-client machines. Say Y to support it directly.
endchoice
config TQM8xxL
bool
depends on 8xx && (TQM823L || TQM850L || FPS850L || TQM855L || TQM860L || SM850)
default y
choice
prompt "Machine Type"
depends on 6xx && !8260
default ALL_PPC_CH
config ALL_PPC_CH
bool "CHRP/PowerMac/PReP"
config APUS
bool "Amiga-APUS"
help
Select APUS if configuring for a PowerUP Amiga.
More information is available at:
<http://linux-apus.sourceforge.net/>.
config WILLOW_2
bool "Cogent-Willow"
config PCORE
bool "Force-PowerCore"
config POWERPMC250
bool "Force-PowerPMC250"
config EV64260
bool "Galileo-EV-64260-BP"
config SPRUCE
bool "IBM-Spruce"
config MENF1
bool "MEN-F1"
config LOPEC
bool "Motorola-LoPEC"
config MCPN765
bool "Motorola-MCPN765"
config MVME5100
bool "Motorola-MVME5100"
config PPLUS
bool "Motorola-PowerPlus"
config PRPMC750
bool "Motorola-PrPMC750"
config PRPMC800
bool "Motorola-PrPMC800"
config SANDPOINT
bool "Motorola-Sandpoint"
config ADIR
bool "SBS-Adirondack"
config K2
bool "SBS-K2"
config PAL4
bool "SBS-Palomar4"
config GEMINI
bool "Synergy-Gemini"
help
Select Gemini if configuring for a Synergy Microsystems' Gemini
series Single Board Computer. More information is available at:
<http://www.synergymicro.com/PressRel/97_10_15.html>.
config ZX4500
bool "Zynx-ZX4500"
endchoice
config SANDPOINT_X3
bool "Sandpoint X3"
depends on SANDPOINT
config FORCE
bool
depends on 6xx && !8260 && (PCORE || POWERPMC250)
default y
config EPIC_SERIAL_MODE
bool
depends on 6xx && !8260 && (LOPEC || SANDPOINT_X3)
default y
config WILLOW
bool
depends on WILLOW_1 || WILLOW_2
default y
config MPC10X_STORE_GATHERING
bool "Enable MPC10x store gathering"
depends on FORCE || MENF1 || SANDPOINT || ZX4500
config GT64260
bool
depends on EV64260
default y
config SERIAL_CONSOLE_BAUD
int
depends on EV64260
default "115200"
config CPC710_DATA_GATHERING
bool "Enable CPC710 data gathering"
depends on K2
config MVME5100_IPMC761_PRESENT
bool "MVME5100 configured with an IPMC761"
depends on MVME5100
config SPRUCE_BAUD_33M
bool "Spruce baud clock support"
depends on SPRUCE
config SMP
bool "Symmetric multi-processing support"
---help---
This enables support for systems with more than one CPU. If you have
a system with only one CPU, say N. If you have a system with more
than one CPU, say Y. Note that the kernel does not currently
support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
since they have inadequate hardware support for multiprocessor
operation.
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 single-processor machines.
On a single-processor machine, the kernel will run faster if you say
N here.
If you don't know what to do here, say N.
config IRQ_ALL_CPUS
bool "Distribute interrupts on all CPUs by default"
depends on SMP
help
This option gives the kernel permission to distribute IRQs across
multiple CPUs. Saying N here will route all IRQs to the first
CPU. Generally saying Y is safe, although some problems have been
reported with SMP Power Macintoshes with this option enabled.
config NR_CPUS
int "Maximum number of CPUs (2-32)"
depends on SMP
default "32"
config PREEMPT
bool "Preemptible Kernel"
depends on !SMP
help
This option reduces the latency of the kernel when reacting to
real-time or interactive events by allowing a low priority process to
be preempted even if it is in kernel mode executing a system call.
Unfortunately the kernel code has some race conditions if both
CONFIG_SMP and CONFIG_PREEMPT are enabled, so this option is
currently disabled if you are building an SMP kernel.
Say Y here if you are building a kernel for a desktop, embedded
or real-time system. Say N if you are unsure.
config ALTIVEC
bool "AltiVec Support"
depends on 6xx && !8260
---help---
This option enables kernel support for the Altivec extensions to the
PowerPC processor. The kernel currently supports saving and restoring
altivec registers, and turning on the 'altivec enable' bit so user
processes can execute altivec instructions.
This option is only usefully if you have a processor that supports
altivec (G4, otherwise known as 74xx series), but does not have
any affect on a non-altivec cpu (it does, however add code to the
kernel).
If in doubt, say Y here.
config TAU
bool "Thermal Management Support"
depends on 6xx && !8260
help
G3 and G4 processors have an on-chip temperature sensor called the
'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die
temperature within 2-4 degrees Celsius. This option shows the current
on-die temperature in /proc/cpuinfo if the cpu supports it.
Unfortunately, on some chip revisions, this sensor is very inaccurate
and in some cases, does not work at all, so don't assume the cpu
temp is actually what /proc/cpuinfo says it is.
config TAU_INT
bool "Interrupt driven TAU driver (DANGEROUS)"
depends on TAU
---help---
The TAU supports an interrupt driven mode which causes an interrupt
whenever the temperature goes out of range. This is the fastest way
to get notified the temp has exceeded a range. With this option off,
a timer is used to re-check the temperature periodically.
However, on some cpus it appears that the TAU interrupt hardware
is buggy and can cause a situation which would lead unexplained hard
lockups.
Unless you are extending the TAU driver, or enjoy kernel/hardware
debugging, leave this option off.
config TAU_AVERAGE
bool "Average high and low temp"
depends on TAU
---help---
The TAU hardware can compare the temperature to an upper and lower
bound. The default behavior is to show both the upper and lower
bound in /proc/cpuinfo. If the range is large, the temperature is
either changing a lot, or the TAU hardware is broken (likely on some
G4's). If the range is small (around 4 degrees), the temperature is
relatively stable. If you say Y here, a single temperature value,
halfway between the upper and lower bounds, will be reported in
/proc/cpuinfo.
If in doubt, say N here.
config MATH_EMULATION
bool "Math emulation"
depends on 4xx || 8xx
---help---
Some PowerPC chips designed for embedded applications do not have
a floating-point unit and therefore do not implement the
floating-point instructions in the PowerPC instruction set. If you
say Y here, the kernel will include code to emulate a floating-point
unit, which will allow programs that use floating-point
instructions to run.
If you have an Apple machine or an IBM RS/6000 or pSeries machine,
or any machine with a 6xx, 7xx or 7xxx series processor, say N
here. Saying Y here will not hurt performance (on any machine) but
will increase the size of the kernel.
# It's often necessary to know the specific 4xx processor type.
# Fortunately, it is impled (so far) from the board type, so we
# don't need to ask more redundant questions.
config NP405H
bool
depends on ASH
default y
config TREEBOOT
bool
depends on 40x && (WALNUT || REDWOOD_5 || REDWOOD_4 || OAK || TIVO || CEDER || ASH)
default y
config IBM405_ERR77
bool
depends on 40x && (WALNUT || REDWOOD_5 || REDWOOD_4 || EP405 || CPCI405 || CEDER || ASH)
default y
config IBM_OCP
bool
depends on 40x && (WALNUT || REDWOOD_5 || REDWOOD_4 || EP405 || CPCI405 || CEDER || ASH)
default y
config NP405L
bool
depends on CEDER
default y
config BIOS_FIXUP
bool
depends on 40x && (WALNUT || EP405 || CEDER)
default y
config 405GP
bool
depends on 40x && (WALNUT || EP405 || CPCI405)
default y
config EMBEDDEDBOOT
bool
depends on 8xx || 8260 || 40x && EP405
default y
config 403GCX
bool
depends on 40x && (OAK || TIVO)
default y
config STB03xxx
bool
depends on 40x && (REDWOOD_5 || REDWOOD_4)
default y
config 405_DMA
bool "Blue Logic DMA"
depends on 40x
config PM
bool "Power Management support (EXPERIMENTAL)"
depends on 40x && EXPERIMENTAL
choice
prompt "TTYS0 device and default console"
depends on 40x
default UART0_TTYS0
config UART0_TTYS0
bool "UART0"
config UART0_TTYS1
bool "UART1"
endchoice
config IBM405_ERR51
bool
depends on 40x
default y
endmenu
menu "General setup"
config HIGHMEM
bool "High memory support"
config ISA
bool "Support for ISA-bus hardware"
depends on ALL_PPC
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. If you have an Apple machine, say N here; if you
have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If
you have an embedded board, consult your board documentation.
config EISA
bool
help
The Extended Industry Standard Architecture (EISA) bus is a bus
architecture used on some older intel-based PCs.
config SBUS
bool
# Yes MCA RS/6000s exist but Linux-PPC does not currently support any
config MCA
bool
help
MicroChannel Architecture is found in some older IBM RS/6000
machines. It is a bus system similar to PCI or ISA. MCA-based
RS/6000 machines are currently not supported by Linux.
config PCI
bool "PCI support" if 4xx || 8260
default y if !4xx && !8260 && !8xx && !APUS && !PPC_ISERIES
default PCI_ISERIES if !4xx && !8260 && !8xx && !APUS && PPC_ISERIES
default PCI_PERMEDIA if !4xx && !8260 && !8xx && APUS
default PCI_QSPAN if !4xx && !8260 && 8xx
help
Find out whether your system includes a PCI bus. PCI is the name of
a bus system, i.e. the way the CPU talks to the other stuff inside
your box. If you say Y here, the kernel will include drivers and
infrastructure code to support PCI bus devices.
config PC_KEYBOARD
bool "PC PS/2 style Keyboard"
depends on 4xx || 8260
config PCI_QSPAN
bool "QSpan PCI"
depends on !4xx && !8260 && 8xx
help
Say Y here if you have a system based on a Motorola 8xx-series
embedded processor with a QSPAN PCI interface, otherwise say N.
config PCI_PERMEDIA
bool "PCI for Permedia2"
depends on !4xx && !8xx && APUS
config PCI_ISERIES
bool "IBM iSeries Native I/O Support"
depends on !4xx && !8260 && !8xx && !APUS && PPC_ISERIES
# only elf supported, a.out is not -- Cort
config KCORE_ELF
bool
depends on PROC_FS
default y
help
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image in ELF format. This
can be used in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel.
config BINFMT_ELF
bool
default y
help
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems.
config KERNEL_ELF
bool
default y
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
source "drivers/pci/Kconfig"
config HOTPLUG
bool "Support for hot-pluggable devices"
---help---
Say Y here if you want to plug devices into your computer while
the system is running, and be able to use them quickly. In many
cases, the devices can likewise be unplugged at any time too.
One well known example of this is PCMCIA- or PC-cards, credit-card
size devices such as network cards, modems or hard drives which are
plugged into slots found on all modern laptop computers. Another
example, used on modern desktops as well as laptops, is USB.
Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
software (at <http://linux-hotplug.sourceforge.net/>) and install it.
Then your kernel will automatically call out to a user mode "policy
agent" (/sbin/hotplug) to load modules and set up software needed
to use devices as you hotplug them.
source "drivers/pcmcia/Kconfig"
source "drivers/parport/Kconfig"
config PPC601_SYNC_FIX
bool "Workarounds for PPC601 bugs"
depends on ALL_PPC && !POWER3
help
Some versions of the PPC601 (the first PowerPC chip) have bugs which
mean that extra synchronization instructions are required near
certain instructions, typically those that make major changes to the
CPU state. These extra instructions reduce performance slightly.
If you say N here, these extra instructions will not be included,
resulting in a kernel which will run faster but may not run at all
on some systems with the PPC601 chip.
If in doubt, say Y here.
config PROC_DEVICETREE
bool "Support for Open Firmware device tree in /proc"
depends on ALL_PPC
help
This option adds a device-tree directory under /proc which contains
an image of the device tree that the kernel copies from Open
Firmware. If unsure, say Y here.
config PPC_RTAS
bool "Support for RTAS (RunTime Abstraction Services) in /proc"
depends on ALL_PPC
---help---
When you use this option, you will be able to use RTAS from
userspace.
RTAS stands for RunTime Abstraction Services and should
provide a portable way to access and set system information. This is
commonly used on RS/6000 (pSeries) computers.
You can access RTAS via the special proc file system entry rtas.
Don't confuse this rtas entry with the one in /proc/device-tree/rtas
which is readonly.
If you don't know if you can use RTAS look into
/proc/device-tree/rtas. If there are some entries, it is very likely
that you will be able to use RTAS.
You can do cool things with rtas. To print out information about
various sensors in the system, just do a
$ cat /proc/rtas/sensors
or if you power off your machine at night but want it running when
you enter your office at 7:45 am, do a
# date -d 'tomorrow 7:30' +%s > /proc/rtas/poweron
and shutdown.
If unsure, say Y.
config PREP_RESIDUAL
bool "Support for PReP Residual Data"
depends on ALL_PPC
help
Some PReP systems have residual data passed to the kernel by the
firmware. This allows detection of memory size, devices present and
other useful pieces of information. Sometimes this information is
not present or incorrect.
Unless you expect to boot on a PReP system, there is no need to
select Y.
config PROC_PREPRESIDUAL
bool "Support for reading of PReP Residual Data in /proc"
depends on PREP_RESIDUAL
help
Enabling this option will create a /proc/residual file which allows
you to get at the residual data on PReP systems. You will need a tool
(lsresidual) to parse it. If you aren't on a PReP system, you don't
want this.
config PPCBUG_NVRAM
bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
default y if ALL_PPC
config CMDLINE_BOOL
bool "Default bootloader kernel arguments"
config CMDLINE
string "Initial kernel command string"
depends on CMDLINE_BOOL
default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
help
On some platforms, there is currently no way for the boot loader to
pass arguments to the kernel. For these platforms, you can supply
some command-line options at build time by entering them here. In
most cases you will need to specify the root device here.
config FB_CONSOLE
bool
depends on APUS
default y
config AMIGA
bool
depends on APUS
default y
help
This option enables support for the Amiga series of computers.
config ZORRO
bool
depends on APUS
default y
help
This enables support for the Zorro bus in the Amiga. If you have
expansion cards in your Amiga that conform to the Amiga
AutoConfig(tm) specification, say Y, otherwise N. Note that even
expansion cards that do not fit in the Zorro slots but fit in e.g.
the CPU slot may fall in this category, so you have to say Y to let
Linux use these.
config ABSTRACT_CONSOLE
bool
depends on APUS
default y
config APUS_FAST_EXCEPT
bool
depends on APUS
default y
config AMIGA_PCMCIA
bool "Amiga 1200/600 PCMCIA support"
depends on APUS && EXPERIMENTAL
help
Include support in the kernel for pcmcia on Amiga 1200 and Amiga
600. If you intend to use pcmcia cards say Y; otherwise say N.
config AMIGA_BUILTIN_SERIAL
tristate "Amiga builtin serial support"
depends on APUS
help
If you want to use your Amiga's built-in serial port in Linux,
answer Y.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you
want). If you want to compile it as a module, say M here and read
<file:Documentation/modules.txt>.
config GVPIOEXT
tristate "GVP IO-Extender support"
depends on APUS
help
If you want to use a GVP IO-Extender serial card in Linux, say Y.
Otherwise, say N.
config GVPIOEXT_LP
tristate "GVP IO-Extender parallel printer support"
depends on GVPIOEXT
help
Say Y to enable driving a printer from the parallel port on your
GVP IO-Extender card, N otherwise.
config GVPIOEXT_PLIP
tristate "GVP IO-Extender PLIP support"
depends on GVPIOEXT
help
Say Y to enable doing IP over the parallel port on your GVP
IO-Extender card, N otherwise.
config MULTIFACE_III_TTY
tristate "Multiface Card III serial support"
depends on APUS
help
If you want to use a Multiface III card's serial port in Linux,
answer Y.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
If you want to compile it as a module, say M here and read
<file:Documentation/modules.txt>.
config A2232
tristate "Commodore A2232 serial support (EXPERIMENTAL)"
depends on EXPERIMENTAL && APUS
---help---
This option supports the 2232 7-port serial card shipped with the
Amiga 2000 and other Zorro-bus machines, dating from 1989. At
a max of 19,200 bps, the ports are served by a 6551 ACIA UART chip
each, plus a 8520 CIA, and a master 6502 CPU and buffer as well. The
ports were connected with 8 pin DIN connectors on the card bracket,
for which 8 pin to DB25 adapters were supplied. The card also had
jumpers internally to toggle various pinning configurations.
This driver can be built as a module; but then "generic_serial.o"
will also be built as a module. This has to be loaded before
"ser_a2232.o". If you want to do this, answer M here and read
"<file:Documentation/modules.txt>".
config WHIPPET_SERIAL
tristate "Hisoft Whippet PCMCIA serial support"
depends on AMIGA_PCMCIA
help
HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
is no listing for the Whippet in their Amiga section.
config APNE
tristate "PCMCIA NE2000 support"
depends on AMIGA_PCMCIA
help
If you have a PCMCIA NE2000 compatible adapter, say Y. Otherwise,
say N.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you
want). The module is called apne.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
config SERIAL_CONSOLE
bool "Support for serial port console"
depends on APUS && (AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y)
config HEARTBEAT
bool "Use power LED as a heartbeat"
depends on APUS
help
Use the power-on LED on your machine as a load meter. The exact
behavior is platform-dependent, but normally the flash frequency is
a hyperbolic function of the 5-minute load average.
config PROC_HARDWARE
bool "/proc/hardware support"
depends on APUS
source "drivers/zorro/Kconfig"
endmenu
menu "Advanced setup"
config ADVANCED_OPTIONS
bool "Prompt for advanced kernel configuration options"
help
This option will enable prompting for a variety of advanced kernel
configuration options. These options can cause the kernel to not
work if they are set incorrectly, but can be used to optimize certain
aspects of kernel memory management.
Unless you know what you are doing, say N here.
config HIGHMEM_START_BOOL
bool "Set high memory pool address"
depends on ADVANCED_OPTIONS && HIGHMEM
help
This option allows you to set the base address of the kernel virtual
area used to map high memory pages. This can be useful in
optimizing the layout of kernel virtual memory.
Say N here unless you know what you are doing.
config HIGHMEM_START
hex "Virtual start address of high memory pool"
depends on HIGHMEM_START_BOOL
default "0xfe000000"
config LOWMEM_SIZE_BOOL
bool "Set maximum low memory"
depends on ADVANCED_OPTIONS && HIGHMEM
help
This option allows you to set the maximum amount of memory which
will be used as "low memory", that is, memory which the kernel can
access directly, without having to set up a kernel virtual mapping.
This can be useful in optimizing the layout of kernel virtual
memory.
Say N here unless you know what you are doing.
config LOWMEM_SIZE
hex "Maximum low memory size (in bytes)"
depends on LOWMEM_SIZE_BOOL
default "0x20000000"
config KERNEL_START_BOOL
bool "Set custom kernel base address"
depends on ADVANCED_OPTIONS
help
This option allows you to set the kernel virtual address at which
the kernel will map low memory (the kernel image will be linked at
this address). This can be useful in optimizing the virtual memory
layout of the system.
Say N here unless you know what you are doing.
config KERNEL_START
hex "Virtual address of kernel base"
depends on KERNEL_START_BOOL
default "0xc0000000"
config TASK_SIZE_BOOL
bool "Set custom user task size"
depends on ADVANCED_OPTIONS
help
This option allows you to set the amount of virtual address space
allocated to user tasks. This can be useful in optimizing the
virtual memory layout of the system.
Say N here unless you know what you are doing.
config TASK_SIZE
hex "Size of user task space"
depends on TASK_SIZE_BOOL
default "0x80000000"
config PIN_TLB
bool "Pinned Kernel TLBs (860 ONLY)"
depends on ADVANCED_OPTIONS && 8xx
config BOOT_LOAD_BOOL
bool "Set the boot link/load address"
depends on ADVANCED_OPTIONS && !ALL_PPC
help
This option allows you to set the initial load address of the zImage
or zImage.initrd file. This can be useful if you are on a board
which has a small amount of memory.
Say N here unless you know what you are doing.
config BOOT_LOAD
hex "Link/load address for booting"
depends on BOOT_LOAD_BOOL
default "0x00400000"
endmenu
source "drivers/mtd/Kconfig"
source "drivers/pnp/Kconfig"
source "drivers/block/Kconfig"
source "drivers/md/Kconfig"
menu "ATA/IDE/MFM/RLL support"
config IDE
tristate "ATA/IDE/MFM/RLL support"
---help---
If you say Y here, your kernel will be able to manage low cost mass
storage units such as ATA/(E)IDE and ATAPI units. The most common
cases are IDE hard drives and ATAPI CD-ROM drives.
If your system is pure SCSI and doesn't use these interfaces, you
can say N here.
Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
for mass storage units such as hard disks. It was designed by
Western Digital and Compaq Computer in 1984. Quite a number of
disks use the IDE interface.
Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
ATA-3. It provides support for larger disks (up to 8.4GB by means of
the LBA standard), more disks (4 instead of 2) and for other mass
storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
ATA-4 and provides faster (and more CPU friendly) transfer modes
than previous PIO (Programmed processor Input/Output) from previous
ATA/IDE standards by means of fast DMA controllers.
ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
CD-ROM drives, similar in many respects to the SCSI protocol.
SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
designed in order to prevent data corruption and disk crash by
detecting pre hardware failure conditions (heat, access time, and
the like...). Disks built since June 1995 may follow this standard.
The kernel itself don't manage this; however there are quite a
number of user programs such as smart that can query the status of
SMART parameters disk.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called ide.o.
For further information, please read <file:Documentation/ide.txt>.
If unsure, say Y.
source "drivers/ide/Kconfig"
endmenu
menu "SCSI support"
config SCSI
tristate "SCSI support"
---help---
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
any other SCSI device under Linux, say Y and make sure that you know
the name of your SCSI host adapter (the card inside your computer
that "speaks" the SCSI protocol, also called SCSI controller),
because you will be asked for it.
You also need to say Y here if you want support for the parallel
port version of the 100 MB IOMEGA ZIP drive.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called scsi_mod.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. However, do not compile this as a
module if your root file system (the one containing the directory /)
is located on a SCSI device.
source "drivers/scsi/Kconfig"
endmenu
source "drivers/message/fusion/Kconfig"
source "drivers/ieee1394/Kconfig"
source "drivers/message/i2o/Kconfig"
source "net/Kconfig"
menu "Network device support"
depends on NET
config NETDEVICES
bool "Network device support"
---help---
You can say N here if you don't intend to connect your Linux box to
any other computer at all or if all your connections will be over a
telephone line with a modem either via UUCP (UUCP is a protocol to
forward mail and news between unix hosts over telephone lines; read
the UUCP-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell
account or a BBS, even using term (term is a program which gives you
almost full Internet connectivity if you have a regular dial up
shell account on some Internet connected Unix computer. Read
<http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>).
You'll have to say Y if your computer contains a network card that
you want to use under Linux (make sure you know its name because you
will be asked for it and read the Ethernet-HOWTO (especially if you
plan to use more than one network card under Linux)) or if you want
to use SLIP (Serial Line Internet Protocol is the protocol used to
send Internet traffic over telephone lines or null modem cables) or
CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better
and newer replacement for SLIP) or PLIP (Parallel Line Internet
Protocol is mainly used to create a mini network by connecting the
parallel ports of two local machines) or AX.25/KISS (protocol for
sending Internet traffic over amateur radio links).
Make sure to read the NET-3-HOWTO. Eventually, you will have to read
Olaf Kirch's excellent and free book "Network Administrator's
Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If
unsure, say Y.
source "drivers/net/Kconfig"
source "drivers/atm/Kconfig"
endmenu
source "net/ax25/Kconfig"
source "net/irda/Kconfig"
source "drivers/isdn/Kconfig"
menu "Console drivers"
config VGA_CONSOLE
bool "VGA text console"
depends on !4xx && !8xx
help
Saying Y here will allow you to use Linux in text mode through a
display that complies with the generic VGA standard. This can be
useful on PReP systems and IBM RS/6000 or pSeries machines but is of
limited usefulness on Apple machines.
Say N here if you have an Apple machine.
source "drivers/video/Kconfig"
endmenu
menu "iSeries device drivers"
depends on PPC_ISERIES
config VIOCONS
tristate "iSeries Virtual Console Support"
config VIODASD
tristate "iSeries Virtual I/O disk support"
config VIODASD_IDE
bool "iSeries Virtual disk IDE emulation"
depends on VIODASD
config VIOCD
tristate "iSeries Virtual I/O CD support"
config VIOCD_AZTECH
bool "iSeries Virtual CD Aztech emulation"
depends on VIOCD
config VIOTAPE
tristate "iSeries Virtual Tape Support"
config VETH
tristate "iSeries Virtual Ethernet driver support"
config VIOPATH
bool
depends on VIOCONS || VIODASD || VIOTAPE || VIOCD
default y
config CD_NO_IDESCSI
bool
depends on VIOCD=y
default y
---help---
If you have a CD-ROM drive that is neither SCSI nor IDE/ATAPI, say Y
here, otherwise N. Read the CD-ROM-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
Note that the answer to this question doesn't directly affect the
kernel: saying N will just cause the configurator to skip all
the questions about these CD-ROM drives. If you are unsure what you
have, say Y and find out whether you have one of the following
drives.
For each of these drivers, a file Documentation/cdrom/{driver_name}
exists. Especially in cases where you do not know exactly which kind
of drive you have you should read there. Most of these drivers use a
file drivers/cdrom/{driver_name}.h where you can define your
interface parameters and switch some internal goodies.
All these CD-ROM drivers are also usable as a module ( = code which
can be inserted in and removed from the running kernel whenever you
want). If you want to compile them as module, say M instead of Y and
read <file:Documentation/modules.txt>.
If you want to use any of these CD-ROM drivers, you also have to
answer Y or M to "ISO 9660 CD-ROM file system support" below (this
answer will get "defaulted" for you if you enable any of the Linux
CD-ROM drivers).
config BLK_DEV_IDECD
tristate
depends on VIOCD=y
default y
endmenu
menu "Old CD-ROM drivers (not SCSI, not IDE)"
depends on !PPC_ISERIES
config CD_NO_IDESCSI
bool "Support non-SCSI/IDE/ATAPI CDROM drives"
source "drivers/cdrom/Kconfig"
endmenu
source "drivers/input/Kconfig"
menu "Macintosh device drivers"
# we want to change this to something like CONFIG_SYSCTRL_CUDA/PMU
config ADB_CUDA
bool "Support for CUDA based PowerMacs"
depends on ALL_PPC
help
This provides support for CUDA based Power Macintosh systems. This
includes most OldWorld PowerMacs, the first generation iMacs, the
Blue&White G3 and the "Yikes" G4 (PCI Graphics). All later models
should use CONFIG_ADB_PMU instead. It is safe to say Y here even if
your machine doesn't have a CUDA.
If unsure say Y.
config ADB_PMU
bool "Support for PMU based PowerMacs"
depends on ALL_PPC
help
On PowerBooks, iBooks, and recent iMacs and Power Macintoshes, the
PMU is an embedded microprocessor whose primary function is to
control system power, and battery charging on the portable models.
The PMU also controls the ADB (Apple Desktop Bus) which connects to
the keyboard and mouse on some machines, as well as the non-volatile
RAM and the RTC (real time clock) chip. Say Y to enable support for
this device; you should do so if your machine is one of those
mentioned above.
config PMAC_PBOOK
bool "Power management support for PowerBooks"
depends on ADB_PMU
---help---
This provides support for putting a PowerBook to sleep; it also
enables media bay support. Power management works on the
PB2400/3400/3500, Wallstreet, Lombard, and Bronze PowerBook G3 and
the Titanium Powerbook G4, as well as the iBooks. You should get
the power management daemon, pmud, to make it work and you must have
the /dev/pmu device (see the pmud README).
Get pmud from <ftp://ftp.samba.org/pub/ppclinux/pmud/>.
If you have a PowerBook, you should say Y here.
You may also want to compile the dma sound driver as a module and
have it autoloaded. The act of removing the module shuts down the
sound hardware for more power savings.
config PM
bool
depends on ALL_PPC && ADB_PMU && PMAC_PBOOK
default y
config PMAC_APM_EMU
tristate "APM emulation"
depends on PMAC_PBOOK
# made a separate option since backlight may end up beeing used
# on non-powerbook machines (but only on PMU based ones AFAIK)
config PMAC_BACKLIGHT
bool "Backlight control for LCD screens"
depends on ADB_PMU
help
Say Y here to build in code to manage the LCD backlight on a
Macintosh PowerBook. With this code, the backlight will be turned
on and off appropriately on power-management and lid-open/lid-closed
events; also, the PowerBook button device will be enabled so you can
change the screen brightness.
config MAC_FLOPPY
bool "Support for PowerMac floppy"
depends on ALL_PPC
help
If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple)
floppy controller, say Y here. Most commonly found in PowerMacs.
config MAC_SERIAL
tristate "Support for PowerMac serial ports"
depends on ALL_PPC
help
If you have Macintosh style serial ports (8 pin mini-DIN), say Y
here. If you also have regular serial ports and enable the driver
for them, you can't currently use the serial console feature.
config SERIAL_CONSOLE
bool "Support for console on serial port"
depends on ALL_PPC && MAC_SERIAL=y
config ADB
bool "Apple Desktop Bus (ADB) support"
depends on ALL_PPC
help
Apple Desktop Bus (ADB) support is for support of devices which
are connected to an ADB port. ADB devices tend to have 4 pins.
If you have an Apple Macintosh prior to the iMac, an iBook or
PowerBook, or a "Blue and White G3", you probably want to say Y
here. Otherwise say N.
config ADB_MACIO
bool "Include MacIO (CHRP) ADB driver"
depends on ADB
help
Say Y here to include direct support for the ADB controller in the
Hydra chip used on PowerPC Macintoshes of the CHRP type. (The Hydra
also includes a MESH II SCSI controller, DBDMA controller, VIA chip,
OpenPIC controller and two RS422/Geoports.)
config INPUT_ADBHID
bool "Support for ADB input devices (keyboard, mice, ...)"
depends on ADB && INPUT=y
help
Say Y here if you want to have ADB (Apple Desktop Bus) HID devices
such as keyboards, mice, joysticks, trackpads or graphic tablets
handled by the input layer. If you say Y here, make sure to say Y to
the corresponding drivers "Keyboard support" (CONFIG_INPUT_KEYBDEV),
"Mouse Support" (CONFIG_INPUT_MOUSEDEV) and "Event interface
support" (CONFIG_INPUT_EVDEV) as well.
If unsure, say Y.
config MAC_EMUMOUSEBTN
bool "Support for mouse button 2+3 emulation"
depends on INPUT_ADBHID
help
This provides generic support for emulating the 2nd and 3rd mouse
button with keypresses. If you say Y here, the emulation is still
disabled by default. The emulation is controlled by these sysctl
entries:
/proc/sys/dev/mac_hid/mouse_button_emulation
/proc/sys/dev/mac_hid/mouse_button2_keycode
/proc/sys/dev/mac_hid/mouse_button3_keycode
If you have an Apple machine with a 1-button mouse, say Y here.
config ANSLCD
bool "Support for ANS LCD display"
depends on ADB_CUDA
endmenu
source "drivers/char/Kconfig"
source "drivers/media/Kconfig"
source "fs/Kconfig"
menu "Sound"
config SOUND
tristate "Sound card support"
---help---
If you have a sound card in your computer, i.e. if it can say more
than an occasional beep, say Y. Be sure to have all the information
about your sound card and its configuration down (I/O port,
interrupt and DMA channel), because you will be asked for it.
You want to read the Sound-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. General information about
the modular sound system is contained in the files
<file:Documentation/sound/Introduction>. The file
<file:Documentation/sound/README.OSS> contains some slightly
outdated but still useful information as well.
If you have a PnP sound card and you want to configure it at boot
time using the ISA PnP tools (read
<http://www.roestock.demon.co.uk/isapnptools/>), then you need to
compile the sound card support as a module ( = code which can be
inserted in and removed from the running kernel whenever you want)
and load that module after the PnP configuration is finished. To do
this, say M here and read <file:Documentation/modules.txt> as well
as <file:Documentation/sound/README.modules>; the module will be
called soundcore.o.
I'm told that even without a sound card, you can make your computer
say more than an occasional beep, by programming the PC speaker.
Kernel patches and supporting utilities to do that are in the pcsp
package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
source "sound/oss/dmasound/Kconfig"
source "sound/Kconfig"
endmenu
source "arch/ppc/8xx_io/Kconfig"
source "arch/ppc/8260_io/Kconfig"
menu "IBM 40x options"
depends on 40x
config SERIAL_SICC
bool "SICC Serial port"
depends on STB03xxx
config UART1_DFLT_CONSOLE
bool
depends on SERIAL_SICC && UART0_TTYS1
default y
config SERIAL_SICC_CONSOLE
bool
depends on SERIAL_SICC && UART0_TTYS1
default y
endmenu
source "drivers/usb/Kconfig"
source "net/bluetooth/Kconfig"
source "lib/Kconfig"
menu "Kernel hacking"
config DEBUG_KERNEL
bool "Kernel debugging"
config DEBUG_SLAB
bool "Debug memory allocations"
depends on DEBUG_KERNEL
config MAGIC_SYSRQ
bool "Magic SysRq key"
depends on DEBUG_KERNEL
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
config DEBUG_SPINLOCK
bool "Spinlock debugging"
depends on DEBUG_KERNEL
help
Say Y here and to CONFIG_SMP to include code to check for missing
spinlock initialization and some other common spinlock errors.
config DEBUG_HIGHMEM
bool "Highmem debugging"
depends on DEBUG_KERNEL && HIGHMEM
config KALLSYMS
bool "Load all symbols for debugging/kksymoops"
depends on DEBUG_KERNEL
config KGDB
bool "Include kgdb kernel debugger"
depends on DEBUG_KERNEL
help
Include in-kernel hooks for kgdb, the Linux kernel source level
debugger. See <http://kgdb.sourceforge.net/> for more information.
Unless you are intending to debug the kernel, say N here.
choice
prompt "Serial Port"
depends on KGDB
default KGDB_TTYS1
config KGDB_TTYS0
bool "ttyS0"
config KGDB_TTYS1
bool "ttyS1"
config KGDB_TTYS2
bool "ttyS2"
config KGDB_TTYS3
bool "ttyS3"
endchoice
config XMON
bool "Include xmon kernel debugger"
depends on DEBUG_KERNEL
help
Include in-kernel hooks for the xmon kernel monitor/debugger.
Unless you are intending to debug the kernel, say N here.
config BDI_SWITCH
bool "Include BDI-2000 user context switcher"
depends on DEBUG_KERNEL
help
Include in-kernel support for the Abatron BDI2000 debugger.
Unless you are intending to debug the kernel with one of these
machines, say N here.
config MORE_COMPILE_OPTIONS
bool "Add any additional compile options"
depends on DEBUG_KERNEL && (KGDB || XMON || BDI_SWITCH)
help
If you want to add additional CFLAGS to the kernel build, such as -g
for KGDB or the BDI2000, enable this option and then enter what you
would like to add in the next question.
config COMPILE_OPTIONS
string "Additional compile arguments"
depends on MORE_COMPILE_OPTIONS
default "-g -ggdb"
config BOOTX_TEXT
bool "Support for early boot text console (BootX or OpenFirmware only)"
depends on ALL_PPC
help
Say Y here to see progress messages from the boot firmware in text
mode. Requires either BootX or Open Firmware.
config SERIAL_TEXT_DEBUG
bool "Support for early boot texts over serial port"
depends on 4xx || GT64260 || LOPEC || MCPN765 || PPLUS || PRPMC800 || SANDPOINT || ZX4500
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
#
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/config-language.txt.
#
config UID16
bool
config RWSEM_GENERIC_SPINLOCK
bool
config RWSEM_XCHGADD_ALGORITHM
bool
default y
config GENERIC_ISA_DMA
bool
default y
config HAVE_DEC_LOCK
bool
default y
config EARLY_PRINTK
bool
default y
source "init/Kconfig"
menu "Platform support"
choice
prompt "Platform Type"
default PPC_PSERIES
config PPC_ISERIES
bool "iSeries"
config PPC_PSERIES
bool "pSeries"
endchoice
config PPC
bool
default y
config PPC64
bool
default y
config SMP
bool "Symmetric multi-processing support"
---help---
This enables support for systems with more than one CPU. If you have
a system with only one CPU, say N. If you have a system with more
than one CPU, say Y. Note that the kernel does not currently
support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
since they have inadequate hardware support for multiprocessor
operation.
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 single-processor machines.
On a single-processor machine, the kernel will run faster if you say
N here.
If you don't know what to do here, say N.
config IRQ_ALL_CPUS
bool "Distribute interrupts on all CPUs by default"
depends on SMP
help
This option gives the kernel permission to distribute IRQs across
multiple CPUs. Saying N here will route all IRQs to the first
CPU. Generally saying Y is safe, although some problems have been
reported with SMP Power Macintoshes with this option enabled.
config NR_CPUS
int "Maximum number of CPUs (2-64)"
depends on SMP
default "32"
config HMT
bool "Hardware multithreading"
depends on SMP && PPC_PSERIES
config DISCONTIGMEM
bool "Discontiguous Memory Support"
depends on SMP && PPC_PSERIES
config NUMA
bool "NUMA support"
depends on DISCONTIGMEM
config PREEMPT
bool
help
This option reduces the latency of the kernel when reacting to
real-time or interactive events by allowing a low priority process to
be preempted even if it is in kernel mode executing a system call.
Unfortunately the kernel code has some race conditions if both
CONFIG_SMP and CONFIG_PREEMPT are enabled, so this option is
currently disabled if you are building an SMP kernel.
Say Y here if you are building a kernel for a desktop, embedded
or real-time system. Say N if you are unsure.
config MSCHUNKS
bool
depends on PPC_ISERIES
default y
config RTAS_FLASH
tristate "Firmware flash interface"
depends on !PPC_ISERIES
endmenu
menu "General setup"
config ISA
bool
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. If you have an Apple machine, say N here; if you
have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If
you have an embedded board, consult your board documentation.
config SBUS
bool
config MCA
bool
config EISA
bool
config PCI
bool
default y
help
Find out whether your system includes a PCI bus. PCI is the name of
a bus system, i.e. the way the CPU talks to the other stuff inside
your box. If you say Y here, the kernel will include drivers and
infrastructure code to support PCI bus devices.
# only elf supported, a.out is not -- Cort
config KCORE_ELF
bool
depends on PROC_FS
default y
help
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image in ELF format. This
can be used in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel.
config BINFMT_ELF
bool "Kernel support for 64-bit ELF binaries"
help
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems.
config BINFMT_ELF32
tristate "Kernel support for 32-bit ELF binaries"
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
source "drivers/pci/Kconfig"
config HOTPLUG
bool "Support for hot-pluggable devices"
---help---
Say Y here if you want to plug devices into your computer while
the system is running, and be able to use them quickly. In many
cases, the devices can likewise be unplugged at any time too.
One well known example of this is PCMCIA- or PC-cards, credit-card
size devices such as network cards, modems or hard drives which are
plugged into slots found on all modern laptop computers. Another
example, used on modern desktops as well as laptops, is USB.
Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
software (at <http://linux-hotplug.sourceforge.net/>) and install it.
Then your kernel will automatically call out to a user mode "policy
agent" (/sbin/hotplug) to load modules and set up software needed
to use devices as you hotplug them.
source "drivers/pcmcia/Kconfig"
source "drivers/hotplug/Kconfig"
config PROC_DEVICETREE
bool "Support for Open Firmware device tree in /proc"
depends on !PPC_ISERIES
help
This option adds a device-tree directory under /proc which contains
an image of the device tree that the kernel copies from Open
Firmware. If unsure, say Y here.
config CMDLINE_BOOL
bool "Default bootloader kernel arguments"
depends on !PPC_ISERIES
config CMDLINE
string "Initial kernel command string"
depends on CMDLINE_BOOL
default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
help
On some platforms, there is currently no way for the boot loader to
pass arguments to the kernel. For these platforms, you can supply
some command-line options at build time by entering them here. In
most cases you will need to specify the root device here.
endmenu
source "drivers/mtd/Kconfig"
source "drivers/parport/Kconfig"
source "drivers/pnp/Kconfig"
source "drivers/block/Kconfig"
menu "ATA/ATAPI/MFM/RLL support"
config IDE
tristate "ATA/ATAPI/MFM/RLL support"
---help---
If you say Y here, your kernel will be able to manage low cost mass
storage units such as ATA/(E)IDE and ATAPI units. The most common
cases are IDE hard drives and ATAPI CD-ROM drives.
If your system is pure SCSI and doesn't use these interfaces, you
can say N here.
Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
for mass storage units such as hard disks. It was designed by
Western Digital and Compaq Computer in 1984. Quite a number of
disks use the IDE interface.
Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
ATA-3. It provides support for larger disks (up to 8.4GB by means of
the LBA standard), more disks (4 instead of 2) and for other mass
storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
ATA-4 and provides faster (and more CPU friendly) transfer modes
than previous PIO (Programmed processor Input/Output) from previous
ATA/IDE standards by means of fast DMA controllers.
ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
CD-ROM drives, similar in many respects to the SCSI protocol.
SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
designed in order to prevent data corruption and disk crash by
detecting pre hardware failure conditions (heat, access time, and
the like...). Disks built since June 1995 may follow this standard.
The kernel itself don't manage this; however there are quite a
number of user programs such as smart that can query the status of
SMART parameters disk.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called ide.o.
For further information, please read <file:Documentation/ide.txt>.
If unsure, say Y.
source "drivers/ide/Kconfig"
endmenu
menu "SCSI device support"
config SCSI
tristate "SCSI device support"
---help---
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
any other SCSI device under Linux, say Y and make sure that you know
the name of your SCSI host adapter (the card inside your computer
that "speaks" the SCSI protocol, also called SCSI controller),
because you will be asked for it.
You also need to say Y here if you want support for the parallel
port version of the 100 MB IOMEGA ZIP drive.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called scsi_mod.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. However, do not compile this as a
module if your root file system (the one containing the directory /)
is located on a SCSI device.
source "drivers/scsi/Kconfig"
endmenu
source "drivers/md/Kconfig"
source "drivers/message/fusion/Kconfig"
source "drivers/ieee1394/Kconfig"
source "drivers/message/i2o/Kconfig"
source "net/Kconfig"
menu "Network device support"
depends on NET
config NETDEVICES
bool "Network device support"
---help---
You can say N here if you don't intend to connect your Linux box to
any other computer at all or if all your connections will be over a
telephone line with a modem either via UUCP (UUCP is a protocol to
forward mail and news between unix hosts over telephone lines; read
the UUCP-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell
account or a BBS, even using term (term is a program which gives you
almost full Internet connectivity if you have a regular dial up
shell account on some Internet connected Unix computer. Read
<http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>).
You'll have to say Y if your computer contains a network card that
you want to use under Linux (make sure you know its name because you
will be asked for it and read the Ethernet-HOWTO (especially if you
plan to use more than one network card under Linux)) or if you want
to use SLIP (Serial Line Internet Protocol is the protocol used to
send Internet traffic over telephone lines or null modem cables) or
CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better
and newer replacement for SLIP) or PLIP (Parallel Line Internet
Protocol is mainly used to create a mini network by connecting the
parallel ports of two local machines) or AX.25/KISS (protocol for
sending Internet traffic over amateur radio links).
Make sure to read the NET-3-HOWTO. Eventually, you will have to read
Olaf Kirch's excellent and free book "Network Administrator's
Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If
unsure, say Y.
source "drivers/net/Kconfig"
source "drivers/atm/Kconfig"
endmenu
source "net/ax25/Kconfig"
source "net/irda/Kconfig"
source "drivers/isdn/Kconfig"
source "drivers/telephony/Kconfig"
#
# input before char - char/joystick depends on it. As does USB.
#
source "drivers/input/Kconfig"
source "drivers/char/Kconfig"
source "drivers/media/Kconfig"
source "fs/Kconfig"
menu "Console drivers"
depends on VT
source "drivers/video/Kconfig"
endmenu
menu "Sound"
config SOUND
tristate "Sound card support"
---help---
If you have a sound card in your computer, i.e. if it can say more
than an occasional beep, say Y. Be sure to have all the information
about your sound card and its configuration down (I/O port,
interrupt and DMA channel), because you will be asked for it.
You want to read the Sound-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. General information about
the modular sound system is contained in the files
<file:Documentation/sound/Introduction>. The file
<file:Documentation/sound/README.OSS> contains some slightly
outdated but still useful information as well.
If you have a PnP sound card and you want to configure it at boot
time using the ISA PnP tools (read
<http://www.roestock.demon.co.uk/isapnptools/>), then you need to
compile the sound card support as a module ( = code which can be
inserted in and removed from the running kernel whenever you want)
and load that module after the PnP configuration is finished. To do
this, say M here and read <file:Documentation/modules.txt> as well
as <file:Documentation/sound/README.modules>; the module will be
called soundcore.o.
I'm told that even without a sound card, you can make your computer
say more than an occasional beep, by programming the PC speaker.
Kernel patches and supporting utilities to do that are in the pcsp
package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
source "sound/Kconfig"
endmenu
source "drivers/usb/Kconfig"
source "net/bluetooth/Kconfig"
menu "iSeries device drivers"
depends on PPC_ISERIES
config VIOCONS
tristate "iSeries Virtual Console Support"
config VIODASD
tristate "iSeries Virtual I/O disk support"
config VIODASD_IDE
bool "iSeries Virtual disk IDE emulation"
depends on VIODASD
config VIOCD
tristate "iSeries Virtual I/O CD support"
config VIOCD_AZTECH
bool "iSeries Virtual CD Aztech emulation"
depends on VIOCD
config VIOTAPE
tristate "iSeries Virtual Tape Support"
config VETH
tristate "iSeries Virtual Ethernet driver support"
endmenu
config VIOPATH
bool
depends on PPC_ISERIES
default y
menu "Kernel hacking"
config DEBUG_KERNEL
bool "Kernel debugging"
config DEBUG_SLAB
bool "Debug memory allocations"
depends on DEBUG_KERNEL
config MAGIC_SYSRQ
bool "Magic SysRq key"
depends on DEBUG_KERNEL
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
config XMON
bool "Include xmon kernel debugger"
depends on DEBUG_KERNEL
help
Include in-kernel hooks for the xmon kernel monitor/debugger.
Unless you are intending to debug the kernel, say N here.
config XMON_DEFAULT
bool "Enable xmon by default"
depends on XMON
config PPCDBG
bool "Include PPCDBG realtime debugging"
depends on DEBUG_KERNEL
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"
#
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/config-language.txt.
#
config ISA
bool
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 EISA
bool
---help---
The Extended Industry Standard Architecture (EISA) bus was
developed as an open alternative to the IBM MicroChannel bus.
The EISA bus provided some of the features of the IBM MicroChannel
bus while maintaining backward compatibility with cards made for
the older ISA bus. The EISA bus saw limited use between 1988 and
1995 when it was made obsolete by the PCI bus.
Say Y here if you are building a kernel for an EISA-based machine.
Otherwise, say N.
config MCA
bool
help
MicroChannel Architecture is found in some IBM PS/2 machines and
laptops. It is a bus system similar to PCI or ISA. See
<file:Documentation/mca.txt> (and especially the web page given
there) before attempting to build an MCA bus kernel.
config UID16
bool
default y
config RWSEM_GENERIC_SPINLOCK
bool
config RWSEM_XCHGADD_ALGORITHM
bool
default y
config GENERIC_BUST_SPINLOCK
bool
mainmenu "Linux Kernel Configuration"
config ARCH_S390
bool
default y
help
Select this option, if you want to run the Kernel on one of IBM's
mainframes of the S/390 generation. You should have installed the
s390-compiler released by IBM (based on gcc-2.95.1) before.
source "init/Kconfig"
menu "Base setup"
comment "Processor type and features"
config SMP
bool "Symmetric multi-processing support"
---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.
Note that if you say Y here and choose architecture "586" or
"Pentium" under "Processor family", the kernel will not work on 486
architectures. Similarly, multiprocessor kernels for the "PPro"
architecture may not work on all Pentium based boards.
People using multiprocessor machines who say Y here should also say
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
Management" code will be disabled if you say Y here.
See also the <file:Documentation/smp.tex>,
<file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>,
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
<http://www.linuxdoc.org/docs.html#howto>.
If you don't know what to do here, say N.
config MATHEMU
bool "IEEE FPU emulation"
help
This option is required for IEEE compliant floating point arithmetic
on the Alpha. The only time you would ever not say Y is to say M in
order to debug the code. Say Y unless you know what you are doing.
config NR_CPUS
int "Maximum number of CPUs (2-32)"
depends on SMP
default "32"
comment "I/O subsystem configuration"
config MACHCHK_WARNING
bool "Process warning machine checks"
help
Select this option if you want the machine check handler on IBM S/390 or
zSeries to process warning machine checks (e.g. on power failures).
If unsure, say "Y".
config QDIO
tristate "QDIO support"
---help---
This driver provides the Queued Direct I/O base support for the
IBM S/390 (G5 and G6) and eServer zSeries (z800 and z900).
For details please refer to the documentation provided by IBM at
<http://www10.software.ibm.com/developerworks/opensource/linux390>
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called qdio.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
If unsure, say Y.
config QDIO_PERF_STATS
bool "Performance statistics in /proc"
depends on QDIO
help
Say Y here to get performance statistics in /proc/qdio_perf
If unsure, say N.
comment "Misc"
config PREEMPT
bool "Preemptible Kernel"
config IPL
bool "Builtin IPL record support"
help
If you want to use the produced kernel to IPL directly from a
device, you have to merge a bootsector specific to the device
into the first bytes of the kernel. You will have to select the
IPL device.
choice
prompt "IPL method generated into head.S"
depends on IPL
default IPL_TAPE
config IPL_TAPE
bool "tape"
help
Select "tape" if you want to IPL the image from a Tape.
Select "vm_reader" if you are running under VM/ESA and want
to IPL the image from the emulated card reader.
config IPL_VM
bool "vm_reader"
endchoice
config KCORE_ELF
bool
default y
---help---
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image. This can be used
in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
You have two choices here: ELF and A.OUT. Selecting ELF will make
/proc/kcore appear in ELF core format as defined by the Executable
and Linking Format specification. Selecting A.OUT will choose the
old "a.out" format which may be necessary for some old versions
of binutils or on some architectures.
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel so if you
don't understand what this means or are not a kernel hacker, just
leave it at its default value ELF.
config BINFMT_ELF
tristate "Kernel support for ELF binaries"
---help---
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems. Saying Y here will enable your kernel to run ELF binaries
and enlarge it by about 13 KB. ELF support under Linux has now all
but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
because it is portable (this does *not* mean that you will be able
to run executables from different architectures or operating systems
however) and makes building run-time libraries very easy. Many new
executables are distributed solely in ELF format. You definitely
want to say Y here.
Information about ELF is contained in the ELF HOWTO available from
<http://www.linuxdoc.org/docs.html#howto>.
If you find that after upgrading from Linux kernel 1.2 and saying Y
here, you still can't run any ELF binaries (they just crash), then
you'll have to install the newest ELF runtime libraries, including
ld.so (check the file <file:Documentation/Changes> for location and
latest version).
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called binfmt_elf.o. Saying M or N here is dangerous because
some crucial programs on your system might be in ELF format.
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
config PROCESS_DEBUG
bool "Show crashed user process info"
help
Say Y to print all process fault locations to the console. This is
a debugging option; you probably do not want to set it unless you
are an S390 port maintainer.
config PFAULT
bool "Pseudo page fault support"
help
Select this option, if you want to use PFAULT pseudo page fault
handling under VM. If running native or in LPAR, this option
has no effect. If your VM does not support PFAULT, PAGEEX
pseudo page fault handling will be used.
Note that VM 4.2 supports PFAULT but has a bug in its
implementation that causes some problems.
Everybody who wants to run Linux under VM != VM4.2 should select
this option.
config SHARED_KERNEL
bool "VM shared kernel support"
help
Select this option, if you want to share the text segment of the
Linux kernel between different VM guests. This reduces memory
usage with lots of guests but greatly increases kernel size.
You should only select this option if you know what you are
doing and want to exploit this feature.
endmenu
menu "SCSI support"
config SCSI
tristate "SCSI support"
source "drivers/scsi/Kconfig"
endmenu
source "drivers/s390/Kconfig"
source "net/Kconfig"
source "fs/Kconfig"
menu "Kernel hacking"
#if [ "$CONFIG_CTC" = "y" ]; then
# bool 'Remote GDB kernel debugging' CONFIG_REMOTE_DEBUG
#fi
config MAGIC_SYSRQ
bool "Magic SysRq key"
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"
#
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/config-language.txt.
#
config ISA
bool
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 EISA
bool
---help---
The Extended Industry Standard Architecture (EISA) bus was
developed as an open alternative to the IBM MicroChannel bus.
The EISA bus provided some of the features of the IBM MicroChannel
bus while maintaining backward compatibility with cards made for
the older ISA bus. The EISA bus saw limited use between 1988 and
1995 when it was made obsolete by the PCI bus.
Say Y here if you are building a kernel for an EISA-based machine.
Otherwise, say N.
config MCA
bool
help
MicroChannel Architecture is found in some IBM PS/2 machines and
laptops. It is a bus system similar to PCI or ISA. See
<file:Documentation/mca.txt> (and especially the web page given
there) before attempting to build an MCA bus kernel.
config RWSEM_GENERIC_SPINLOCK
bool
config RWSEM_XCHGADD_ALGORITHM
bool
default y
config GENERIC_BUST_SPINLOCK
bool
mainmenu "Linux Kernel Configuration"
config ARCH_S390
bool
default y
help
Select this option, if you want to run the Kernel on one of IBM's
mainframes of the S/390 generation. You should have installed the
s390-compiler released by IBM (based on gcc-2.95.1) before.
config ARCH_S390X
bool
default y
source "init/Kconfig"
menu "Base setup"
comment "Processor type and features"
config SMP
bool "Symmetric multi-processing support"
---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.
Note that if you say Y here and choose architecture "586" or
"Pentium" under "Processor family", the kernel will not work on 486
architectures. Similarly, multiprocessor kernels for the "PPro"
architecture may not work on all Pentium based boards.
People using multiprocessor machines who say Y here should also say
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
Management" code will be disabled if you say Y here.
See also the <file:Documentation/smp.tex>,
<file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>,
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
<http://www.linuxdoc.org/docs.html#howto>.
If you don't know what to do here, say N.
config NR_CPUS
int "Maximum number of CPUs (2-64)"
depends on SMP
default "64"
config S390_SUPPORT
bool "Kernel support for 31 bit emulation"
help
Select this option if you want to enable your system kernel to
handle system-calls from ELF binaries for 31 bit ESA. This option
(and some other stuff like libraries and such) is needed for
executing 31 bit applications. It is safe to say "Y".
config BINFMT_ELF32
tristate "Kernel support for 31 bit ELF binaries"
depends on S390_SUPPORT
help
This allows you to run 32-bit Linux/ELF binaries on your Ultra.
Everybody wants this; say Y.
comment "I/O subsystem configuration"
config MACHCHK_WARNING
bool "Process warning machine checks"
help
Select this option if you want the machine check handler on IBM S/390 or
zSeries to process warning machine checks (e.g. on power failures).
If unsure, say "Y".
config QDIO
tristate "QDIO support"
---help---
This driver provides the Queued Direct I/O base support for the
IBM S/390 (G5 and G6) and eServer zSeries (z800 and z900).
For details please refer to the documentation provided by IBM at
<http://www10.software.ibm.com/developerworks/opensource/linux390>
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called qdio.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
If unsure, say Y.
config QDIO_PERF_STATS
bool "Performance statistics in /proc"
depends on QDIO
help
Say Y here to get performance statistics in /proc/qdio_perf
If unsure, say N.
comment "Misc"
config PREEMPT
bool "Preemptible Kernel"
config IPL
bool "Builtin IPL record support"
help
If you want to use the produced kernel to IPL directly from a
device, you have to merge a bootsector specific to the device
into the first bytes of the kernel. You will have to select the
IPL device.
choice
prompt "IPL method generated into head.S"
depends on IPL
default IPL_TAPE
config IPL_TAPE
bool "tape"
help
Select "tape" if you want to IPL the image from a Tape.
Select "vm_reader" if you are running under VM/ESA and want
to IPL the image from the emulated card reader.
config IPL_VM
bool "vm_reader"
endchoice
config KCORE_ELF
bool
default y
---help---
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image. This can be used
in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
You have two choices here: ELF and A.OUT. Selecting ELF will make
/proc/kcore appear in ELF core format as defined by the Executable
and Linking Format specification. Selecting A.OUT will choose the
old "a.out" format which may be necessary for some old versions
of binutils or on some architectures.
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel so if you
don't understand what this means or are not a kernel hacker, just
leave it at its default value ELF.
config BINFMT_ELF
tristate "Kernel support for ELF binaries"
---help---
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems. Saying Y here will enable your kernel to run ELF binaries
and enlarge it by about 13 KB. ELF support under Linux has now all
but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
because it is portable (this does *not* mean that you will be able
to run executables from different architectures or operating systems
however) and makes building run-time libraries very easy. Many new
executables are distributed solely in ELF format. You definitely
want to say Y here.
Information about ELF is contained in the ELF HOWTO available from
<http://www.linuxdoc.org/docs.html#howto>.
If you find that after upgrading from Linux kernel 1.2 and saying Y
here, you still can't run any ELF binaries (they just crash), then
you'll have to install the newest ELF runtime libraries, including
ld.so (check the file <file:Documentation/Changes> for location and
latest version).
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called binfmt_elf.o. Saying M or N here is dangerous because
some crucial programs on your system might be in ELF format.
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
config PROCESS_DEBUG
bool "Show crashed user process info"
help
Say Y to print all process fault locations to the console. This is
a debugging option; you probably do not want to set it unless you
are an S390 port maintainer.
config PFAULT
bool "Pseudo page fault support"
help
Select this option, if you want to use PFAULT pseudo page fault
handling under VM. If running native or in LPAR, this option
has no effect. If your VM does not support PFAULT, PAGEEX
pseudo page fault handling will be used.
Note that VM 4.2 supports PFAULT but has a bug in its
implementation that causes some problems.
Everybody who wants to run Linux under VM != VM4.2 should select
this option.
config SHARED_KERNEL
bool "VM shared kernel support"
help
Select this option, if you want to share the text segment of the
Linux kernel between different VM guests. This reduces memory
usage with lots of guests but greatly increases kernel size.
You should only select this option if you know what you are
doing and want to exploit this feature.
endmenu
menu "SCSI support"
config SCSI
tristate "SCSI support"
source "drivers/scsi/Kconfig"
endmenu
source "drivers/s390/Kconfig"
source "net/Kconfig"
source "fs/Kconfig"
menu "Kernel hacking"
#if [ "$CONFIG_CTC" = "y" ]; then
# bool 'Remote GDB kernel debugging' CONFIG_REMOTE_DEBUG
#fi
config MAGIC_SYSRQ
bool "Magic SysRq key"
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"
#
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/config-language.txt.
#
mainmenu "Linux/SuperH Kernel Configuration"
config SUPERH
bool
default y
help
The SuperH is a RISC processor targeted for use in embedded systems
and consumer electronics; it was also used in the Sega Dreamcast
gaming console. The SuperH port has a home page at
<http://www.sh-linux.org/>.
config UID16
bool
default y
config RWSEM_GENERIC_SPINLOCK
bool
default y
config RWSEM_XCHGADD_ALGORITHM
bool
config GENERIC_ISA_DMA
bool
default y
source "init/Kconfig"
menu "Processor type and features"
choice
prompt "SuperH system type"
default SH_GENERIC
config SH_GENERIC
bool "Generic"
---help---
Select Generic if configuring for a generic SuperH system.
The "generic" option compiles in *all* the possible hardware
support and relies on the sh_mv= kernel commandline option to choose
at runtime which routines to use. "MV" stands for "machine vector";
each of the machines below is described by a machine vector.
Select SolutionEngine if configuring for a Hitachi SH7709
or SH7750/7750S evalutation board.
Select Overdrive if configuring for a ST407750 Overdrive board.
More information at
<http://linuxsh.sourceforge.net/docs/7750overdrive.php3>.
Select HP620 if configuring for a HP Jornada HP620.
More information (hardware only) at
<http://www.hp.com/jornada/>.
Select HP680 if configuring for a HP Jornada HP680.
More information (hardware only) at
<http://www.hp.com/jornada/products/680/>.
Select HP690 if configuring for a HP Jornada HP690.
More information (hardware only) at
<http://www.hp.com/jornada/products/680/>.
Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
More information at
<http://sources.redhat.com/ecos/hardware.html#SuperH>.
Select DMIDA if configuring for a DataMyte 4000 Industrial
Digital Assistant. More information at <http://www.dmida.com/>.
Select EC3104 if configuring for a system with an Eclipse
International EC3104 chip, e.g. the Harris AD2000 or Compaq Aero 8000.
Select Dreamcast if configuring for a SEGA Dreamcast.
More information at
<http://www.m17n.org/linux-sh/dreamcast/>. There is a
Dreamcast project is at <http://linuxdc.sourceforge.net/>.
Select BareCPU if you know what this means, and it applies
to your system.
config SH_SOLUTION_ENGINE
bool "SolutionEngine"
help
Select SolutionEngine if configuring for a Hitachi SH7709
or SH7750 evalutation board.
config SH_7751_SOLUTION_ENGINE
bool "SolutionEngine7751"
help
Select 7751 SolutionEngine if configuring for a Hitachi SH7751
evalutation board.
config SH_STB1_HARP
bool "STB1_Harp"
config SH_STB1_OVERDRIVE
bool "STB1_Overdrive"
config SH_HP620
bool "HP620"
help
Select HP620 if configuring for a HP jornada HP620.
More information (hardware only) at
<http://www.hp.com/jornada/>.
config SH_HP680
bool "HP680"
help
Select HP680 if configuring for a HP Jornada HP680.
More information (hardware only) at
<http://www.hp.com/jornada/products/680/>.
config SH_HP690
bool "HP690"
help
Select HP690 if configuring for a HP Jornada HP690.
More information (hardware only)
at <http://www.hp.com/jornada/products/680/>.
config SH_CQREEK
bool "CqREEK"
help
Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
More information at
<http://sources.redhat.com/ecos/hardware.html#SuperH>.
config SH_DMIDA
bool "DMIDA"
help
Select DMIDA if configuring for a DataMyte 4000 Industrial
Digital Assistant. More information at <http://www.dmida.com/>.
config SH_EC3104
bool "EC3104"
help
Select EC3104 if configuring for a system with an Eclipse
International EC3104 chip, e.g. the Harris AD2000.
config SH_DREAMCAST
bool "Dreamcast"
help
Select Dreamcast if configuring for a SEGA Dreamcast.
More information at
<http://www.m17n.org/linux-sh/dreamcast/>. There is a
Dreamcast project is at <http://linuxdc.sourceforge.net/>.
config SH_CAT68701
bool "CAT68701"
config SH_BIGSUR
bool "BigSur"
config SH_SH2000
bool "SH2000"
config SH_ADX
bool "ADX"
config SH_UNKNOWN
bool "BareCPU"
help
"Bare CPU" aka "unknown" means an SH-based system which is not one
of the specific ones mentioned above, which means you need to enter
all sorts of stuff like CONFIG_MEMORY_START because the config
system doesn't already know what it is. You get a machine vector
without any platform-specific code in it, so things like the RTC may
not work.
This option is for the early stages of porting to a new machine.
endchoice
# The SH7750 RTC module is disabled in the Dreamcast
config SH_RTC
bool
depends on !SH_DREAMCAST
default y
help
Selecting this option will allow the Linux kernel to emulate
PC's RTC.
If unsure, say N.
config SH_HP600
bool
depends on SH_HP620 || SH_HP680 || SH_HP690
default y
choice
prompt "Processor type"
default CPU_SUBTYPE_SH7708
config CPU_SUBTYPE_SH7707
bool "SH7707"
---help---
Select the type of SuperH processor you have. This information is
used for optimizing and configuration purposes.
Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
if you have a 100 Mhz SH-3 HD6417708R CPU.
Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
Select SH7751 if you have a SH7751
Select ST40STB1 if you have a ST40STB1
config CPU_SUBTYPE_SH7708
bool "SH7708"
help
Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
if you have a 100 Mhz SH-3 HD6417708R CPU.
config CPU_SUBTYPE_SH7709
bool "SH7709"
help
Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
config CPU_SUBTYPE_SH7750
bool "SH7750"
help
Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
config CPU_SUBTYPE_SH7751
bool "SH7751"
config CPU_SUBTYPE_ST40STB1
bool "ST40STB1"
endchoice
config CPU_SH3
bool
depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7708 || CPU_SUBTYPE_SH7707
default y
config CPU_SH4
bool
depends on CPU_SUBTYPE_ST40STB1 || CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7750
default y
config CPU_LITTLE_ENDIAN
bool "Little Endian"
help
Some MIPS machines can be configured for either little or big endian
byte order. These modes require different kernels. Say Y if your
machine is little endian, N if it's a big endian machine.
# Platform-specific memory start and size definitions
config MEMORY_START
hex "Physical memory start address" if !MEMORY_SET
default "08000000" if !MEMORY_SET || SH_ADX || CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
default "0c000000" if SH_HP600 || SH_BIGSUR || SH_DREAMCAST || SH_SH2000 || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE
---help---
Computers built with Hitachi SuperH processors always
map the ROM starting at address zero. But the processor
does not specify the range that RAM takes.
The physical memory (RAM) start address will be automatically
set to 08000000, unless you selected one of the following
processor types: SolutionEngine, Overdrive, HP620, HP680, HP690,
in which case the start address will be set to 0c000000.
Tweak this only when porting to a new machine which is not already
known by the config system. Changing it from the known correct
value on any of the known systems will only lead to disaster.
config MEMORY_SIZE
hex "Physical memory size" if !MEMORY_SET
default "00400000" if !MEMORY_SET || SH_ADX || CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY || SH_HP600 || SH_BIGSUR || SH_DREAMCAST || SH_SH2000
default "04000000" if SH_7751_SOLUTION_ENGINE
default "02000000" if SH_SOLUTION_ENGINE
help
This sets the default memory size assumed by your SH kernel. It can
be overridden as normal by the 'mem=' argument on the kernel command
line. If unsure, consult your board specifications or just leave it
as 0x00400000 which was the default value before this became
configurable.
config MEMORY_SET
bool
depends on SH_ADX || CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY || SH_HP600 || SH_BIGSUR || SH_DREAMCAST || SH_SH2000 || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE
default y
help
This is an option about which you will never be asked a question.
Therefore, I conclude that you do not exist - go away.
There is a grue here.
config ST40_LMI_MEMORY
bool "Memory on LMI"
depends on CPU_SUBTYPE_ST40STB1
# If none of the above have set memory start/size, ask the user.
endmenu
config DISCONTIGMEM
bool
depends on SH_HP690
default y
help
Say Y to upport 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.
menu "General setup"
# Even on SuperH devices which don't have an ISA bus,
# this variable helps the PCMCIA modules handle
# IRQ requesting properly -- Greg Banks.
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 EISA
bool
---help---
The Extended Industry Standard Architecture (EISA) bus was
developed as an open alternative to the IBM MicroChannel bus.
The EISA bus provided some of the features of the IBM MicroChannel
bus while maintaining backward compatibility with cards made for
the older ISA bus. The EISA bus saw limited use between 1988 and
1995 when it was made obsolete by the PCI bus.
Say Y here if you are building a kernel for an EISA-based machine.
Otherwise, say N.
config MCA
bool
help
MicroChannel Architecture is found in some IBM PS/2 machines and
laptops. It is a bus system similar to PCI or ISA. See
<file:Documentation/mca.txt> (and especially the web page given
there) before attempting to build an MCA bus kernel.
config SBUS
bool
config CF_ENABLER
bool "Compact Flash Enabler support"
depends on SH_GENERIC || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701 || SH_ADX
---help---
Compact Flash is a small, removable mass storage device introduced
in 1994 originally as a PCMCIA device. If you say `Y' here, you
compile in support for Compact Flash devices directly connected to
a SuperH processor. A Compact Flash FAQ is available at
<http://www.compactflash.org/faqs/faq.htm>.
If your board has "Directly Connected" CompactFlash at area 5 or 6,
you may want to enable this option. Then, you can use CF as
primary IDE drive (only tested for SanDisk).
If in doubt, select 'N'.
choice
prompt "Compact Flash Connection Area"
depends on CF_ENABLER
default CF_AREA6
config CF_AREA5
bool "Area5"
help
If your board has "Directly Connected" CompactFlash, You should
select the area where your CF is connected to.
- "Area5" if CompactFlash is connected to Area 5 (0x14000000)
- "Area6" if it is connected to Area 6 (0x18000000)
"Area6" will work for most boards. For ADX, select "Area5".
config CF_AREA6
bool "Area6"
endchoice
config CF_BASE_ADDR
hex
depends on CF_ENABLER
default "b8000000" if CF_AREA6
default "b4000000" if CF_AREA5
config HD64461
bool "Hitachi HD64461 companion chip support"
---help---
The Hitachi HD64461 provides an interface for
the SH7709 CPU, supporting a LCD controller,
CRT color controller, IrDA up to 4 Mbps, and a
PCMCIA controller supporting 2 slots.
More information is available at
<http://semiconductor.hitachi.com/windowsce/superh/sld013.htm>.
Say Y if you want support for the HD64461.
Otherwise, say N.
config HD64461_IRQ
int "HD64461 IRQ"
depends on HD64461
default "36"
help
The default setting of the HD64461 IRQ is 36.
Do not change this unless you know what you are doing.
config HD64461_ENABLER
bool "HD64461 PCMCIA enabler"
depends on HD64461
help
Say Y here if you want to enable PCMCIA support
via the HD64461 companion chip.
Otherwise, say N.
config HD64465
bool "Hitachi HD64465 companion chip support"
---help---
The Hitachi HD64465 provides an interface for
the SH7750 CPU, supporting a LCD controller,
CRT color controller, IrDA, USB, PCMCIA,
keyboard controller, and a printer interface.
More information is available at
<http://global.hitachi.com/New/cnews/E/1998/981019B.html>.
Say Y if you want support for the HD64465.
Otherwise, say N.
config HD64465_IOBASE
hex "HD64465 start address"
depends on HD64465
default "b0000000"
help
The default setting of the HD64465 IO base address is 0xb0000000.
Do not change this unless you know what you are doing.
config HD64465_IRQ
int "HD64465 IRQ"
depends on HD64465
default "5"
help
The default setting of the HD64465 IRQ is 5.
Do not change this unless you know what you are doing.
config SH_DMA
bool "DMA controller (DMAC) support"
help
Selecting this option will provide same API as PC's Direct Memory
Access Controller(8237A) for SuperH DMAC.
If unsure, say N.
config PCI
bool "PCI support"
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.
The PCI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, contains valuable
information about which PCI hardware does work under Linux and which
doesn't.
choice
prompt "PCI access mode"
depends on PCI
default PCI_GOANY
config PCI_GOBIOS
bool "BIOS"
---help---
On PCI systems, the BIOS can be used to detect the PCI devices and
determine their configuration. However, some old PCI motherboards
have BIOS bugs and may crash if this is done. Also, some embedded
PCI-based systems don't have any BIOS at all. Linux can also try to
detect the PCI hardware directly without using the BIOS.
With this option, you can specify how Linux should detect the PCI
devices. If you choose "BIOS", the BIOS will be used, if you choose
"Direct", the BIOS won't be used, and if you choose "Any", the
kernel will try the direct access method and falls back to the BIOS
if that doesn't work. If unsure, go with the default, which is
"Any".
config PCI_GODIRECT
bool "Direct"
config PCI_GOANY
bool "Any"
endchoice
config PCI_BIOS
bool
depends on PCI && (PCI_GOBIOS || PCI_GOANY)
default y
config PCI_DIRECT
bool
depends on PCI && (PCI_GODIRECT || PCI_GOANY)
default y
config SH_PCIDMA_NONCOHERENT
bool "Cache and PCI noncoherent"
depends on PCI
help
Enable this option if your platform does not have a CPU cache which
remains coherent with PCI DMA. It is safest to say 'Y', although you
will see better performance if you can say 'N', because the PCI DMA
code will not have to flush the CPU's caches. If you have a PCI host
bridge integrated with your SH CPU, refer carefully to the chip specs
to see if you can say 'N' here. Otherwise, leave it as 'Y'.
source "drivers/pci/Kconfig"
config HOTPLUG
bool "Support for hot-pluggable devices"
---help---
Say Y here if you want to plug devices into your computer while
the system is running, and be able to use them quickly. In many
cases, the devices can likewise be unplugged at any time too.
One well known example of this is PCMCIA- or PC-cards, credit-card
size devices such as network cards, modems or hard drives which are
plugged into slots found on all modern laptop computers. Another
example, used on modern desktops as well as laptops, is USB.
Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
software (at <http://linux-hotplug.sourceforge.net/>) and install it.
Then your kernel will automatically call out to a user mode "policy
agent" (/sbin/hotplug) to load modules and set up software needed
to use devices as you hotplug them.
source "drivers/pcmcia/Kconfig"
choice
prompt "Kernel core (/proc/kcore) format"
depends on PROC_FS
default KCORE_ELF
config KCORE_ELF
bool "ELF"
---help---
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image. This can be used
in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
You have two choices here: ELF and A.OUT. Selecting ELF will make
/proc/kcore appear in ELF core format as defined by the Executable
and Linking Format specification. Selecting A.OUT will choose the
old "a.out" format which may be necessary for some old versions
of binutils or on some architectures.
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel so if you
don't understand what this means or are not a kernel hacker, just
leave it at its default value ELF.
config KCORE_AOUT
bool "A.OUT"
help
Not necessary unless you're using a very out-of-date binutils
version. You probably want KCORE_ELF.
endchoice
config BINFMT_ELF
tristate "Kernel support for ELF binaries"
---help---
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems. Saying Y here will enable your kernel to run ELF binaries
and enlarge it by about 13 KB. ELF support under Linux has now all
but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
because it is portable (this does *not* mean that you will be able
to run executables from different architectures or operating systems
however) and makes building run-time libraries very easy. Many new
executables are distributed solely in ELF format. You definitely
want to say Y here.
Information about ELF is contained in the ELF HOWTO available from
<http://www.linuxdoc.org/docs.html#howto>.
If you find that after upgrading from Linux kernel 1.2 and saying Y
here, you still can't run any ELF binaries (they just crash), then
you'll have to install the newest ELF runtime libraries, including
ld.so (check the file <file:Documentation/Changes> for location and
latest version).
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called binfmt_elf.o. Saying M or N here is dangerous because
some crucial programs on your system might be in ELF format.
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
source "drivers/parport/Kconfig"
endmenu
source "drivers/mtd/Kconfig"
source "drivers/block/Kconfig"
source "drivers/md/Kconfig"
menu "ATA/ATAPI/MFM/RLL support"
config IDE
tristate "ATA/ATAPI/MFM/RLL support"
---help---
If you say Y here, your kernel will be able to manage low cost mass
storage units such as ATA/(E)IDE and ATAPI units. The most common
cases are IDE hard drives and ATAPI CD-ROM drives.
If your system is pure SCSI and doesn't use these interfaces, you
can say N here.
Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
for mass storage units such as hard disks. It was designed by
Western Digital and Compaq Computer in 1984. It was then named
ST506. Quite a number of disks use the IDE interface.
AT Attachment (ATA) is the superset of the IDE specifications.
ST506 was also called ATA-1.
Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
ATA-3. It provides support for larger disks (up to 8.4GB by means of
the LBA standard), more disks (4 instead of 2) and for other mass
storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
ATA-4 and provides faster (and more CPU friendly) transfer modes
than previous PIO (Programmed processor Input/Output) from previous
ATA/IDE standards by means of fast DMA controllers.
ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
CD-ROM drives, similar in many respects to the SCSI protocol.
SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
designed in order to prevent data corruption and disk crash by
detecting pre hardware failure conditions (heat, access time, and
the like...). Disks built since June 1995 may follow this standard.
The kernel itself don't manage this; however there are quite a
number of user programs such as smart that can query the status of
SMART parameters disk.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called ide.o.
For further information, please read <file:Documentation/ide.txt>.
If unsure, say Y.
source "drivers/ide/Kconfig"
endmenu
menu "SCSI support"
config SCSI
tristate "SCSI support"
---help---
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
any other SCSI device under Linux, say Y and make sure that you know
the name of your SCSI host adapter (the card inside your computer
that "speaks" the SCSI protocol, also called SCSI controller),
because you will be asked for it.
You also need to say Y here if you want support for the parallel
port version of the 100 MB IOMEGA ZIP drive.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called scsi_mod.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. However, do not compile this as a
module if your root file system (the one containing the directory /)
is located on a SCSI device.
source "drivers/scsi/Kconfig"
endmenu
source "drivers/ieee1394/Kconfig"
source "net/Kconfig"
menu "Network device support"
depends on NET
config NETDEVICES
bool "Network device support"
---help---
You can say N here if you don't intend to connect your Linux box to
any other computer at all or if all your connections will be over a
telephone line with a modem either via UUCP (UUCP is a protocol to
forward mail and news between unix hosts over telephone lines; read
the UUCP-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell
account or a BBS, even using term (term is a program which gives you
almost full Internet connectivity if you have a regular dial up
shell account on some Internet connected Unix computer. Read
<http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>).
You'll have to say Y if your computer contains a network card that
you want to use under Linux (make sure you know its name because you
will be asked for it and read the Ethernet-HOWTO (especially if you
plan to use more than one network card under Linux)) or if you want
to use SLIP (Serial Line Internet Protocol is the protocol used to
send Internet traffic over telephone lines or null modem cables) or
CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better
and newer replacement for SLIP) or PLIP (Parallel Line Internet
Protocol is mainly used to create a mini network by connecting the
parallel ports of two local machines) or AX.25/KISS (protocol for
sending Internet traffic over amateur radio links).
Make sure to read the NET-3-HOWTO. Eventually, you will have to read
Olaf Kirch's excellent and free book "Network Administrator's
Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If
unsure, say Y.
source "drivers/net/Kconfig"
source "drivers/atm/Kconfig"
endmenu
menu "Old CD-ROM drivers (not SCSI, not IDE)"
config CD_NO_IDESCSI
bool "Support non-SCSI/IDE/ATAPI CDROM drives"
---help---
If you have a CD-ROM drive that is neither SCSI nor IDE/ATAPI, say Y
here, otherwise N. Read the CD-ROM-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
Note that the answer to this question doesn't directly affect the
kernel: saying N will just cause the configurator to skip all
the questions about these CD-ROM drives. If you are unsure what you
have, say Y and find out whether you have one of the following
drives.
For each of these drivers, a file Documentation/cdrom/{driver_name}
exists. Especially in cases where you do not know exactly which kind
of drive you have you should read there. Most of these drivers use a
file drivers/cdrom/{driver_name}.h where you can define your
interface parameters and switch some internal goodies.
All these CD-ROM drivers are also usable as a module ( = code which
can be inserted in and removed from the running kernel whenever you
want). If you want to compile them as module, say M instead of Y and
read <file:Documentation/modules.txt>.
If you want to use any of these CD-ROM drivers, you also have to
answer Y or M to "ISO 9660 CD-ROM file system support" below (this
answer will get "defaulted" for you if you enable any of the Linux
CD-ROM drivers).
source "drivers/cdrom/Kconfig"
endmenu
#
# input before char - char/joystick depends on it. As does USB.
#
source "drivers/input/Kconfig"
#if [ "$CONFIG_SH_DREAMCAST" = "y" ]; then
# source drivers/maple/Config.in
#fi
menu "Character devices"
config VT
bool "Virtual terminal"
---help---
If you say Y here, you will get support for terminal devices with
display and keyboard devices. These are called "virtual" because you
can run several virtual terminals (also called virtual consoles) on
one physical terminal. This is rather useful, for example one
virtual terminal can collect system messages and warnings, another
one can be used for a text-mode user session, and a third could run
an X session, all in parallel. Switching between virtual terminals
is done with certain key combinations, usually Alt-<function key>.
The setterm command ("man setterm") can be used to change the
properties (such as colors or beeping) of a virtual terminal. The
man page console_codes(4) ("man console_codes") contains the special
character sequences that can be used to change those properties
directly. The fonts used on virtual terminals can be changed with
the setfont ("man setfont") command and the key bindings are defined
with the loadkeys ("man loadkeys") command.
You need at least one virtual terminal device in order to make use
of your keyboard and monitor. Therefore, only people configuring an
embedded system would want to say N here in order to save some
memory; the only way to log into such a system is then via a serial
or network connection.
If unsure, say Y, or else you won't be able to do much with your new
shiny Linux system :-)
config VT_CONSOLE
bool "Support for console on virtual terminal"
depends on VT
---help---
The system console is the device which receives all kernel messages
and warnings and which allows logins in single user mode. If you
answer Y here, a virtual terminal (the device used to interact with
a physical terminal) can be used as system console. This is the most
common mode of operations, so you should say Y here unless you want
the kernel messages be output only to a serial port (in which case
you should say Y to "Console on serial port", below).
If you do say Y here, by default the currently visible virtual
terminal (/dev/tty0) will be used as system console. You can change
that with a kernel command line option such as "console=tty3" which
would use the third virtual terminal as system console. (Try "man
bootparam" or see the documentation of your boot loader (lilo or
loadlin) about how to pass options to the kernel at boot time.)
If unsure, say Y.
config SERIAL
tristate "Serial (8250, 16450, 16550 or compatible) support"
---help---
This selects whether you want to include the driver for the standard
serial ports. The standard answer is Y. People who might say N
here are those that are setting up dedicated Ethernet WWW/FTP
servers, or users that have one of the various bus mice instead of a
serial mouse and don't intend to use their machine's standard serial
port for anything. (Note that the Cyclades and Stallion multi
serial port drivers do not need this driver built in for them to
work.)
If you want to compile this driver as a module, say M here and read
<file:Documentation/modules.txt>. The module will be called
serial.o.
[WARNING: Do not compile this driver as a module if you are using
non-standard serial ports, since the configuration information will
be lost when the driver is unloaded. This limitation may be lifted
in the future.]
BTW1: If you have a mouseman serial mouse which is not recognized by
the X window system, try running gpm first.
BTW2: If you intend to use a software modem (also called Winmodem)
under Linux, forget it. These modems are crippled and require
proprietary drivers which are only available under Windows.
Most people will say Y or M here, so that they can use serial mice,
modems and similar devices connecting to the standard serial ports.
config SH_SCI
tristate "Serial (SCI, SCIF) support"
help
Selecting this option will allow the Linux kernel to transfer data
over SCI (Serial Communication Interface) and/or SCIF (Serial
Communication Interface with FIFO) which are built into the Hitachi
SuperH processor. The option provides 1 to 3 (depending
on the CPU model) standard Linux tty devices, /dev/ttySC[012]; one
of these is normally used as the system console.
If in doubt, press "y".
config SERIAL_CONSOLE
bool "Support for console on serial port"
depends on SERIAL=y || SH_SCI=y
---help---
If you say Y here, it will be possible to use a serial port as the
system console (the system console is the device which receives all
kernel messages and warnings and which allows logins in single user
mode). This could be useful if some terminal or printer is connected
to that serial port.
Even if you say Y here, the currently visible virtual console
(/dev/tty0) will still be used as the system console by default, but
you can alter that using a kernel command line option such as
"console=ttyS1". (Try "man bootparam" or see the documentation of
your boot loader (lilo or loadlin) about how to pass options to the
kernel at boot time.)
If you don't have a VGA card installed and you say Y here, the
kernel will automatically use the first serial line, /dev/ttyS0, as
system console.
If unsure, say N.
comment "Unix 98 PTY support"
config UNIX98_PTYS
bool "Unix98 PTY support"
---help---
A pseudo terminal (PTY) is a software device consisting of two
halves: a master and a slave. The slave device behaves identical to
a physical terminal; the master device is used by a process to
read data from and write data to the slave, thereby emulating a
terminal. Typical programs for the master side are telnet servers
and xterms.
Linux has traditionally used the BSD-like names /dev/ptyxx for
masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
has a number of problems. The GNU C library glibc 2.1 and later,
however, supports the Unix98 naming standard: in order to acquire a
pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
terminal is then made available to the process and the pseudo
terminal slave can be accessed as /dev/pts/<number>. What was
traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
The entries in /dev/pts/ are created on the fly by a virtual
file system; therefore, if you say Y here you should say Y to
"/dev/pts file system for Unix98 PTYs" as well.
If you want to say Y here, you need to have the C library glibc 2.1
or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
Read the instructions in <file:Documentation/Changes> pertaining to
pseudo terminals. It's safe to say N.
config UNIX98_PTY_COUNT
int "Maximum number of Unix98 PTYs in use (0-2048)"
depends on UNIX98_PTYS
default "256"
help
The maximum number of Unix98 PTYs that can be used at any one time.
The default is 256, and should be enough for desktop systems. Server
machines which support incoming telnet/rlogin/ssh connections and/or
serve several X terminals may want to increase this: every incoming
connection and every xterm uses up one PTY.
When not in use, each additional set of 256 PTYs occupy
approximately 8 KB of kernel memory on 32-bit architectures.
config HEARTBEAT
bool "Heartbeat LED"
depends on SH_GENERIC || SH_CAT68701 || SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE
help
Use the power-on LED on your machine as a load meter. The exact
behavior is platform-dependent, but normally the flash frequency is
a hyperbolic function of the 5-minute load average.
menu "Maple Bus input peripherals"
depends on SH_DREAMCAST && MAPLE
config MAPLE_KEYBOARD
tristate "Maple Bus keyboard support"
depends on INPUT
config MAPLE_MOUSE
tristate "Maple Bus mouse support"
depends on INPUT
comment "Input core support is required for Maple input peripherals"
depends on INPUT=n
endmenu
#source drivers/char/joystick/Config.in
config PRINTER
tristate "Parallel printer support"
depends on PARPORT
---help---
If you intend to attach a printer to the parallel port of your Linux
box (as opposed to using a serial printer; if the connector at the
printer has 9 or 25 holes ["female"], then it's serial), say Y.
Also read the Printing-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
It is possible to share one parallel port among several devices
(e.g. printer and ZIP drive) and it is safe to compile the
corresponding drivers into the kernel. If you want to compile this
driver as a module however ( = code which can be inserted in and
removed from the running kernel whenever you want), say M here and
read <file:Documentation/modules.txt> and
<file:Documentation/parport.txt>. The module will be called lp.o.
If you have several parallel ports, you can specify which ports to
use with the "lp" kernel command line option. (Try "man bootparam"
or see the documentation of your boot loader (lilo or loadlin) about
how to pass options to the kernel at boot time.) The syntax of the
"lp" command line option can be found in <file:drivers/char/lp.c>.
If you have more than 8 printers, you need to increase the LP_NO
macro in lp.c and the PARPORT_MAX macro in parport.h.
config LP_CONSOLE
bool "Support for console on line printer"
depends on PRINTER
---help---
If you want kernel messages to be printed out as they occur, you
can have a console on the printer. This option adds support for
doing that; to actually get it to happen you need to pass the
option "console=lp0" to the kernel at boot time.
If the printer is out of paper (or off, or unplugged, or too
busy..) the kernel will stall until the printer is ready again.
By defining CONSOLE_LP_STRICT to 0 (at your own risk) you
can make the kernel continue when this happens,
but it'll lose the kernel messages.
If unsure, say N.
config PPDEV
tristate "Support for user-space parallel port device drivers"
depends on PARPORT
---help---
Saying Y to this adds support for /dev/parport device nodes. This
is needed for programs that want portable access to the parallel
port, for instance deviceid (which displays Plug-and-Play device
IDs).
This is the parallel port equivalent of SCSI generic support (sg).
It is safe to say N to this -- it is not needed for normal printing
or parallel port CD-ROM/disk support.
This support is also available as a module. If you want to compile
it as a module, say M here and read
<file:Documentation/modules.txt>. The module will be called
ppdev.o.
If unsure, say N.
config PSMOUSE
bool "PS/2 mouse (aka \"auxiliary device\") support"
---help---
The PS/2 mouse connects to a special mouse port that looks much like
the keyboard port (small circular connector with 6 pins). This way,
the mouse does not use any serial ports. This port can also be used
for other input devices like light pens, tablets, keypads. Compaq,
AST and IBM all use this as their mouse port on currently shipping
machines. The trackballs of some laptops are PS/2 mice also. In
particular, the C&T 82C710 mouse on TI Travelmates is a PS/2 mouse.
Although PS/2 mice are not technically bus mice, they are explained
in detail in the Busmouse-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
When using a PS/2 mouse, you can get problems if you want to use the
mouse both on the Linux console and under X. Using the "-R" option
of the Linux mouse managing program gpm (available from
<ftp://gnu.systemy.it/pub/gpm/>) solves this problem, or you can get
the "mconv2" utility from <ftp://ibiblio.org/pub/Linux/system/mouse/>.
menu "Watchdog Cards"
config WATCHDOG
bool "Watchdog Timer Support"
---help---
If you say Y here (and to one of the following options) and create a
character special file /dev/watchdog with major number 10 and minor
number 130 using mknod ("man mknod"), you will get a watchdog, i.e.:
subsequently opening the file and then failing to write to it for
longer than 1 minute will result in rebooting the machine. This
could be useful for a networked machine that needs to come back
online as fast as possible after a lock-up. There's both a watchdog
implementation entirely in software (which can sometimes fail to
reboot the machine) and a driver for hardware watchdog boards, which
are more robust and can also keep track of the temperature inside
your computer. For details, read <file:Documentation/watchdog.txt>
in the kernel source.
The watchdog is usually used together with the watchdog daemon
which is available from
<ftp://ibiblio.org/pub/Linux/system/daemons/watchdog/>. This daemon can
also monitor NFS connections and can reboot the machine when the process
table is full.
If unsure, say N.
config WATCHDOG_NOWAYOUT
bool "Disable watchdog shutdown on close"
depends on WATCHDOG
help
The default watchdog behaviour (which you get if you say N here) is
to stop the timer if the process managing it closes the file
/dev/watchdog. It's always remotely possible that this process might
get killed. If you say Y here, the watchdog cannot be stopped once
it has been started.
config SH_WDT
tristate "SH 3/4 Watchdog"
depends on WATCHDOG
help
This driver adds watchdog support for the integrated watchdog in the
SuperH 3 and 4 processors. If you have one of these processors, say Y,
otherwise say N.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module is called shwdt.o. If you want to compile it as a module,
say M here and read Documentation/modules.txt.
endmenu
config RTC
tristate "Enhanced Real Time Clock Support"
---help---
If you say Y here and create a character special file /dev/rtc with
major number 10 and minor number 135 using mknod ("man mknod"), you
will get access to the real time clock (or hardware clock) built
into your computer.
Every PC has such a clock built in. It can be used to generate
signals from as low as 1Hz up to 8192Hz, and can also be used
as a 24 hour alarm. It reports status information via the file
/proc/driver/rtc and its behaviour is set by various ioctls on
/dev/rtc.
If you run Linux on a multiprocessor machine and said Y to
"Symmetric Multi Processing" above, you should say Y here to read
and set the RTC in an SMP compatible fashion.
If you think you have a use for such a device (such as periodic data
sampling), then say Y here, and read <file:Documentation/rtc.txt>
for details.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module is called rtc.o. If you want to compile it as a module,
say M here and read <file:Documentation/modules.txt>.
source "drivers/char/pcmcia/Kconfig"
endmenu
source "fs/Kconfig"
source "drivers/media/Kconfig"
menu "Console drivers"
depends on VT
config VGA_CONSOLE
bool "VGA text console"
help
Saying Y here will allow you to use Linux in text mode through a
display that complies with the generic VGA standard. Virtually
everyone wants that.
The program SVGATextMode can be used to utilize SVGA video cards to
their full potential in text mode. Download it from
<ftp://ibiblio.org/pub/Linux/utils/console/>.
Say Y.
config VIDEO_SELECT
bool "Video mode selection support"
---help---
This enables support for text mode selection on kernel startup. If
you want to take advantage of some high-resolution text mode your
card's BIOS offers, but the traditional Linux utilities like
SVGATextMode don't, you can say Y here and set the mode using the
"vga=" option from your boot loader (lilo or loadlin) or set
"vga=ask" which brings up a video mode menu on kernel startup. (Try
"man bootparam" or see the documentation of your boot loader about
how to pass options to the kernel.)
Read the file <file:Documentation/svga.txt> for more information
about the Video mode selection support. If unsure, say N.
if EXPERIMENTAL
config MDA_CONSOLE
tristate "MDA text console (dual-headed) (EXPERIMENTAL)"
---help---
Say Y here if you have an old MDA or monochrome Hercules graphics
adapter in your system acting as a second head ( = video card). You
will then be able to use two monitors with your Linux system. Do not
say Y here if your MDA card is the primary card in your system; the
normal VGA driver will handle it.
This driver is also available as a module ( = code which can be
inserted and removed from the running kernel whenever you want).
The module will be called mdacon.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt>.
If unsure, say N.
source "drivers/video/Kconfig"
endif
endmenu
menu "Sound"
config SOUND
tristate "Sound card support"
---help---
If you have a sound card in your computer, i.e. if it can say more
than an occasional beep, say Y. Be sure to have all the information
about your sound card and its configuration down (I/O port,
interrupt and DMA channel), because you will be asked for it.
You want to read the Sound-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. General information about
the modular sound system is contained in the files
<file:Documentation/sound/Introduction>. The file
<file:Documentation/sound/README.OSS> contains some slightly
outdated but still useful information as well.
If you have a PnP sound card and you want to configure it at boot
time using the ISA PnP tools (read
<http://www.roestock.demon.co.uk/isapnptools/>), then you need to
compile the sound card support as a module ( = code which can be
inserted in and removed from the running kernel whenever you want)
and load that module after the PnP configuration is finished. To do
this, say M here and read <file:Documentation/modules.txt> as well
as <file:Documentation/sound/README.modules>; the module will be
called soundcore.o.
I'm told that even without a sound card, you can make your computer
say more than an occasional beep, by programming the PC speaker.
Kernel patches and supporting utilities to do that are in the pcsp
package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
source "sound/Kconfig"
endmenu
menu "Kernel hacking"
config MAGIC_SYSRQ
bool "Magic SysRq key"
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
config SH_STANDARD_BIOS
bool "Use LinuxSH standard BIOS"
help
Say Y here if your target has the gdb-sh-stub
package from www.m17n.org (or any conforming standard LinuxSH BIOS)
in FLASH or EPROM. The kernel will use standard BIOS calls during
boot for various housekeeping tasks (including calls to read and
write characters to a system console, get a MAC address from an
on-board Ethernet interface, and shut down the hardware). Note this
does not work with machines with an existing operating system in
mask ROM and no flash (WindowsCE machines fall in this category).
If unsure, say N.
config SH_EARLY_PRINTK
bool "Early printk support"
depends on SH_STANDARD_BIOS
help
Say Y here to redirect kernel printk messages to the serial port
used by the SH-IPL bootloader, starting very early in the boot
process and ending when the kernel's serial console is initialised.
This option is only useful porting the kernel to a new machine,
when the kernel may crash or hang before the serial console is
initialised. If unsure, say N.
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"
# $Id: config.in,v 1.113 2002/01/24 22:14:44 davem Exp $
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/config-language.txt.
#
mainmenu "Linux/SPARC Kernel Configuration"
config UID16
bool
default y
config HIGHMEM
bool
default y
config GENERIC_ISA_DMA
bool
default y
source "init/Kconfig"
menu "General setup"
config VT
bool
default y
---help---
If you say Y here, you will get support for terminal devices with
display and keyboard devices. These are called "virtual" because you
can run several virtual terminals (also called virtual consoles) on
one physical terminal. This is rather useful, for example one
virtual terminal can collect system messages and warnings, another
one can be used for a text-mode user session, and a third could run
an X session, all in parallel. Switching between virtual terminals
is done with certain key combinations, usually Alt-<function key>.
The setterm command ("man setterm") can be used to change the
properties (such as colors or beeping) of a virtual terminal. The
man page console_codes(4) ("man console_codes") contains the special
character sequences that can be used to change those properties
directly. The fonts used on virtual terminals can be changed with
the setfont ("man setfont") command and the key bindings are defined
with the loadkeys ("man loadkeys") command.
You need at least one virtual terminal device in order to make use
of your keyboard and monitor. Therefore, only people configuring an
embedded system would want to say N here in order to save some
memory; the only way to log into such a system is then via a serial
or network connection.
If unsure, say Y, or else you won't be able to do much with your new
shiny Linux system :-)
config VT_CONSOLE
bool
default y
---help---
The system console is the device which receives all kernel messages
and warnings and which allows logins in single user mode. If you
answer Y here, a virtual terminal (the device used to interact with
a physical terminal) can be used as system console. This is the most
common mode of operations, so you should say Y here unless you want
the kernel messages be output only to a serial port (in which case
you should say Y to "Console on serial port", below).
If you do say Y here, by default the currently visible virtual
terminal (/dev/tty0) will be used as system console. You can change
that with a kernel command line option such as "console=tty3" which
would use the third virtual terminal as system console. (Try "man
bootparam" or see the documentation of your boot loader (lilo or
loadlin) about how to pass options to the kernel at boot time.)
If unsure, say Y.
config HW_CONSOLE
bool
default y
config SMP
bool "Symmetric multi-processing support (does not work on sun4/sun4c)"
---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.
Note that if you say Y here and choose architecture "586" or
"Pentium" under "Processor family", the kernel will not work on 486
architectures. Similarly, multiprocessor kernels for the "PPro"
architecture may not work on all Pentium based boards.
People using multiprocessor machines who say Y here should also say
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
Management" code will be disabled if you say Y here.
See also the <file:Documentation/smp.tex>,
<file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>,
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
<http://www.linuxdoc.org/docs.html#howto>.
If you don't know what to do here, say N.
config NR_CPUS
int "Maximum number of CPUs (2-32)"
depends on SMP
default "32"
# Identify this as a Sparc32 build
config SPARC32
bool
default y
help
SPARC is a family of RISC microprocessors designed and marketed by
Sun Microsystems, incorporated. They are very widely found in Sun
workstations and clones. This port covers the original 32-bit SPARC;
it is old and stable and usually considered one of the "big three"
along with the Intel and Alpha ports. The UltraLinux project
maintains both the SPARC32 and SPARC64 ports; its web page is
available at <http://www.ultralinux.org/>.
# Global things across all Sun machines.
config ISA
bool
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 EISA
bool
---help---
The Extended Industry Standard Architecture (EISA) bus was
developed as an open alternative to the IBM MicroChannel bus.
The EISA bus provided some of the features of the IBM MicroChannel
bus while maintaining backward compatibility with cards made for
the older ISA bus. The EISA bus saw limited use between 1988 and
1995 when it was made obsolete by the PCI bus.
Say Y here if you are building a kernel for an EISA-based machine.
Otherwise, say N.
config MCA
bool
help
MicroChannel Architecture is found in some IBM PS/2 machines and
laptops. It is a bus system similar to PCI or ISA. See
<file:Documentation/mca.txt> (and especially the web page given
there) before attempting to build an MCA bus kernel.
config PCMCIA
tristate
---help---
Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
computer. These are credit-card size devices such as network cards,
modems or hard drives often used with laptops computers. There are
actually two varieties of these cards: the older 16 bit PCMCIA cards
and the newer 32 bit CardBus cards. If you want to use CardBus
cards, you need to say Y here and also to "CardBus support" below.
To use your PC-cards, you will need supporting software from David
Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
for location). Please also read the PCMCIA-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
When compiled this way, there will be modules called pcmcia_core.o
and ds.o. If you want to compile it as a module, say M here and
read <file:Documentation/modules.txt>.
config SBUS
bool
default y
config SBUSCHAR
bool
default y
config SERIAL_CONSOLE
bool
default y
---help---
If you say Y here, it will be possible to use a serial port as the
system console (the system console is the device which receives all
kernel messages and warnings and which allows logins in single user
mode). This could be useful if some terminal or printer is connected
to that serial port.
Even if you say Y here, the currently visible virtual console
(/dev/tty0) will still be used as the system console by default, but
you can alter that using a kernel command line option such as
"console=ttyS1". (Try "man bootparam" or see the documentation of
your boot loader (lilo or loadlin) about how to pass options to the
kernel at boot time.)
If you don't have a VGA card installed and you say Y here, the
kernel will automatically use the first serial line, /dev/ttyS0, as
system console.
If unsure, say N.
config SUN_AUXIO
bool
default y
config SUN_IO
bool
default y
config RWSEM_GENERIC_SPINLOCK
bool
default y
config RWSEM_XCHGADD_ALGORITHM
bool
config SUN_PM
bool
default y
help
Enable power management and CPU standby features on supported
SPARC platforms.
config SUN4
bool "Support for SUN4 machines (disables SUN4[CDM] support)"
help
Say Y here if, and only if, your machine is a Sun4. Note that
a kernel compiled with this option will run only on Sun4.
(And the current version will probably work only on sun4/330.)
if !SUN4
config PCI
bool "Support for PCI and PS/2 keyboard/mouse"
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.
The PCI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, contains valuable
information about which PCI hardware does work under Linux and which
doesn't.
source "drivers/pci/Kconfig"
endif
config SUN_OPENPROMFS
tristate "Openprom tree appears in /proc/openprom"
help
If you say Y, the OpenPROM device tree will be available as a
virtual file system, which you can mount to /proc/openprom by "mount
-t openpromfs none /proc/openprom".
If you want to compile the /proc/openprom support as a module ( =
code which can be inserted in and removed from the running kernel
whenever you want), say M here and read
<file:Documentation/modules.txt>.
The module will be called openpromfs.o. If unsure, say M.
config KCORE_ELF
bool
depends on PROC_FS
default y
---help---
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image. This can be used
in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
You have two choices here: ELF and A.OUT. Selecting ELF will make
/proc/kcore appear in ELF core format as defined by the Executable
and Linking Format specification. Selecting A.OUT will choose the
old "a.out" format which may be necessary for some old versions
of binutils or on some architectures.
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel so if you
don't understand what this means or are not a kernel hacker, just
leave it at its default value ELF.
config BINFMT_AOUT
tristate "Kernel support for a.out binaries"
---help---
A.out (Assembler.OUTput) is a set of formats for libraries and
executables used in the earliest versions of UNIX. Linux used the
a.out formats QMAGIC and ZMAGIC until they were replaced with the
ELF format.
As more and more programs are converted to ELF, the use for a.out
will gradually diminish. If you disable this option it will reduce
your kernel by one page. This is not much and by itself does not
warrant removing support. However its removal is a good idea if you
wish to ensure that absolutely none of your programs will use this
older executable format. If you don't know what to answer at this
point then answer Y. If someone told you "You need a kernel with
QMAGIC support" then you'll have to say Y here. You may answer M to
compile a.out support as a module and later load the module when you
want to use a program or library in a.out format. The module will be
called binfmt_aout.o. Saying M or N here is dangerous though,
because some crucial programs on your system might still be in A.OUT
format.
config BINFMT_ELF
tristate "Kernel support for ELF binaries"
---help---
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems. Saying Y here will enable your kernel to run ELF binaries
and enlarge it by about 13 KB. ELF support under Linux has now all
but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
because it is portable (this does *not* mean that you will be able
to run executables from different architectures or operating systems
however) and makes building run-time libraries very easy. Many new
executables are distributed solely in ELF format. You definitely
want to say Y here.
Information about ELF is contained in the ELF HOWTO available from
<http://www.linuxdoc.org/docs.html#howto>.
If you find that after upgrading from Linux kernel 1.2 and saying Y
here, you still can't run any ELF binaries (they just crash), then
you'll have to install the newest ELF runtime libraries, including
ld.so (check the file <file:Documentation/Changes> for location and
latest version).
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called binfmt_elf.o. Saying M or N here is dangerous because
some crucial programs on your system might be in ELF format.
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
config SUNOS_EMUL
bool "SunOS binary emulation"
help
This allows you to run most SunOS binaries. If you want to do this,
say Y here and place appropriate files in /usr/gnemul/sunos. See
<http://www.ultralinux.org/faq.html> for more information. If you
want to run SunOS binaries on an Ultra you must also say Y to
"Kernel support for 32-bit a.out binaries" above.
source "drivers/parport/Kconfig"
config PRINTER
tristate "Parallel printer support"
depends on PARPORT
---help---
If you intend to attach a printer to the parallel port of your Linux
box (as opposed to using a serial printer; if the connector at the
printer has 9 or 25 holes ["female"], then it's serial), say Y.
Also read the Printing-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
It is possible to share one parallel port among several devices
(e.g. printer and ZIP drive) and it is safe to compile the
corresponding drivers into the kernel. If you want to compile this
driver as a module however ( = code which can be inserted in and
removed from the running kernel whenever you want), say M here and
read <file:Documentation/modules.txt> and
<file:Documentation/parport.txt>. The module will be called lp.o.
If you have several parallel ports, you can specify which ports to
use with the "lp" kernel command line option. (Try "man bootparam"
or see the documentation of your boot loader (lilo or loadlin) about
how to pass options to the kernel at boot time.) The syntax of the
"lp" command line option can be found in <file:drivers/char/lp.c>.
If you have more than 8 printers, you need to increase the LP_NO
macro in lp.c and the PARPORT_MAX macro in parport.h.
endmenu
menu "Console drivers"
config PROM_CONSOLE
bool "PROM console"
help
Say Y to build a console driver for Sun machines that uses the
terminal emulation built into their console PROMS.
config DUMMY_CONSOLE
bool
depends on !PROM_CONSOLE
default y
source "drivers/video/Kconfig"
endmenu
source "drivers/mtd/Kconfig"
source "drivers/serial/Kconfig"
if !SUN4
source "drivers/sbus/char/Kconfig"
endif
menu "Block devices"
config BLK_DEV_FD
bool "Normal floppy disk support"
---help---
If you want to use the floppy disk drive(s) of your PC under Linux,
say Y. Information about this driver, especially important for IBM
Thinkpad users, is contained in <file:Documentation/floppy.txt>.
That file also contains the location of the Floppy driver FAQ as
well as location of the fdutils package used to configure additional
parameters of the driver at run time.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called floppy.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
config BLK_DEV_LOOP
tristate "Loopback device support"
---help---
Saying Y here will allow you to use a regular file as a block
device; you can then create a file system on that block device and
mount it just as you would mount other block devices such as hard
drive partitions, CD-ROM drives or floppy drives. The loop devices
are block special device files with major number 7 and typically
called /dev/loop0, /dev/loop1 etc.
This is useful if you want to check an ISO 9660 file system before
burning the CD, or if you want to use floppy images without first
writing them to floppy. Furthermore, some Linux distributions avoid
the need for a dedicated Linux partition by keeping their complete
root file system inside a DOS FAT file using this loop device
driver.
The loop device driver can also be used to "hide" a file system in a
disk partition, floppy, or regular file, either using encryption
(scrambling the data) or steganography (hiding the data in the low
bits of, say, a sound file). This is also safe if the file resides
on a remote file server. If you want to do this, you will first have
to acquire and install a kernel patch from
<ftp://ftp.kerneli.org/pub/kerneli/>, and then you need to
say Y to this option.
Note that alternative ways to use encrypted file systems are
provided by the cfs package, which can be gotten from
<ftp://ftp.kerneli.org/pub/kerneli/net-source/>, and the newer tcfs
package, available at <http://tcfs.dia.unisa.it/>. You do not need
to say Y here if you want to use one of these. However, using cfs
requires saying Y to "NFS file system support" below while using
tcfs requires applying a kernel patch. An alternative steganography
solution is provided by StegFS, also available from
<ftp://ftp.kerneli.org/pub/kerneli/net-source/>.
To use the loop device, you need the losetup utility and a recent
version of the mount program, both contained in the util-linux
package. The location and current version number of util-linux is
contained in the file <file:Documentation/Changes>.
Note that this loop device has nothing to do with the loopback
device used for network connections from the machine to itself.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called loop.o.
Most users will answer N here.
config BLK_DEV_NBD
tristate "Network block device support"
depends on NET
---help---
Saying Y here will allow your computer to be a client for network
block devices, i.e. it will be able to use block devices exported by
servers (mount file systems on them etc.). Communication between
client and server works over TCP/IP networking, but to the client
program this is hidden: it looks like a regular local file access to
a block device special file such as /dev/nd0.
Network block devices also allows you to run a block-device in
userland (making server and client physically the same computer,
communicating using the loopback network device).
Read <file:Documentation/nbd.txt> for more information, especially
about where to find the server code, which runs in user space and
does not need special kernel support.
Note that this has nothing to do with the network file systems NFS
or Coda; you can say N here even if you intend to use NFS or Coda.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called nbd.o.
If unsure, say N.
source "drivers/md/Kconfig"
config BLK_DEV_RAM
tristate "RAM disk support"
---help---
Saying Y here will allow you to use a portion of your RAM memory as
a block device, so that you can make file systems on it, read and
write to it and do all the other things that you can do with normal
block devices (such as hard drives). It is usually used to load and
store a copy of a minimal root file system off of a floppy into RAM
during the initial install of Linux.
Note that the kernel command line option "ramdisk=XX" is now
obsolete. For details, read <file:Documentation/ramdisk.txt>.
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M and read <file:Documentation/modules.txt>. The module will be
called rd.o.
Most normal users won't need the RAM disk functionality, and can
thus say N here.
config BLK_DEV_RAM_SIZE
int "Default RAM disk size"
depends on BLK_DEV_RAM
default "4096"
help
The default value is 4096. Only change this if you know what are
you doing. If you are using IBM S/390, then set this to 8192.
config BLK_DEV_INITRD
bool "Initial RAM disk (initrd) support"
depends on BLK_DEV_RAM=y
help
The initial RAM disk is a RAM disk that is loaded by the boot loader
(loadlin or lilo) and that is mounted as root before the normal boot
procedure. It is typically used to load modules needed to mount the
"real" root file system, etc. See <file:Documentation/initrd.txt>
for details.
endmenu
# Don't frighten a common SBus user
if PCI
menu "ATA/ATAPI/MFM/RLL support"
config IDE
tristate "ATA/ATAPI/MFM/RLL support"
---help---
If you say Y here, your kernel will be able to manage low cost mass
storage units such as ATA/(E)IDE and ATAPI units. The most common
cases are IDE hard drives and ATAPI CD-ROM drives.
If your system is pure SCSI and doesn't use these interfaces, you
can say N here.
Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
for mass storage units such as hard disks. It was designed by
Western Digital and Compaq Computer in 1984. It was then named
ST506. Quite a number of disks use the IDE interface.
AT Attachment (ATA) is the superset of the IDE specifications.
ST506 was also called ATA-1.
Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
ATA-3. It provides support for larger disks (up to 8.4GB by means of
the LBA standard), more disks (4 instead of 2) and for other mass
storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
ATA-4 and provides faster (and more CPU friendly) transfer modes
than previous PIO (Programmed processor Input/Output) from previous
ATA/IDE standards by means of fast DMA controllers.
ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
CD-ROM drives, similar in many respects to the SCSI protocol.
SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
designed in order to prevent data corruption and disk crash by
detecting pre hardware failure conditions (heat, access time, and
the like...). Disks built since June 1995 may follow this standard.
The kernel itself don't manage this; however there are quite a
number of user programs such as smart that can query the status of
SMART parameters disk.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called ide.o.
For further information, please read <file:Documentation/ide.txt>.
If unsure, say Y.
source "drivers/ide/Kconfig"
endmenu
endif
source "drivers/isdn/Kconfig"
menu "SCSI support"
config SCSI
tristate "SCSI support"
---help---
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
any other SCSI device under Linux, say Y and make sure that you know
the name of your SCSI host adapter (the card inside your computer
that "speaks" the SCSI protocol, also called SCSI controller),
because you will be asked for it.
You also need to say Y here if you want support for the parallel
port version of the 100 MB IOMEGA ZIP drive.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called scsi_mod.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. However, do not compile this as a
module if your root file system (the one containing the directory /)
is located on a SCSI device.
comment "SCSI support type (disk, tape, CDrom)"
depends on SCSI
config BLK_DEV_SD
tristate "SCSI disk support"
depends on SCSI
---help---
If you want to use a SCSI hard disk or the SCSI or parallel port
version of the IOMEGA ZIP drive under Linux, say Y and read the
SCSI-HOWTO, the Disk-HOWTO and the Multi-Disk-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. This is NOT for SCSI
CD-ROMs.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called sd_mod.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. Do not compile this driver as a
module if your root file system (the one containing the directory /)
is located on a SCSI disk. In this case, do not compile the driver
for your SCSI host adapter (below) as a module either.
config SD_EXTRA_DEVS
int "Maximum number of SCSI disks that can be loaded as modules"
depends on BLK_DEV_SD
default "40"
---help---
This controls the amount of additional space allocated in tables for
drivers that are loaded as modules after the kernel is booted. In
the event that the SCSI core itself was loaded as a module, this
value is the number of additional disks that can be loaded after the
first host driver is loaded.
Admittedly this isn't pretty, but there are tons of race conditions
involved with resizing the internal arrays on the fly. Someday this
flag will go away, and everything will work automatically.
If you don't understand what's going on, go with the default.
config CHR_DEV_ST
tristate "SCSI tape support"
depends on SCSI
---help---
If you want to use a SCSI tape drive under Linux, say Y and read the
SCSI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, and
<file:drivers/scsi/README.st> in the kernel source. This is NOT for
SCSI CD-ROMs.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called st.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>.
config CHR_DEV_OSST
tristate "SCSI OnStream SC-x0 tape support"
depends on SCSI
---help---
The OnStream SC-x0 SCSI tape drives can not be driven by the
standard st driver, but instead need this special osst driver and
use the /dev/osstX char device nodes (major 206). Via usb-storage
and ide-scsi, you may be able to drive the USB-x0 and DI-x0 drives
as well. Note that there is also a second generation of OnStream
tape drives (ADR-x0) that supports the standard SCSI-2 commands for
tapes (QIC-157) and can be driven by the standard driver st.
For more information, you may have a look at the SCSI-HOWTO
<http://www.linuxdoc.org/docs.html#howto> and
<file:drivers/scsi/README.osst> in the kernel source.
More info on the OnStream driver may be found on
<http://linux1.onstream.nl/test/>
Please also have a look at the standard st docu, as most of it
applies to osst as well.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called osst.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>.
config BLK_DEV_SR
tristate "SCSI CDROM support"
depends on SCSI
---help---
If you want to use a SCSI CD-ROM under Linux, say Y and read the
SCSI-HOWTO and the CD-ROM-HOWTO at
<http://www.linuxdoc.org/docs.html#howto>. Also make sure to say Y
or M to "ISO 9660 CD-ROM file system support" later.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called sr_mod.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>.
config BLK_DEV_SR_VENDOR
bool "Enable vendor-specific extensions (for SCSI CDROM)"
depends on BLK_DEV_SR
help
This enables the usage of vendor specific SCSI commands. This is
required to support multisession CDs with old NEC/TOSHIBA cdrom
drives (and HP Writers). If you have such a drive and get the first
session only, try saying Y here; everybody else says N.
config SR_EXTRA_DEVS
int "Maximum number of CDROM devices that can be loaded as modules"
depends on BLK_DEV_SR
default "2"
---help---
This controls the amount of additional space allocated in tables for
drivers that are loaded as modules after the kernel is booted. In
the event that the SCSI core itself was loaded as a module, this
value is the number of additional CD-ROMs that can be loaded after
the first host driver is loaded.
Admittedly this isn't pretty, but there are tons of race conditions
involved with resizing the internal arrays on the fly. Someday this
flag will go away, and everything will work automatically.
If you don't understand what's going on, go with the default.
config CHR_DEV_SG
tristate "SCSI generic support"
depends on SCSI
---help---
If you want to use SCSI scanners, synthesizers or CD-writers or just
about anything having "SCSI" in its name other than hard disks,
CD-ROMs or tapes, say Y here. These won't be supported by the kernel
directly, so you need some additional software which knows how to
talk to these devices using the SCSI protocol:
For scanners, look at SANE (<http://www.mostang.com/sane/>). For CD
writer software look at Cdrtools
(<http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html>)
and for burning a "disk at once": CDRDAO
(<http://cdrdao.sourceforge.net/>). Cdparanoia is a high
quality digital reader of audio CDs (<http://www.xiph.org/paranoia/>).
For other devices, it's possible that you'll have to write the
driver software yourself. Please read the file
<file:Documentation/scsi-generic.txt> for more information.
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. The module will be called sg.o. If unsure,
say N.
comment "Some SCSI devices (e.g. CD jukebox) support multiple LUNs"
depends on SCSI
config SCSI_MULTI_LUN
bool "Probe all LUNs on each SCSI device"
depends on SCSI
help
If you have a SCSI device that supports more than one LUN (Logical
Unit Number), e.g. a CD jukebox, and only one LUN is detected, you
can say Y here to force the SCSI driver to probe for multiple LUNs.
A SCSI device with multiple LUNs acts logically like multiple SCSI
devices. The vast majority of SCSI devices have only one LUN, and
so most people can say N here and should in fact do so, because it
is safer.
config SCSI_CONSTANTS
bool "Verbose SCSI error reporting (kernel size +=12K)"
depends on SCSI
help
The error messages regarding your SCSI hardware will be easier to
understand if you say Y here; it will enlarge your kernel by about
12 KB. If in doubt, say Y.
config SCSI_LOGGING
bool "SCSI logging facility"
depends on SCSI
---help---
This turns on a logging facility that can be used to debug a number
of SCSI related problems.
If you say Y here, no logging output will appear by default, but you
can enable logging by saying Y to "/proc file system support" and
"Sysctl support" below and executing the command
echo "scsi log token [level]" > /proc/scsi/scsi
at boot time after the /proc file system has been mounted.
There are a number of things that can be used for 'token' (you can
find them in the source: <file:drivers/scsi/scsi.c>), and this
allows you to select the types of information you want, and the
level allows you to select the level of verbosity.
If you say N here, it may be harder to track down some types of SCSI
problems. If you say Y here your kernel will be somewhat larger, but
there should be no noticeable performance impact as long as you have
logging turned off.
menu "SCSI low-level drivers"
depends on SCSI!=n
config SCSI_SUNESP
tristate "Sparc ESP Scsi Driver"
depends on SCSI
help
This is the driver for the Sun ESP SCSI host adapter. The ESP
chipset is present in most SPARC SBUS-based computers.
This support is also available as a module called esp.o ( = code
which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
config SCSI_QLOGICPTI
tristate "PTI Qlogic,ISP Driver"
depends on SCSI
help
This driver supports SBUS SCSI controllers from PTI or QLogic. These
controllers are known under Solaris as qpti and in the openprom as
PTI,ptisp or QLGC,isp. Note that PCI QLogic SCSI controllers are
driven by a different driver.
This support is also available as a module called qlogicpti.o ( =
code which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
endmenu
endmenu
source "drivers/fc4/Kconfig"
source "net/Kconfig"
menu "Network device support"
depends on NET
config NETDEVICES
bool "Network device support"
---help---
You can say N here if you don't intend to connect your Linux box to
any other computer at all or if all your connections will be over a
telephone line with a modem either via UUCP (UUCP is a protocol to
forward mail and news between unix hosts over telephone lines; read
the UUCP-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell
account or a BBS, even using term (term is a program which gives you
almost full Internet connectivity if you have a regular dial up
shell account on some Internet connected Unix computer. Read
<http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>).
You'll have to say Y if your computer contains a network card that
you want to use under Linux (make sure you know its name because you
will be asked for it and read the Ethernet-HOWTO (especially if you
plan to use more than one network card under Linux)) or if you want
to use SLIP (Serial Line Internet Protocol is the protocol used to
send Internet traffic over telephone lines or null modem cables) or
CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better
and newer replacement for SLIP) or PLIP (Parallel Line Internet
Protocol is mainly used to create a mini network by connecting the
parallel ports of two local machines) or AX.25/KISS (protocol for
sending Internet traffic over amateur radio links).
Make sure to read the NET-3-HOWTO. Eventually, you will have to read
Olaf Kirch's excellent and free book "Network Administrator's
Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If
unsure, say Y.
config DUMMY
tristate "Dummy net driver support"
depends on NETDEVICES
---help---
This is essentially a bit-bucket device (i.e. traffic you send to
this device is consigned into oblivion) with a configurable IP
address. It is most commonly used in order to make your currently
inactive SLIP address seem like a real address for local programs.
If you use SLIP or PPP, you might want to say Y here. Since this
thing often comes in handy, the default is Y. It won't enlarge your
kernel either. What a deal. Read about it in the Network
Administrator's Guide, available from
<http://www.linuxdoc.org/docs.html#guide>.
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called dummy.o. If you want to use more than one dummy
device at a time, you need to compile this driver as a module.
Instead of 'dummy', the devices will then be called 'dummy0',
'dummy1' etc.
config BONDING
tristate "Bonding driver support"
depends on NETDEVICES
---help---
Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet
Channels together. This is called 'Etherchannel' by Cisco,
'Trunking' by Sun, and 'Bonding' in Linux.
If you have two Ethernet connections to some other computer, you can
make them behave like one double speed connection using this driver.
Naturally, this has to be supported at the other end as well, either
with a similar Bonding Linux driver, a Cisco 5500 switch or a
SunTrunking SunSoft driver.
This is similar to the EQL driver, but it merges Ethernet segments
instead of serial lines.
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called bonding.o.
config TUN
tristate "Universal TUN/TAP device driver support"
depends on NETDEVICES
---help---
TUN/TAP provides packet reception and transmission for user space
programs. It can be viewed as a simple Point-to-Point or Ethernet
device, which instead of receiving packets from a physical media,
receives them from user space program and instead of sending packets
via physical media writes them to the user space program.
When a program opens /dev/net/tun, driver creates and registers
corresponding net device tunX or tapX. After a program closed above
devices, driver will automatically delete tunXX or tapXX device and
all routes corresponding to it.
Please read <file:Documentation/networking/tuntap.txt> for more
information.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called tun.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
If you don't know what to use this for, you don't need it.
config ETHERTAP
tristate "Ethertap network tap (OBSOLETE)"
depends on NETDEVICES && EXPERIMENTAL && NETLINK
---help---
If you say Y here (and have said Y to "Kernel/User network link
driver", above) and create a character special file /dev/tap0 with
major number 36 and minor number 16 using mknod ("man mknod"), you
will be able to have a user space program read and write raw
Ethernet frames from/to that special file. tap0 can be configured
with ifconfig and route like any other Ethernet device but it is not
connected to any physical LAN; everything written by the user to
/dev/tap0 is treated by the kernel as if it had come in from a LAN
to the device tap0; everything the kernel wants to send out over the
device tap0 can instead be read by the user from /dev/tap0: the user
mode program replaces the LAN that would be attached to an ordinary
Ethernet device. Please read the file
<file:Documentation/networking/ethertap.txt> for more information.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called ethertap.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
If you don't know what to use this for, you don't need it.
config PPP
tristate "PPP (point-to-point protocol) support"
depends on NETDEVICES
---help---
PPP (Point to Point Protocol) is a newer and better SLIP. It serves
the same purpose: sending Internet traffic over telephone (and other
serial) lines. Ask your access provider if they support it, because
otherwise you can't use it; most Internet access providers these
days support PPP rather than SLIP.
To use PPP, you need an additional program called pppd as described
in the PPP-HOWTO, available at
<http://www.linuxdoc.org/docs.html#howto>. Make sure that you have
the version of pppd recommended in <file:Documentation/Changes>.
The PPP option enlarges your kernel by about 16 KB.
There are actually two versions of PPP: the traditional PPP for
asynchronous lines, such as regular analog phone lines, and
synchronous PPP which can be used over digital ISDN lines for
example. If you want to use PPP over phone lines or other
asynchronous serial lines, you need to say Y (or M) here and also to
the next option, "PPP support for async serial ports". For PPP over
synchronous lines, you should say Y (or M) here and to "Support
synchronous PPP", below.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
If you said Y to "Version information on all symbols" above, then
you cannot compile the PPP driver into the kernel; you can then only
compile it as a module. The module will be called ppp_generic.o.
If you want to compile it as a module, say M here and read
<file:Documentation/modules.txt> as well as
<file:Documentation/networking/net-modules.txt>.
config PPP_ASYNC
tristate "PPP support for async serial ports"
depends on PPP
---help---
Say Y (or M) here if you want to be able to use PPP over standard
asynchronous serial ports, such as COM1 or COM2 on a PC. If you use
a modem (not a synchronous or ISDN modem) to contact your ISP, you
need this option.
This code is also available as a module (code which can be inserted
into and removed from the running kernel). If you want to compile
it as a module, say M here and read <file:Documentation/modules.txt>.
If unsure, say Y.
config PPP_SYNC_TTY
tristate "PPP support for sync tty ports"
depends on PPP
help
Say Y (or M) here if you want to be able to use PPP over synchronous
(HDLC) tty devices, such as the SyncLink adapter. These devices
are often used for high-speed leased lines like T1/E1.
This code is also available as a module (code which can be inserted
into and removed from the running kernel). If you want to compile
it as a module, say M here and read
<file:Documentation/modules.txt>.
config PPP_DEFLATE
tristate "PPP Deflate compression"
depends on PPP
---help---
Support for the Deflate compression method for PPP, which uses the
Deflate algorithm (the same algorithm that gzip uses) to compress
each PPP packet before it is sent over the wire. The machine at the
other end of the PPP link (usually your ISP) has to support the
Deflate compression method as well for this to be useful. Even if
they don't support it, it is safe to say Y here.
This code is also available as a module (code which can be inserted
into and removed from the running kernel). If you want to compile
it as a module, say M here and read
<file:Documentation/modules.txt>.
config PPP_BSDCOMP
tristate "PPP BSD-Compress compression"
depends on NETDEVICES && PPP!=n && m
---help---
Support for the BSD-Compress compression method for PPP, which uses
the LZW compression method to compress each PPP packet before it is
sent over the wire. The machine at the other end of the PPP link
(usually your ISP) has to support the BSD-Compress compression
method as well for this to be useful. Even if they don't support it,
it is safe to say Y here.
The PPP Deflate compression method ("PPP Deflate compression",
above) is preferable to BSD-Compress, because it compresses better
and is patent-free.
Note that the BSD compression code will always be compiled as a
module; it is called bsd_comp.o and will show up in the directory
modules once you have said "make modules". If unsure, say N.
config SLIP
tristate "SLIP (serial line) support"
depends on NETDEVICES
---help---
Say Y if you intend to use SLIP or CSLIP (compressed SLIP) to
connect to your Internet service provider or to connect to some
other local Unix box or if you want to configure your Linux box as a
Slip/CSlip server for other people to dial in. SLIP (Serial Line
Internet Protocol) is a protocol used to send Internet traffic over
serial connections such as telephone lines or null modem cables;
nowadays, the protocol PPP is more commonly used for this same
purpose.
Normally, your access provider has to support SLIP in order for you
to be able to use it, but there is now a SLIP emulator called SLiRP
around (available from
<ftp://ibiblio.org/pub/Linux/system/network/serial/>) which
allows you to use SLIP over a regular dial up shell connection. If
you plan to use SLiRP, make sure to say Y to CSLIP, below. The
NET-3-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, explains how to
configure SLIP. Note that you don't need this option if you just
want to run term (term is a program which gives you almost full
Internet connectivity if you have a regular dial up shell account on
some Internet connected Unix computer. Read
<http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>). SLIP
support will enlarge your kernel by about 4 KB. If unsure, say N.
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt> as well as
<file:Documentation/networking/net-modules.txt>. The module will be
called slip.o.
config SLIP_COMPRESSED
bool "CSLIP compressed headers"
depends on SLIP
---help---
This protocol is faster than SLIP because it uses compression on the
TCP/IP headers (not on the data itself), but it has to be supported
on both ends. Ask your access provider if you are not sure and
answer Y, just in case. You will still be able to use plain SLIP. If
you plan to use SLiRP, the SLIP emulator (available from
<ftp://ibiblio.org/pub/Linux/system/network/serial/>) which
allows you to use SLIP over a regular dial up shell connection, you
definitely want to say Y here. The NET-3-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, explains how to configure
CSLIP. This won't enlarge your kernel.
config SLIP_SMART
bool "Keepalive and linefill"
depends on SLIP
help
Adds additional capabilities to the SLIP driver to support the
RELCOM line fill and keepalive monitoring. Ideal on poor quality
analogue lines.
config SLIP_MODE_SLIP6
bool "Six bit SLIP encapsulation"
depends on SLIP
help
Just occasionally you may need to run IP over hostile serial
networks that don't pass all control characters or are only seven
bit. Saying Y here adds an extra mode you can use with SLIP:
"slip6". In this mode, SLIP will only send normal ASCII symbols over
the serial device. Naturally, this has to be supported at the other
end of the link as well. It's good enough, for example, to run IP
over the async ports of a Camtec JNT Pad. If unsure, say N.
config SUNLANCE
tristate "Sun LANCE support"
depends on NETDEVICES
help
This driver supports the "le" interface present on all 32-bit Sparc
systems, on some older Ultra systems and as an Sbus option. These
cards are based on the AMD Lance chipset, which is better known
via the NE2100 cards.
This support is also available as a module called sunlance.o ( =
code which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
config HAPPYMEAL
tristate "Sun Happy Meal 10/100baseT support"
depends on NETDEVICES
help
This driver supports the "hme" interface present on most Ultra
systems and as an option on older Sbus systems. This driver supports
both PCI and Sbus devices. This driver also supports the "qfe" quad
100baseT device available in both PCI and Sbus configurations.
This support is also available as a module called sunhme.o ( = code
which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
config SUNBMAC
tristate "Sun BigMAC 10/100baseT support (EXPERIMENTAL)"
depends on NETDEVICES && EXPERIMENTAL
help
This driver supports the "be" interface available as an Sbus option.
This is Sun's older 100baseT Ethernet device.
This support is also available as a module called sunbmac.o ( = code
which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
config SUNQE
tristate "Sun QuadEthernet support"
depends on NETDEVICES
help
This driver supports the "qe" 10baseT Ethernet device, available as
an Sbus option. Note that this is not the same as Quad FastEthernet
"qfe" which is supported by the Happy Meal driver instead.
This support is also available as a module called sunqe.o ( = code
which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
config MYRI_SBUS
tristate "MyriCOM Gigabit Ethernet support"
depends on NETDEVICES
help
This driver supports MyriCOM Sbus gigabit Ethernet cards.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. This is
recommended. The module will be called myri_sbus.o.
config VORTEX
tristate "3c590/3c900 series (592/595/597) \"Vortex/Boomerang\" support"
depends on NETDEVICES && PCI
---help---
This option enables driver support for a large number of 10mbps and
10/100mbps EISA, PCI and PCMCIA 3Com network cards:
"Vortex" (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI
"Boomerang" (EtherLink XL 3c900 or 3c905) PCI
"Cyclone" (3c540/3c900/3c905/3c980/3c575/3c656) PCI and Cardbus
"Tornado" (3c905) PCI
"Hurricane" (3c555/3cSOHO) PCI
If you have such a card, say Y and read the Ethernet-HOWTO,
available from <http://www.linuxdoc.org/docs.html#howto>. More
specific information is in
<file:Documentation/networking/vortex.txt> and in the comments at
the beginning of <file:drivers/net/3c59x.c>.
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt> as well as
<file:Documentation/networking/net-modules.txt>.
# bool ' FDDI driver support' CONFIG_FDDI
# if [ "$CONFIG_FDDI" = "y" ]; then
# fi
source "drivers/atm/Kconfig"
endmenu
source "net/ax25/Kconfig"
# This one must be before the filesystem configs. -DaveM
menu "Unix98 PTY support"
config UNIX98_PTYS
bool "Unix98 PTY support"
---help---
A pseudo terminal (PTY) is a software device consisting of two
halves: a master and a slave. The slave device behaves identical to
a physical terminal; the master device is used by a process to
read data from and write data to the slave, thereby emulating a
terminal. Typical programs for the master side are telnet servers
and xterms.
Linux has traditionally used the BSD-like names /dev/ptyxx for
masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
has a number of problems. The GNU C library glibc 2.1 and later,
however, supports the Unix98 naming standard: in order to acquire a
pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
terminal is then made available to the process and the pseudo
terminal slave can be accessed as /dev/pts/<number>. What was
traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
The entries in /dev/pts/ are created on the fly by a virtual
file system; therefore, if you say Y here you should say Y to
"/dev/pts file system for Unix98 PTYs" as well.
If you want to say Y here, you need to have the C library glibc 2.1
or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
Read the instructions in <file:Documentation/Changes> pertaining to
pseudo terminals. It's safe to say N.
config UNIX98_PTY_COUNT
int "Maximum number of Unix98 PTYs in use (0-2048)"
depends on UNIX98_PTYS
default "256"
help
The maximum number of Unix98 PTYs that can be used at any one time.
The default is 256, and should be enough for desktop systems. Server
machines which support incoming telnet/rlogin/ssh connections and/or
serve several X terminals may want to increase this: every incoming
connection and every xterm uses up one PTY.
When not in use, each additional set of 256 PTYs occupy
approximately 8 KB of kernel memory on 32-bit architectures.
endmenu
source "drivers/input/Kconfig"
source "fs/Kconfig"
menu "Sound card support"
config SOUND
tristate "Sound card support"
---help---
If you have a sound card in your computer, i.e. if it can say more
than an occasional beep, say Y. Be sure to have all the information
about your sound card and its configuration down (I/O port,
interrupt and DMA channel), because you will be asked for it.
You want to read the Sound-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. General information about
the modular sound system is contained in the files
<file:Documentation/sound/Introduction>. The file
<file:Documentation/sound/README.OSS> contains some slightly
outdated but still useful information as well.
If you have a PnP sound card and you want to configure it at boot
time using the ISA PnP tools (read
<http://www.roestock.demon.co.uk/isapnptools/>), then you need to
compile the sound card support as a module ( = code which can be
inserted in and removed from the running kernel whenever you want)
and load that module after the PnP configuration is finished. To do
this, say M here and read <file:Documentation/modules.txt> as well
as <file:Documentation/sound/README.modules>; the module will be
called soundcore.o.
I'm told that even without a sound card, you can make your computer
say more than an occasional beep, by programming the PC speaker.
Kernel patches and supporting utilities to do that are in the pcsp
package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
source "sound/Kconfig"
endmenu
source "drivers/usb/Kconfig"
source "net/bluetooth/Kconfig"
menu "Watchdog"
config SOFT_WATCHDOG
tristate "Software watchdog"
help
A software monitoring watchdog. This will fail to reboot your system
from some situations that the hardware watchdog will recover
from. Equally it's a lot cheaper to install.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
If you want to compile it as a module, say M here and read
<file:Documentation/modules.txt>. The module will be called
softdog.o.
endmenu
menu "Kernel hacking"
config DEBUG_SLAB
bool "Debug memory allocations"
config MAGIC_SYSRQ
bool "Magic SysRq key"
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
config DEBUG_SPINLOCK
bool "Spinlock debugging"
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"
# $Id: config.in,v 1.158 2002/01/24 22:14:44 davem Exp $
# For a description of the syntax of this configuration file,
# see the Configure script.
#
mainmenu "Linux/UltraSPARC Kernel Configuration"
source "init/Kconfig"
menu "General setup"
config BBC_I2C
tristate "UltraSPARC-III bootbus i2c controller driver"
help
The BBC devices on the UltraSPARC III have two I2C controllers. The
first I2C controller connects mainly to configuration PROMs (NVRAM,
CPU configuration, DIMM types, etc.). The second I2C controller
connects to environmental control devices such as fans and
temperature sensors. The second controller also connects to the
smartcard reader, if present. Say Y to enable support for these.
config VT
bool
default y
---help---
If you say Y here, you will get support for terminal devices with
display and keyboard devices. These are called "virtual" because you
can run several virtual terminals (also called virtual consoles) on
one physical terminal. This is rather useful, for example one
virtual terminal can collect system messages and warnings, another
one can be used for a text-mode user session, and a third could run
an X session, all in parallel. Switching between virtual terminals
is done with certain key combinations, usually Alt-<function key>.
The setterm command ("man setterm") can be used to change the
properties (such as colors or beeping) of a virtual terminal. The
man page console_codes(4) ("man console_codes") contains the special
character sequences that can be used to change those properties
directly. The fonts used on virtual terminals can be changed with
the setfont ("man setfont") command and the key bindings are defined
with the loadkeys ("man loadkeys") command.
You need at least one virtual terminal device in order to make use
of your keyboard and monitor. Therefore, only people configuring an
embedded system would want to say N here in order to save some
memory; the only way to log into such a system is then via a serial
or network connection.
If unsure, say Y, or else you won't be able to do much with your new
shiny Linux system :-)
config VT_CONSOLE
bool
default y
---help---
The system console is the device which receives all kernel messages
and warnings and which allows logins in single user mode. If you
answer Y here, a virtual terminal (the device used to interact with
a physical terminal) can be used as system console. This is the most
common mode of operations, so you should say Y here unless you want
the kernel messages be output only to a serial port (in which case
you should say Y to "Console on serial port", below).
If you do say Y here, by default the currently visible virtual
terminal (/dev/tty0) will be used as system console. You can change
that with a kernel command line option such as "console=tty3" which
would use the third virtual terminal as system console. (Try "man
bootparam" or see the documentation of your boot loader (lilo or
loadlin) about how to pass options to the kernel at boot time.)
If unsure, say Y.
config HW_CONSOLE
bool
default y
config HUGETLB_PAGE
bool "SPARC64 Huge TLB Page Support"
help
This enables support for huge pages. User space applications
can make use of this support with the sys_alloc_hugepages and
sys_free_hugepages system calls. If your applications are
huge page aware, then say Y here.
Otherwise, say N.
config SMP
bool "Symmetric multi-processing support"
---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.
Note that if you say Y here and choose architecture "586" or
"Pentium" under "Processor family", the kernel will not work on 486
architectures. Similarly, multiprocessor kernels for the "PPro"
architecture may not work on all Pentium based boards.
People using multiprocessor machines who say Y here should also say
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
Management" code will be disabled if you say Y here.
See also the <file:Documentation/smp.tex>,
<file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>,
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
<http://www.linuxdoc.org/docs.html#howto>.
If you don't know what to do here, say N.
config PREEMPT
bool "Preemptible Kernel"
help
This option reduces the latency of the kernel when reacting to
real-time or interactive events by allowing a low priority process to
be preempted even if it is in kernel mode executing a system call.
This allows applications to run more reliably even when the system is
under load.
Say Y here if you are building a kernel for a desktop, embedded
or real-time system. Say N if you are unsure.
config NR_CPUS
int "Maximum number of CPUs (2-64)"
depends on SMP
default "64"
# Identify this as a Sparc64 build
config SPARC64
bool
default y
help
SPARC is a family of RISC microprocessors designed and marketed by
Sun Microsystems, incorporated. This port covers the newer 64-bit
UltraSPARC. The UltraLinux project maintains both the SPARC32 and
SPARC64 ports; its web page is available at
<http://www.ultralinux.org/>.
config HOTPLUG
bool "Support for hot-pluggable devices"
---help---
Say Y here if you want to plug devices into your computer while
the system is running, and be able to use them quickly. In many
cases, the devices can likewise be unplugged at any time too.
One well known example of this is PCMCIA- or PC-cards, credit-card
size devices such as network cards, modems or hard drives which are
plugged into slots found on all modern laptop computers. Another
example, used on modern desktops as well as laptops, is USB.
Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
software (at <http://linux-hotplug.sourceforge.net/>) and install it.
Then your kernel will automatically call out to a user mode "policy
agent" (/sbin/hotplug) to load modules and set up software needed
to use devices as you hotplug them.
# Global things across all Sun machines.
config HAVE_DEC_LOCK
bool
default y
config RWSEM_GENERIC_SPINLOCK
bool
config RWSEM_XCHGADD_ALGORITHM
bool
default y
config GENERIC_ISA_DMA
bool
default y
config ISA
bool
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 ISAPNP
bool
help
Say Y here if you would like support for ISA Plug and Play devices.
Some information is in <file:Documentation/isapnp.txt>.
This support is also available as a module called isapnp.o ( =
code which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
If unsure, say Y.
config EISA
bool
---help---
The Extended Industry Standard Architecture (EISA) bus was
developed as an open alternative to the IBM MicroChannel bus.
The EISA bus provided some of the features of the IBM MicroChannel
bus while maintaining backward compatibility with cards made for
the older ISA bus. The EISA bus saw limited use between 1988 and
1995 when it was made obsolete by the PCI bus.
Say Y here if you are building a kernel for an EISA-based machine.
Otherwise, say N.
config MCA
bool
help
MicroChannel Architecture is found in some IBM PS/2 machines and
laptops. It is a bus system similar to PCI or ISA. See
<file:Documentation/mca.txt> (and especially the web page given
there) before attempting to build an MCA bus kernel.
config PCMCIA
tristate
---help---
Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
computer. These are credit-card size devices such as network cards,
modems or hard drives often used with laptops computers. There are
actually two varieties of these cards: the older 16 bit PCMCIA cards
and the newer 32 bit CardBus cards. If you want to use CardBus
cards, you need to say Y here and also to "CardBus support" below.
To use your PC-cards, you will need supporting software from David
Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
for location). Please also read the PCMCIA-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
When compiled this way, there will be modules called pcmcia_core.o
and ds.o. If you want to compile it as a module, say M here and
read <file:Documentation/modules.txt>.
config SBUS
bool
default y
config SBUSCHAR
bool
default y
config SUN_AUXIO
bool
default y
config SUN_IO
bool
default y
config PCI
bool "PCI support"
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.
The PCI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, contains valuable
information about which PCI hardware does work under Linux and which
doesn't.
config RTC
tristate
depends on PCI
default y
---help---
If you say Y here and create a character special file /dev/rtc with
major number 10 and minor number 135 using mknod ("man mknod"), you
will get access to the real time clock (or hardware clock) built
into your computer.
Every PC has such a clock built in. It can be used to generate
signals from as low as 1Hz up to 8192Hz, and can also be used
as a 24 hour alarm. It reports status information via the file
/proc/driver/rtc and its behaviour is set by various ioctls on
/dev/rtc.
If you run Linux on a multiprocessor machine and said Y to
"Symmetric Multi Processing" above, you should say Y here to read
and set the RTC in an SMP compatible fashion.
If you think you have a use for such a device (such as periodic data
sampling), then say Y here, and read <file:Documentation/rtc.txt>
for details.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module is called rtc.o. If you want to compile it as a module,
say M here and read <file:Documentation/modules.txt>.
source "drivers/pci/Kconfig"
config SUN_OPENPROMFS
tristate "Openprom tree appears in /proc/openprom"
help
If you say Y, the OpenPROM device tree will be available as a
virtual file system, which you can mount to /proc/openprom by "mount
-t openpromfs none /proc/openprom".
If you want to compile the /proc/openprom support as a module ( =
code which can be inserted in and removed from the running kernel
whenever you want), say M here and read
<file:Documentation/modules.txt>.
The module will be called openpromfs.o. If unsure, say M.
config KCORE_ELF
bool
depends on PROC_FS
default y
---help---
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image. This can be used
in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
You have two choices here: ELF and A.OUT. Selecting ELF will make
/proc/kcore appear in ELF core format as defined by the Executable
and Linking Format specification. Selecting A.OUT will choose the
old "a.out" format which may be necessary for some old versions
of binutils or on some architectures.
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel so if you
don't understand what this means or are not a kernel hacker, just
leave it at its default value ELF.
config SPARC32_COMPAT
bool "Kernel support for Linux/Sparc 32bit binary compatibility"
help
This allows you to run 32-bit binaries on your Ultra.
Everybody wants this; say Y.
config BINFMT_ELF32
tristate "Kernel support for 32-bit ELF binaries"
depends on SPARC32_COMPAT
help
This allows you to run 32-bit Linux/ELF binaries on your Ultra.
Everybody wants this; say Y.
config BINFMT_AOUT32
bool "Kernel support for 32-bit (ie. SunOS) a.out binaries"
depends on SPARC32_COMPAT
help
This allows you to run 32-bit a.out format binaries on your Ultra.
If you want to run SunOS binaries (see SunOS binary emulation below)
or other a.out binaries, say Y. If unsure, say N.
config BINFMT_ELF
tristate "Kernel support for 64-bit ELF binaries"
---help---
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems. Saying Y here will enable your kernel to run ELF binaries
and enlarge it by about 13 KB. ELF support under Linux has now all
but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
because it is portable (this does *not* mean that you will be able
to run executables from different architectures or operating systems
however) and makes building run-time libraries very easy. Many new
executables are distributed solely in ELF format. You definitely
want to say Y here.
Information about ELF is contained in the ELF HOWTO available from
<http://www.linuxdoc.org/docs.html#howto>.
If you find that after upgrading from Linux kernel 1.2 and saying Y
here, you still can't run any ELF binaries (they just crash), then
you'll have to install the newest ELF runtime libraries, including
ld.so (check the file <file:Documentation/Changes> for location and
latest version).
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called binfmt_elf.o. Saying M or N here is dangerous because
some crucial programs on your system might be in ELF format.
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
config SUNOS_EMUL
bool "SunOS binary emulation"
help
This allows you to run most SunOS binaries. If you want to do this,
say Y here and place appropriate files in /usr/gnemul/sunos. See
<http://www.ultralinux.org/faq.html> for more information. If you
want to run SunOS binaries on an Ultra you must also say Y to
"Kernel support for 32-bit a.out binaries" above.
config SOLARIS_EMUL
tristate "Solaris binary emulation (EXPERIMENTAL)"
depends on EXPERIMENTAL
help
This is experimental code which will enable you to run (many)
Solaris binaries on your SPARC Linux machine.
This code is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called solaris.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
source "drivers/parport/Kconfig"
config PRINTER
tristate "Parallel printer support"
depends on PARPORT
---help---
If you intend to attach a printer to the parallel port of your Linux
box (as opposed to using a serial printer; if the connector at the
printer has 9 or 25 holes ["female"], then it's serial), say Y.
Also read the Printing-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
It is possible to share one parallel port among several devices
(e.g. printer and ZIP drive) and it is safe to compile the
corresponding drivers into the kernel. If you want to compile this
driver as a module however ( = code which can be inserted in and
removed from the running kernel whenever you want), say M here and
read <file:Documentation/modules.txt> and
<file:Documentation/parport.txt>. The module will be called lp.o.
If you have several parallel ports, you can specify which ports to
use with the "lp" kernel command line option. (Try "man bootparam"
or see the documentation of your boot loader (lilo or loadlin) about
how to pass options to the kernel at boot time.) The syntax of the
"lp" command line option can be found in <file:drivers/char/lp.c>.
If you have more than 8 printers, you need to increase the LP_NO
macro in lp.c and the PARPORT_MAX macro in parport.h.
config ENVCTRL
tristate "SUNW, envctrl support"
depends on PCI
help
Kernel support for temperature and fan monitoring on Sun SME
machines.
This code is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called envctrl.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
config DISPLAY7SEG
tristate "7-Segment Display support"
depends on PCI
---help---
This is the driver for the 7-segment display and LED present on
Sun Microsystems CompactPCI models CP1400 and CP1500.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called display7seg.o. If you want to compile it
as a module, say M here and read <file:Documentation/modules.txt>.
If you do not have a CompactPCI model CP1400 or CP1500, or
another UltraSPARC-IIi-cEngine boardset with a 7-segment display,
you should say N to this option.
config WATCHDOG_CP1XXX
tristate "CP1XXX Hardware Watchdog support"
depends on PCI
---help---
This is the driver for the hardware watchdog timers present on
Sun Microsystems CompactPCI models CP1400 and CP1500.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called cpwatchdog.o. If you want to compile it
as a module, say M here and read <file:Documentation/modules.txt>.
If you do not have a CompactPCI model CP1400 or CP1500, or
another UltraSPARC-IIi-cEngine boardset with hardware watchdog,
you should say N to this option.
config WATCHDOG_RIO
tristate "RIO Hardware Watchdog support"
depends on PCI
help
Say Y here to support the hardware watchdog capability on Sun RIO
machines. The watchdog timeout period is normally one minute but
can be changed with a boot-time parameter.
endmenu
menu "Console drivers"
config PROM_CONSOLE
bool "PROM console"
help
Say Y to build a console driver for Sun machines that uses the
terminal emulation built into their console PROMS.
source "drivers/video/Kconfig"
endmenu
source "drivers/serial/Kconfig"
source "drivers/sbus/char/Kconfig"
source "drivers/mtd/Kconfig"
menu "Block devices"
config BLK_DEV_FD
bool "Normal floppy disk support"
---help---
If you want to use the floppy disk drive(s) of your PC under Linux,
say Y. Information about this driver, especially important for IBM
Thinkpad users, is contained in <file:Documentation/floppy.txt>.
That file also contains the location of the Floppy driver FAQ as
well as location of the fdutils package used to configure additional
parameters of the driver at run time.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called floppy.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
config BLK_DEV_LOOP
tristate "Loopback device support"
---help---
Saying Y here will allow you to use a regular file as a block
device; you can then create a file system on that block device and
mount it just as you would mount other block devices such as hard
drive partitions, CD-ROM drives or floppy drives. The loop devices
are block special device files with major number 7 and typically
called /dev/loop0, /dev/loop1 etc.
This is useful if you want to check an ISO 9660 file system before
burning the CD, or if you want to use floppy images without first
writing them to floppy. Furthermore, some Linux distributions avoid
the need for a dedicated Linux partition by keeping their complete
root file system inside a DOS FAT file using this loop device
driver.
The loop device driver can also be used to "hide" a file system in a
disk partition, floppy, or regular file, either using encryption
(scrambling the data) or steganography (hiding the data in the low
bits of, say, a sound file). This is also safe if the file resides
on a remote file server. If you want to do this, you will first have
to acquire and install a kernel patch from
<ftp://ftp.kerneli.org/pub/kerneli/>, and then you need to
say Y to this option.
Note that alternative ways to use encrypted file systems are
provided by the cfs package, which can be gotten from
<ftp://ftp.kerneli.org/pub/kerneli/net-source/>, and the newer tcfs
package, available at <http://tcfs.dia.unisa.it/>. You do not need
to say Y here if you want to use one of these. However, using cfs
requires saying Y to "NFS file system support" below while using
tcfs requires applying a kernel patch. An alternative steganography
solution is provided by StegFS, also available from
<ftp://ftp.kerneli.org/pub/kerneli/net-source/>.
To use the loop device, you need the losetup utility and a recent
version of the mount program, both contained in the util-linux
package. The location and current version number of util-linux is
contained in the file <file:Documentation/Changes>.
Note that this loop device has nothing to do with the loopback
device used for network connections from the machine to itself.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called loop.o.
Most users will answer N here.
config BLK_DEV_NBD
tristate "Network block device support"
depends on NET
---help---
Saying Y here will allow your computer to be a client for network
block devices, i.e. it will be able to use block devices exported by
servers (mount file systems on them etc.). Communication between
client and server works over TCP/IP networking, but to the client
program this is hidden: it looks like a regular local file access to
a block device special file such as /dev/nd0.
Network block devices also allows you to run a block-device in
userland (making server and client physically the same computer,
communicating using the loopback network device).
Read <file:Documentation/nbd.txt> for more information, especially
about where to find the server code, which runs in user space and
does not need special kernel support.
Note that this has nothing to do with the network file systems NFS
or Coda; you can say N here even if you intend to use NFS or Coda.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called nbd.o.
If unsure, say N.
source "drivers/md/Kconfig"
config BLK_DEV_RAM
tristate "RAM disk support"
---help---
Saying Y here will allow you to use a portion of your RAM memory as
a block device, so that you can make file systems on it, read and
write to it and do all the other things that you can do with normal
block devices (such as hard drives). It is usually used to load and
store a copy of a minimal root file system off of a floppy into RAM
during the initial install of Linux.
Note that the kernel command line option "ramdisk=XX" is now
obsolete. For details, read <file:Documentation/ramdisk.txt>.
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M and read <file:Documentation/modules.txt>. The module will be
called rd.o.
Most normal users won't need the RAM disk functionality, and can
thus say N here.
config BLK_DEV_RAM_SIZE
int "Default RAM disk size"
depends on BLK_DEV_RAM
default "4096"
help
The default value is 4096. Only change this if you know what are
you doing. If you are using IBM S/390, then set this to 8192.
config BLK_DEV_INITRD
bool "Initial RAM disk (initrd) support"
depends on BLK_DEV_RAM=y
help
The initial RAM disk is a RAM disk that is loaded by the boot loader
(loadlin or lilo) and that is mounted as root before the normal boot
procedure. It is typically used to load modules needed to mount the
"real" root file system, etc. See <file:Documentation/initrd.txt>
for details.
endmenu
menu "ATA/ATAPI/MFM/RLL device support"
config IDE
tristate "ATA/ATAPI/MFM/RLL device support"
---help---
If you say Y here, your kernel will be able to manage low cost mass
storage units such as ATA/(E)IDE and ATAPI units. The most common
cases are IDE hard drives and ATAPI CD-ROM drives.
If your system is pure SCSI and doesn't use these interfaces, you
can say N here.
Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
for mass storage units such as hard disks. It was designed by
Western Digital and Compaq Computer in 1984. It was then named
ST506. Quite a number of disks use the IDE interface.
AT Attachment (ATA) is the superset of the IDE specifications.
ST506 was also called ATA-1.
Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
ATA-3. It provides support for larger disks (up to 8.4GB by means of
the LBA standard), more disks (4 instead of 2) and for other mass
storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
ATA-4 and provides faster (and more CPU friendly) transfer modes
than previous PIO (Programmed processor Input/Output) from previous
ATA/IDE standards by means of fast DMA controllers.
ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
CD-ROM drives, similar in many respects to the SCSI protocol.
SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
designed in order to prevent data corruption and disk crash by
detecting pre hardware failure conditions (heat, access time, and
the like...). Disks built since June 1995 may follow this standard.
The kernel itself don't manage this; however there are quite a
number of user programs such as smart that can query the status of
SMART parameters disk.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called ide.o.
For further information, please read <file:Documentation/ide.txt>.
If unsure, say Y.
source "drivers/ide/Kconfig"
endmenu
menu "SCSI support"
config SCSI
tristate "SCSI support"
---help---
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
any other SCSI device under Linux, say Y and make sure that you know
the name of your SCSI host adapter (the card inside your computer
that "speaks" the SCSI protocol, also called SCSI controller),
because you will be asked for it.
You also need to say Y here if you want support for the parallel
port version of the 100 MB IOMEGA ZIP drive.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called scsi_mod.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. However, do not compile this as a
module if your root file system (the one containing the directory /)
is located on a SCSI device.
comment "SCSI support type (disk, tape, CDrom)"
depends on SCSI
config BLK_DEV_SD
tristate "SCSI disk support"
depends on SCSI
---help---
If you want to use a SCSI hard disk or the SCSI or parallel port
version of the IOMEGA ZIP drive under Linux, say Y and read the
SCSI-HOWTO, the Disk-HOWTO and the Multi-Disk-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. This is NOT for SCSI
CD-ROMs.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called sd_mod.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. Do not compile this driver as a
module if your root file system (the one containing the directory /)
is located on a SCSI disk. In this case, do not compile the driver
for your SCSI host adapter (below) as a module either.
config SD_EXTRA_DEVS
int "Maximum number of SCSI disks that can be loaded as modules"
depends on BLK_DEV_SD
default "40"
---help---
This controls the amount of additional space allocated in tables for
drivers that are loaded as modules after the kernel is booted. In
the event that the SCSI core itself was loaded as a module, this
value is the number of additional disks that can be loaded after the
first host driver is loaded.
Admittedly this isn't pretty, but there are tons of race conditions
involved with resizing the internal arrays on the fly. Someday this
flag will go away, and everything will work automatically.
If you don't understand what's going on, go with the default.
config CHR_DEV_ST
tristate "SCSI tape support"
depends on SCSI
---help---
If you want to use a SCSI tape drive under Linux, say Y and read the
SCSI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, and
<file:drivers/scsi/README.st> in the kernel source. This is NOT for
SCSI CD-ROMs.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called st.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>.
config CHR_DEV_OSST
tristate "SCSI OnStream SC-x0 tape support"
depends on SCSI
---help---
The OnStream SC-x0 SCSI tape drives can not be driven by the
standard st driver, but instead need this special osst driver and
use the /dev/osstX char device nodes (major 206). Via usb-storage
and ide-scsi, you may be able to drive the USB-x0 and DI-x0 drives
as well. Note that there is also a second generation of OnStream
tape drives (ADR-x0) that supports the standard SCSI-2 commands for
tapes (QIC-157) and can be driven by the standard driver st.
For more information, you may have a look at the SCSI-HOWTO
<http://www.linuxdoc.org/docs.html#howto> and
<file:drivers/scsi/README.osst> in the kernel source.
More info on the OnStream driver may be found on
<http://linux1.onstream.nl/test/>
Please also have a look at the standard st docu, as most of it
applies to osst as well.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called osst.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>.
config BLK_DEV_SR
tristate "SCSI CDROM support"
depends on SCSI
---help---
If you want to use a SCSI CD-ROM under Linux, say Y and read the
SCSI-HOWTO and the CD-ROM-HOWTO at
<http://www.linuxdoc.org/docs.html#howto>. Also make sure to say Y
or M to "ISO 9660 CD-ROM file system support" later.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called sr_mod.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>.
config BLK_DEV_SR_VENDOR
bool "Enable vendor-specific extensions (for SCSI CDROM)"
depends on BLK_DEV_SR
help
This enables the usage of vendor specific SCSI commands. This is
required to support multisession CDs with old NEC/TOSHIBA cdrom
drives (and HP Writers). If you have such a drive and get the first
session only, try saying Y here; everybody else says N.
config SR_EXTRA_DEVS
int "Maximum number of CDROM devices that can be loaded as modules"
depends on BLK_DEV_SR
default "2"
---help---
This controls the amount of additional space allocated in tables for
drivers that are loaded as modules after the kernel is booted. In
the event that the SCSI core itself was loaded as a module, this
value is the number of additional CD-ROMs that can be loaded after
the first host driver is loaded.
Admittedly this isn't pretty, but there are tons of race conditions
involved with resizing the internal arrays on the fly. Someday this
flag will go away, and everything will work automatically.
If you don't understand what's going on, go with the default.
config CHR_DEV_SG
tristate "SCSI generic support"
depends on SCSI
---help---
If you want to use SCSI scanners, synthesizers or CD-writers or just
about anything having "SCSI" in its name other than hard disks,
CD-ROMs or tapes, say Y here. These won't be supported by the kernel
directly, so you need some additional software which knows how to
talk to these devices using the SCSI protocol:
For scanners, look at SANE (<http://www.mostang.com/sane/>). For CD
writer software look at Cdrtools
(<http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html>)
and for burning a "disk at once": CDRDAO
(<http://cdrdao.sourceforge.net/>). Cdparanoia is a high
quality digital reader of audio CDs (<http://www.xiph.org/paranoia/>).
For other devices, it's possible that you'll have to write the
driver software yourself. Please read the file
<file:Documentation/scsi-generic.txt> for more information.
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. The module will be called sg.o. If unsure,
say N.
comment "Some SCSI devices (e.g. CD jukebox) support multiple LUNs"
depends on SCSI
config SCSI_MULTI_LUN
bool "Probe all LUNs on each SCSI device"
depends on SCSI
help
If you have a SCSI device that supports more than one LUN (Logical
Unit Number), e.g. a CD jukebox, and only one LUN is detected, you
can say Y here to force the SCSI driver to probe for multiple LUNs.
A SCSI device with multiple LUNs acts logically like multiple SCSI
devices. The vast majority of SCSI devices have only one LUN, and
so most people can say N here and should in fact do so, because it
is safer.
config SCSI_CONSTANTS
bool "Verbose SCSI error reporting (kernel size +=12K)"
depends on SCSI
help
The error messages regarding your SCSI hardware will be easier to
understand if you say Y here; it will enlarge your kernel by about
12 KB. If in doubt, say Y.
config SCSI_LOGGING
bool "SCSI logging facility"
depends on SCSI
---help---
This turns on a logging facility that can be used to debug a number
of SCSI related problems.
If you say Y here, no logging output will appear by default, but you
can enable logging by saying Y to "/proc file system support" and
"Sysctl support" below and executing the command
echo "scsi log token [level]" > /proc/scsi/scsi
at boot time after the /proc file system has been mounted.
There are a number of things that can be used for 'token' (you can
find them in the source: <file:drivers/scsi/scsi.c>), and this
allows you to select the types of information you want, and the
level allows you to select the level of verbosity.
If you say N here, it may be harder to track down some types of SCSI
problems. If you say Y here your kernel will be somewhat larger, but
there should be no noticeable performance impact as long as you have
logging turned off.
menu "SCSI low-level drivers"
depends on SCSI!=n
config SCSI_SUNESP
tristate "Sparc ESP Scsi Driver"
depends on SCSI
help
This is the driver for the Sun ESP SCSI host adapter. The ESP
chipset is present in most SPARC SBUS-based computers.
This support is also available as a module called esp.o ( = code
which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
config SCSI_QLOGICPTI
tristate "PTI Qlogic, ISP Driver"
depends on SCSI
help
This driver supports SBUS SCSI controllers from PTI or QLogic. These
controllers are known under Solaris as qpti and in the openprom as
PTI,ptisp or QLGC,isp. Note that PCI QLogic SCSI controllers are
driven by a different driver.
This support is also available as a module called qlogicpti.o ( =
code which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
choice
prompt "Adaptec AIC7xxx support"
optional
depends on SCSI && PCI
source "drivers/scsi/aic7xxx/Kconfig"
config SCSI_AIC7XXX_OLD
tristate "Old driver"
---help---
WARNING This driver is an older aic7xxx driver and is no longer
under active development. Adaptec, Inc. is writing a new driver to
take the place of this one, and it is recommended that whenever
possible, people should use the new Adaptec written driver instead
of this one. This driver will eventually be phased out entirely.
This is support for the various aic7xxx based Adaptec SCSI
controllers. These include the 274x EISA cards; 284x VLB cards;
2902, 2910, 293x, 294x, 394x, 3985 and several other PCI and
motherboard based SCSI controllers from Adaptec. It does not support
the AAA-13x RAID controllers from Adaptec, nor will it likely ever
support them. It does not support the 2920 cards from Adaptec that
use the Future Domain SCSI controller chip. For those cards, you
need the "Future Domain 16xx SCSI support" driver.
In general, if the controller is based on an Adaptec SCSI controller
chip from the aic777x series or the aic78xx series, this driver
should work. The only exception is the 7810 which is specifically
not supported (that's the RAID controller chip on the AAA-13x
cards).
Note that the AHA2920 SCSI host adapter is *not* supported by this
driver; choose "Future Domain 16xx SCSI support" instead if you have
one of those.
Information on the configuration options for this controller can be
found by checking the help file for each of the available
configuration options. You should read
<file:drivers/scsi/aic7xxx_old/README.aic7xxx> at a minimum before
contacting the maintainer with any questions. The SCSI-HOWTO,
available from <http://www.linuxdoc.org/docs.html#howto>, can also
be of great help.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called aic7xxx_old.o.
config AIC7XXX_OLD_TCQ_ON_BY_DEFAULT
bool "Enable Tagged Command Queueing (TCQ) by default"
depends on SCSI_AIC7XXX_OLD
---help---
This option causes the aic7xxx driver to attempt to use Tagged
Command Queueing (TCQ) on all devices that claim to support it.
TCQ is a feature of SCSI-2 which improves performance: the host
adapter can send several SCSI commands to a device's queue even if
previous commands haven't finished yet. Because the device is
intelligent, it can optimize its operations (like head positioning)
based on its own request queue. Not all devices implement this
correctly.
If you say Y here, you can still turn off TCQ on troublesome devices
with the use of the tag_info boot parameter. See the file
<file:drivers/scsi/README.aic7xxx> for more information on that and
other aic7xxx setup commands. If this option is turned off, you may
still enable TCQ on known good devices by use of the tag_info boot
parameter.
If you are unsure about your devices then it is safest to say N
here.
However, TCQ can increase performance on some hard drives by as much
as 50% or more, so it is recommended that if you say N here, you
should at least read the <file:drivers/scsi/README.aic7xxx> file so
you will know how to enable this option manually should your drives
prove to be safe in regards to TCQ.
Conversely, certain drives are known to lock up or cause bus resets
when TCQ is enabled on them. If you have a Western Digital
Enterprise SCSI drive for instance, then don't even bother to enable
TCQ on it as the drive will become unreliable, and it will actually
reduce performance.
config AIC7XXX_OLD_CMDS_PER_DEVICE
int "Maximum number of TCQ commands per device"
depends on SCSI_AIC7XXX_OLD
default "8"
---help---
Specify the number of commands you would like to allocate per SCSI
device when Tagged Command Queueing (TCQ) is enabled on that device.
Reasonable figures are in the range of 8 to 24 commands per device,
but depending on hardware could be increased or decreased from that
figure. If the number is too high for any particular device, the
driver will automatically compensate usually after only 10 minutes
of uptime. It will not hinder performance if some of your devices
eventually have their command depth reduced, but is a waste of
memory if all of your devices end up reducing this number down to a
more reasonable figure.
NOTE: Certain very broken drives are known to lock up when given
more commands than they like to deal with. Quantum Fireball drives
are the most common in this category. For the Quantum Fireball
drives it is suggested to use no more than 8 commands per device.
Default: 8
config AIC7XXX_OLD_PROC_STATS
bool "Collect statistics to report in /proc"
depends on SCSI_AIC7XXX_OLD
---help---
This option tells the driver to keep track of how many commands have
been sent to each particular device and report that information to
the user via the /proc/scsi/aic7xxx/n file, where n is the number of
the aic7xxx controller you want the information on. This adds a
small amount of overhead to each and every SCSI command the aic7xxx
driver handles, so if you aren't really interested in this
information, it is best to leave it disabled. This will only work if
you also say Y to "/proc file system support", below.
If unsure, say N.
endchoice
config SCSI_SYM53C8XX_2
tristate "SYM53C8XX Version 2 SCSI support"
depends on PCI && SCSI
---help---
This driver supports the whole NCR53C8XX/SYM53C8XX family of
PCI-SCSI controllers. It also supports the subset of LSI53C10XX
Ultra-160 controllers that are based on the SYM53C8XX SCRIPTS
language. It does not support LSI53C10XX Ultra-320 PCI-X SCSI
controllers.
If your system has problems using this new major version of the
SYM53C8XX driver, you may switch back to driver version 1.
Please read <file:drivers/scsi/sym53c8xx_2/Documentation.txt> for more
information.
config SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
int "DMA addressing mode"
depends on SCSI_SYM53C8XX_2
default "1"
---help---
This option only applies to PCI-SCSI chip that are PCI DAC capable
(875A, 895A, 896, 1010-33, 1010-66, 1000).
When set to 0, only PCI 32 bit DMA addressing (SAC) will be performed.
When set to 1, 40 bit DMA addressing (with upper 24 bits of address
set to zero) is supported. The addressable range is here 1 TB.
When set to 2, full 64 bits of address for DMA are supported, but only
16 segments of 4 GB can be addressed. The addressable range is so
limited to 64 GB.
The safest value is 0 (32 bit DMA addressing) that is guessed to still
fit most of real machines.
The preferred value 1 (40 bit DMA addressing) should make happy
properly engineered PCI DAC capable host bridges. You may configure
this option for Intel platforms with more than 4 GB of memory.
The still experimental value 2 (64 bit DMA addressing with 16 x 4GB
segments limitation) can be used on systems that require PCI address
bits past bit 39 to be set for the addressing of memory using PCI
DAC cycles.
config SCSI_SYM53C8XX_DEFAULT_TAGS
int "default tagged command queue depth"
depends on SCSI_SYM53C8XX_2
default "16"
help
This is the default value of the command queue depth the driver will
announce to the generic SCSI layer for devices that support tagged
command queueing. This value can be changed from the boot command line.
This is a soft limit that cannot exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS.
config SCSI_SYM53C8XX_MAX_TAGS
int "maximum number of queued commands"
depends on SCSI_SYM53C8XX_2
default "64"
help
This option allows you to specify the maximum number of commands
that can be queued to any device, when tagged command queuing is
possible. The driver supports up to 256 queued commands per device.
This value is used as a compiled-in hard limit.
config SCSI_SYM53C8XX_IOMAPPED
bool "use normal IO"
depends on SCSI_SYM53C8XX_2
help
If you say Y here, the driver will preferently use normal IO rather than
memory mapped IO.
config SCSI_NCR53C8XX
tristate "NCR53C8XX SCSI support"
depends on PCI && SCSI_SYM53C8XX_2!=y && SCSI
---help---
This is the BSD ncr driver adapted to Linux for the NCR53C8XX family
of PCI-SCSI controllers. This driver supports parity checking,
tagged command queuing and fast synchronous data transfers up to 80
MB/s with wide FAST-40 LVD devices and controllers.
Recent versions of the 53C8XX chips are better supported by the
option "SYM53C8XX SCSI support", below.
Note: there is yet another driver for the 53c8xx family of
controllers ("NCR53c7,8xx SCSI support" above). If you want to use
them both, you need to say M to both and build them as modules, but
only one may be active at a time. If you have a 53c8xx board, you
probably do not want to use the "NCR53c7,8xx SCSI support".
Please read <file:drivers/scsi/README.ncr53c8xx> for more
information.
config SCSI_SYM53C8XX
tristate "SYM53C8XX SCSI support"
depends on PCI && SCSI_SYM53C8XX_2!=y && SCSI
---help---
This driver supports all the features of recent 53C8XX chips (used
in PCI SCSI controllers), notably the hardware phase mismatch
feature of the SYM53C896.
Older versions of the 53C8XX chips are not supported by this
driver. If your system uses either a 810 rev. < 16, a 815, or a 825
rev. < 16 PCI SCSI processor, you must use the generic NCR53C8XX
driver ("NCR53C8XX SCSI support" above) or configure both the
NCR53C8XX and this SYM53C8XX drivers either as module or linked to
the kernel image.
When both drivers are linked into the kernel, the SYM53C8XX driver
is called first at initialization and you can use the 'excl=ioaddr'
driver boot option to exclude attachment of adapters by the
SYM53C8XX driver. For example, entering
'sym53c8xx=excl:0xb400,excl=0xc000' at the lilo prompt prevents
adapters at io address 0xb400 and 0xc000 from being attached by the
SYM53C8XX driver, thus allowing the NCR53C8XX driver to attach them.
The 'excl' option is also supported by the NCR53C8XX driver.
Please read <file:drivers/scsi/README.ncr53c8xx> for more
information.
config SCSI_NCR53C8XX_DEFAULT_TAGS
int "default tagged command queue depth"
depends on PCI && SCSI_SYM53C8XX_2!=y && (SCSI_NCR53C8XX || SCSI_SYM53C8XX)
default "8"
---help---
"Tagged command queuing" is a feature of SCSI-2 which improves
performance: the host adapter can send several SCSI commands to a
device's queue even if previous commands haven't finished yet.
Because the device is intelligent, it can optimize its operations
(like head positioning) based on its own request queue. Some SCSI
devices don't implement this properly; if you want to disable this
feature, enter 0 or 1 here (it doesn't matter which).
The default value is 8 and should be supported by most hard disks.
This value can be overridden from the boot command line using the
'tags' option as follows (example):
'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to
4, set queue depth to 16 for target 2 and target 3 on controller 0
and set queue depth to 10 for target 0 / lun 2 on controller 1.
The normal answer therefore is to go with the default 8 and to use
a boot command line option for devices that need to use a different
command queue depth.
There is no safe option other than using good SCSI devices.
config SCSI_NCR53C8XX_MAX_TAGS
int "maximum number of queued commands"
depends on PCI && SCSI_SYM53C8XX_2!=y && (SCSI_NCR53C8XX || SCSI_SYM53C8XX)
default "32"
---help---
This option allows you to specify the maximum number of commands
that can be queued to any device, when tagged command queuing is
possible. The default value is 32. Minimum is 2, maximum is 64.
Modern hard disks are able to support 64 tags and even more, but
do not seem to be faster when more than 32 tags are being used.
So, the normal answer here is to go with the default value 32 unless
you are using very large hard disks with large cache (>= 1 MB) that
are able to take advantage of more than 32 tagged commands.
There is no safe option and the default answer is recommended.
config SCSI_NCR53C8XX_SYNC
int "synchronous transfers frequency in MHz"
depends on PCI && SCSI_SYM53C8XX_2!=y && (SCSI_NCR53C8XX || SCSI_SYM53C8XX)
default "10"
---help---
The SCSI Parallel Interface-2 Standard defines 5 classes of transfer
rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80. The numbers
are respectively the maximum data transfer rates in mega-transfers
per second for each class. For example, a FAST-20 Wide 16 device is
able to transfer data at 20 million 16 bit packets per second for a
total rate of 40 MB/s.
You may specify 0 if you want to only use asynchronous data
transfers. This is the safest and slowest option. Otherwise, specify
a value between 5 and 80, depending on the capability of your SCSI
controller. The higher the number, the faster the data transfer.
Note that 80 should normally be ok since the driver decreases the
value automatically according to the controller's capabilities.
Your answer to this question is ignored for controllers with NVRAM,
since the driver will get this information from the user set-up. It
also can be overridden using a boot setup option, as follows
(example): 'ncr53c8xx=sync:12' will allow the driver to negotiate
for FAST-20 synchronous data transfer (20 mega-transfers per
second).
The normal answer therefore is not to go with the default but to
select the maximum value 80 allowing the driver to use the maximum
value supported by each controller. If this causes problems with
your SCSI devices, you should come back and decrease the value.
There is no safe option other than using good cabling, right
terminations and SCSI conformant devices.
config SCSI_NCR53C8XX_PROFILE
bool "enable profiling"
depends on PCI && SCSI_SYM53C8XX_2!=y && (SCSI_NCR53C8XX || SCSI_SYM53C8XX)
help
This option allows you to enable profiling information gathering.
These statistics are not very accurate due to the low frequency
of the kernel clock (100 Hz on i386) and have performance impact
on systems that use very fast devices.
The normal answer therefore is N.
config SCSI_NCR53C8XX_PQS_PDS
bool "include support for the NCR PQS/PDS SCSI card"
depends on (SCSI_NCR53C8XX || SCSI_SYM53C8XX) && SCSI_SYM53C8XX
help
Say Y here if you have a special SCSI adapter produced by NCR
corporation called a PCI Quad SCSI or PCI Dual SCSI. You do not need
this if you do not have one of these adapters. However, since this
device is detected as a specific PCI device, this option is quite
safe.
The common answer here is N, but answering Y is safe.
config SCSI_NCR53C8XX_NO_DISCONNECT
bool "not allow targets to disconnect"
depends on PCI && SCSI_SYM53C8XX_2!=y && (SCSI_NCR53C8XX || SCSI_SYM53C8XX) && SCSI_NCR53C8XX_DEFAULT_TAGS=0
help
This option is only provided for safety if you suspect some SCSI
device of yours to not support properly the target-disconnect
feature. In that case, you would say Y here. In general however, to
not allow targets to disconnect is not reasonable if there is more
than 1 device on a SCSI bus. The normal answer therefore is N.
config SCSI_NCR53C8XX_SYMBIOS_COMPAT
bool "assume boards are SYMBIOS compatible (EXPERIMENTAL)"
depends on PCI && SCSI_SYM53C8XX_2!=y && (SCSI_NCR53C8XX || SCSI_SYM53C8XX) && EXPERIMENTAL
---help---
This option allows you to enable some features depending on GPIO
wiring. These General Purpose Input/Output pins can be used for
vendor specific features or implementation of the standard SYMBIOS
features. Genuine SYMBIOS controllers use GPIO0 in output for
controller LED and GPIO3 bit as a flag indicating
singled-ended/differential interface. The Tekram DC-390U/F boards
uses a different GPIO wiring.
Your answer to this question is ignored if all your controllers have
NVRAM, since the driver is able to detect the board type from the
NVRAM format.
If all the controllers in your system are genuine SYMBIOS boards or
use BIOS and drivers from SYMBIOS, you would want to say Y here,
otherwise N. N is the safe answer.
config SCSI_QLOGIC_ISP
tristate "Qlogic ISP SCSI support"
depends on PCI && SCSI
---help---
This driver works for all QLogic PCI SCSI host adapters (IQ-PCI,
IQ-PCI-10, IQ_PCI-D) except for the PCI-basic card. (This latter
card is supported by the "AM53/79C974 PCI SCSI" driver.)
If you say Y here, make sure to choose "BIOS" at the question "PCI
access mode".
Please read the file <file:drivers/scsi/README.qlogicisp>. You
should also read the SCSI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called qlogicisp.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt>.
config SCSI_QLOGIC_FC
tristate "Qlogic ISP FC SCSI support"
depends on PCI && SCSI
help
This is a driver for the QLogic ISP2100 SCSI-FCP host adapter.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called qlogicfc.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt>.
config SCSI_QLOGIC_FC_FIRMWARE
bool
depends on SCSI_QLOGIC_FC
default y
endmenu
endmenu
source "drivers/fc4/Kconfig"
if PCI
source "drivers/message/fusion/Kconfig"
endif
source "drivers/ieee1394/Kconfig"
source "net/Kconfig"
menu "Network device support"
depends on NET
config NETDEVICES
bool "Network device support"
---help---
You can say N here if you don't intend to connect your Linux box to
any other computer at all or if all your connections will be over a
telephone line with a modem either via UUCP (UUCP is a protocol to
forward mail and news between unix hosts over telephone lines; read
the UUCP-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell
account or a BBS, even using term (term is a program which gives you
almost full Internet connectivity if you have a regular dial up
shell account on some Internet connected Unix computer. Read
<http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>).
You'll have to say Y if your computer contains a network card that
you want to use under Linux (make sure you know its name because you
will be asked for it and read the Ethernet-HOWTO (especially if you
plan to use more than one network card under Linux)) or if you want
to use SLIP (Serial Line Internet Protocol is the protocol used to
send Internet traffic over telephone lines or null modem cables) or
CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better
and newer replacement for SLIP) or PLIP (Parallel Line Internet
Protocol is mainly used to create a mini network by connecting the
parallel ports of two local machines) or AX.25/KISS (protocol for
sending Internet traffic over amateur radio links).
Make sure to read the NET-3-HOWTO. Eventually, you will have to read
Olaf Kirch's excellent and free book "Network Administrator's
Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If
unsure, say Y.
source "drivers/net/Kconfig"
source "drivers/atm/Kconfig"
endmenu
source "net/ax25/Kconfig"
# This one must be before the filesystem configs. -DaveM
menu "Unix 98 PTY support"
config UNIX98_PTYS
bool "Unix98 PTY support"
---help---
A pseudo terminal (PTY) is a software device consisting of two
halves: a master and a slave. The slave device behaves identical to
a physical terminal; the master device is used by a process to
read data from and write data to the slave, thereby emulating a
terminal. Typical programs for the master side are telnet servers
and xterms.
Linux has traditionally used the BSD-like names /dev/ptyxx for
masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
has a number of problems. The GNU C library glibc 2.1 and later,
however, supports the Unix98 naming standard: in order to acquire a
pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
terminal is then made available to the process and the pseudo
terminal slave can be accessed as /dev/pts/<number>. What was
traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
The entries in /dev/pts/ are created on the fly by a virtual
file system; therefore, if you say Y here you should say Y to
"/dev/pts file system for Unix98 PTYs" as well.
If you want to say Y here, you need to have the C library glibc 2.1
or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
Read the instructions in <file:Documentation/Changes> pertaining to
pseudo terminals. It's safe to say N.
config UNIX98_PTY_COUNT
int "Maximum number of Unix98 PTYs in use (0-2048)"
depends on UNIX98_PTYS
default "256"
help
The maximum number of Unix98 PTYs that can be used at any one time.
The default is 256, and should be enough for desktop systems. Server
machines which support incoming telnet/rlogin/ssh connections and/or
serve several X terminals may want to increase this: every incoming
connection and every xterm uses up one PTY.
When not in use, each additional set of 256 PTYs occupy
approximately 8 KB of kernel memory on 32-bit architectures.
endmenu
menu "Video For Linux"
config VIDEO_DEV
tristate "Video For Linux"
---help---
Support for audio/video capture and overlay devices and FM radio
cards. The exact capabilities of each device vary. User tools for
this are available from
<ftp://ftp.uk.linux.org/pub/linux/video4linux/>.
If you are interested in writing a driver for such an audio/video
device or user software interacting with such a driver, please read
the file <file:Documentation/video4linux/API.html>.
This driver is also available as a module called videodev.o ( = code
which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
config VIDEO_BT848
tristate "BT848 Video For Linux"
depends on PCI && VIDEO_DEV
---help---
Support for BT848 based frame grabber/overlay boards. This includes
the Miro, Hauppauge and STB boards. Please read the material in
<file:Documentation/video4linux/bttv> for more information.
If you say Y or M here, you need to say Y or M to "I2C support" and
"I2C bit-banging interfaces" in the character device section.
This driver is available as a module called bttv.o ( = code
which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read <file:Documentation/modules.txt>.
endmenu
menu "XFree86 DRI support"
config DRM
bool "Direct Rendering Manager (XFree86 DRI support)"
help
Kernel-level support for the Direct Rendering Infrastructure (DRI)
introduced in XFree86 4.0. If you say Y here, you need to select
the module that's right for your graphics card from the list below.
These modules provide support for synchronization, security, and
DMA transfers. Please see <http://dri.sourceforge.net/> for more
details. You should also select and configure AGP
(/dev/agpgart) support.
config DRM_FFB
tristate "Creator/Creator3D"
depends on DRM
help
Choose this option if you have one of Sun's Creator3D-based graphics
and frame buffer cards. Product page at
<http://www.sun.com/desktop/products/Graphics/creator3d.html>.
config DRM_TDFX
tristate "3dfx Banshee/Voodoo3+"
depends on DRM
help
Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
graphics card. If M is selected, the module will be called tdfx.o.
config DRM_R128
tristate "ATI Rage 128"
depends on DRM
help
Choose this option if you have an ATI Rage 128 graphics card. If M
is selected, the module will be called r128.o. AGP support for
this card is strongly suggested (unless you have a PCI version).
endmenu
source "drivers/input/Kconfig"
source "fs/Kconfig"
menu "Sound"
config SOUND
tristate "Sound card support"
---help---
If you have a sound card in your computer, i.e. if it can say more
than an occasional beep, say Y. Be sure to have all the information
about your sound card and its configuration down (I/O port,
interrupt and DMA channel), because you will be asked for it.
You want to read the Sound-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. General information about
the modular sound system is contained in the files
<file:Documentation/sound/Introduction>. The file
<file:Documentation/sound/README.OSS> contains some slightly
outdated but still useful information as well.
If you have a PnP sound card and you want to configure it at boot
time using the ISA PnP tools (read
<http://www.roestock.demon.co.uk/isapnptools/>), then you need to
compile the sound card support as a module ( = code which can be
inserted in and removed from the running kernel whenever you want)
and load that module after the PnP configuration is finished. To do
this, say M here and read <file:Documentation/modules.txt> as well
as <file:Documentation/sound/README.modules>; the module will be
called soundcore.o.
I'm told that even without a sound card, you can make your computer
say more than an occasional beep, by programming the PC speaker.
Kernel patches and supporting utilities to do that are in the pcsp
package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
source "sound/Kconfig"
endmenu
source "drivers/usb/Kconfig"
source "net/bluetooth/Kconfig"
menu "Watchdog"
config SOFT_WATCHDOG
tristate "Software watchdog"
help
A software monitoring watchdog. This will fail to reboot your system
from some situations that the hardware watchdog will recover
from. Equally it's a lot cheaper to install.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
If you want to compile it as a module, say M here and read
<file:Documentation/modules.txt>. The module will be called
softdog.o.
endmenu
menu "Kernel hacking"
config DEBUG_KERNEL
bool "Kernel debugging"
help
Say Y here if you are developing drivers or trying to debug and
identify kernel problems.
config DEBUG_SLAB
bool "Debug memory allocations"
depends on DEBUG_KERNEL
help
Say Y here to have the kernel do limited verification on memory
allocation as well as poisoning memory on free to catch use of freed
memory.
config MAGIC_SYSRQ
bool "Magic SysRq key"
depends on DEBUG_KERNEL
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
config DEBUG_SPINLOCK
bool "Spinlock debugging"
depends on DEBUG_KERNEL
help
Say Y here and build SMP to catch missing spinlock initialization
and certain other kinds of spinlock errors commonly made. This is
best used in conjunction with the NMI watchdog so that spinlock
deadlocks are also debuggable.
config DEBUG_BUGVERBOSE
bool "Verbose BUG() reporting (adds 70K)"
depends on DEBUG_KERNEL
help
Say Y here to make BUG() panics output the file name and line number
of the BUG call as well as the EIP and oops trace. This aids
debugging but costs about 70-100K of memory.
config DEBUG_DCFLUSH
bool "D-cache flush debugging"
depends on DEBUG_KERNEL
config STACK_DEBUG
bool "Stack Overflow Detection Support"
config MCOUNT
bool
depends on STACK_DEBUG
default y
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"
config USERMODE
bool
default y
mainmenu "Linux/Usermode Kernel Configuration"
config ISA
bool
config SBUS
bool
config PCI
bool
config UID16
bool
default y
config RWSEM_GENERIC_SPINLOCK
bool
default y
menu "Code maturity level options"
config EXPERIMENTAL
bool "Prompt for development and/or incomplete code/drivers"
endmenu
menu "General Setup"
config NET
bool "Networking support"
config SYSVIPC
bool "System V IPC"
config BSD_PROCESS_ACCT
bool "BSD Process Accounting"
config SYSCTL
bool "Sysctl support"
config BINFMT_AOUT
tristate "Kernel support for a.out binaries"
config BINFMT_ELF
tristate "Kernel support for ELF binaries"
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
config HOSTFS
tristate "Host filesystem"
config MCONSOLE
bool "Management console"
config MAGIC_SYSRQ
bool "Magic SysRq key"
depends on MCONSOLE
config HOST_2G_2G
bool "2G/2G host address space split"
config UML_SMP
bool "Symmetric multi-processing support"
config SMP
bool
default UML_SMP
config NR_CPUS
int "Maximum number of CPUs (2-32)"
depends on SMP
default "32"
config NEST_LEVEL
int "Nesting level"
default "0"
config KERNEL_HALF_GIGS
int "Kernel address space size (in .5G units)"
default "1"
config HIGHMEM
bool "Highmem support"
endmenu
menu "Loadable module support"
config MODULES
bool "Enable loadable module support"
# MODVERSIONS does not yet work in this architecture
# bool ' Set version information on all module symbols' CONFIG_MODVERSIONS
config KMOD
bool "Kernel module loader"
depends on MODULES
endmenu
source "arch/um/Kconfig_char"
source "arch/um/Kconfig_block"
config NETDEVICES
bool
default NET
source "arch/um/Kconfig_net"
source "net/Kconfig"
source "fs/Kconfig"
menu "SCSI support"
config SCSI
tristate "SCSI support"
# This gives us free_dma, which scsi.c wants.
config GENERIC_ISA_DMA
bool
depends on SCSI
default y
source "arch/um/Kconfig_scsi"
endmenu
source "drivers/md/Kconfig"
source "drivers/mtd/Kconfig"
menu "Kernel hacking"
config DEBUG_SLAB
bool "Debug memory allocations"
config DEBUGSYM
bool "Enable kernel debugging symbols"
config PT_PROXY
bool "Enable ptrace proxy"
depends on XTERM_CHAN && DEBUGSYM
config GPROF
bool "Enable gprof support"
depends on DEBUGSYM
config GCOV
bool "Enable gcov support"
depends on DEBUGSYM
endmenu
menu "Block Devices"
config BLK_DEV_UBD
bool "Virtual block device"
config BLK_DEV_UBD_SYNC
bool "Always do synchronous disk IO for UBD"
depends on BLK_DEV_UBD
config BLK_DEV_LOOP
tristate "Loopback device support"
config BLK_DEV_NBD
tristate "Network block device support"
depends on NET
config BLK_DEV_RAM
tristate "RAM disk support"
config BLK_DEV_RAM_SIZE
int "Default RAM disk size"
depends on BLK_DEV_RAM
default "4096"
config BLK_DEV_INITRD
bool "Initial RAM disk (initrd) support"
depends on BLK_DEV_RAM=y
config MMAPPER
tristate "Example IO memory driver"
endmenu
menu "Character Devices"
config STDIO_CONSOLE
bool
default y
config SSL
bool "Virtual serial line"
config FD_CHAN
bool "file descriptor channel support"
config NULL_CHAN
bool "null channel support"
config PORT_CHAN
bool "port channel support"
config PTY_CHAN
bool "pty channel support"
config TTY_CHAN
bool "tty channel support"
config XTERM_CHAN
bool "xterm channel support"
config CON_ZERO_CHAN
string "Default main console channel initialization"
default "fd:0,fd:1"
config CON_CHAN
string "Default console channel initialization"
default "xterm"
config SSL_CHAN
string "Default serial line channel initialization"
default "pty"
config UNIX98_PTYS
bool "Unix98 PTY support"
config UNIX98_PTY_COUNT
int "Maximum number of Unix98 PTYs in use (0-2048)"
depends on UNIX98_PTYS
default "256"
config WATCHDOG
bool "Watchdog Timer Support"
config WATCHDOG_NOWAYOUT
bool "Disable watchdog shutdown on close"
depends on WATCHDOG
config SOFT_WATCHDOG
tristate "Software Watchdog"
depends on WATCHDOG
config UML_WATCHDOG
tristate "UML watchdog"
depends on WATCHDOG
config UML_SOUND
tristate "Sound support"
config SOUND
tristate
default UML_SOUND
config HOSTAUDIO
tristate
default UML_SOUND
config TTY_LOG
bool "Enable tty logging"
endmenu
menu "Network Devices"
depends on NET
# UML virtual driver
config UML_NET
bool "Virtual network device"
config UML_NET_ETHERTAP
bool "Ethertap transport"
depends on UML_NET
config UML_NET_TUNTAP
bool "TUN/TAP transport"
depends on UML_NET
config UML_NET_SLIP
bool "SLIP transport"
depends on UML_NET
config UML_NET_DAEMON
bool "Daemon transport"
depends on UML_NET
config UML_NET_MCAST
bool "Multicast transport"
depends on UML_NET
config UML_NET_PCAP
bool "pcap transport"
depends on UML_NET
# Below are hardware-independent drivers mirrored from
# drivers/net/Config.in. It would be nice if Linux
# had HW independent drivers separated from the other
# but it does not. Until then each non-ISA/PCI arch
# needs to provide it's own menu of network drivers
config DUMMY
tristate "Dummy net driver support"
config BONDING
tristate "Bonding driver support"
config EQUALIZER
tristate "EQL (serial line load balancing) support"
config TUN
tristate "Universal TUN/TAP device driver support"
config ETHERTAP
tristate "Ethertap network tap (OBSOLETE)"
depends on EXPERIMENTAL && NETLINK
config PPP
tristate "PPP (point-to-point protocol) support"
config PPP_MULTILINK
bool "PPP multilink support (EXPERIMENTAL)"
depends on PPP && EXPERIMENTAL
config PPP_FILTER
bool "PPP filtering"
depends on PPP && FILTER
config PPP_ASYNC
tristate "PPP support for async serial ports"
depends on PPP
config PPP_SYNC_TTY
tristate "PPP support for sync tty ports"
depends on PPP
config PPP_DEFLATE
tristate "PPP Deflate compression"
depends on PPP
config PPP_BSDCOMP
tristate "PPP BSD-Compress compression"
depends on PPP
config PPPOE
tristate "PPP over Ethernet (EXPERIMENTAL)"
depends on PPP && EXPERIMENTAL
config SLIP
tristate "SLIP (serial line) support"
config SLIP_COMPRESSED
bool "CSLIP compressed headers"
depends on SLIP=y
config SLIP_SMART
bool "Keepalive and linefill"
depends on SLIP=y
config SLIP_MODE_SLIP6
bool "Six bit SLIP encapsulation"
depends on SLIP=y
endmenu
comment "SCSI support type (disk, tape, CD-ROM)"
depends on SCSI
config BLK_DEV_SD
tristate "SCSI disk support"
depends on SCSI
config SD_EXTRA_DEVS
int "Maximum number of SCSI disks that can be loaded as modules"
depends on BLK_DEV_SD
default "40"
config CHR_DEV_ST
tristate "SCSI tape support"
depends on SCSI
config BLK_DEV_SR
tristate "SCSI CD-ROM support"
depends on SCSI
config BLK_DEV_SR_VENDOR
bool "Enable vendor-specific extensions (for SCSI CDROM)"
depends on BLK_DEV_SR
config SR_EXTRA_DEVS
int "Maximum number of CDROM devices that can be loaded as modules"
depends on BLK_DEV_SR
default "2"
config CHR_DEV_SG
tristate "SCSI generic support"
depends on SCSI
comment "Some SCSI devices (e.g. CD jukebox) support multiple LUNs"
depends on SCSI
#if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then
config SCSI_DEBUG_QUEUES
bool "Enable extra checks in new queueing code"
depends on SCSI
#fi
config SCSI_MULTI_LUN
bool "Probe all LUNs on each SCSI device"
depends on SCSI
config SCSI_CONSTANTS
bool "Verbose SCSI error reporting (kernel size +=12K)"
depends on SCSI
config SCSI_LOGGING
bool "SCSI logging facility"
depends on SCSI
config SCSI_DEBUG
tristate "SCSI debugging host simulator (EXPERIMENTAL)"
depends on SCSI
#
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/config-language.txt.
#
# Note: ISA is disabled and will hopefully never be enabled.
# If you managed to buy an ISA x86-64 box you'll have to fix all the
# ISA drivers you need yourself.
#
mainmenu "Linux Kernel Configuration"
config X86_64
bool
default y
help
Port to the x86-64 architecture. x86-64 is an 64bit extension to the
classical 32bit x86 architecture. For details see http://www.x86-64.org
config X86
bool
default y
help
This is Linux's home port. Linux was originally native to the Intel
386, and runs on all the later x86 processors including the Intel
486, 586, Pentiums, and various instruction-set-compatible chips by
AMD, Cyrix, and others.
config ISA
bool
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 SBUS
bool
config UID16
bool
default y
config RWSEM_GENERIC_SPINLOCK
bool
default y
config RWSEM_XCHGADD_ALGORITHM
bool
config X86_CMPXCHG
bool
default y
config EARLY_PRINTK
bool
default y
help
Write kernel log output directly into the VGA buffer. This is useful
for kernel debugging when your machine crashes very early before
the console code is initialized. For normal operation it is not
recommended because it looks ugly and doesn't cooperate with
klogd/syslogd or the X server.You should normally N here, unless
you want to debug such a crash.
config GENERIC_ISA_DMA
bool
default y
source "init/Kconfig"
menu "Processor type and features"
choice
prompt "Processor family"
default MK8
config MK8
bool "AMD-Hammer"
help
Support for AMD Clawhammer/Sledgehammer CPUs. Only choice for x86-64
currently so you should chose this if you want a x86-64 kernel. In fact
you will have no other choice than to chose this.
config GENERIC_CPU
bool "Generic-x86-64"
endchoice
#
# Define implied options from the CPU selection here
#
config X86_L1_CACHE_BYTES
int
default "64"
config X86_L1_CACHE_SHIFT
int
default "6"
config X86_TSC
bool
default y
config X86_GOOD_APIC
bool
default y
config X86_MSR
tristate "/dev/cpu/*/msr - Model-specific register support"
help
This device gives privileged processes access to the x86
Model-Specific Registers (MSRs). It is a character device with
major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr.
MSR accesses are directed to a specific CPU on multi-processor
systems.
config X86_CPUID
tristate "/dev/cpu/*/cpuid - CPU information support"
help
This device gives processes access to the x86 CPUID instruction to
be executed on a specific processor. It is a character device
with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to
/dev/cpu/31/cpuid.
config MATH_EMULATION
bool
config MCA
bool
config EISA
bool
config X86_IO_APIC
bool
default y
config X86_LOCAL_APIC
bool
default y
config MTRR
bool "MTRR (Memory Type Range Register) support"
---help---
On Intel P6 family processors (Pentium Pro, Pentium II and later)
the Memory Type Range Registers (MTRRs) may be used to control
processor access to memory ranges. This is most useful if you have
a video (VGA) card on a PCI or AGP bus. Enabling write-combining
allows bus write transfers to be combined into a larger transfer
before bursting over the PCI/AGP bus. This can increase performance
of image write operations 2.5 times or more. Saying Y here creates a
/proc/mtrr file which may be used to manipulate your processor's
MTRRs. Typically the X server should use this.
This code has a reasonably generic interface so that similar
control registers on other processors can be easily supported
as well:
Saying Y here also fixes a problem with buggy SMP BIOSes which only
set the MTRRs for the boot CPU and not for the secondary CPUs. This
can lead to all sorts of problems, so it's good to say Y here.
Just say Y here, all x86-64 machines support MTRRs.
See <file:Documentation/mtrr.txt> for more information.
config SMP
bool "Symmetric multi-processing support"
---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.
Note that if you say Y here and choose architecture "586" or
"Pentium" under "Processor family", the kernel will not work on 486
architectures. Similarly, multiprocessor kernels for the "PPro"
architecture may not work on all Pentium based boards.
People using multiprocessor machines who say Y here should also say
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
Management" code will be disabled if you say Y here.
See also the <file:Documentation/smp.tex>,
<file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>,
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
<http://www.linuxdoc.org/docs.html#howto>.
If you don't know what to do here, say N.
config PREEMPT
bool "Preemptible Kernel"
depends on !SMP
---help---
This option reduces the latency of the kernel when reacting to
real-time or interactive events by allowing a low priority process to
be preempted even if it is in kernel mode executing a system call.
This allows applications to run more reliably even when the system is
under load. On contrary it may also break your drivers and add
priority inheritance problems to your system. Don't select it if
you rely on a stable system or have slightly obscure hardware.
It's also not very well tested on x86-64 currently.
You have been warned.
Say Y here if you are feeling brave and building a kernel for a
desktop, embedded or real-time system. Say N if you are unsure.
config HAVE_DEC_LOCK
bool
depends on SMP
default y
# actually 64 maximum, but you need to fix the APIC code first
# to use clustered mode or whatever your big iron needs
config NR_CPUS
int "Maximum number of CPUs (2-8)"
depends on SMP
default "8"
help
This allows you to specify the maximum number of CPUs which this
kernel will support. The maximum supported value is 32 and the
minimum value which makes sense is 2.
This is purely to save memory - each supported CPU adds
approximately eight kilobytes to the kernel image.
config GART_IOMMU
bool "IOMMU support"
help
Support the K8 IOMMU. Needed to run systems with more than 4GB of memory
properly with 32bit devices. You should probably turn this on.
The iommu can be turned off at runtime with the iommu=off parameter.
config DUMMY_IOMMU
bool
depends on !GART_IOMMU
default y
help
Don't use IOMMU code. This will cause problems when you have more than 4GB
of memory and any 32bit devices. Don't turn on unless you know what you
are doing.
config X86_MCE
bool
default y
endmenu
menu "Power management options"
config PM
bool "Power Management support"
---help---
"Power Management" means that parts of your computer are shut
off or put into a power conserving "sleep" mode if they are not
being used. There are two competing standards for doing this: APM
and ACPI. If you want to use either one, say Y here and then also
to the requisite support below.
Power Management is most important for battery powered laptop
computers; if you have a laptop, check out the Linux Laptop home
page on the WWW at
<http://www.cs.utexas.edu/users/kharker/linux-laptop/> and the
Battery Powered Linux mini-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>.
Note that, even if you say N here, Linux on the x86 architecture
will issue the hlt instruction if nothing is to be done, thereby
sending the processor to sleep and saving power.
source "drivers/acpi/Kconfig"
endmenu
menu "Bus options (PCI etc.)"
config PCI
bool "PCI support"
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.
The PCI-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>, contains valuable
information about which PCI hardware does work under Linux and which
doesn't.
# x86-64 doesn't support PCI BIOS access from long mode so always go direct.
config PCI_DIRECT
bool
depends on PCI
default y
source "drivers/pci/Kconfig"
config HOTPLUG
bool "Support for hot-pluggable devices"
---help---
Say Y here if you want to plug devices into your computer while
the system is running, and be able to use them quickly. In many
cases, the devices can likewise be unplugged at any time too.
One well known example of this is PCMCIA- or PC-cards, credit-card
size devices such as network cards, modems or hard drives which are
plugged into slots found on all modern laptop computers. Another
example, used on modern desktops as well as laptops, is USB.
Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
software (at <http://linux-hotplug.sourceforge.net/>) and install it.
Then your kernel will automatically call out to a user mode "policy
agent" (/sbin/hotplug) to load modules and set up software needed
to use devices as you hotplug them.
source "drivers/pcmcia/Kconfig"
source "drivers/hotplug/Kconfig"
endmenu
menu "Executable file formats / Emulations"
config KCORE_ELF
bool
depends on PROC_FS
default y
---help---
If you enabled support for /proc file system then the file
/proc/kcore will contain the kernel core image. This can be used
in gdb:
$ cd /usr/src/linux ; gdb vmlinux /proc/kcore
You have two choices here: ELF and A.OUT. Selecting ELF will make
/proc/kcore appear in ELF core format as defined by the Executable
and Linking Format specification. Selecting A.OUT will choose the
old "a.out" format which may be necessary for some old versions
of binutils or on some architectures.
This is especially useful if you have compiled the kernel with the
"-g" option to preserve debugging information. It is mainly used
for examining kernel data structures on the live kernel so if you
don't understand what this means or are not a kernel hacker, just
leave it at its default value ELF.
#tristate 'Kernel support for a.out binaries' CONFIG_BINFMT_AOUT
config BINFMT_ELF
tristate "Kernel support for ELF binaries"
---help---
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems. Saying Y here will enable your kernel to run ELF binaries
and enlarge it by about 13 KB. ELF support under Linux has now all
but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
because it is portable (this does *not* mean that you will be able
to run executables from different architectures or operating systems
however) and makes building run-time libraries very easy. Many new
executables are distributed solely in ELF format. You definitely
want to say Y here.
Information about ELF is contained in the ELF HOWTO available from
<http://www.linuxdoc.org/docs.html#howto>.
If you find that after upgrading from Linux kernel 1.2 and saying Y
here, you still can't run any ELF binaries (they just crash), then
you'll have to install the newest ELF runtime libraries, including
ld.so (check the file <file:Documentation/Changes> for location and
latest version).
If you want to compile this as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called binfmt_elf.o. Saying M or N here is dangerous because
some crucial programs on your system might be in ELF format.
config BINFMT_MISC
tristate "Kernel support for MISC binaries"
---help---
If you say Y here, it will be possible to plug wrapper-driven binary
formats into the kernel. You will like this especially when you use
programs that need an interpreter to run like Java, Python or
Emacs-Lisp. It's also useful if you often run DOS executables under
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>). Once you have
registered such a binary class with the kernel, you can start one of
those programs simply by typing in its name at a shell prompt; Linux
will automatically feed it to the correct interpreter.
You can do other nice things, too. Read the file
<file:Documentation/binfmt_misc.txt> to learn how to use this
feature, and <file:Documentation/java.txt> for information about how
to include Java support.
You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
use this part of the kernel.
You may say M here for module support and later load the module when
you have use for it; the module is called binfmt_misc.o. If you
don't know what to answer at this point, say Y.
config IA32_EMULATION
bool "IA32 Emulation"
help
Include code to run 32bit programs under an 64bit kernel. You should likely
turn this on, unless you're 100% sure that you don't have any 32bit programs
left.
endmenu
source "drivers/mtd/Kconfig"
source "drivers/parport/Kconfig"
source "drivers/block/Kconfig"
menu "ATA/ATAPI/MFM/RLL support"
config IDE
tristate "ATA/ATAPI/MFM/RLL device support"
---help---
If you say Y here, your kernel will be able to manage low cost mass
storage units such as ATA/(E)IDE and ATAPI units. The most common
cases are IDE hard drives and ATAPI CD-ROM drives.
If your system is pure SCSI and doesn't use these interfaces, you
can say N here.
Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
for mass storage units such as hard disks. It was designed by
Western Digital and Compaq Computer in 1984. It was then named
ST506. Quite a number of disks use the IDE interface.
AT Attachment (ATA) is the superset of the IDE specifications.
ST506 was also called ATA-1.
Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
ATA-3. It provides support for larger disks (up to 8.4GB by means of
the LBA standard), more disks (4 instead of 2) and for other mass
storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
ATA-4 and provides faster (and more CPU friendly) transfer modes
than previous PIO (Programmed processor Input/Output) from previous
ATA/IDE standards by means of fast DMA controllers.
ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
CD-ROM drives, similar in many respects to the SCSI protocol.
SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
designed in order to prevent data corruption and disk crash by
detecting pre hardware failure conditions (heat, access time, and
the like...). Disks built since June 1995 may follow this standard.
The kernel itself don't manage this; however there are quite a
number of user programs such as smart that can query the status of
SMART parameters disk.
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called ide.o.
For further information, please read <file:Documentation/ide.txt>.
If unsure, say Y.
source "drivers/ide/Kconfig"
endmenu
menu "SCSI device support"
config SCSI
tristate "SCSI device support"
---help---
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
any other SCSI device under Linux, say Y and make sure that you know
the name of your SCSI host adapter (the card inside your computer
that "speaks" the SCSI protocol, also called SCSI controller),
because you will be asked for it.
You also need to say Y here if you want support for the parallel
port version of the 100 MB IOMEGA ZIP drive.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called scsi_mod.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt> and
<file:Documentation/scsi.txt>. However, do not compile this as a
module if your root file system (the one containing the directory /)
is located on a SCSI device.
source "drivers/scsi/Kconfig"
endmenu
source "drivers/md/Kconfig"
source "drivers/telephony/Kconfig"
source "drivers/message/fusion/Kconfig"
source "drivers/ieee1394/Kconfig"
#Currently not 64bit safe
#source drivers/message/i2o/Config.in
source "net/Kconfig"
menu "Network device support"
depends on NET
config NETDEVICES
bool "Network device support"
---help---
You can say N here if you don't intend to connect your Linux box to
any other computer at all or if all your connections will be over a
telephone line with a modem either via UUCP (UUCP is a protocol to
forward mail and news between unix hosts over telephone lines; read
the UUCP-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell
account or a BBS, even using term (term is a program which gives you
almost full Internet connectivity if you have a regular dial up
shell account on some Internet connected Unix computer. Read
<http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>).
You'll have to say Y if your computer contains a network card that
you want to use under Linux (make sure you know its name because you
will be asked for it and read the Ethernet-HOWTO (especially if you
plan to use more than one network card under Linux)) or if you want
to use SLIP (Serial Line Internet Protocol is the protocol used to
send Internet traffic over telephone lines or null modem cables) or
CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better
and newer replacement for SLIP) or PLIP (Parallel Line Internet
Protocol is mainly used to create a mini network by connecting the
parallel ports of two local machines) or AX.25/KISS (protocol for
sending Internet traffic over amateur radio links).
Make sure to read the NET-3-HOWTO. Eventually, you will have to read
Olaf Kirch's excellent and free book "Network Administrator's
Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If
unsure, say Y.
source "drivers/net/Kconfig"
# ATM seems to be largely 64bit unsafe and also unmaintained - disable it for now.
# if [ "$CONFIG_ATM" = "y" ]; then
# source drivers/atm/Config.in
# fi
endmenu
source "net/ax25/Kconfig"
source "net/irda/Kconfig"
source "drivers/isdn/Kconfig"
# no support for non IDE/SCSI cdroms as they were all ISA only
#
# input before char - char/joystick depends on it. As does USB.
#
source "drivers/input/Kconfig"
source "drivers/char/Kconfig"
source "drivers/misc/Kconfig"
source "drivers/media/Kconfig"
source "fs/Kconfig"
menu "Console drivers"
depends on VT
config VGA_CONSOLE
bool "VGA text console"
help
Saying Y here will allow you to use Linux in text mode through a
display that complies with the generic VGA standard. Virtually
everyone wants that.
The program SVGATextMode can be used to utilize SVGA video cards to
their full potential in text mode. Download it from
<ftp://ibiblio.org/pub/Linux/utils/console/>.
Say Y.
config VIDEO_SELECT
bool "Video mode selection support"
---help---
This enables support for text mode selection on kernel startup. If
you want to take advantage of some high-resolution text mode your
card's BIOS offers, but the traditional Linux utilities like
SVGATextMode don't, you can say Y here and set the mode using the
"vga=" option from your boot loader (lilo or loadlin) or set
"vga=ask" which brings up a video mode menu on kernel startup. (Try
"man bootparam" or see the documentation of your boot loader about
how to pass options to the kernel.)
Read the file <file:Documentation/svga.txt> for more information
about the Video mode selection support. If unsure, say N.
if EXPERIMENTAL
config MDA_CONSOLE
tristate "MDA text console (dual-headed) (EXPERIMENTAL)"
---help---
Say Y here if you have an old MDA or monochrome Hercules graphics
adapter in your system acting as a second head ( = video card). You
will then be able to use two monitors with your Linux system. Do not
say Y here if your MDA card is the primary card in your system; the
normal VGA driver will handle it.
This driver is also available as a module ( = code which can be
inserted and removed from the running kernel whenever you want).
The module will be called mdacon.o. If you want to compile it as
a module, say M here and read <file:Documentation/modules.txt>.
If unsure, say N.
source "drivers/video/Kconfig"
endif
endmenu
menu "Sound"
config SOUND
tristate "Sound card support"
---help---
If you have a sound card in your computer, i.e. if it can say more
than an occasional beep, say Y. Be sure to have all the information
about your sound card and its configuration down (I/O port,
interrupt and DMA channel), because you will be asked for it.
You want to read the Sound-HOWTO, available from
<http://www.linuxdoc.org/docs.html#howto>. General information about
the modular sound system is contained in the files
<file:Documentation/sound/Introduction>. The file
<file:Documentation/sound/README.OSS> contains some slightly
outdated but still useful information as well.
If you have a PnP sound card and you want to configure it at boot
time using the ISA PnP tools (read
<http://www.roestock.demon.co.uk/isapnptools/>), then you need to
compile the sound card support as a module ( = code which can be
inserted in and removed from the running kernel whenever you want)
and load that module after the PnP configuration is finished. To do
this, say M here and read <file:Documentation/modules.txt> as well
as <file:Documentation/sound/README.modules>; the module will be
called soundcore.o.
I'm told that even without a sound card, you can make your computer
say more than an occasional beep, by programming the PC speaker.
Kernel patches and supporting utilities to do that are in the pcsp
package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
source "sound/Kconfig"
endmenu
source "drivers/usb/Kconfig"
source "net/bluetooth/Kconfig"
menu "Kernel hacking"
config DEBUG_KERNEL
bool "Kernel debugging"
help
Say Y here if you are developing drivers or trying to debug and
identify kernel problems.
config DEBUG_SLAB
bool "Debug memory allocations"
depends on DEBUG_KERNEL
help
Say Y here to have the kernel do limited verification on memory
allocation as well as poisoning memory on free to catch use of freed
memory.
# bool ' Memory mapped I/O debugging' CONFIG_DEBUG_IOVIRT
config MAGIC_SYSRQ
bool "Magic SysRq key"
depends on DEBUG_KERNEL
help
If you say Y here, you will have some control over the system even
if the system crashes for example during kernel debugging (e.g., you
will be able to flush the buffer cache to disk, reboot the system
immediately or dump some status information). This is accomplished
by pressing various keys while holding SysRq (Alt+PrintScreen). It
also works on a serial console (on PC hardware at least), if you
send a BREAK and then within 5 seconds a command keypress. The
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
unless you really know what this hack does.
config DEBUG_SPINLOCK
bool "Spinlock debugging"
depends on DEBUG_KERNEL
help
Say Y here and build SMP to catch missing spinlock initialization
and certain other kinds of spinlock errors commonly made. This is
best used in conjunction with the NMI watchdog so that spinlock
deadlocks are also debuggable.
config CHECKING
bool "Additional run-time checks"
depends on DEBUG_KERNEL
help
Enables some internal consistency checks for kernel debugging.
You should normally say N.
config INIT_DEBUG
bool "Debug __init statements"
depends on DEBUG_KERNEL
help
Fill __init and __initdata at the end of boot. This is only for debugging.
config KALLSYMS
bool "Load all symbols for debugging/kksymoops"
depends on DEBUG_KERNEL
help
Say Y here to let the kernel print out symbolic crash information and
symbolic stack backtraces. This increases the size of the kernel
somewhat, as all symbols have to be loaded into the kernel image.
endmenu
source "security/Kconfig"
source "crypto/Kconfig"
source "lib/Kconfig"
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment