# $USAGI: Configure.help,v 1.78.2.11.2.1 2003/02/05 07:44:35 yoshfuji Exp $ # Maintained by: # Eric S. Raymond # Steven Cole # # Version 3.01: current with 2.4.19+ # # Translations of this file available on the WWW: # # - Japanese, maintained by the JF Project , at # # - Russian, by , at # # - French, by Pierre Tane , at # # - Polish, by Dominik Mierzejewski , at # # - German, by SuSE, at . This patch # also includes infrastructure to support different languages. # - Catalan, by Antoni Bella , at # # # To access a document on the WWW, you need to have a direct Internet # connection and a browser program such as netscape or lynx. If you # only have email access, you can still use FTP and WWW servers: send # an email to with the text # send usenet/news.answers/internet-services/access-via-email # in the body of the message. # # Information about what a kernel is, what it does, how to patch and # compile it and much more is contained in the Kernel-HOWTO, available # at . Before you start # compiling, make sure that you have the necessary versions of all # programs and libraries required to compile and run this kernel; they # are listed in the . Make sure to read the # toplevel kernel README file as well. # # Format of this file: descriptionvariablehelp text. # The help texts may contain empty lines, but every non-empty line must # be indented two positions. Order of the help texts does not matter, # however, no variable should be documented twice: if it is, only the # first occurrence will be used. We try to keep the help texts of related # variables close together. Lines starting with `#' are ignored. To be # nice to menuconfig, limit your line length to 70 characters. Use emacs' # kfill.el to edit and ispell.el to spell check this file or you lose. # # Comments of the form "# Choice:" followed by a menu name are used # internally by the maintainers' consistency-checking tools. # # If you add a help text to this file, please try to be as gentle as # possible. Don't use unexplained acronyms and generally write for the # hypothetical ignorant but intelligent user who has just bought a PC, # removed Windows, installed Linux and is now recompiling the kernel # for the first time. Tell them what to do if they're unsure. Technical # information should go in a README in the Documentation directory. # # Mention all the relevant READMEs and HOWTOs in the help text. # Make them file URLs relative to the top level of the source tree so # that help browsers can turn them into hotlinks. All URLs should be # surrounded by <>. # # Repetitions are fine since the help texts are not meant to be read # in sequence. It is good style to include URLs pointing to more # detailed technical information, pictures of the hardware, etc. # # The most important thing to include in a help entry is *motivation*. # Explain why someone configuring a kernel might want to select your # option. # # All this was shamelessly stolen from numerous different sources. Many # thanks to all the contributors. Feel free to use these help texts in # your own kernel configuration tools. The texts are copyrighted (c) # 1995-2000 by Axel Boldt and many others and are governed by the GNU # General Public License. Prompt for development and/or incomplete code/drivers CONFIG_EXPERIMENTAL Some of the various things that Linux supports (such as network drivers, file systems, network protocols, etc.) can be in a state of development where the functionality, stability, or the level of testing is not yet high enough for general use. This is usually known as the "alpha-test" phase among developers. If a feature is currently in alpha-test, then the developers usually discourage uninformed widespread use of this feature by the general public to avoid "Why doesn't this work?" type mail messages. However, active testing and use of these systems is welcomed. Just be aware that it may not meet the normal level of reliability or it may fail to work in some special cases. Detailed bug reports from people familiar with the kernel internals are usually welcomed by the developers (before submitting bug reports, please read the documents , , , , and in the kernel source). This option will also make obsoleted drivers available. These are drivers that have been replaced by something else, and/or are scheduled to be removed in a future kernel release. Unless you intend to help test and develop a feature or driver that falls into this category, or you have a situation that requires using these features, you should probably say N here, which will cause the configurator to present you with fewer choices. If you say Y here, you will be offered the choice of using features or drivers that are currently considered to be in the alpha-test phase. Prompt for drivers for obsolete features and hardware CONFIG_OBSOLETE Obsolete drivers have usually been replaced by more recent software that can talk to the same hardware. Obsolete hardware is things like MGA monitors that you are very unlikely to see on today's systems. Symmetric Multi-Processing support CONFIG_SMP 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, single 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 , , , and the SMP-HOWTO available at . If you don't know what to do here, say N. Intel or compatible 80x86 processor CONFIG_X86 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. Alpha processor CONFIG_ALPHA The Alpha is a 64-bit general-purpose processor designed and marketed by the Digital Equipment Corporation of blessed memory, now Compaq. Alpha Linux dates from 1995-1996 and was the first non-x86 port. The Alpha Linux project has a home page at . 32-bit Sun Sparc CONFIG_SPARC32 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 . 64-bit Sun Sparc CONFIG_SPARC64 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 . Power PC processor CONFIG_PPC The PowerPC is a very capable 32-bit RISC processor from Motorola, the successor to their 68000 and 88000 series. It powers recent Macintoshes and also a widely-used series of single-board computers from Motorola. The Linux PowerPC port has a home page at . Motorola 68K processors CONFIG_M68K The Motorola 68K microprocessors are now obsolete, having been superseded by the PowerPC line also from Motorola. But they powered the first wave of workstation hardware in the 1980s, including Sun workstations; they were also the basis of the original Amiga and later Atari personal computers. A lot of this hardware is still around. The m68k project has a home page at . ARM processors CONFIG_ARM The ARM series is a line of low-power-consumption RISC chip designs licensed by ARM ltd and targeted at embedded applications and handhelds such as the Compaq IPAQ. ARM-based PCs are no longer manufactured, but legacy ARM-based PC hardware remains popular in Europe. There is an ARM Linux project with a web page at . SuperH processors CONFIG_SUPERH 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 . IA64 processors, including Intel Itanium CONFIG_IA64 The Itanium is Intel's 64-bit successor to the 32-bit X86 line. As of early 2001 it is not yet in widespread production use. The Linux IA-64 project has a home page at . HP PA-RISC processor CONFIG_PARISC 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 . IBM System/390 CONFIG_S390 Linux now runs on the venerable System/390 mainframe from IBM, in a guest partition under VM. In fact, over 40,000 simultaneous Linux images have been run on a single mainframe! The S390 Linux project has a home page at . Axis Communications ETRAX 100LX embedded network CPU CONFIG_CRIS Linux has been ported to run on the Axis Communications ETRAX 100LX CPU and the single-board computers built around it, targeted for network and embedded applications. For more information see the Axis Communication site, . Unsynced TSC support CONFIG_X86_TSC_DISABLE This option is used for getting Linux to run on a NUMA multi-node boxes, laptops and other systems suffering from unsynced TSCs or TSC drift, which can cause gettimeofday to return non-monotonic values. Choosing this option will disable the CONFIG_X86_TSC optimization, and allows you to then specify "notsc" as a boot option regardless of which processor you have compiled for. NOTE: If your system hangs when init should run, you are probably using a i686 compiled glibc which reads the TSC without checking for availability. Boot without "notsc" and install a i386 compiled glibc to solve the problem. If unsure, say N. Multiquad support for NUMA systems CONFIG_MULTIQUAD This option is used for getting Linux to run on a (IBM/Sequent) NUMA multiquad box. This changes the way that processors are bootstrapped, and uses Clustered Logical APIC addressing mode instead of Flat Logical. You will need a new lynxer.elf file to flash your firmware with - send email to Martin.Bligh@us.ibm.com IO-APIC support on uniprocessors CONFIG_X86_UP_IOAPIC An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an SMP-capable replacement for PC-style interrupt controllers. Most SMP systems and a small number of uniprocessor systems have one. If you have a single-CPU system with an IO-APIC, you can say Y here to use it. If you say Y here even though your machine doesn't have an IO-APIC, then the kernel will still run with no slowdown at all. If you have a system with several CPUs, you do not need to say Y here: the IO-APIC will be used automatically. Local APIC Support on Uniprocessors CONFIG_X86_UP_APIC A local APIC (Advanced Programmable Interrupt Controller) is an integrated interrupt controller in the CPU. If you have a single-CPU system which has a processor with a local APIC, you can say Y here to enable and use it. If you say Y here even though your machine doesn't have a local APIC, then the kernel will still run with no slowdown at all. The local APIC supports CPU-generated self-interrupts (timer, performance counters), and the NMI watchdog which detects hard lockups. If you have a system with several CPUs, you do not need to say Y here: the local APIC will be used automatically. Preemptible Kernel CONFIG_PREEMPT 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. Kernel math emulation CONFIG_MATH_EMULATION Linux can emulate a math coprocessor (used for floating point operations) if you don't have one. 486DX and Pentium processors have a math coprocessor built in, 486SX and 386 do not, unless you added a 487DX or 387, respectively. (The messages during boot time can give you some hints here ["man dmesg"].) Everyone needs either a coprocessor or this emulation. If you don't have a math coprocessor, you need to say Y here; if you say Y here even though you have a coprocessor, the coprocessor will be used nevertheless. (This behaviour can be changed with the kernel command line option "no387", which comes handy if your coprocessor is broken. 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.) This means that it is a good idea to say Y here if you intend to use this kernel on different machines. More information about the internals of the Linux math coprocessor emulation can be found in . If you are not sure, say Y; apart from resulting in a 66 KB bigger kernel, it won't hurt. Timer and CPU usage LEDs CONFIG_LEDS If you say Y here, the LEDs on your machine will be used to provide useful information about your current system status. If you are compiling a kernel for a NetWinder or EBSA-285, you will be able to select which LEDs are active using the options below. If you are compiling a kernel for the EBSA-110 or the LART however, the red LED will simply flash regularly to indicate that the system is still functional. It is safe to say Y here if you have a CATS system, but the driver will do nothing. Timer LED CONFIG_LEDS_TIMER If you say Y here, one of the system LEDs (the green one on the NetWinder, the amber one on the EBSA285, or the red one on the LART) will flash regularly to indicate that the system is still operational. This is mainly useful to kernel hackers who are debugging unstable kernels. The LART uses the same LED for both Timer LED and CPU usage LED functions. You may choose to use both, but the Timer LED function will overrule the CPU usage LED. CPU usage LED CONFIG_LEDS_CPU If you say Y here, the red LED will be used to give a good real time indication of CPU usage, by lighting whenever the idle task is not currently executing. The LART uses the same LED for both Timer LED and CPU usage LED functions. You may choose to use both, but the Timer LED function will overrule the CPU usage LED. Kernel FP software completion CONFIG_MATHEMU 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. # Choice: himem High Memory support CONFIG_NOHIGHMEM Linux can use up to 64 Gigabytes of physical memory on x86 systems. However, the address space of 32-bit x86 processors is only 4 Gigabytes large. That means that, if you have a large amount of physical memory, not all of it can be "permanently mapped" by the kernel. The physical memory that's not permanently mapped is called "high memory". If you are compiling a kernel which will never run on a machine with more than 960 megabytes of total physical RAM, answer "off" here (default choice and suitable for most users). This will result in a "3GB/1GB" split: 3GB are mapped so that each process sees a 3GB virtual memory space and the remaining part of the 4GB virtual memory space is used by the kernel to permanently map as much physical memory as possible. If the machine has between 1 and 4 Gigabytes physical RAM, then answer "4GB" here. If more than 4 Gigabytes is used then answer "64GB" here. This selection turns Intel PAE (Physical Address Extension) mode on. PAE implements 3-level paging on IA32 processors. PAE is fully supported by Linux, PAE mode is implemented on all recent Intel processors (Pentium Pro and better). NOTE: If you say "64GB" here, then the kernel will not boot on CPUs that don't support PAE! The actual amount of total physical memory will either be auto detected or can be forced by using a kernel command line option such as "mem=256M". (Try "man bootparam" or see the documentation of your boot loader (grub, lilo or loadlin) about how to pass options to the kernel at boot time.) If unsure, say "off". 4GB CONFIG_HIGHMEM4G Select this if you have a 32-bit processor and between 1 and 4 gigabytes of physical RAM. 64GB CONFIG_HIGHMEM64G Select this if you have a 32-bit processor and more than 4 gigabytes of physical RAM. HIGHMEM I/O support CONFIG_HIGHIO If you want to be able to do I/O to high memory pages, say Y. Otherwise low memory pages are used as bounce buffers causing a degrade in performance. Normal floppy disk support CONFIG_BLK_DEV_FD 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 . 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 . iSeries Virtual I/O Disk Support CONFIG_VIODASD If you are running on an iSeries system and you want to use virtual disks created and managed by OS/400, say Y. iSeries Virtual I/O Disk IDE Emulation CONFIG_VIODASD_IDE This causes the iSeries virtual disks to look like IDE disks. If you have programs or utilities that only support certain kinds of disks, this option will cause iSeries virtual disks to pretend to be IDE disks, which may satisfy the program. Support for PowerMac floppy CONFIG_MAC_FLOPPY If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple) floppy controller, say Y here. Most commonly found in PowerMacs. RAM disk support CONFIG_BLK_DEV_RAM 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 . 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 . The module will be called rd.o. Most normal users won't need the RAM disk functionality, and can thus say N here. Default RAM disk size CONFIG_BLK_DEV_RAM_SIZE 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. Initial RAM disk (initrd) support CONFIG_BLK_DEV_INITRD 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 for details. Embed root filesystem ramdisk into the kernel CONFIG_EMBEDDED_RAMDISK Select this option if you want to build the ramdisk image into the the final kernel binary. Filename of gziped ramdisk image CONFIG_EMBEDDED_RAMDISK_IMAGE This is the filename of the ramdisk image to be built into the kernel. Relative pathnames are relative to arch/mips/ramdisk/. The ramdisk image is not part of the kernel distribution; you must provide one yourself. Loopback device support CONFIG_BLK_DEV_LOOP 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 , 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 , and the newer tcfs package, available at . 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 . 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 . 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 . The module will be called loop.o. Most users will answer N here. Micro Memory MM5415 Battery Backed RAM support (EXPERIMENTAL) CONFIG_BLK_DEV_UMEM Saying Y here will include support for the MM5415 family of battery backed (Non-volatile) RAM cards. The cards appear as block devices that can be partitioned into as many as 15 partitions. 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 Documentation/modules.txt. The module will be called umem.o. The umem driver has been allocated block major number 116. See Documentation/devices.txt for recommended device naming. Network block device support CONFIG_BLK_DEV_NBD 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 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 . The module will be called nbd.o. If unsure, say N. Per partition statistics in /proc/partitions CONFIG_BLK_STATS If you say yes here, your kernel will keep statistical information for every partition. The information includes things as numbers of read and write accesses, the number of merged requests etc. This is required for the full functionality of sar(8) and interesting if you want to do performance tuning, by tweaking the elevator, e.g. If unsure, say N. ATA/IDE/MFM/RLL support CONFIG_IDE 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 . The module will be called ide.o. For further information, please read . If unsure, say Y. Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support CONFIG_BLK_DEV_IDE If you say Y here, you will use the full-featured IDE driver to control up to ten ATA/IDE interfaces, each being able to serve a "master" and a "slave" device, for a total of up to twenty ATA/IDE disk/cdrom/tape/floppy drives. Useful information about large (>540 MB) IDE disks, multiple interfaces, what to do if ATA/IDE devices are not automatically detected, sound card ATA/IDE ports, module support, and other topics, is contained in . For detailed information about hard drives, consult the Disk-HOWTO and the Multi-Disk-HOWTO, available from . To fine-tune ATA/IDE drive/interface parameters for improved performance, look for the hdparm package at . 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 and . The module will be called ide-mod.o. Do not compile this driver as a module if your root file system (the one containing the directory /) is located on an IDE device. If you have one or more IDE drives, say Y or M here. If your system has no IDE drives, or if memory requirements are really tight, you could say N here, and select the "Old hard disk driver" below instead to save about 13 KB of memory in the kernel. Old hard disk (MFM/RLL/IDE) driver CONFIG_BLK_DEV_HD_ONLY There are two drivers for MFM/RLL/IDE hard disks. Most people use the newer enhanced driver, but this old one is still around for two reasons. Some older systems have strange timing problems and seem to work only with the old driver (which itself does not work with some newer systems). The other reason is that the old driver is smaller, since it lacks the enhanced functionality of the new one. This makes it a good choice for systems with very tight memory restrictions, or for systems with only older MFM/RLL/ESDI drives. Choosing the old driver can save 13 KB or so of kernel memory. If you are unsure, then just choose the Enhanced IDE/MFM/RLL driver instead of this one. For more detailed information, read the Disk-HOWTO, available from . Use old disk-only driver on primary interface CONFIG_BLK_DEV_HD_IDE There are two drivers for MFM/RLL/IDE disks. Most people use just the new enhanced driver by itself. This option however installs the old hard disk driver to control the primary IDE/disk interface in the system, leaving the new enhanced IDE driver to take care of only the 2nd/3rd/4th IDE interfaces. Doing this will prevent you from having an IDE/ATAPI CD-ROM or tape drive connected to the primary IDE interface. Choosing this option may be useful for older systems which have MFM/RLL/ESDI controller+drives at the primary port address (0x1f0), along with IDE drives at the secondary/3rd/4th port addresses. Normally, just say N here; you will then use the new driver for all 4 interfaces. Include IDE/ATA-2 DISK support CONFIG_BLK_DEV_IDEDISK This will include enhanced support for MFM/RLL/IDE hard disks. If you have a MFM/RLL/IDE disk, and there is no special reason to use the old hard disk driver instead, say Y. If you have an SCSI-only system, you can say N here. 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 . The module will be called ide-disk.o. Do not compile this driver as a module if your root file system (the one containing the directory /) is located on the IDE disk. If unsure, say Y. Use multi-mode by default CONFIG_IDEDISK_MULTI_MODE If you get this error, try to say Y here: hda: set_multmode: status=0x51 { DriveReady SeekComplete Error } hda: set_multmode: error=0x04 { DriveStatusError } If in doubt, say N. PCMCIA IDE support CONFIG_BLK_DEV_IDECS Support for outboard IDE disks, tape drives, and CD-ROM drives connected through a PCMCIA card. 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 . The module will be called ide-cs.o Include IDE/ATAPI CD-ROM support CONFIG_BLK_DEV_IDECD If you have a CD-ROM drive using the ATAPI protocol, say Y. ATAPI is a newer protocol used by IDE CD-ROM and TAPE drives, similar to the SCSI protocol. Most new CD-ROM drives use ATAPI, including the NEC-260, Mitsumi FX400, Sony 55E, and just about all non-SCSI double(2X) or better speed drives. If you say Y here, the CD-ROM drive will be identified at boot time along with other IDE devices, as "hdb" or "hdc", or something similar (check the boot messages with dmesg). If this is your only CD-ROM drive, you can say N to all other CD-ROM options, but be sure to say Y or M to "ISO 9660 CD-ROM file system support". Note that older versions of LILO (LInux LOader) cannot properly deal with IDE/ATAPI CD-ROMs, so install LILO 16 or higher, available from . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ide-cd.o. Include IDE/ATAPI TAPE support CONFIG_BLK_DEV_IDETAPE If you have an IDE tape drive using the ATAPI protocol, say Y. ATAPI is a newer protocol used by IDE tape and CD-ROM drives, similar to the SCSI protocol. If you have an SCSI tape drive however, you can say N here. You should also say Y if you have an OnStream DI-30 tape drive; this will not work with the SCSI protocol, until there is support for the SC-30 and SC-50 versions. If you say Y here, the tape drive will be identified at boot time along with other IDE devices, as "hdb" or "hdc", or something similar, and will be mapped to a character device such as "ht0" (check the boot messages with dmesg). Be sure to consult the and files for usage information. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ide-tape.o. Include IDE/ATAPI FLOPPY support CONFIG_BLK_DEV_IDEFLOPPY If you have an IDE floppy drive which uses the ATAPI protocol, answer Y. ATAPI is a newer protocol used by IDE CD-ROM/tape/floppy drives, similar to the SCSI protocol. The LS-120 and the IDE/ATAPI Iomega ZIP drive are also supported by this driver. For information about jumper settings and the question of when a ZIP drive uses a partition table, see . (ATAPI PD-CD/CDR drives are not supported by this driver; support for PD-CD/CDR drives is available if you answer Y to "SCSI emulation support", below). If you say Y here, the FLOPPY drive will be identified along with other IDE devices, as "hdb" or "hdc", or something similar (check the boot messages with dmesg). If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ide-floppy.o. AWARD Bios Work-Around CONFIG_IDEDISK_STROKE Should you have a system w/ an AWARD Bios and your drives are larger than 32GB and it will not boot, one is required to perform a few OEM operations first. The option is called "STROKE" because it allows one to "soft clip" the drive to work around a barrier limit. For Maxtor drives it is called "jumpon.exe". Please search Maxtor's web-site for "JUMPON.EXE". IBM has a similar tool at: . If you are unsure, say N here. Raw Access to Media CONFIG_IDE_TASK_IOCTL This is a direct raw access to the media. It is a complex but elegant solution to test and validate the domain of the hardware and perform below the driver data recover if needed. This is the most basic form of media-forensics. If you are unsure, say N here. Use Taskfile I/O CONFIG_IDE_TASKFILE_IO This is the "Jewel" of the patch. It will go away and become the new driver core. Since all the chipsets/host side hardware deal w/ their exceptions in "their local code" currently, adoption of a standardized data-transport is the only logical solution. Additionally we packetize the requests and gain rapid performance and a reduction in system latency. Additionally by using a memory struct for the commands we can redirect to a MMIO host hardware in the next generation of controllers, specifically second generation Ultra133 and Serial ATA. Since this is a major transition, it was deemed necessary to make the driver paths buildable in separate models. Therefore if using this option fails for your arch then we need to address the needs for that arch. If you want to test this functionality, say Y here. Force DMA CONFIG_BLK_DEV_IDEDMA_FORCED This is an old piece of lost code from Linux 2.0 Kernels. Generally say N here. DMA Only on Disks CONFIG_IDEDMA_ONLYDISK This is used if you know your ATAPI Devices are going to fail DMA Transfers. Generally say N here. SCSI emulation support CONFIG_BLK_DEV_IDESCSI This will provide SCSI host adapter emulation for IDE ATAPI devices, and will allow you to use a SCSI device driver instead of a native ATAPI driver. This is useful if you have an ATAPI device for which no native driver has been written (for example, an ATAPI PD-CD or CDR drive); you can then use this emulation together with an appropriate SCSI device driver. In order to do this, say Y here and to "SCSI support" and "SCSI generic support", below. You must then provide the kernel command line "hdx=scsi" (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) for devices if you want the native EIDE sub-drivers to skip over the native support, so that this SCSI emulation can be used instead. This is required for use of CD-RW's. Note that this option does NOT allow you to attach SCSI devices to a box that doesn't have a SCSI host adapter installed. If both this SCSI emulation and native ATAPI support are compiled into the kernel, the native support will be used. 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 . The module will be called ide-scsi.o Use the NOOP Elevator (WARNING) CONFIG_BLK_DEV_ELEVATOR_NOOP If you are using a raid class top-level driver above the ATA/IDE core, one may find a performance boost by preventing a merging and re-sorting of the new requests. If unsure, say N. ISA-PNP EIDE support CONFIG_BLK_DEV_ISAPNP If you have an ISA EIDE card that is PnP (Plug and Play) and requires setup first before scanning for devices, say Y here. If unsure, say N. CMD640 chipset bugfix/support CONFIG_BLK_DEV_CMD640 The CMD-Technologies CMD640 IDE chip is used on many common 486 and Pentium motherboards, usually in combination with a "Neptune" or "SiS" chipset. Unfortunately, it has a number of rather nasty design flaws that can cause severe data corruption under many common conditions. Say Y here to include code which tries to automatically detect and correct the problems under Linux. This option also enables access to the secondary IDE ports in some CMD640 based systems. This driver will work automatically in PCI based systems (most new systems have PCI slots). But if your system uses VESA local bus (VLB) instead of PCI, you must also supply a kernel boot parameter to enable the CMD640 bugfix/support: "ide0=cmd640_vlb". (Try "man bootparam" or see the documentation of your boot loader about how to pass options to the kernel.) The CMD640 chip is also used on add-in cards by Acculogic, and on the "CSA-6400E PCI to IDE controller" that some people have. For details, read . CMD640 enhanced support CONFIG_BLK_DEV_CMD640_ENHANCED This option includes support for setting/autotuning PIO modes and prefetch on CMD640 IDE interfaces. For details, read . If you have a CMD640 IDE interface and your BIOS does not already do this for you, then say Y here. Otherwise say N. RZ1000 chipset bugfix/support CONFIG_BLK_DEV_RZ1000 The PC-Technologies RZ1000 IDE chip is used on many common 486 and Pentium motherboards, usually along with the "Neptune" chipset. Unfortunately, it has a rather nasty design flaw that can cause severe data corruption under many conditions. Say Y here to include code which automatically detects and corrects the problem under Linux. This may slow disk throughput by a few percent, but at least things will operate 100% reliably. Generic PCI IDE chipset support CONFIG_BLK_DEV_IDEPCI Say Y here for PCI systems which use IDE drive(s). This option helps the IDE driver to automatically detect and configure all PCI-based IDE interfaces in your system. Support for sharing PCI IDE interrupts CONFIG_IDEPCI_SHARE_IRQ Some ATA/IDE chipsets have hardware support which allows for sharing a single IRQ with other cards. To enable support for this in the ATA/IDE driver, say Y here. It is safe to say Y to this question, in most cases. If unsure, say N. Generic PCI bus-master DMA support CONFIG_BLK_DEV_IDEDMA_PCI If your PCI system uses IDE drive(s) (as opposed to SCSI, say) and is capable of bus-master DMA operation (most Pentium PCI systems), you will want to say Y here to reduce CPU overhead. You can then use the "hdparm" utility to enable DMA for drives for which it was not enabled automatically. By default, DMA is not enabled automatically for these drives, but you can change that by saying Y to the following question "Use DMA by default when available". You can get the latest version of the hdparm utility from . Read the comments at the beginning of and the file for more information. It is safe to say Y to this question. Good-Bad DMA Model-Firmware (WIP) CONFIG_IDEDMA_NEW_DRIVE_LISTINGS If you say Y here, the model and firmware revision of your drive will be compared against a blacklist of buggy drives that claim to be (U)DMA capable but aren't. This is a blanket on/off test with no speed limit options. Straight GNU GCC 2.7.3/2.8.X compilers are known to be safe; whereas, many versions of EGCS have a problem and miscompile if you say Y here. If in doubt, say N. Attempt to HACK around Chipsets that TIMEOUT (WIP) CONFIG_BLK_DEV_IDEDMA_TIMEOUT If you say Y here, this is a NASTY UGLY HACK! We have to issue an abort and requeue the request DMA engine got turned off by a goofy ASIC, and we have to clean up the mess, and here is as good as any. Do it globally for all chipsets. If in doubt, say N. Boot off-board chipsets first support CONFIG_BLK_DEV_OFFBOARD Normally, IDE controllers built into the motherboard (on-board controllers) are assigned to ide0 and ide1 while those on add-in PCI cards (off-board controllers) are relegated to ide2 and ide3. Answering Y here will allow you to reverse the situation, with off-board controllers on ide0/1 and on-board controllers on ide2/3. This can improve the usability of some boot managers such as lilo when booting from a drive on an off-board controller. If you say Y here, and you actually want to reverse the device scan order as explained above, you also need to issue the kernel command line option "ide=reverse". (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.) Note that, if you do this, the order of the hd* devices will be rearranged which may require modification of fstab and other files. If in doubt, say N. Use PCI DMA by default when available CONFIG_IDEDMA_PCI_AUTO Prior to kernel version 2.1.112, Linux used to automatically use DMA for IDE drives and chipsets which support it. Due to concerns about a couple of cases where buggy hardware may have caused damage, the default is now to NOT use DMA automatically. To revert to the previous behaviour, say Y to this question. If you suspect your hardware is at all flakey, say N here. Do NOT email the IDE kernel people regarding this issue! It is normally safe to answer Y to this question unless your motherboard uses a VIA VP2 chipset, in which case you should say N. IGNORE word93 Validation BITS CONFIG_IDEDMA_IVB There are unclear terms in ATA-4 and ATA-5 standards how certain hardware (an 80c ribbon) should be detected. Different interpretations of the standards have been released in hardware. This causes problems: for example, a host with Ultra Mode 4 (or higher) will not run in that mode with an 80c ribbon. If you are experiencing compatibility or performance problems, you MAY try to answering Y here. However, it does not necessarily solve any of your problems, it could even cause more of them. It is normally safe to answer Y; however, the default is N. ATA Work(s) In Progress (EXPERIMENTAL) CONFIG_IDEDMA_PCI_WIP If you enable this you will be able to use and test highly developmental projects. If you say N, the configurator will simply skip those options. It is SAFEST to say N to this question. Asynchronous DMA support (EXPERIMENTAL) CONFIG_BLK_DEV_ADMA Please read the comments at the top of . Pacific Digital A-DMA support (EXPERIMENTAL) CONFIG_BLK_DEV_PDC_ADMA Please read the comments at the top of . 3ware Hardware ATA-RAID support CONFIG_BLK_DEV_3W_XXXX_RAID 3ware is the only hardware ATA-Raid product in Linux to date. This card is 2,4, or 8 channel master mode support only. SCSI support required!!! Please read the comments at the top of . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called 3w-xxxx.o. AEC62XX chipset support CONFIG_BLK_DEV_AEC62XX This driver adds up to 4 more EIDE devices sharing a single interrupt. This add-on card is a bootable PCI UDMA controller. In order to get this card to initialize correctly in some cases, you should say Y here, and preferably also to "Use DMA by default when available". The ATP850U/UF is an UltraDMA 33 chipset base. The ATP860 is an UltraDMA 66 chipset base. The ATP860M(acintosh) version is an UltraDMA 66 chipset base. Please read the comments at the top of . If you say Y here, then say Y to "Use DMA by default when available" as well. AEC62XX Tuning support CONFIG_AEC62XX_TUNING Please read the comments at the top of . If unsure, say N. ALI M15x3 chipset support CONFIG_BLK_DEV_ALI15X3 This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C onboard chipsets. It also tests for Simplex mode and enables normal dual channel support. If you say Y here, you also need to say Y to "Use DMA by default when available", above. Please read the comments at the top of . If unsure, say N. ALI M15x3 WDC support (DANGEROUS) CONFIG_WDC_ALI15X3 This allows for UltraDMA support for WDC drives that ignore CRC checking. You are a fool for enabling this option, but there have been requests. DO NOT COMPLAIN IF YOUR DRIVE HAS FS CORRUPTION, IF YOU ENABLE THIS! No one will listen, just laugh for ignoring this SERIOUS WARNING. Using this option can allow WDC drives to run at ATA-4/5 transfer rates with only an ATA-2 support structure. SAY N! AMD Viper (7401/7409/7411) chipset support CONFIG_BLK_DEV_AMD74XX This driver ensures (U)DMA support for the AMD756/760 Viper chipsets. If you say Y here, you also need to say Y to "Use DMA by default when available", above. Please read the comments at the top of . If unsure, say N. AMD Viper ATA-66 Override support (WIP) CONFIG_AMD74XX_OVERRIDE This option auto-forces the ata66 flag. This effect can be also invoked by calling "idex=ata66" If unsure, say N. CMD64X and CMD680 chipset support CONFIG_BLK_DEV_CMD64X Say Y here if you have an IDE controller which uses any of these chipsets: CMD643, CMD646, CMD648, CMD649 or CMD680. CY82C693 chipset support CONFIG_BLK_DEV_CY82C693 This driver adds detection and support for the CY82C693 chipset used on Digital's PC-Alpha 164SX boards. If you say Y here, you need to say Y to "Use DMA by default when available" as well. Cyrix CS5530 MediaGX chipset support CONFIG_BLK_DEV_CS5530 Include support for UDMA on the Cyrix MediaGX 5530 chipset. This will automatically be detected and configured if found. It is safe to say Y to this question. People with SCSI-only systems should say N here. If unsure, say Y. HPT34X chipset support CONFIG_BLK_DEV_HPT34X This driver adds up to 4 more EIDE devices sharing a single interrupt. The HPT343 chipset in its current form is a non-bootable controller; the HPT345/HPT363 chipset is a bootable (needs BIOS FIX) PCI UDMA controllers. This driver requires dynamic tuning of the chipset during the ide-probe at boot time. It is reported to support DVD II drives, by the manufacturer. HPT34X AUTODMA support (WIP) CONFIG_HPT34X_AUTODMA This is a dangerous thing to attempt currently! Please read the comments at the top of . If you say Y here, then say Y to "Use DMA by default when available" as well. If unsure, say N. HPT366/368/370 chipset support CONFIG_BLK_DEV_HPT366 HPT366 is an Ultra DMA chipset for ATA-66. HPT368 is an Ultra DMA chipset for ATA-66 RAID Based. HPT370 is an Ultra DMA chipset for ATA-100. This driver adds up to 4 more EIDE devices sharing a single interrupt. The HPT366 chipset in its current form is bootable. One solution for this problem are special LILO commands for redirecting the reference to device 0x80. The other solution is to say Y to "Boot off-board chipsets first support" (CONFIG_BLK_DEV_OFFBOARD) unless your mother board has the chipset natively mounted. Regardless one should use the fore mentioned option and call at LILO or include "ide=reverse" in LILO's append-line. This driver requires dynamic tuning of the chipset during the ide-probe at boot. It is reported to support DVD II drives, by the manufacturer. NS87415 chipset support (EXPERIMENTAL) CONFIG_BLK_DEV_NS87415 This driver adds detection and support for the NS87415 chip (used in SPARC64, among others). Please read the comments at the top of . OPTi 82C621 chipset enhanced support (EXPERIMENTAL) CONFIG_BLK_DEV_OPTI621 This is a driver for the OPTi 82C621 EIDE controller. Please read the comments at the top of . ServerWorks OSB4/CSB5 chipset support CONFIG_BLK_DEV_SVWKS This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5 chipsets. Intel PIIXn chipsets support CONFIG_BLK_DEV_PIIX This driver adds PIO mode setting and tuning for all PIIX IDE controllers by Intel. Since the BIOS can sometimes improperly tune PIO 0-4 mode settings, this allows dynamic tuning of the chipset via the standard end-user tool 'hdparm'. Please read the comments at the top of . If you say Y here, you should also say Y to "PIIXn Tuning support", below. If unsure, say N. PIIXn Tuning support CONFIG_PIIX_TUNING This driver extension adds DMA mode setting and tuning for all PIIX IDE controllers by Intel. Since the BIOS can sometimes improperly set up the device/adapter combination and speed limits, it has become a necessity to back/forward speed devices as needed. Case 430HX/440FX PIIX3 need speed limits to reduce UDMA to DMA mode 2 if the BIOS can not perform this task at initialization. If unsure, say N. PROMISE PDC20246/PDC20262/PDC20265/PDC20267/PDC20268 support CONFIG_BLK_DEV_PDC202XX Promise Ultra33 or PDC20246 Promise Ultra66 or PDC20262 Promise Ultra100 or PDC20265/PDC20267/PDC20268 This driver adds up to 4 more EIDE devices sharing a single interrupt. This add-on card is a bootable PCI UDMA controller. Since multiple cards can be installed and there are BIOS ROM problems that happen if the BIOS revisions of all installed cards (three-max) do not match, the driver attempts to do dynamic tuning of the chipset at boot-time for max-speed. Ultra33 BIOS 1.25 or newer is required for more than one card. This card may require that you say Y to "Special UDMA Feature". If you say Y here, you need to say Y to "Use DMA by default when available" as well. Please read the comments at the top of . If unsure, say N. Special UDMA Feature CONFIG_PDC202XX_BURST This option causes the pdc202xx driver to enable UDMA modes on the PDC202xx even when the PDC202xx BIOS has not done so. It was originally designed for the PDC20246/Ultra33, whose BIOS will only setup UDMA on the first two PDC20246 cards. It has also been used successfully on a PDC20265/Ultra100, allowing use of UDMA modes when the PDC20265 BIOS has been disabled (for faster boot up). Please read the comments at the top of . If unsure, say N. Special FastTrak Feature CONFIG_PDC202XX_FORCE For FastTrak enable overriding BIOS. SiS5513 chipset support CONFIG_BLK_DEV_SIS5513 This driver ensures (U)DMA support for SIS5513 chipset family based mainboards. The following chipsets are supported: ATA16: SiS5511, SiS5513 ATA33: SiS5591, SiS5597, SiS5598, SiS5600 ATA66: SiS530, SiS540, SiS620, SiS630, SiS640 ATA100: SiS635, SiS645, SiS650, SiS730, SiS735, SiS740, SiS745, SiS750 If you say Y here, you need to say Y to "Use DMA by default when available" as well. Please read the comments at the top of . SLC90E66 chipset support CONFIG_BLK_DEV_SLC90E66 This driver ensures (U)DMA support for Victroy66 SouthBridges for SMsC with Intel NorthBridges. This is an Ultra66 based chipset. The nice thing about it is that you can mix Ultra/DMA/PIO devices and it will handle timing cycles. Since this is an improved look-a-like to the PIIX4 it should be a nice addition. If you say Y here, you need to say Y to "Use DMA by default when available" as well. Please read the comments at the top of . Winbond SL82c105 support CONFIG_BLK_DEV_SL82C105 If you have a Winbond SL82c105 IDE controller, say Y here to enable special configuration for this chip. This is common on various CHRP motherboards, but could be used elsewhere. If in doubt, say Y. Tekram TRM290 chipset support CONFIG_BLK_DEV_TRM290 This driver adds support for bus master DMA transfers using the Tekram TRM290 PCI IDE chip. Volunteers are needed for further tweaking and development. Please read the comments at the top of . VIA82CXXX chipset support CONFIG_BLK_DEV_VIA82CXXX This allows you to configure your chipset for a better use while running PIO/(U)DMA, it will allow you to enable efficiently the second channel dma usage, as it may not be set by BIOS. It will try to set fifo configuration at its best. It will allow you to get information from /proc/ide/via provided you enabled "/proc file system" support. Please read the comments at the top of . If you say Y here, then say Y to "Use DMA by default when available" as well. If unsure, say N. RapIDE interface support CONFIG_BLK_DEV_IDE_RAPIDE Say Y here if you want to support the Yellowstone RapIDE controller manufactured for use with Acorn computers. Other IDE chipset support CONFIG_IDE_CHIPSETS Say Y here if you want to include enhanced support for various IDE interface chipsets used on motherboards and add-on cards. You can then pick your particular IDE chip from among the following options. This enhanced support may be necessary for Linux to be able to access the 3rd/4th drives in some systems. It may also enable setting of higher speed I/O rates to improve system performance with these chipsets. Most of these also require special kernel boot parameters to actually turn on the support at runtime; you can find a list of these in the file . People with SCSI-only systems can say N here. Generic 4 drives/port support CONFIG_BLK_DEV_4DRIVES Certain older chipsets, including the Tekram 690CD, use a single set of I/O ports at 0x1f0 to control up to four drives, instead of the customary two drives per port. Support for this can be enabled at runtime using the "ide0=four" kernel boot parameter if you say Y here. ALI M14xx support CONFIG_BLK_DEV_ALI14XX This driver is enabled at runtime using the "ide0=ali14xx" kernel boot parameter. It enables support for the secondary IDE interface of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster I/O speeds to be set as well. See the files and for more info. DTC-2278 support CONFIG_BLK_DEV_DTC2278 This driver is enabled at runtime using the "ide0=dtc2278" kernel boot parameter. It enables support for the secondary IDE interface of the DTC-2278 card, and permits faster I/O speeds to be set as well. See the and files for more info. Holtek HT6560B support CONFIG_BLK_DEV_HT6560B This driver is enabled at runtime using the "ide0=ht6560b" kernel boot parameter. It enables support for the secondary IDE interface of the Holtek card, and permits faster I/O speeds to be set as well. See the and files for more info. PROMISE DC4030 support (EXPERIMENTAL) CONFIG_BLK_DEV_PDC4030 This driver provides support for the secondary IDE interface and cache of Promise IDE chipsets, e.g. DC4030 and DC5030. This driver is known to incur timeouts/retries during heavy I/O to drives attached to the secondary interface. CD-ROM and TAPE devices are not supported yet. This driver is enabled at runtime using the "ide0=dc4030" kernel boot parameter. See the and files for more info. QDI QD65XX support CONFIG_BLK_DEV_QD65XX This driver is enabled at runtime using the "ide0=qd65xx" kernel boot parameter. It permits faster I/O speeds to be set. See the and for more info. UMC 8672 support CONFIG_BLK_DEV_UMC8672 This driver is enabled at runtime using the "ide0=umc8672" kernel boot parameter. It enables support for the secondary IDE interface of the UMC-8672, and permits faster I/O speeds to be set as well. See the files and for more info. Amiga Gayle IDE interface support CONFIG_BLK_DEV_GAYLE This is the IDE driver for the builtin IDE interface on some Amiga models. It supports both the `A1200 style' (used in A600 and A1200) and `A4000 style' (used in A4000 and A4000T) of the Gayle IDE interface. Say Y if you have such an Amiga model and want to use IDE devices (hard disks, CD-ROM drives, etc.) that are connected to the builtin IDE interface. Falcon IDE interface support CONFIG_BLK_DEV_FALCON_IDE This is the IDE driver for the builtin IDE interface on the Atari Falcon. Say Y if you have a Falcon and want to use IDE devices (hard disks, CD-ROM drives, etc.) that are connected to the builtin IDE interface. Amiga Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL) CONFIG_BLK_DEV_BUDDHA This is the IDE driver for the IDE interfaces on the Buddha, Catweasel and X-Surf expansion boards. It supports up to two interfaces on the Buddha, three on the Catweasel and two on the X-Surf. Say Y if you have a Buddha or Catweasel expansion board and want to use IDE devices (hard disks, CD-ROM drives, etc.) that are connected to one of its IDE interfaces. Amiga IDE Doubler support (EXPERIMENTAL) CONFIG_BLK_DEV_IDEDOUBLER This driver provides support for the so-called `IDE doublers' (made by various manufacturers, e.g. Eyetech) that can be connected to the builtin IDE interface of some Amiga models. Using such an IDE doubler, you can connect up to four instead of two IDE devices on the Amiga's builtin IDE interface. Note that the normal Amiga Gayle IDE driver may not work correctly if you have an IDE doubler and don't enable this driver! Say Y if you have an IDE doubler. The driver is enabled at kernel runtime using the "ide=doubler" kernel boot parameter. WarpEngine SCSI support CONFIG_WARPENGINE_SCSI Support for MacroSystem Development's WarpEngine Amiga SCSI-2 controller. Info at . Builtin PowerMac IDE support CONFIG_BLK_DEV_IDE_PMAC This driver provides support for the built-in IDE controller on most of the recent Apple Power Macintoshes and PowerBooks. If unsure, say Y. PowerMac IDE DMA support CONFIG_BLK_DEV_IDEDMA_PMAC This option allows the driver for the built-in IDE controller on Power Macintoshes and PowerBooks to use DMA (direct memory access) to transfer data to and from memory. Saying Y is safe and improves performance. Use DMA by default CONFIG_BLK_DEV_IDEDMA_PMAC_AUTO This option allows the driver for the built-in IDE controller on Power Macintoshes and PowerBooks to use DMA automatically, without it having to be explicitly enabled. This option is provided because of concerns about a couple of cases where using DMA on buggy PC hardware may have caused damage. Saying Y should be safe on all Apple machines. Macintosh Quadra/Powerbook IDE interface support CONFIG_BLK_DEV_MAC_IDE This is the IDE driver for the builtin IDE interface on some m68k Macintosh models. It supports both the `Quadra style' (used in Quadra/ Centris 630 and Performa 588 models) and `Powerbook style' (used in the Powerbook 150 and 190 models) IDE interface. Say Y if you have such an Macintosh model and want to use IDE devices (hard disks, CD-ROM drives, etc.) that are connected to the builtin IDE interface. ICS IDE interface support CONFIG_BLK_DEV_IDE_ICSIDE On Acorn systems, say Y here if you wish to use the ICS IDE interface card. This is not required for ICS partition support. If you are unsure, say N to this. ICS DMA support CONFIG_BLK_DEV_IDEDMA_ICS Say Y here if you want to add DMA (Direct Memory Access) support to the ICS IDE driver. Use ICS DMA by default CONFIG_IDEDMA_ICS_AUTO Prior to kernel version 2.1.112, Linux used to automatically use DMA for IDE drives and chipsets which support it. Due to concerns about a couple of cases where buggy hardware may have caused damage, the default is now to NOT use DMA automatically. To revert to the previous behaviour, say Y to this question. If you suspect your hardware is at all flakey, say N here. Do NOT email the IDE kernel people regarding this issue! XT hard disk support CONFIG_BLK_DEV_XD Very old 8 bit hard disk controllers used in the IBM XT computer will be supported if you say Y here. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called xd.o. It's pretty unlikely that you have one of these: say N. PS/2 ESDI hard disk support CONFIG_BLK_DEV_PS2 Say Y here if you have a PS/2 machine with a MCA bus and an ESDI hard disk. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ps2esdi.o. Mylex DAC960/DAC1100 PCI RAID Controller support CONFIG_BLK_DEV_DAC960 This driver adds support for the Mylex DAC960, AcceleRAID, and eXtremeRAID PCI RAID controllers. See the file for further information about this driver. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called DAC960.o. Parallel port IDE device support CONFIG_PARIDE There are many external CD-ROM and disk devices that connect through your computer's parallel port. Most of them are actually IDE devices using a parallel port IDE adapter. This option enables the PARIDE subsystem which contains drivers for many of these external drives. Read for more information. If you have said Y to the "Parallel-port support" configuration option, you may share a single port between your printer and other parallel port devices. Answer Y to build PARIDE support into your kernel, or M if you would like to build it as a loadable module. If your parallel port support is in a loadable module, you must build PARIDE as a module. If you built PARIDE support into your kernel, you may still build the individual protocol modules and high-level drivers as loadable modules. If you build this support as a module, it will be called paride.o. To use the PARIDE support, you must say Y or M here and also to at least one high-level driver (e.g. "Parallel port IDE disks", "Parallel port ATAPI CD-ROMs", "Parallel port ATAPI disks" etc.) and to at least one protocol driver (e.g. "ATEN EH-100 protocol", "MicroSolutions backpack protocol", "DataStor Commuter protocol" etc.). Parallel port IDE disks CONFIG_PARIDE_PD This option enables the high-level driver for IDE-type disk devices connected through a parallel port. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port IDE driver, otherwise you should answer M to build it as a loadable module. The module will be called pd.o. You must also have at least one parallel port protocol driver in your system. Among the devices supported by this driver are the SyQuest EZ-135, EZ-230 and SparQ drives, the Avatar Shark and the backpack hard drives from MicroSolutions. Parallel port ATAPI CD-ROMs CONFIG_PARIDE_PCD This option enables the high-level driver for ATAPI CD-ROM devices connected through a parallel port. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port ATAPI CD-ROM driver, otherwise you should answer M to build it as a loadable module. The module will be called pcd.o. You must also have at least one parallel port protocol driver in your system. Among the devices supported by this driver are the MicroSolutions backpack CD-ROM drives and the Freecom Power CD. If you have such a CD-ROM drive, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on CD-ROMs. Parallel port ATAPI disks CONFIG_PARIDE_PF This option enables the high-level driver for ATAPI disk devices connected through a parallel port. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port ATAPI disk driver, otherwise you should answer M to build it as a loadable module. The module will be called pf.o. You must also have at least one parallel port protocol driver in your system. Among the devices supported by this driver are the MicroSolutions backpack PD/CD drive and the Imation Superdisk LS-120 drive. Parallel port ATAPI tapes CONFIG_PARIDE_PT This option enables the high-level driver for ATAPI tape devices connected through a parallel port. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port ATAPI disk driver, otherwise you should answer M to build it as a loadable module. The module will be called pt.o. You must also have at least one parallel port protocol driver in your system. Among the devices supported by this driver is the parallel port version of the HP 5GB drive. Parallel port generic ATAPI devices CONFIG_PARIDE_PG This option enables a special high-level driver for generic ATAPI devices connected through a parallel port. The driver allows user programs, such as cdrtools, to send ATAPI commands directly to a device. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port generic ATAPI driver, otherwise you should answer M to build it as a loadable module. The module will be called pg.o. You must also have at least one parallel port protocol driver in your system. This driver implements an API loosely related to the generic SCSI driver. See . for details. You can obtain the most recent version of cdrtools from . Versions 1.6.1a3 and later fully support this driver. ATEN EH-100 protocol CONFIG_PARIDE_ATEN This option enables support for the ATEN EH-100 parallel port IDE protocol. This protocol is used in some inexpensive low performance parallel port kits made in Hong Kong. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called aten.o. You must also have a high-level driver for the type of device that you want to support. Micro Solutions BACKPACK Series 5 protocol CONFIG_PARIDE_BPCK This option enables support for the Micro Solutions BACKPACK parallel port Series 5 IDE protocol. (Most BACKPACK drives made before 1999 were Series 5) Series 5 drives will NOT always have the Series noted on the bottom of the drive. Series 6 drivers will. In other words, if your BACKPACK drive dosen't say "Series 6" on the bottom, enable this option. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called bpck.o. You must also have a high-level driver for the type of device that you want to support. Micro Solutions BACKPACK Series 6 protocol CONFIG_PARIDE_BPCK6 This option enables support for the Micro Solutions BACKPACK parallel port Series 6 IDE protocol. (Most BACKPACK drives made after 1999 were Series 6) Series 6 drives will have the Series noted on the bottom of the drive. Series 5 drivers don't always have it noted. In other words, if your BACKPACK drive says "Series 6" on the bottom, enable this option. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called bpck6.o. You must also have a high-level driver for the type of device that you want to support. DataStor Commuter protocol CONFIG_PARIDE_COMM This option enables support for the Commuter parallel port IDE protocol from DataStor. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called comm.o. You must also have a high-level driver for the type of device that you want to support. DataStor EP-2000 protocol CONFIG_PARIDE_DSTR This option enables support for the EP-2000 parallel port IDE protocol from DataStor. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called dstr.o. You must also have a high-level driver for the type of device that you want to support. Shuttle EPAT/EPEZ protocol CONFIG_PARIDE_EPAT This option enables support for the EPAT parallel port IDE protocol. EPAT is a parallel port IDE adapter manufactured by Shuttle Technology and widely used in devices from major vendors such as Hewlett-Packard, SyQuest, Imation and Avatar. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called epat.o. You must also have a high-level driver for the type of device that you want to support. Shuttle EPAT c7/c8 extension CONFIG_PARIDE_EPATC8 This option enables support for the newer Shuttle EP1284 (aka c7 and c8) chip. You need this if you are using any recent Imation SuperDisk (LS-120) drive. Shuttle EPIA protocol CONFIG_PARIDE_EPIA This option enables support for the (obsolete) EPIA parallel port IDE protocol from Shuttle Technology. This adapter can still be found in some no-name kits. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called epia.o. You must also have a high-level driver for the type of device that you want to support. FIT TD-2000 protocol CONFIG_PARIDE_FIT2 This option enables support for the TD-2000 parallel port IDE protocol from Fidelity International Technology. This is a simple (low speed) adapter that is used in some portable hard drives. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called fit2.o. You must also have a high-level driver for the type of device that you want to support. FIT TD-3000 protocol CONFIG_PARIDE_FIT3 This option enables support for the TD-3000 parallel port IDE protocol from Fidelity International Technology. This protocol is used in newer models of their portable disk, CD-ROM and PD/CD devices. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called fit3.o. You must also have a high-level driver for the type of device that you want to support. Freecom IQ ASIC-2 protocol CONFIG_PARIDE_FRIQ This option enables support for version 2 of the Freecom IQ parallel port IDE adapter. This adapter is used by the Maxell Superdisk drive. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called friq.o. You must also have a high-level driver for the type of device that you want to support. FreeCom power protocol CONFIG_PARIDE_FRPW This option enables support for the Freecom power parallel port IDE protocol. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called frpw.o. You must also have a high-level driver for the type of device that you want to support. KingByte KBIC-951A/971A protocols CONFIG_PARIDE_KBIC This option enables support for the KBIC-951A and KBIC-971A parallel port IDE protocols from KingByte Information Corp. KingByte's adapters appear in many no-name portable disk and CD-ROM products, especially in Europe. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called kbic.o. You must also have a high-level driver for the type of device that you want to support. KT PHd protocol CONFIG_PARIDE_KTTI This option enables support for the "PHd" parallel port IDE protocol from KT Technology. This is a simple (low speed) adapter that is used in some 2.5" portable hard drives. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called ktti.o. You must also have a high-level driver for the type of device that you want to support. OnSpec 90c20 protocol CONFIG_PARIDE_ON20 This option enables support for the (obsolete) 90c20 parallel port IDE protocol from OnSpec (often marketed under the ValuStore brand name). If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called on20.o. You must also have a high-level driver for the type of device that you want to support. OnSpec 90c26 protocol CONFIG_PARIDE_ON26 This option enables support for the 90c26 parallel port IDE protocol from OnSpec Electronics (often marketed under the ValuStore brand name). If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called on26.o. You must also have a high-level driver for the type of device that you want to support. Logical Volume Manager (LVM) support CONFIG_BLK_DEV_LVM This driver lets you combine several hard disks, hard disk partitions, multiple devices or even loop devices (for evaluation purposes) into a volume group. Imagine a volume group as a kind of virtual disk. Logical volumes, which can be thought of as virtual partitions, can be created in the volume group. You can resize volume groups and logical volumes after creation time, corresponding to new capacity needs. Logical volumes are accessed as block devices named /dev/VolumeGroupName/LogicalVolumeName. For details see . You will need supporting user space software; location is in . If you want to compile this support as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called lvm-mod.o. Multiple devices driver support (RAID and LVM) CONFIG_MD Support multiple physical spindles through a single logical device. Required for RAID and logical volume management (LVM). Multiple devices driver support CONFIG_BLK_DEV_MD This driver lets you combine several hard disk partitions into one logical block device. This can be used to simply append one partition to another one or to combine several redundant hard disks into a RAID1/4/5 device so as to provide protection against hard disk failures. This is called "Software RAID" since the combining of the partitions is done by the kernel. "Hardware RAID" means that the combining is done by a dedicated controller; if you have such a controller, you do not need to say Y here. More information about Software RAID on Linux is contained in the Software RAID mini-HOWTO, available from . There you will also learn where to get the supporting user space utilities raidtools. 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 . The module will be called md.o If unsure, say N. Linear (append) mode CONFIG_MD_LINEAR If you say Y here, then your multiple devices driver will be able to use the so-called linear mode, i.e. it will combine the hard disk partitions by simply appending one to the other. 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 . The module will be called linear.o. If unsure, say Y. RAID-0 (striping) mode CONFIG_MD_RAID0 If you say Y here, then your multiple devices driver will be able to use the so-called raid0 mode, i.e. it will combine the hard disk partitions into one logical device in such a fashion as to fill them up evenly, one chunk here and one chunk there. This will increase the throughput rate if the partitions reside on distinct disks. Information about Software RAID on Linux is contained in the Software-RAID mini-HOWTO, available from . There you will also learn where to get the supporting user space utilities raidtools. 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 . The module will be called raid0.o. If unsure, say Y. RAID-1 (mirroring) mode CONFIG_MD_RAID1 A RAID-1 set consists of several disk drives which are exact copies of each other. In the event of a mirror failure, the RAID driver will continue to use the operational mirrors in the set, providing an error free MD (multiple device) to the higher levels of the kernel. In a set with N drives, the available space is the capacity of a single drive, and the set protects against a failure of (N - 1) drives. Information about Software RAID on Linux is contained in the Software-RAID mini-HOWTO, available from . There you will also learn where to get the supporting user space utilities raidtools. If you want to use such a RAID-1 set, say Y. This code is also available as a module called raid1.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 . If unsure, say Y. RAID-4/RAID-5 mode CONFIG_MD_RAID5 A RAID-5 set of N drives with a capacity of C MB per drive provides the capacity of C * (N - 1) MB, and protects against a failure of a single drive. For a given sector (row) number, (N - 1) drives contain data sectors, and one drive contains the parity protection. For a RAID-4 set, the parity blocks are present on a single drive, while a RAID-5 set distributes the parity across the drives in one of the available parity distribution methods. Information about Software RAID on Linux is contained in the Software-RAID mini-HOWTO, available from . There you will also learn where to get the supporting user space utilities raidtools. If you want to use such a RAID-4/RAID-5 set, say Y. This code is also available as a module called raid5.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 . If unsure, say Y. Multipath I/O support CONFIG_MD_MULTIPATH Multipath-IO is the ability of certain devices to address the same physical disk over multiple 'IO paths'. The code ensures that such paths can be defined and handled at runtime, and ensures that a transparent failover to the backup path(s) happens if a IO errors arrives on the primary path. 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 . The module will be called multipath.o If unsure, say N. Support for IDE Raid controllers CONFIG_BLK_DEV_ATARAID Say Y or M if you have an IDE Raid controller and want linux to use its softwareraid feature. You must also select an appropriate for your board low-level driver below. Note, that Linux does not use the Raid implementation in BIOS, and the main purpose for this feature is to retain compatibility and data integrity with other OS-es, using the same disk array. Linux has its own Raid drivers, which you should use if you need better performance. 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 . The module will be called ataraid.o Support Promise software RAID (Fasttrak(tm)) CONFIG_BLK_DEV_ATARAID_PDC Say Y or M if you have a Promise Fasttrak (tm) Raid controller and want linux to use the softwareraid feature of this card. This driver uses /dev/ataraid/dXpY (X and Y numbers) as device names. If you choose to compile this as a module, the module will be called pdcraid.o. Highpoint 370 software RAID CONFIG_BLK_DEV_ATARAID_HPT Say Y or M if you have a Highpoint HPT 370 Raid controller and want linux to use the softwareraid feature of this card. This driver uses /dev/ataraid/dXpY (X and Y numbers) as device names. If you choose to compile this as a module, the module will be called hptraid.o. Support for Acer PICA 1 chipset CONFIG_ACER_PICA_61 This is a machine with a R4400 133/150 MHz CPU. To compile a Linux kernel that runs on these, say Y here. For details about Linux on the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at . Support for Algorithmics P4032 (EXPERIMENTAL) CONFIG_ALGOR_P4032 This is an evaluation board of the British company Algorithmics. The board uses the R4300 and a R5230 CPUs. For more information about this board see . Support for BAGET MIPS series CONFIG_BAGET_MIPS This enables support for the Baget, a Russian embedded system. For more details about the Baget see the Linux/MIPS FAQ on . Baget AMD LANCE support CONFIG_BAGETLANCE Say Y to enable kernel support for AMD Lance Ethernet cards on the MIPS-32-based Baget embedded system. This chipset is better known via the NE2100 cards. Support for DECstations CONFIG_DECSTATION This enables support for DEC's MIPS based workstations. For details see the Linux/MIPS FAQ on and the DECstation porting pages on . If you have one of the following DECstation Models you definitely want to choose R4xx0 for the CPU Type: DECstation 5000/50 DECstation 5000/150 DECstation 5000/260 DECsystem 5900/260 otherwise choose R3000. Support for Cobalt Micro Server CONFIG_COBALT_MICRO_SERVER Support for MIPS-based Cobalt boxes (they have been bought by Sun and are now the "Server Appliance Business Unit") including the 2700 series -- versions 1 of the Qube and Raq. To compile a Linux kernel for this hardware, say Y here. Support for Cobalt 2800 CONFIG_COBALT_28 Support for the second generation of MIPS-based Cobalt boxes (they have been bought by Sun and are now the "Server Appliance Business Unit") including the 2800 series -- versions 2 of the Qube and Raq. To compile a Linux kernel for this hardware, say Y here. Support for the Momentum Computer Ocelot SBC CONFIG_MOMENCO_OCELOT The Ocelot is a MIPS-based Single Board Computer (SBC) made by Momentum Computer . Support for NEC DDB Vrc-5074 CONFIG_DDB5074 This enables support for the VR5000-based NEC DDB Vrc-5074 evaluation board. Support for NEC DDB Vrc-5476 CONFIG_DDB5476 This enables support for the R5432-based NEC DDB Vrc-5476 evaluation board. Features : kernel debugging, serial terminal, NFS root fs, on-board ether port (Need an additional patch at ), USB, AC97, PCI, PCI VGA card & framebuffer console, IDE controller, PS2 keyboard, PS2 mouse, etc. Support for NEC DDB Vrc-5477 CONFIG_DDB5477 This enables support for the R5432-based NEC DDB Vrc-5477 evaluation board. Features : kernel debugging, serial terminal, NFS root fs, on-board ether port (Need an additional patch at ), USB, AC97, PCI, etc. Support for MIPS Atlas board CONFIG_MIPS_ATLAS This enables support for the QED R5231-based MIPS Atlas evaluation board. Support for MIPS Malta board CONFIG_MIPS_MALTA This enables support for the VR5000-based MIPS Malta evaluation board. # Choice: bcmboard Support for Broadcom SiByte boards CONFIG_SIBYTE_SWARM Enable support for boards based on the Broadcom SiByte family: BCM91250A-SWARM BCM1250 ATX size Eval Board (BCM91250A-SWARM) BCM91250E-Sentosa BCM1250 PCI card Eval Board (BCM91250E-Sentosa) BCM91125E-Rhone BCM1125 PCI card Eval Board (BCM91125E-Rhone) Other Non-Broadcom SiByte-based platform # Choice: bcmsoc Support for Broadcom BCM1xxx SOCs CONFIG_SIBYTE_SB1250 BCM1250 Dual-CPU SB1 with PCI and HyperTransport. BCM1120 Uniprocessor SB1. BCM1125 Uniprocessor SB1 with PCI (and HyperTransport for 1125H). BCM1250 Pass CONFIG_CPU_SB1_PASS_1 Which pass of the SOC is supported (see the "system_revision" register in the User Manual for more discussion of revisions): Pass1 1250 "Pass 1" A3-A10 1250 "Pass 2" B0-B3 1250 "Pass 2.2" BCM1xxx Pass CONFIG_CPU_SB1_PASS_2 Which pass of the SOC is supported (see the "system_revision" register in the User Manual for more discussion of revisions): Hybrid 1250 "Pass 2" A1-A2 112x A1-A2 Booting from CFE CONFIG_SIBYTE_CFE Make use of the CFE API for enumerating available memory, controlling secondary CPUs, and possibly console output. Use firmware console CONFIG_SIBYTE_CFE_CONSOLE Use the CFE API's console write routines during boot. Other console options (VT console, sb1250 duart console, etc.) should not be configured. Support SWARM (BCM912500A) peripherals CONFIG_SIBYTE_SWARM Indicates that the target is a SWARM board. Most devices (IDE, video decoder, audio codec, etc) still require additional configuration options under the appropriate sections. Corelis Debugger CONFIG_SB1XXX_CORELIS Select compile flags that produce code that can be processed by the Corelis mksym utility and UDB Emulator. Support for Galileo Evaluation board or CoSine Orion CONFIG_ORION Say Y if configuring for the Galileo evaluation board or CoSine Orion. More information is available at . Otherwise, say N. Support for Mips Magnum 4000 CONFIG_MIPS_MAGNUM_4000 This is a machine with a R4000 100 MHz CPU. To compile a Linux kernel that runs on these, say Y here. For details about Linux on the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at . Enable Qtronix 990P Keyboard Support CONFIG_QTRONIX_KEYBOARD Images of Qtronix keyboards are at . Support for Olivetti M700 CONFIG_OLIVETTI_M700 This is a machine with a R4000 100 MHz CPU. To compile a Linux kernel that runs on these, say Y here. For details about Linux on the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at . Support for SNI RM200 PCI CONFIG_SNI_RM200_PCI The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid Technology and now in turn merged with Fujitsu. Say Y here to support this machine type. Support for SGI-IP22 (Indy/Indigo2) CONFIG_SGI_IP22 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. Support for SGI IP27 (Origin200/2000) CONFIG_SGI_IP27 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. IP27 N-Mode CONFIG_SGI_SN0_N_MODE 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. Lasi Ethernet CONFIG_LASI_82596 Say Y here to support the on-board Intel 82596 ethernet controller built into Hewlett-Packard PA-RISC machines. MIPS JAZZ onboard SONIC Ethernet support CONFIG_MIPS_JAZZ_SONIC This is the driver for the onboard card of MIPS Magnum 4000, Acer PICA, Olivetti M700-10 and a few other identical OEM systems. MIPS JAZZ FAS216 SCSI support CONFIG_JAZZ_ESP This is the driver for the onboard SCSI host adapter of MIPS Magnum 4000, Acer PICA, Olivetti M700-10 and a few other identical OEM systems. MIPS GT96100 support CONFIG_MIPS_GT96100 Say Y here to support the Galileo Technology GT96100 communications controller card. There is a web page at . MIPS GT96100 Ethernet support CONFIG_MIPS_GT96100ETH Say Y here to support the Ethernet subsystem on your GT96100 card. Zalon SCSI support CONFIG_SCSI_ZALON 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. SGI PROM Console Support CONFIG_SGI_PROM_CONSOLE Say Y here to set up the boot console on serial port 0. DECstation serial support CONFIG_SERIAL_DEC This selects whether you want to be asked about drivers for DECstation serial ports. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about DECstation serial ports. If unsure, say Y. Support for console on a DECstation serial port CONFIG_SERIAL_DEC_CONSOLE 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). Note that the firmware uses ttyS0 as the serial console on the Maxine and ttyS2 on the others. If unsure, say Y. DZ11 Serial Support CONFIG_DZ DZ11-family serial controllers for VAXstations, including the DC7085, M7814, and M7819. TURBOchannel support CONFIG_TC TurboChannel is a DEC (now Compaq) bus for Alpha and MIPS processors. Documentation on writing device drivers for TurboChannel is available at: . # Choice: galileo_clock 75 CONFIG_SYSCLK_75 Configure the kernel for clock speed of your Galileo board. The choices are 75MHz, 83.3MHz, and 100MHz. 83.3 CONFIG_SYSCLK_83 Configure the Galileo kernel for a clock speed of 83.3 MHz. 100 CONFIG_SYSCLK_100 Configure the Galileo kernel for a clock speed of 100 MHz. Z85C30 Serial Support CONFIG_ZS Documentation on the Zilog 85C350 serial communications controller is downloadable at . PCMCIA SCSI adapter support CONFIG_SCSI_PCMCIA Say Y here if you intend to attach a PCMCIA or CardBus card to your computer which acts as a SCSI host adapter. These are credit card size devices often used with laptops. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions PCMCIA SCSI host adapters. Adaptec APA1480 CardBus support CONFIG_PCMCIA_APA1480 Say Y here if you intend to attach this type of CardBus SCSI host adapter to your computer. This driver is also available as a module called apa1480_cb.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 . NinjaSCSI-3 / NinjaSCSI-32Bi (16bit) PCMCIA support CONFIG_PCMCIA_NINJA_SCSI If you intend to attach this type of PCMCIA SCSI host adapter to your computer, say Y here and read . This driver is also available as a module called nsp_cs.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 . Adaptec AHA152X PCMCIA support CONFIG_PCMCIA_AHA152X Say Y here if you intend to attach this type of PCMCIA SCSI host adapter to your computer. This driver is also available as a module called aha152x_cs.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 . Qlogic PCMCIA support CONFIG_PCMCIA_QLOGIC Say Y here if you intend to attach this type of PCMCIA SCSI host adapter to your computer. This driver is also available as a module called qlogic_cs.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 . Future Domain PCMCIA support CONFIG_PCMCIA_FDOMAIN Say Y here if you intend to attach this type of PCMCIA SCSI host adapter to your computer. This driver is also available as a module called fdomain_cs.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 . # Choice: mipstype CPU type CONFIG_CPU_R3000 Please make sure to pick the right CPU type. Linux/MIPS is not designed to be generic, i.e. Kernels compiled for R3000 CPUs will *not* work on R4000 machines and vice versa. However, since most of the supported machines have an R4000 (or similar) CPU, R4x00 might be a safe bet. If the resulting kernel does not work, try to recompile with R3000. R3000 MIPS Technologies R3000-series processors, including the 3041, 3051, and 3081. R6000 MIPS Technologies R6000-series processors, including the 64474, 64475, 64574 and 64575. R4300 MIPS Technologies R4300-series processors. R4x00 MIPS Technologies R4000-series processors other than 4300, including the 4640, 4650, and 4700. R5000 MIPS Technologies R5000-series processors other than the Nevada. R52xx MIPS Technologies R52xx-series ("Nevada") processors. R10000 MIPS Technologies R10000-series processors. SB1 Broadcom SiByte SB1 processor. R6000 CONFIG_CPU_R6000 MIPS Technologies R6000-series processors, including the 64474, 64475, 64574 and 64575. R4300 CONFIG_CPU_R4300 MIPS Technologies R4300-series processors. R4x00 CONFIG_CPU_R4X00 MIPS Technologies R4000-series processors other than 4300, including the 4640, 4650, and 4700. R5000 CONFIG_CPU_R5000 MIPS Technologies R5000-series processors other than the Nevada. R52x0 CONFIG_CPU_NEVADA MIPS Technologies R52x0-series ("Nevada") processors. R8000 CONFIG_CPU_R8000 MIPS Technologies R8000-series processors. R10000 CONFIG_CPU_R10000 MIPS Technologies R10000-series processors. SB1 CONFIG_CPU_SB1 Broadcom SiByte SB1 processor. Discontiguous Memory Support CONFIG_DISCONTIGMEM Say Y to support efficient handling of discontiguous physical memory, for architectures which are either NUMA (Non-Uniform Memory Access) or have huge holes in the physical address space for other reasons. See for more. Mapped kernel support CONFIG_MAPPED_KERNEL 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 understand it, read the source code. Kernel text replication support CONFIG_REPLICATE_KTEXT Say Y here to enable replicating the kernel text across multiple nodes in a NUMA cluster. This trades memory for speed. Exception handler replication support CONFIG_REPLICATE_EXHANDLERS Say Y here to enable replicating the kernel exception handlers across multiple nodes in a NUMA cluster. This trades memory for speed. NUMA support? CONFIG_NUMA 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. R41xx CONFIG_CPU_VR41XX The options selects support for the NEC VR41xx series of processors. Only choose this option if you have one of these processors as a kernel built with this option will not run on any other type of processor or vice versa. CPU feature configuration CONFIG_CPU_ADVANCED Saying yes here allows you to select support for various features your CPU may or may not have. Most people should say N here. ll and sc instructions available CONFIG_CPU_HAS_LLSC MIPS R4000 series and later provide the Load Linked (ll) and Store Conditional (sc) instructions. More information is available at . Say Y here if your CPU has the ll and sc instructions. Say Y here for better performance, N if you don't know. You must say Y here for multiprocessor machines. lld and scd instructions available CONFIG_CPU_HAS_LLDSCD Say Y here if your CPU has the lld and scd instructions, the 64-bit equivalents of ll and sc. Say Y here for better performance, N if you don't know. You must say Y here for multiprocessor machines. Writeback Buffer available CONFIG_CPU_HAS_WB Say N here for slightly better performance. You must say Y here for machines which require flushing of write buffers in software. Saying Y is the safe option; N may result in kernel malfunction and crashes. Support for large 64-bit configurations CONFIG_MIPS_INSANE_LARGE 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. Generate little endian code CONFIG_CPU_LITTLE_ENDIAN 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. Generate big endian code CONFIG_CPU_BIG_ENDIAN Some ARM machines can be configured for either little or big endian byte order. These modes require different kernels. Say Y if your machine is big endian (like the ARM7TDMI based S3C3410x from Samsung), N if it's a little endian machine. Use power LED as a heartbeat CONFIG_HEARTBEAT Use the power-on LED on your machine as a load meter. The exact behaviour is platform-dependent, but normally the flash frequency is a hyperbolic function of the 5-minute load average. Networking support CONFIG_NET Unless you really know what you are doing, you should say Y here. The reason is that some programs need kernel networking support even when running on a stand-alone machine that isn't connected to any other computer. If you are upgrading from an older kernel, you should consider updating your networking tools too because changes in the kernel and the tools often go hand in hand. The tools are contained in the package net-tools, the location and version number of which are given in . For a general introduction to Linux networking, it is highly recommended to read the NET-HOWTO, available from . Socket filtering CONFIG_FILTER The Linux Socket Filter is derived from the Berkeley Packet Filter. If you say Y here, user-space programs can attach a filter to any socket and thereby tell the kernel that it should allow or disallow certain types of data to get through the socket. Linux Socket Filtering works on all socket types except TCP for now. See the text file for more information. You need to say Y here if you want to use PPP packet filtering (see the CONFIG_PPP_FILTER option below). If unsure, say N. Network packet filtering (replaces ipchains) CONFIG_NETFILTER Netfilter is a framework for filtering and mangling network packets that pass through your Linux box. The most common use of packet filtering is to run your Linux box as a firewall protecting a local network from the Internet. The type of firewall provided by this kernel support is called a "packet filter", which means that it can reject individual network packets based on type, source, destination etc. The other kind of firewall, a "proxy-based" one, is more secure but more intrusive and more bothersome to set up; it inspects the network traffic much more closely, modifies it and has knowledge about the higher level protocols, which a packet filter lacks. Moreover, proxy-based firewalls often require changes to the programs running on the local clients. Proxy-based firewalls don't need support by the kernel, but they are often combined with a packet filter, which only works if you say Y here. You should also say Y here if you intend to use your Linux box as the gateway to the Internet for a local network of machines without globally valid IP addresses. This is called "masquerading": if one of the computers on your local network wants to send something to the outside, your box can "masquerade" as that computer, i.e. it forwards the traffic to the intended outside destination, but modifies the packets to make it look like they came from the firewall box itself. It works both ways: if the outside host replies, the Linux box will silently forward the traffic to the correct local computer. This way, the computers on your local net are completely invisible to the outside world, even though they can reach the outside and can receive replies. It is even possible to run globally visible servers from within a masqueraded local network using a mechanism called portforwarding. Masquerading is also often called NAT (Network Address Translation). Another use of Netfilter is in transparent proxying: if a machine on the local network tries to connect to an outside host, your Linux box can transparently forward the traffic to a local server, typically a caching proxy server. Various modules exist for netfilter which replace the previous masquerading (ipmasqadm), packet filtering (ipchains), transparent proxying, and portforwarding mechanisms. Please see under "iptables" for the location of these packages. Make sure to say N to "Fast switching" below if you intend to say Y here, as Fast switching currently bypasses netfilter. Chances are that you should say Y here if you compile a kernel which will run as a router and N for regular hosts. If unsure, say N. Network packet filtering debugging CONFIG_NETFILTER_DEBUG You can say Y here if you want to get additional messages useful in debugging the netfilter code. Connection tracking (required for masq/NAT) CONFIG_IP_NF_CONNTRACK Connection tracking keeps a record of what packets have passed through your machine, in order to figure out how they are related into connections. This is required to do Masquerading or other kinds of Network Address Translation (except for Fast NAT). It can also be used to enhance packet filtering (see `Connection state match support' below). If you want to compile it as a module, say M here and read . If unsure, say `N'. IRC Send/Chat protocol support CONFIG_IP_NF_IRC There is a commonly-used extension to IRC called Direct Client-to-Client Protocol (DCC). This enables users to send files to each other, and also chat to each other without the need of a server. DCC Sending is used anywhere you send files over IRC, and DCC Chat is most commonly used by Eggdrop bots. If you are using NAT, this extension will enable you to send files and initiate chats. Note that you do NOT need this extension to get files or have others initiate chats, or everything else in IRC. If you want to compile it as a module, say 'M' here and read Documentation/modules.txt. If unsure, say 'N'. FTP protocol support CONFIG_IP_NF_FTP Tracking FTP connections is problematic: special helpers are required for tracking them, and doing masquerading and other forms of Network Address Translation on them. If you want to compile it as a module, say M here and read . If unsure, say `Y'. User space queueing via NETLINK CONFIG_IP_NF_QUEUE Netfilter has the ability to queue packets to user space: the netlink device can be used to access them using this driver. If you want to compile it as a module, say M here and read . If unsure, say `N'. IP tables support (required for filtering/masq/NAT) CONFIG_IP_NF_IPTABLES iptables is a general, extensible packet identification framework. The packet filtering and full NAT (masquerading, port forwarding, etc) subsystems now use this: say `Y' or `M' here if you want to use either of those. If you want to compile it as a module, say M here and read . If unsure, say `N'. limit match support CONFIG_IP_NF_MATCH_LIMIT limit matching allows you to control the rate at which a rule can be matched: mainly useful in combination with the LOG target ("LOG target support", below) and to avoid some Denial of Service attacks. If you want to compile it as a module, say M here and read . If unsure, say `N'. IPv6 Extension Headers Match (EXPERIMENTAL) CONFIG_IP6_NF_MATCH_IPV6HEADER extension header matching allows you to controll the packets based on their extension headers. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. skb->pkt_type packet match support CONFIG_IP_NF_MATCH_PKTTYPE This patch allows you to match packet in accrodance to its "class", eg. BROADCAST, MULTICAST, ... Typical usage: iptables -A INPUT -m pkttype --pkt-type broadcast -j LOG If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. MAC address match support CONFIG_IP_NF_MATCH_MAC MAC matching allows you to match packets based on the source Ethernet address of the packet. If you want to compile it as a module, say M here and read . If unsure, say `N'. Netfilter MARK match support CONFIG_IP_NF_MATCH_MARK Netfilter mark matching allows you to match packets based on the `nfmark' value in the packet. This can be set by the MARK target (see below). If you want to compile it as a module, say M here and read . If unsure, say `N'. Multiple port match support CONFIG_IP_NF_MATCH_MULTIPORT Multiport matching allows you to match TCP or UDP packets based on a series of source or destination ports: normally a rule can only match a single range of ports. If you want to compile it as a module, say M here and read . If unsure, say `N'. TTL match support CONFIG_IP_NF_MATCH_TTL This adds CONFIG_IP_NF_MATCH_TTL option, which enabled the user to match packets by their TTL value. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. LENGTH match support CONFIG_IP_NF_MATCH_LENGTH This option allows you to match the length of a packet against a specific value or range of values. If you want to compile it as a module, say M here and read . If unsure, say `N'. AH/ESP match support CONFIG_IP_NF_MATCH_AH_ESP These two match extensions (`ah' and `esp') allow you to match a range of SPIs inside AH or ESP headers of IPSec packets. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. DSCP match support CONFIG_IP_NF_MATCH_DSCP This option adds a `DSCP' match, which allows you to match against the IPv4 header DSCP field (DSCP codepoint). The DSCP codepoint can have any value between 0x0 and 0x4f. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. ECN match support CONFIG_IP_NF_MATCH_ECN This option adds a `ECN' match, which allows you to match against the IPv4 and TCP header ECN fields. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. TOS match support CONFIG_IP_NF_MATCH_TOS TOS matching allows you to match packets based on the Type Of Service fields of the IP packet. If you want to compile it as a module, say M here and read . If unsure, say `N'. conntrack match support CONFIG_IP_NF_MATCH_CONNTRACK This is a general conntrack match module, a superset of the state match. It allows matching on additional conntrack information, which is useful in complex configurations, such as NAT gateways with multiple internet links or tunnels. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. Connection state match support CONFIG_IP_NF_MATCH_STATE Connection state matching allows you to match packets based on their relationship to a tracked connection (ie. previous packets). This is a powerful tool for packet classification. If you want to compile it as a module, say M here and read . If unsure, say `N'. Unclean match support CONFIG_IP_NF_MATCH_UNCLEAN Unclean packet matching matches any strange or invalid packets, by looking at a series of fields in the IP, TCP, UDP and ICMP headers. If you want to compile it as a module, say M here and read . If unsure, say `N'. Owner match support CONFIG_IP_NF_MATCH_OWNER Packet owner matching allows you to match locally-generated packets based on who created them: the user, group, process or session. If you want to compile it as a module, say M here and read . If unsure, say `N'. Packet filtering CONFIG_IP_NF_FILTER Packet filtering defines a table `filter', which has a series of rules for simple packet filtering at local input, forwarding and local output. See the man page for iptables(8). If you want to compile it as a module, say M here and read . If unsure, say `N'. REJECT target support CONFIG_IP_NF_TARGET_REJECT The REJECT target allows a filtering rule to specify that an ICMP error should be issued in response to an incoming packet, rather than silently being dropped. If you want to compile it as a module, say M here and read . If unsure, say `N'. MIRROR target support CONFIG_IP_NF_TARGET_MIRROR The MIRROR target allows a filtering rule to specify that an incoming packet should be bounced back to the sender. If you want to compile it as a module, say M here and read . If unsure, say `N'. Local NAT support CONFIG_IP_NF_NAT_LOCAL This option enables support for NAT of locally originated connections. Enable this if you need to use destination NAT on connections originating from local processes on the nat box itself. Please note that you will need a recent version (>= 1.2.6a) of the iptables userspace program in order to use this feature. See for download instructions. If unsure, say 'N'. Full NAT (Network Address Translation) CONFIG_IP_NF_NAT The Full NAT option allows masquerading, port forwarding and other forms of full Network Address Port Translation. It is controlled by the `nat' table in iptables: see the man page for iptables(8). If you want to compile it as a module, say M here and read . If unsure, say `N'. MASQUERADE target support CONFIG_IP_NF_TARGET_MASQUERADE Masquerading is a special case of NAT: all outgoing connections are changed to seem to come from a particular interface's address, and if the interface goes down, those connections are lost. This is only useful for dialup accounts with dynamic IP address (ie. your IP address will be different on next dialup). If you want to compile it as a module, say M here and read . If unsure, say `N'. Basic SNMP-ALG support CONFIG_IP_NF_NAT_SNMP_BASIC This module implements an Application Layer Gateway (ALG) for SNMP payloads. In conjunction with NAT, it allows a network management system to access multiple private networks with conflicting addresses. It works by modifying IP addresses inside SNMP payloads to match IP-layer NAT mapping. This is the "basic" form of SNMP-ALG, as described in RFC 2962 If you want to compile it as a module, say M here and read . If unsure, say `N'. REDIRECT target support CONFIG_IP_NF_TARGET_REDIRECT REDIRECT is a special case of NAT: all incoming connections are mapped onto the incoming interface's address, causing the packets to come to the local machine instead of passing through. This is useful for transparent proxies. If you want to compile it as a module, say M here and read . If unsure, say `N'. Packet mangling CONFIG_IP_NF_MANGLE This option adds a `mangle' table to iptables: see the man page for iptables(8). This table is used for various packet alterations which can effect how the packet is routed. If you want to compile it as a module, say M here and read . If unsure, say `N'. DSCP target support CONFIG_IP_NF_TARGET_DSCP This option adds a `DSCP' target, which allows you to create rules in the iptables mangle table. The selected packet has the DSCP field set to the hex value provided on the command line; unlike the TOS target which will only set the legal values within ip.h. The DSCP field can be set to any value between 0x0 and 0x4f. It does take into account that bits 6 and 7 are used by ECN. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. ECN target support CONFIG_IP_NF_TARGET_ECN This option adds a `ECN' target, which can be used in the iptables mangle table. You can use this target to remove the ECN bits from the IPv4 header of an IP packet. This is particularly useful, if you need to work around existing ECN blackholes on the internet, but don't want to disable ECN support in general. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. TOS target support CONFIG_IP_NF_TARGET_TOS This option adds a `TOS' target, which allows you to create rules in the `mangle' table which alter the Type Of Service field of an IP packet prior to routing. If you want to compile it as a module, say M here and read . If unsure, say `N'. MARK target support CONFIG_IP_NF_TARGET_MARK This option adds a `MARK' target, which allows you to create rules in the `mangle' table which alter the netfilter mark (nfmark) field associated with the packet prior to routing. This can change the routing method (see `Use netfilter MARK value as routing key') and can also be used by other subsystems to change their behaviour. If you want to compile it as a module, say M here and read . If unsure, say `N'. TCPMSS target support CONFIG_IP_NF_TARGET_TCPMSS This option adds a `TCPMSS' target, which allows you to alter the MSS value of TCP SYN packets, to control the maximum size for that connection (usually limiting it to your outgoing interface's MTU minus 40). This is used to overcome criminally braindead ISPs or servers which block ICMP Fragmentation Needed packets. The symptoms of this problem are that everything works fine from your Linux firewall/router, but machines behind it can never exchange large packets: 1) Web browsers connect, then hang with no data received. 2) Small mail works fine, but large emails hang. 3) ssh works fine, but scp hangs after initial handshaking. Workaround: activate this option and add a rule to your firewall configuration like: iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN \ -j TCPMSS --clamp-mss-to-pmtu If you want to compile it as a module, say M here and read . If unsure, say `N'. Helper match support CONFIG_IP_NF_MATCH_HELPER Helper matching allows you to match packets in dynamic connections tracked by a conntrack-helper, ie. ip_conntrack_ftp If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `Y'. TCPMSS match support CONFIG_IP_NF_MATCH_TCPMSS This option adds a `tcpmss' match, which allows you to examine the MSS value of TCP SYN packets, which control the maximum packet size for that connection. If you want to compile it as a module, say M here and read . If unsure, say `N'. REJECT target support CONFIG_IP6_NF_TARGET_REJECT The REJECT target allows a filtering rule to specify that an ICMPv6 error should be issued in response to an incoming packet, rather than silently being dropped. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. ULOG target support CONFIG_IP_NF_TARGET_ULOG This option adds a `ULOG' target, which allows you to create rules in any iptables table. The packet is passed to a userspace logging daemon using netlink multicast sockets; unlike the LOG target which can only be viewed through syslog. The appropriate userspace logging daemon (ulogd) may be obtained from If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. LOG target support CONFIG_IP_NF_TARGET_LOG This option adds a `LOG' target, which allows you to create rules in any iptables table which records the packet header to the syslog. If you want to compile it as a module, say M here and read . If unsure, say `N'. ipchains (2.2-style) support CONFIG_IP_NF_COMPAT_IPCHAINS This option places ipchains (with masquerading and redirection support) back into the kernel, using the new netfilter infrastructure. It is not recommended for new installations (see `Packet filtering'). With this enabled, you should be able to use the ipchains tool exactly as in 2.2 kernels. If you want to compile it as a module, say M here and read . If unsure, say `N'. ipfwadm (2.0-style) support CONFIG_IP_NF_COMPAT_IPFWADM This option places ipfwadm (with masquerading and redirection support) back into the kernel, using the new netfilter infrastructure. It is not recommended for new installations (see `Packet filtering'). With this enabled, you should be able to use the ipfwadm tool exactly as in 2.0 kernels. If you want to compile it as a module, say M here and read . If unsure, say `N'. EUI64 address check (EXPERIMENTAL) CONFIG_IP6_NF_MATCH_EUI64 This module performs checking on the IPv6 source address Compares the last 64 bits with the EUI64 (delivered from the MAC address) address If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. AH/ESP match support (EXPERIMENTAL) CONFIG_IP6_NF_MATCH_AHESP These two match extensions (`ah' and `esp') allow you to match a range of SPIs inside AH or ESP headers of IPv6 packets. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. Fragmentation header match support (EXPERIMENTAL) CONFIG_IP6_NF_MATCH_FRAG This match extension (`frag') allow you to select the packet based on the fileds of the fragmentation header of the IPv6 packets. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. Fragmentation header match support (EXPERIMENTAL) CONFIG_IP6_NF_MATCH_OPTS These match extensions (`hbh' and `dst') allow you to select the packet based on the fileds of the option header of the IPv6 packets. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. Fragmentation header match support (EXPERIMENTAL) CONFIG_IP6_NF_MATCH_RT This match extension (`rt') allow you to select the packet based on the fileds of the routing header of the IPv6 packets. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. EUI64 address check (EXPERIMENTAL) CONFIG_IP6_NF_MATCH_EUI64 This module performs checking on the IPv6 source address Compares the last 64 bits with the EUI64 (delivered from the MAC address) address If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. length match support CONFIG_IP6_NF_MATCH_LENGTH This option allows you to match the length of a packet against a specific value or range of values. If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. Netfilter MARK match support CONFIG_IP6_NF_MATCH_MARK Netfilter mark matching allows you to match packets based on the `nfmark' value in the packet. This can be set by the MARK target (see below). If you want to compile it as a module, say M here and read . If unsure, say `N'. length match support CONFIG_IP6_NF_MATCH_LENGTH This option allows you to match the length of a packet against a specific value or range of values. If you want to compile it as a module, say M here and read . If unsure, say `N'. Multiple port match support CONFIG_IP6_NF_MATCH_MULTIPORT Multiport matching allows you to match TCP or UDP packets based on a series of source or destination ports: normally a rule can only match a single range of ports. If you want to compile it as a module, say M here and read . If unsure, say `N'. IPV6 queue handler (EXPERIMENTAL) CONFIG_IP6_NF_QUEUE This option adds a queue handler to the kernel for IPv6 packets which lets us to receive the filtered packets with QUEUE target using libiptc as we can do with the IPv4 now. (C) Fernando Anton 2001 IPv64 Project - Work based in IPv64 draft by Arturo Azcorra. Universidad Carlos III de Madrid Universidad Politecnica de Alcala de Henares email: fanton@it.uc3m.es If you want to compile it as a module, say M here and read Documentation/modules.txt. If unsure, say `N'. Owner match support CONFIG_IP6_NF_MATCH_OWNER Packet owner matching allows you to match locally-generated packets based on who created them: the user, group, process or session. If you want to compile it as a module, say M here and read . If unsure, say `N'. Packet filtering CONFIG_IP6_NF_FILTER Packet filtering defines a table `filter', which has a series of rules for simple packet filtering at local input, forwarding and local output. See the man page for iptables(8). If you want to compile it as a module, say M here and read . If unsure, say `N'. Packet mangling CONFIG_IP6_NF_MANGLE This option adds a `mangle' table to iptables: see the man page for iptables(8). This table is used for various packet alterations which can effect how the packet is routed. If you want to compile it as a module, say M here and read . If unsure, say `N'. MARK target support CONFIG_IP6_NF_TARGET_MARK This option adds a `MARK' target, which allows you to create rules in the `mangle' table which alter the netfilter mark (nfmark) field associated with the packet packet prior to routing. This can change the routing method (see `Use netfilter MARK value as routing key') and can also be used by other subsystems to change their behaviour. If you want to compile it as a module, say M here and read . If unsure, say `N'. The IPsec Protocol (EXPERIMENTAL) CONFIG_IPSEC This option enables (extended) PF_KEY(v2) support, which manages Security Association and Security Policy for IPsec (and IPComp). Say Y here if you want to enable IPsec. Note: Since IPsec is mandatory feature of IPv6, you probably want to say Y here when you enable IPv6. You also need to say Y to Cryptographic API support, ciphers, digest and IPsec for each IP versions, you need. For further information, please read in USAGI kit. IPsec: IPsec Debug messages CONFIG_IPSEC_DEBUG Say Y here if you want to get additional messages useful for debugging the IPsec (IPsec6, PFKEY, SADB, SPD) code. You can enable/disable these parameters via sysctl(/proc/net/ipsec/). IPsec: IPsec debugging off by default CONFIG_IPSEC_DEBUG_DISABLE_DEFAULT Normally IPsec debugging messages are activated by default, if you set CONFIG_IPSEC_DEBUG. IPsec debugging messages are activated by default and you will receive tons of log messages if you enable "IPsec Debug messages" option (CONFIG_IPSEC_DEBUG). This option turns these debug messages off by default (at the boot time). IPv6: IP Security support (EXPERIMENTAL) CONFIG_IPV6_IPSEC IPsec for IPv6 support. You also need to say Y to "The IPsec Protocol." Since IPsec is mandatory feature of IPv6, you probably want to say Y here. If unsure, say N. TCP Explicit Congestion Notification support CONFIG_INET_ECN Explicit Congestion Notification (ECN) allows routers to notify clients about network congestion, resulting in fewer dropped packets and increased network performance. This option adds ECN support to the Linux kernel, as well as a sysctl (/proc/sys/net/ipv4/tcp_ecn) which allows ECN support to be disabled at runtime. Note that, on the Internet, there are many broken firewalls which refuse connections from ECN-enabled machines, and it may be a while before these firewalls are fixed. Until then, to access a site behind such a firewall (some of which are major sites, at the time of this writing) you will have to disable this option, either by saying N now or by using the sysctl. If in doubt, say N. IPv6 tables support (required for filtering/masq/NAT) CONFIG_IP6_NF_IPTABLES ip6tables is a general, extensible packet identification framework. Currently only the packet filtering and packet mangling subsystem for IPv6 use this, but connection tracking is going to follow. Say 'Y' or 'M' here if you want to use either of those. If you want to compile it as a module, say M here and read . If unsure, say `N'. IPv6 limit match support CONFIG_IP6_NF_MATCH_LIMIT limit matching allows you to control the rate at which a rule can be matched: mainly useful in combination with the LOG target ("LOG target support", below) and to avoid some Denial of Service attacks. If you want to compile it as a module, say M here and read . If unsure, say `N'. LOG target support CONFIG_IP6_NF_TARGET_LOG This option adds a `LOG' target, which allows you to create rules in any iptables table which records the packet header to the syslog. If you want to compile it as a module, say M here and read . If unsure, say `N'. SYN flood protection CONFIG_SYN_COOKIES Normal TCP/IP networking is open to an attack known as "SYN flooding". This denial-of-service attack prevents legitimate remote users from being able to connect to your computer during an ongoing attack and requires very little work from the attacker, who can operate from anywhere on the Internet. SYN cookies provide protection against this type of attack. If you say Y here, the TCP/IP stack will use a cryptographic challenge protocol known as "SYN cookies" to enable legitimate users to continue to connect, even when your machine is under attack. There is no need for the legitimate users to change their TCP/IP software; SYN cookies work transparently to them. For technical information about SYN cookies, check out . If you are SYN flooded, the source address reported by the kernel is likely to have been forged by the attacker; it is only reported as an aid in tracing the packets to their actual source and should not be taken as absolute truth. SYN cookies may prevent correct error reporting on clients when the server is really overloaded. If this happens frequently better turn them off. If you say Y here, note that SYN cookies aren't enabled by default; you can enable them by saying Y to "/proc file system support" and "Sysctl support" below and executing the command echo 1 >/proc/sys/net/ipv4/tcp_syncookies at boot time after the /proc file system has been mounted. If unsure, say N. # Choice: alphatype Alpha system type CONFIG_ALPHA_GENERIC This is the system type of your hardware. A "generic" kernel will run on any supported Alpha system. However, if you configure a kernel for your specific system, it will be faster and smaller. To find out what type of Alpha system you have, you may want to check out the Linux/Alpha FAQ, accessible on the WWW from . In summary: Alcor/Alpha-XLT AS 600 Alpha-XL XL-233, XL-266 AlphaBook1 Alpha laptop Avanti AS 200, AS 205, AS 250, AS 255, AS 300, AS 400 Cabriolet AlphaPC64, AlphaPCI64 DP264 DP264 EB164 EB164 21164 evaluation board EB64+ EB64+ 21064 evaluation board EB66 EB66 21066 evaluation board EB66+ EB66+ 21066 evaluation board Jensen DECpc 150, DEC 2000 model 300, DEC 2000 model 500 LX164 AlphaPC164-LX Miata Personal Workstation 433a, 433au, 500a, 500au, 600a, or 600au Mikasa AS 1000 Noname AXPpci33, UDB (Multia) Noritake AS 1000A, AS 600A, AS 800 PC164 AlphaPC164 Rawhide AS 1200, AS 4000, AS 4100 Ruffian RPX164-2, AlphaPC164-UX, AlphaPC164-BX SX164 AlphaPC164-SX Sable AS 2000, AS 2100 Shark DS 20L Takara Takara Titan Privateer Wildfire AlphaServer GS 40/80/160/320 If you don't know what to do, choose "generic". # Most of the information on these variants is from # Alcor/Alpha-XLT CONFIG_ALPHA_ALCOR For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O Address, CIA) - a 383 pin plastic PGA). It provides a DRAM controller (256-bit memory bus) and a PCI interface. It also does all the work required to support an external Bcache and to maintain memory coherence when a PCI device DMAs into (or out of) memory. Alpha-XL CONFIG_ALPHA_XL XL-233 and XL-266-based Alpha systems. AlphaBook1 CONFIG_ALPHA_BOOK1 Dec AlphaBook1/Burns Alpha-based laptops. Avanti CONFIG_ALPHA_AVANTI Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based Alphas. Info at . Cabriolet CONFIG_ALPHA_CABRIOLET Cabriolet AlphaPC64, AlphaPCI64 systems. Derived from EB64+ but now baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA slots, 4 PCI slots (one pair are on a shared slot), uses plug-in Bcache SIMMs. Requires power supply with 3.3V output. DP264 CONFIG_ALPHA_DP264 Various 21264 systems with the tsunami core logic chipset. API Networks: 264DP, UP2000(+), CS20; Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40. EB164 CONFIG_ALPHA_EB164 EB164 21164 evaluation board from DEC. Uses 21164 and ALCOR. Has ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is shared with an ISA slot) and 2 32-bit PCI slots. Uses plus-in Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD, MOUSE (PS2 style), RTC/NVRAM. Boot ROM is Flash. PC-AT-sized motherboard. Requires power supply with 3.3V output. EB64+ CONFIG_ALPHA_EB64P Uses 21064 or 21064A and APECs. Has ISA and PCI expansion (3 ISA, 2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs. ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style), SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM. PC-AT size. Runs from standard PC power supply. EB66 CONFIG_ALPHA_EB66 A Digital DS group board. Uses 21066 or 21066A. I/O sub-system is identical to EB64+. Baby PC-AT size. Runs from standard PC power supply. The EB66 schematic was published as a marketing poster advertising the 21066 as "the first microprocessor in the world with embedded PCI". EB66+ CONFIG_ALPHA_EB66P Later variant of the EB66 board. Eiger CONFIG_ALPHA_EIGER Apparently an obscure OEM single-board computer based on the Typhoon/Tsunami chipset family. Information on it is scanty. Jensen CONFIG_ALPHA_JENSEN DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one of the first-generation Alpha systems. A number of these systems seem to be available on the second- hand market. The Jensen is a floor-standing tower system which originally used a 150MHz 21064 It used programmable logic to interface a 486 EISA I/O bridge to the CPU. LX164 CONFIG_ALPHA_LX164 A technical overview of this board is available at . Miata CONFIG_ALPHA_MIATA The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a, or 600au). There is an Installation HOWTO for this hardware at . Mikasa CONFIG_ALPHA_MIKASA AlphaServer 1000-based Alpha systems. Nautilus CONFIG_ALPHA_NAUTILUS Alpha systems based on the AMD 751 & ALI 1543C chipsets. Noname CONFIG_ALPHA_NONAME The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia UDB). This design was produced by Digital's Technical OEM (TOEM) group. It uses the 21066 processor running at 166MHz or 233MHz. It is a baby-AT size, and runs from a standard PC power supply. It has 5 ISA slots and 3 PCI slots (one pair are a shared slot). There are 2 versions, with either PS/2 or large DIN connectors for the keyboard. Noritake CONFIG_ALPHA_NORITAKE AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based systems. Rawhide CONFIG_ALPHA_RAWHIDE AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines. See HOWTO at . Ruffian CONFIG_ALPHA_RUFFIAN Samsung APC164UX. There is a page on known problems and workarounds at . Sable CONFIG_ALPHA_SABLE Digital AlphaServer 2000 and 2100-based systems. Takara CONFIG_ALPHA_TAKARA Alpha 11164-based OEM single-board computer. Wildfire CONFIG_ALPHA_WILDFIRE AlphaServer GS 40/80/160/320 SMP based on the EV67 core. EV5 CPU daughtercard (model 5/xxx) CONFIG_ALPHA_PRIMO Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx. EV5 CPU(s) (model 5/xxx) CONFIG_ALPHA_GAMMA Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx. EV67 (or later) CPU (speed > 600MHz)? CONFIG_ALPHA_EV67 Is this a machine based on the EV67 core? If in doubt, select N here and the machine will be treated as an EV6. Use SRM as bootloader CONFIG_ALPHA_SRM There are two different types of booting firmware on Alphas: SRM, which is command line driven, and ARC, which uses menus and arrow keys. Details about the Linux/Alpha booting process are contained in the Linux/Alpha FAQ, accessible on the WWW from . The usual way to load Linux on an Alpha machine is to use MILO (a bootloader that lets you pass command line parameters to the kernel just like lilo does for the x86 architecture) which can be loaded either from ARC or can be installed directly as a permanent firmware replacement from floppy (which requires changing a certain jumper on the motherboard). If you want to do either of these, say N here. If MILO doesn't work on your system (true for Jensen motherboards), you can bypass it altogether and boot Linux directly from an SRM console; say Y here in order to do that. Note that you won't be able to boot from an IDE disk using SRM. If unsure, say N. Legacy kernel start address CONFIG_ALPHA_LEGACY_START_ADDRESS The 2.4 kernel changed the kernel start address from 0x310000 to 0x810000 to make room for the Wildfire's larger SRM console. If you're using aboot 0.7 or later, the bootloader will examine the ELF headers to determine where to transfer control. Unfortunately, most older bootloaders -- APB or MILO -- hardcoded the kernel start address rather than examining the ELF headers, and the result is a hard lockup. Say Y if you have a broken bootloader. Say N if you do not, or if you wish to run on Wildfire. Large VMALLOC support CONFIG_ALPHA_LARGE_VMALLOC Process creation and other aspects of virtual memory management can be streamlined if we restrict the kernel to one PGD for all vmalloc allocations. This equates to about 8GB. Under normal circumstances, this is so far and above what is needed as to be laughable. However, there are certain applications (such as benchmark-grade in-kernel web serving) that can make use of as much vmalloc space as is available. Say N unless you know you need gobs and gobs of vmalloc space. Non-standard serial port support CONFIG_SERIAL_NONSTANDARD Say Y here if you have any non-standard serial boards -- boards which aren't supported using the standard "dumb" serial driver. This includes intelligent serial boards such as Cyclades, Digiboards, etc. These are usually used for systems that need many serial ports because they serve many terminals or dial-in connections. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about non-standard serial boards. Most people can say N here. Extended dumb serial driver options CONFIG_SERIAL_EXTENDED If you wish to use any non-standard features of the standard "dumb" driver, say Y here. This includes HUB6 support, shared serial interrupts, special multiport support, support for more than the four COM 1/2/3/4 boards, etc. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about serial driver options. If unsure, say N. Support more than 4 serial ports CONFIG_SERIAL_MANY_PORTS Say Y here if you have dumb serial boards other than the four standard COM 1/2/3/4 ports. This may happen if you have an AST FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available from ), or other custom serial port hardware which acts similar to standard serial port hardware. If you only use the standard COM 1/2/3/4 ports, you can say N here to save some memory. You can also say Y if you have an "intelligent" multiport card such as Cyclades, Digiboards, etc. Support for sharing serial interrupts CONFIG_SERIAL_SHARE_IRQ Some serial boards have hardware support which allows multiple dumb serial ports on the same board to share a single IRQ. To enable support for this in the serial driver, say Y here. Auto-detect IRQ on standard ports (unsafe) CONFIG_SERIAL_DETECT_IRQ Say Y here if you want the kernel to try to guess which IRQ to use for your serial port. This is considered unsafe; it is far better to configure the IRQ in a boot script using the setserial command. If unsure, say N. Support special multiport boards CONFIG_SERIAL_MULTIPORT Some multiport serial ports have special ports which are used to signal when there are any serial ports on the board which need servicing. Say Y here to enable the serial driver to take advantage of those special I/O ports. SGI IP22 Zilog85C30 serial support CONFIG_IP22_SERIAL If you want to use your IP22's built-in serial ports under Linux, answer Y. SGI Newport Graphics support CONFIG_SGI_NEWPORT_GFX If you have an SGI machine and you want to compile the graphics drivers, say Y here. This will include the code for the /dev/graphics and /dev/gfx drivers into the kernel for supporting virtualized access to your graphics hardware. SGI Newport Console support CONFIG_SGI_NEWPORT_CONSOLE Say Y here if you want the console on the Newport aka XL graphics card of your Indy. Most people say Y here. SGI DS1286 RTC support CONFIG_SGI_DS1286 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 built into your computer. Every SGI has such a clock built in. It reports status information via the file /proc/rtc and its behaviour is set by various ioctls on /dev/rtc. Indy/I2 Hardware Watchdog CONFIG_INDYDOG Hardwaredriver for the Indy's/I2's watchdog. This is a watchdog timer that will reboot the machine after a 60 second timer expired and no process has written to /dev/watchdog during that time. Support the Bell Technologies HUB6 card CONFIG_HUB6 Say Y here to enable support in the dumb serial driver to support the HUB6 card. PCMCIA serial device support CONFIG_PCMCIA_SERIAL_CS Say Y here to enable support for 16-bit PCMCIA serial devices, including serial port cards, modems, and the modem functions of multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are credit-card size devices often used with laptops.) 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 serial_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. CONFIG_SYNCLINK_CS Enable support for the SyncLink PC Card serial adapter, running asynchronous and HDLC communications up to 512Kbps. The port is selectable for RS-232, V.35, RS-449, RS-530, and X.21 This driver may be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called synclinkmp.o. If you want to do that, say M here. ACP Modem (Mwave) support CONFIG_MWAVE The ACP modem (Mwave) for Linux is a WinModem. It is composed of a kernel driver and a user level application. Together these components support direct attachment to public switched telephone networks (PSTNs) and support selected world wide countries. This version of the ACP Modem driver supports the IBM Thinkpad 600E, 600, and 770 that include on board ACP modem hardware. The modem also supports the standard communications port interface (ttySx) and is compatible with the Hayes AT Command Set. The user level application needed to use this driver can be found at the IBM Linux Technology Center (LTC) web site: . If you own one of the above IBM Thinkpads which has the Mwave chipset in it, say Y. 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 mwave.o. If you want to compile it as a module, say M here and read Documentation/modules.txt. /dev/agpgart (AGP Support) CONFIG_AGP AGP (Accelerated Graphics Port) is a bus system mainly used to connect graphics cards to the rest of the system. If you have an AGP system and you say Y here, it will be possible to use the AGP features of your 3D rendering video card. This code acts as a sort of "AGP driver" for the motherboard's chipset. If you need more texture memory than you can get with the AGP GART (theoretically up to 256 MB, but in practice usually 64 or 128 MB due to kernel allocation issues), you could use PCI accesses and have up to a couple gigs of texture space. Note that this is the only means to have XFree4/GLX use write-combining with MTRR support on the AGP bus. Without it, OpenGL direct rendering will be a lot slower but still faster than PIO. You should say Y here if you use XFree86 3.3.6 or 4.x and want to use GLX or DRI. If unsure, say N. This driver is available as a module. If you want to compile it as a module, say M here and read . The module will be called agpgart.o. Intel 440LX/BX/GX/815/820/830/840/845/850/860 support CONFIG_AGP_INTEL This option gives you AGP support for the GLX component of the XFree86 4.x on Intel 440LX/BX/GX, 815, 820, 830, 840, 845, 850 and 860 chipsets. You should say Y here if you use XFree86 3.3.6 or 4.x and want to use GLX or DRI. If unsure, say N. Intel 460GX support CONFIG_AGP_I460 This option gives you AGP support for the Intel 460GX chipset. This chipset, the first to support Intel Itanium processors, is new and this option is correspondingly a little experimental. If you don't have a 460GX based machine (such as BigSur) with an AGP slot then this option isn't going to do you much good. If you're dying to do Direct Rendering on IA-64, this is what you're looking for. Intel I810/I815 DC100/I810e support CONFIG_AGP_I810 This option gives you AGP support for the Xserver on the Intel 810 815 and 830m chipset boards for their on-board integrated graphics. This is required to do any useful video modes with these boards. VIA chipset support CONFIG_AGP_VIA This option gives you AGP support for the GLX component of the XFree86 4.x on VIA MPV3/Apollo Pro chipsets. You should say Y here if you use XFree86 3.3.6 or 4.x and want to use GLX or DRI. If unsure, say N. AMD Irongate, 761, and 762 support CONFIG_AGP_AMD This option gives you AGP support for the GLX component of the XFree86 4.x on AMD Irongate, 761, and 762 chipsets. You should say Y here if you use XFree86 3.3.6 or 4.x and want to use GLX or DRI. If unsure, say N. Generic SiS support CONFIG_AGP_SIS This option gives you AGP support for the GLX component of the "soon to be released" XFree86 4.x on Silicon Integrated Systems [SiS] chipsets. Note that 5591/5592 AGP chipsets are NOT supported. You should say Y here if you use XFree86 3.3.6 or 4.x and want to use GLX or DRI. If unsure, say N. Serverworks LE/HE support CONFIG_AGP_SWORKS Say Y here to support the Serverworks AGP card. See for product descriptions and images. ALI chipset support CONFIG_AGP_ALI This option gives you AGP support for the GLX component of the XFree86 4.x on the following ALi chipsets. The supported chipsets include M1541, M1621, M1631, M1632, M1641,M1647,and M1651. For the ALi-chipset question, ALi suggests you refer to . The M1541 chipset can do AGP 1x and 2x, but note that there is an acknowledged incompatibility with Matrox G200 cards. Due to timing issues, this chipset cannot do AGP 2x with the G200. This is a hardware limitation. AGP 1x seems to be fine, though. You should say Y here if you use XFree86 3.3.6 or 4.x and want to use GLX or DRI. If unsure, say N. CONFIG_AGP_HP_ZX1 This option gives you AGP GART support for the HP ZX1 chipset for IA64 processors. Support for ISA-bus hardware CONFIG_ISA 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. Support for PCI bus hardware CONFIG_PCI 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 , contains valuable information about which PCI hardware does work under Linux and which doesn't. PCI support CONFIG_PCI_INTEGRATOR 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 , contains valuable information about which PCI hardware does work under Linux and which doesn't. QSpan PCI CONFIG_PCI_QSPAN 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 , contains valuable information about which PCI hardware does work under Linux and which doesn't. # Choice: pci_access PCI access mode CONFIG_PCI_GOBIOS 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". PCI device name database CONFIG_PCI_NAMES By default, the kernel contains a database of all known PCI device names to make the information in /proc/pci, /proc/ioports and similar files comprehensible to the user. This database increases size of the kernel image by about 80KB, but it gets freed after the system boots up, so it doesn't take up kernel memory. Anyway, if you are building an installation floppy or kernel for an embedded system where kernel image size really matters, you can disable this feature and you'll get device ID numbers instead of names. When in doubt, say Y. Generic PCI hotplug support CONFIG_HOTPLUG_PCI Say Y here if you have a motherboard with a PCI Hotplug controller. This allows you to add and remove PCI cards while the machine is powered up and running. The file system pcihpfs must be mounted in order to interact with any PCI Hotplug controllers. 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 pci_hotplug.o. If you want to compile it as a module, say M here and read . When in doubt, say N. Compaq PCI Hotplug driver CONFIG_HOTPLUG_PCI_COMPAQ Say Y here if you have a motherboard with a Compaq PCI Hotplug controller. 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 cpqphp.o. If you want to compile it as a module, say M here and read . When in doubt, say N. PCI Compaq Hotplug controller NVRAM support CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM Say Y here if you have a Compaq server that has a PCI Hotplug controller. This will allow the PCI Hotplug driver to store the PCI system configuration options in NVRAM. When in doubt, say N. ACPI PCI Hotplug driver CONFIG_HOTPLUG_PCI_ACPI Say Y here if you have a system that supports PCI Hotplug using ACPI. 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 acpiphp.o. If you want to compile it as a module, say M here and read . MCA support CONFIG_MCA MicroChannel Architecture is found in some IBM PS/2 machines and laptops. It is a bus system similar to PCI or ISA. See (and especially the web page given there) before attempting to build an MCA bus kernel. Support for EISA-bus hardware CONFIG_EISA 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. SGI Visual Workstation support CONFIG_VISWS The SGI Visual Workstation series is an IA32-based workstation based on SGI systems chips with some legacy PC hardware attached. Say Y here to create a kernel to run on the SGI 320 or 540. A kernel compiled for the Visual Workstation will not run on other PC boards and vice versa. See for more. SGI Visual Workstation framebuffer support CONFIG_FB_SGIVW SGI Visual Workstation support for framebuffer graphics. I2O support CONFIG_I2O The Intelligent Input/Output (I2O) architecture allows hardware drivers to be split into two parts: an operating system specific module called the OSM and an hardware specific module called the HDM. The OSM can talk to a whole range of HDM's, and ideally the HDM's are not OS dependent. This allows for the same HDM driver to be used under different operating systems if the relevant OSM is in place. In order for this to work, you need to have an I2O interface adapter card in your computer. This card contains a special I/O processor (IOP), thus allowing high speeds since the CPU does not have to deal with I/O. If you say Y here, you will get a choice of interface adapter drivers and OSM's with the following questions. This support 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 . You will get modules called i2o_core.o and i2o_config.o. If unsure, say N. I2O PCI support CONFIG_I2O_PCI Say Y for support of PCI bus I2O interface adapters. Currently this is the only variety supported, so you should say Y. This support is also available as a module called i2o_pci.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 . I2O Block OSM CONFIG_I2O_BLOCK Include support for the I2O Block OSM. The Block OSM presents disk and other structured block devices to the operating system. This support is also available as a module called i2o_block.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 . I2O LAN OSM CONFIG_I2O_LAN Include support for the LAN OSM. You will also need to include support for token ring or FDDI if you wish to use token ring or FDDI I2O cards with this driver. This support is also available as a module called i2o_lan.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 . I2O SCSI OSM CONFIG_I2O_SCSI Allows direct SCSI access to SCSI devices on a SCSI or FibreChannel I2O controller. You can use both the SCSI and Block OSM together if you wish. This support is also available as a module called i2o_scsi.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 . I2O /proc support CONFIG_I2O_PROC If you say Y here and to "/proc file system support", you will be able to read I2O related information from the virtual directory /proc/i2o. This support is also available as a module called i2o_proc.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 . Plug and Play support CONFIG_PNP Plug and Play (PnP) is a standard for peripherals which allows those peripherals to be configured by software, e.g. assign IRQ's or other parameters. No jumpers on the cards are needed, instead the values are provided to the cards from the BIOS, from the operating system, or using a user-space utility. Say Y here if you would like Linux to configure your Plug and Play devices. You should then also say Y to "ISA Plug and Play support", below. Alternatively, you can say N here and configure your PnP devices using the user space utilities contained in the isapnptools package. This support 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 . ISA Plug and Play support CONFIG_ISAPNP Say Y here if you would like support for ISA Plug and Play devices. Some information is in . 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 . If unsure, say Y. PNPBIOS support CONFIG_PNPBIOS Linux uses the PNPBIOS as defined in "Plug and Play BIOS Specification Version 1.0A May 5, 1994" to autodetect built-in mainboard resources (e.g. parallel port resources). Other features (e.g. change resources, ESCD, event notification, Docking station information, ISAPNP services) are not used. Note: ACPI is expected to supersede PNPBIOS some day, currently it co-exists nicely. See latest pcmcia-cs (stand-alone package) for a nice "lspnp" tools, or have a look at /proc/bus/pnp. If unsure, say Y. Support for hot-pluggable devices CONFIG_HOTPLUG 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 ) 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. PCMCIA/CardBus support CONFIG_PCMCIA 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 for location). Please also read the PCMCIA-HOWTO, available from . 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 . CardBus card and (Yenta) bridge support CONFIG_CARDBUS CardBus is a bus mastering architecture for PC-cards, which allows for 32 bit PC-cards (the original PCMCIA standard specifies only a 16 bit wide bus). Many newer PC-cards are actually CardBus cards. This option enables support for CardBus PC Cards, as well as support for CardBus host bridges. Virtually all modern PCMCIA bridges are CardBus compatible. A "bridge" is the hardware inside your computer that PCMCIA cards are plugged into. To use your PC-cards, you will need supporting software from David Hinds' pcmcia-cs package (see the file for location). If unsure, say Y. i82092 compatible bridge support CONFIG_I82092 This provides support for the Intel I82092AA PCI-to-PCMCIA bridge device, found in some older laptops and more commonly in evaluation boards for the chip. i82365 compatible host bridge support CONFIG_I82365 Say Y here to include support for ISA-bus PCMCIA host bridges that are register compatible with the Intel i82365. These are found on older laptops and ISA-bus card readers for desktop systems. A "bridge" is the hardware inside your computer that PCMCIA cards are plugged into. If unsure, say N. Databook TCIC host bridge support CONFIG_TCIC Say Y here to include support for the Databook TCIC family of PCMCIA host bridges. These are only found on a handful of old systems. "Bridge" is the name used for the hardware inside your computer that PCMCIA cards are plugged into. If unsure, say N. System V IPC CONFIG_SYSVIPC Inter Process Communication is a suite of library functions and system calls which let processes (running programs) synchronize and exchange information. It is generally considered to be a good thing, and some programs won't run unless you say Y here. In particular, if you want to run the DOS emulator dosemu under Linux (read the DOSEMU-HOWTO, available from ), you'll need to say Y here. You can find documentation about IPC with "info ipc" and also in section 6.4 of the Linux Programmer's Guide, available from . BSD Process Accounting CONFIG_BSD_PROCESS_ACCT If you say Y here, a user level program will be able to instruct the kernel (via a special system call) to write process accounting information to a file: whenever a process exits, information about that process will be appended to the file by the kernel. The information includes things such as creation time, owning user, command name, memory usage, controlling terminal etc. (the complete list is in the struct acct in ). It is up to the user level program to do useful things with this information. This is generally a good idea, so say Y. Sysctl support CONFIG_SYSCTL The sysctl interface provides a means of dynamically changing certain kernel parameters and variables on the fly without requiring a recompile of the kernel or reboot of the system. The primary interface consists of a system call, but if you say Y to "/proc file system support", a tree of modifiable sysctl entries will be generated beneath the /proc/sys directory. They are explained in the files in . Note that enabling this option will enlarge the kernel by at least 8 KB. As it is generally a good thing, you should say Y here unless building a kernel for install/rescue disks or your system is very limited in memory. # Choice: kcore Kernel core (/proc/kcore) format CONFIG_KCORE_ELF 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. Select a.out format for /proc/kcore CONFIG_KCORE_AOUT Not necessary unless you're using a very out-of-date binutils version. You probably want KCORE_ELF. Kernel support for ELF binaries CONFIG_BINFMT_ELF 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 . 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 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 . 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. Kernel support for a.out binaries CONFIG_BINFMT_AOUT 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. OSF/1 v4 readv/writev compatibility CONFIG_OSF4_COMPAT Say Y if you are using OSF/1 binaries (like Netscape and Acrobat) with v4 shared libraries freely available from Compaq. If you're going to use shared libraries from Tru64 version 5.0 or later, say N. Kernel support for Linux/Intel ELF binaries CONFIG_BINFMT_EM86 Say Y here if you want to be able to execute Linux/Intel ELF binaries just like native Alpha binaries on your Alpha machine. For this to work, you need to have the emulator /usr/bin/em86 in place. You can get the same functionality by saying N here and saying Y to "Kernel support for MISC binaries". You may answer M to compile the emulation support as a module and later load the module when you want to use a Linux/Intel binary. The module will be called binfmt_em86.o. If unsure, say Y. Kernel support for SOM binaries CONFIG_BINFMT_SOM SOM is a binary executable format inherited from HP/UX. Say Y here to be able to load and execute SOM binaries directly. Kernel support for MISC binaries CONFIG_BINFMT_MISC 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 ). 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 to learn how to use this feature, and 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. Kernel support for JAVA binaries CONFIG_BINFMT_JAVA 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. Solaris binary emulation CONFIG_SOLARIS_EMUL 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 . SUN SME environment monitoring CONFIG_ENVCTRL 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 . # Choice: x86type Processor family CONFIG_M386 This is the processor type of your CPU. This information is used for optimizing purposes. In order to compile a kernel that can run on all x86 CPU types (albeit not optimally fast), you can specify "386" here. The kernel will not necessarily run on earlier architectures than the one you have chosen, e.g. a Pentium optimized kernel will run on a PPro, but not necessarily on a i486. Here are the settings recommended for greatest speed: - "386" for the AMD/Cyrix/Intel 386DX/DXL/SL/SLC/SX, Cyrix/TI 486DLC/DLC2, UMC 486SX-S and NexGen Nx586. Only "386" kernels will run on a 386 class machine. - "486" for the AMD/Cyrix/IBM/Intel 486DX/DX2/DX4 or SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or U5S. - "586" for generic Pentium CPUs, possibly lacking the TSC (time stamp counter) register. - "Pentium-Classic" for the Intel Pentium. - "Pentium-MMX" for the Intel Pentium MMX. - "Pentium-Pro" for the Intel Pentium Pro/Celeron/Pentium II. - "Pentium-III" for the Intel Pentium III and Celerons based on the Coppermine core. - "Pentium-4" for the Intel Pentium 4. - "K6" for the AMD K6, K6-II and K6-III (aka K6-3D). - "Athlon" for the AMD K7 family (Athlon/Duron/Thunderbird). - "Elan" for the AMD Elan family (Elan SC400/SC410). - "Crusoe" for the Transmeta Crusoe series. - "Winchip-C6" for original IDT Winchip. - "Winchip-2" for IDT Winchip 2. - "Winchip-2A" for IDT Winchips with 3dNow! capabilities. - "CyrixIII" for VIA Cyrix III or VIA C3. If you don't know what to do, choose "386". 486 CONFIG_M486 Select this for a x486 processor, ether Intel or one of the compatible processors from AMD, Cyrix, IBM, or Intel. Includes DX, DX2, and DX4 variants; also SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or U5S. 586/K5/5x86/6x86/6x86MX CONFIG_M586 Select this for an x586 or x686 processor such as the AMD K5, the Intel 5x86 or 6x86, or the Intel 6x86MX. This choice does not assume the RDTSC instruction. Pentium Classic CONFIG_M586TSC Select this for a Pentium Classic processor with the RDTSC (Read Time Stamp Counter) instruction for benchmarking. 32-bit PDC CONFIG_PDC_NARROW Saying Y here will allow developers with a C180, C200, C240, C360, J200, J210, and/or a J2240 to test 64-bit kernels by providing a wrapper for the 32-bit PDC calls. Since the machines which require this option do not support over 4G of RAM, this option is targeted for developers of these machines wishing to test changes on both 32-bit and 64-bit configurations. If unsure, say N. VGA text console CONFIG_VGA_CONSOLE 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 . Say Y. Distribute interrupts on all CPUs by default CONFIG_IRQ_ALL_CPUS This option gives the kernel permission to distribute IRQs across multiple CPUs. Saying N here will route all IRQs to the first CPU. Generally SMP PowerMacs can answer Y. SMP IBM CHRP boxes or Power3 boxes should say N for now. Video mode selection support CONFIG_VIDEO_SELECT 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 for more information about the Video mode selection support. If unsure, say N. Support for frame buffer devices CONFIG_FB The frame buffer device provides an abstraction for the graphics hardware. It represents the frame buffer of some video hardware and allows application software to access the graphics hardware through a well-defined interface, so the software doesn't need to know anything about the low-level (hardware register) stuff. Frame buffer devices work identically across the different architectures supported by Linux and make the implementation of application programs easier and more portable; at this point, an X server exists which uses the frame buffer device exclusively. On several non-X86 architectures, the frame buffer device is the only way to use the graphics hardware. The device is accessed through special device nodes, usually located in the /dev directory, i.e. /dev/fb*. You need an utility program called fbset to make full use of frame buffer devices. Please read and the Framebuffer-HOWTO at for more information. Say Y here and to the driver for your graphics board below if you are compiling a kernel for a non-x86 architecture. If you are compiling for the x86 architecture, you can say Y if you want to play with it, but it is not essential. Please note that running graphical applications that directly touch the hardware (e.g. an accelerated X server) and that are not frame buffer device-aware may cause unexpected results. If unsure, say N. Acorn VIDC support CONFIG_FB_ACORN This is the frame buffer device driver for the Acorn VIDC graphics hardware found in Acorn RISC PCs and other ARM-based machines. If unsure, say N. Permedia2 support CONFIG_FB_PM2 This is the frame buffer device driver for the Permedia2 AGP frame buffer card from ASK, aka `Graphic Blaster Exxtreme'. There is a product page at . Enable FIFO disconnect feature CONFIG_FB_PM2_FIFO_DISCONNECT Support the Permedia2 FIFOI disconnect feature (see CONFIG_FB_PM2). Generic Permedia2 PCI board support CONFIG_FB_PM2_PCI Say Y to enable support for Permedia2 AGP frame buffer card from 3Dlabs (aka `Graphic Blaster Exxtreme') on the PCI bus. Phase5 CVisionPPC/BVisionPPC support CONFIG_FB_PM2_CVPPC Say Y to enable support for the Amiga Phase 5 CVisionPPC BVisionPPC framebuffer cards. Phase 5 is no longer with us, alas. Amiga native chipset support CONFIG_FB_AMIGA This is the frame buffer device driver for the builtin graphics chipset found in Amigas. The 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 amifb.o. If you want to compile it as a module, say M here and read . Amiga OCS chipset support CONFIG_FB_AMIGA_OCS This enables support for the original Agnus and Denise video chips, found in the Amiga 1000 and most A500's and A2000's. If you intend to run Linux on any of these systems, say Y; otherwise say N. Amiga ECS chipset support CONFIG_FB_AMIGA_ECS This enables support for the Enhanced Chip Set, found in later A500's, later A2000's, the A600, the A3000, the A3000T and CDTV. If you intend to run Linux on any of these systems, say Y; otherwise say N. Amiga AGA chipset support CONFIG_FB_AMIGA_AGA This enables support for the Advanced Graphics Architecture (also known as the AGA or AA) Chip Set, found in the A1200, A4000, A4000T and CD32. If you intend to run Linux on any of these systems, say Y; otherwise say N. Amiga CyberVision support CONFIG_FB_CYBER This enables support for the Cybervision 64 graphics card from Phase5. Please note that its use is not all that intuitive (i.e. if you have any questions, be sure to ask!). Say N unless you have a Cybervision 64 or plan to get one before you next recompile the kernel. Please note that this driver DOES NOT support the Cybervision 64 3D card, as they use incompatible video chips. CyberPro 20x0 support CONFIG_FB_CYBER2000 This enables support for the Integraphics CyberPro 20x0 and 5000 VGA chips used in the Rebel.com Netwinder and other machines. Say Y if you have a NetWinder or a graphics card containing this device, otherwise say N. Amiga CyberVision3D support CONFIG_FB_VIRGE This enables support for the Cybervision 64/3D graphics card from Phase5. Please note that its use is not all that intuitive (i.e. if you have any questions, be sure to ask!). Say N unless you have a Cybervision 64/3D or plan to get one before you next recompile the kernel. Please note that this driver DOES NOT support the older Cybervision 64 card, as they use incompatible video chips. Amiga RetinaZ3 support CONFIG_FB_RETINAZ3 This enables support for the Retina Z3 graphics card. Say N unless you have a Retina Z3 or plan to get one before you next recompile the kernel. Cirrus Logic generic driver CONFIG_FB_CLGEN This enables support for Cirrus Logic GD542x/543x based boards on Amiga: SD64, Piccolo, Picasso II/II+, Picasso IV, or EGS Spectrum. If you have a PCI-based system, this enables support for these chips: GD-543x, GD-544x, GD-5480. Please read the file . Say N unless you have such a graphics board or plan to get one before you next recompile the kernel. Apollo support CONFIG_APOLLO Say Y here if you want to run Linux on an MC680x0-based Apollo Domain workstation such as the DN3500. Apollo 3c505 "EtherLink Plus" support CONFIG_APOLLO_ELPLUS Say Y or M here if your Apollo has a 3Com 3c505 ISA Ethernet card. If you don't have one made for Apollos, you can use one from a PC, except that your Apollo won't be able to boot from it (because the code in the ROM will be for a PC). Atari native chipset support CONFIG_FB_ATARI This is the frame buffer device driver for the builtin graphics chipset found in Ataris. Amiga FrameMaster II/Rainbow II support CONFIG_FB_FM2 This is the frame buffer device driver for the Amiga FrameMaster card from BSC (exhibited 1992 but not shipped as a CBM product). Open Firmware frame buffer device support CONFIG_FB_OF Say Y if you want support with Open Firmware for your graphics board. S3 Trio frame buffer device support CONFIG_FB_S3TRIO If you have a S3 Trio say Y. Say N for S3 Virge. 3Dfx Banshee/Voodoo3 display support CONFIG_FB_3DFX This driver supports graphics boards with the 3Dfx Banshee/Voodoo3 chips. Say Y if you have such a graphics board. The 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 tdfxfb.o. If you want to compile it as a module, say M here and read . nVidia Riva support CONFIG_FB_RIVA This driver supports graphics boards with the nVidia Riva/Geforce chips. Say Y if you have such a graphics board. The 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 rivafb.o. If you want to compile it as a module, say M here and read . Trident Blade/Image support CONFIG_FB_TRIDENT This driver is supposed to support graphics boards with the Trident CyberXXXX/Image/CyberBlade chips mostly found in laptops but also on some motherboards.Read Say Y if you have such a graphics board. The 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 rivafb.o. If you want to compile it as a module, say M here and read . ATI Mach64 display support CONFIG_FB_ATY This driver supports graphics boards with the ATI Mach64 chips. Say Y if you have such a graphics board. The 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 atyfb.o. If you want to compile it as a module, say M here and read . ATI Rage128 display support CONFIG_FB_ATY128 This driver supports graphics boards with the ATI Rage128 chips. Say Y if you have such a graphics board and read . The 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 aty128fb.o. If you want to compile it as a module, say M here and read . Maxine (Personal DECstation) onboard framebuffer support CONFIG_FB_MAXINE Support for the onboard framebuffer (1024x768x8) in the Personal DECstation series (Personal DECstation 5000/20, /25, /33, /50, Codename "Maxine"). PMAG-BA TURBOchannel framebuffer support CONFIG_FB_PMAG_BA Support for the PMAG-BA TURBOchannel framebuffer card (1024x864x8) used mainly in the MIPS-based DECstation series. PMAGB-B TURBOchannel framebuffer support CONFIG_FB_PMAGB_B Support for the PMAGB-B TURBOchannel framebuffer card used mainly in the MIPS-based DECstation series. The card is currently only supported in 1280x1024x8 mode. FutureTV PCI card CONFIG_ARCH_FTVPCI Say Y here if you intend to run this kernel on a FutureTV (nee Nexus Electronics) StrongARM PCI card. ANAKIN Vehicle Telematics Platform CONFIG_ARCH_ANAKIN The Anakin is a StrongArm based SA110 - 2 DIN Vehicle Telematics Platform. 64MB SDRAM - 4 Mb Flash - Compact Flash Interface - 1 MB VRAM On board peripherals: * Front display: 400x234 16 bit TFT touchscreen * External independent second screen interface * CAN controller SJA1000 * USB host controller * 6 channel video codec with hardware overlay * Smartcard reader * IrDa Modules interfaced over the Multi Media Extension slots: * A communication card Wavecom GPRS modem uBlock GPS Bosch DAB module * An audio card ( 4 * 40W, AC97 Codec, I2S) Altera Excalibur XA10 Dev Board ARCH_CAMELOT This enables support for Altera's Excalibur XA10 development board. If you would like to build your kernel to run on one of these boards then you must say 'Y' here. Otherwise say 'N' Link-Up Systems LCD support CONFIG_FB_L7200 This driver supports the L7200 Color LCD. Say Y if you want graphics support. NeoMagic display support (EXPERIMENTAL) CONFIG_FB_NEOMAGIC This driver supports notebooks with NeoMagic PCI chips. Say Y if you have such a graphics card. The 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 neofb.o. If you want to compile it as a module, say M here and read Documentation/modules.txt. PowerMac "control" frame buffer device support CONFIG_FB_CONTROL This driver supports a frame buffer for the graphics adapter in the Power Macintosh 7300 and others. PowerMac "platinum" frame buffer device support CONFIG_FB_PLATINUM This driver supports a frame buffer for the "platinum" graphics adapter in some Power Macintoshes. PowerMac "valkyrie" frame buffer device support CONFIG_FB_VALKYRIE This driver supports a frame buffer for the "valkyrie" graphics adapter in some Power Macintoshes. Chips 65550 display support CONFIG_FB_CT65550 This is the frame buffer device driver for the Chips & Technologies 65550 graphics chip in PowerBooks. TGA frame buffer support CONFIG_FB_TGA This is the frame buffer device driver for generic TGA graphic cards. Say Y if you have one of those. VESA VGA graphics console CONFIG_FB_VESA This is the frame buffer device driver for generic VESA 2.0 compliant graphic cards. The older VESA 1.2 cards are not supported. You will get a boot time penguin logo at no additional cost. Please read . If unsure, say Y. VGA 16-color planar support CONFIG_FBCON_VGA_PLANES This low level frame buffer console driver enable the kernel to use the 16-color planar modes of the old VGA cards where the bits of each pixel are separated into 4 planes. Only answer Y here if you have a (very old) VGA card that isn't VESA 2 compatible. VGA 16-color graphics console CONFIG_FB_VGA16 This is the frame buffer device driver for VGA 16 color graphic cards. Say Y if you have such a card. 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 . The module will be called vga16fb.o. Generic STI frame buffer device support CONFIG_FB_STI STI refers to the HP "Standard Text Interface" which is a set of BIOS routines contained in a ROM chip in HP PA-RISC based machines. Enabling this option will implement the linux framebuffer device and an fbcon color text console using calls to the STI BIOS routines. The HP framebuffer device is usually planar, uses a strange memory layout, and changing the plane mask to create colored pixels requires a call to the STI routines, so do not expect /dev/fb to actually be useful. However, it is the best we have as far as graphics on the HP chipsets due to lack of hardware level documentation for the various on-board HP chipsets used in these systems. It is sufficient for basic text console functions, including fonts. You should probably enable this option, unless you are having trouble getting video when booting the kernel (make sure it isn't just that you are running the console on the serial port, though). Really old HP boxes may not have STI, and must use the PDC BIOS console or the IODC BIOS. Select other compiled-in fonts CONFIG_FBCON_FONTS Say Y here if you would like to use fonts other than the default your frame buffer console usually use. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about foreign fonts. If unsure, say N (the default choices are safe). VGA 8x16 font CONFIG_FONT_8x16 This is the "high resolution" font for the VGA frame buffer (the one provided by the VGA text console 80x25 mode. If unsure, say Y. Support only 8 pixels wide fonts CONFIG_FBCON_FONTWIDTH8_ONLY Answer Y here will make the kernel provide only the 8x8 fonts (these are the less readable). If unsure, say N. Sparc console 8x16 font CONFIG_FONT_SUN8x16 This is the high resolution console font for Sun machines. Say Y. Sparc console 12x22 font (not supported by all drivers) CONFIG_FONT_SUN12x22 This is the high resolution console font for Sun machines with very big letters (like the letters used in the SPARC PROM). If the standard font is unreadable for you, say Y, otherwise say N. VGA 8x8 font CONFIG_FONT_8x8 This is the "high resolution" font for the VGA frame buffer (the one provided by the text console 80x50 (and higher) modes). Note that this is a poor quality font. The VGA 8x16 font is quite a lot more readable. Given the resolution provided by the frame buffer device, answer N here is safe. Mac console 6x11 font (not supported by all drivers) CONFIG_FONT_6x11 Small console font with Macintosh-style high-half glyphs. Some Mac framebuffer drivers don't support this one at all. Pearl (old m68k) console 8x8 font CONFIG_FONT_PEARL_8x8 Small console font with PC-style control-character and high-half glyphs. Acorn console 8x8 font CONFIG_FONT_ACORN_8x8 Small console font with PC-style control characters and high-half glyphs. Backward compatibility mode for Xpmac CONFIG_FB_COMPAT_XPMAC If you use the Xpmac X server (common with mklinux), you'll need to say Y here to use X. You should consider changing to XFree86 which includes a server that supports the frame buffer device directly (XF68_FBDev). Hercules (HGA) mono graphics support CONFIG_FB_HGA Say Y here if you have a Hercules mono graphics card. 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 hgafb.o. If you want to compile it as a module, say M here and read . As this card technology is 15 years old, most people will answer N here. Epson 1355 framebuffer support CONFIG_FB_E1355 Build in support for the SED1355 Epson Research Embedded RAMDAC LCD/CRT Controller (since redesignated as the S1D13505) as a framebuffer. Product specs at . Dreamcast Frame Buffer support CONFIG_FB_DC Say Y here to enable support for the framebuffer on the Sega Dreamcast. This driver is also available as a module, dcfb.o. Register Base Address CONFIG_E1355_REG_BASE Epson SED1355/S1D13505 LCD/CRT controller register base address. See the manuals at for discussion. Framebuffer Base Address CONFIG_E1355_FB_BASE Epson SED1355/S1D13505 LCD/CRT controller memory base address. See the manuals at for discussion. NEC PowerVR 2 display support CONFIG_FB_PVR2 Say Y here if you have a PowerVR 2 card in your box. If you plan to run linux on your Dreamcast, you will have to say Y here. This driver may or may not work on other PowerVR 2 cards, but is totally untested. Use at your own risk. If unsure, say N. 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 pvr2fb.o. If you want to compile it as a module, say M here and read . You can pass several parameters to the driver at boot time or at module load time. The parameters look like "video=pvr2:XXX", where the meaning of XXX can be found at the end of the main source file (). Please see the file . Debug pvr2fb CONFIG_FB_PVR2_DEBUG Say Y here if you wish for the pvr2fb driver to print out debugging messages. Most people will want to say N here. If unsure, you will also want to say N. Matrox unified accelerated driver CONFIG_FB_MATROX Say Y here if you have a Matrox Millennium, Millennium II, Mystique, Mystique 220, Productiva G100, Mystique G200, Millennium G200, Matrox G400, G450 or G550 card in your box. At this time, support for the G-series digital output is almost non-existant. 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 matroxfb.o. If you want to compile it as a module, say M here and read . You can pass several parameters to the driver at boot time or at module load time. The parameters look like "video=matrox:XXX", and are described in . Matrox Millennium I/II support CONFIG_FB_MATROX_MILLENIUM Say Y here if you have a Matrox Millennium or Matrox Millennium II video card. If you select "Advanced lowlevel driver options" below, you should check 4 bpp packed pixel, 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can also use font widths different from 8. Matrox Mystique support CONFIG_FB_MATROX_MYSTIQUE Say Y here if you have a Matrox Mystique or Matrox Mystique 220 video card. If you select "Advanced lowlevel driver options" below, you should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can also use font widths different from 8. Matrox G100/G200/G400/G450/G550 support CONFIG_FB_MATROX_G100 Say Y here if you have a Matrox G100, G200, G400, G450, or G550 based video card. If you select "Advanced lowlevel driver options", you should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can also use font widths different from 8. If you need support for G400 secondary head, you must first say Y to "I2C support" and "I2C bit-banging support" in the character devices section, and then to "Matrox I2C support" and "G400 second head support" here in the framebuffer section. If you have G550, you must also compile support for G450/G550 secondary head into kernel, otherwise picture will be shown only on the output you are probably not using... If you need support for G450 or G550 secondary head, say Y to "Matrox G450/G550 second head support" below. Matrox I2C support CONFIG_FB_MATROX_I2C This drivers creates I2C buses which are needed for accessing the DDC (I2C) bus present on all Matroxes, an I2C bus which interconnects Matrox optional devices, like MGA-TVO on G200 and G400, and the secondary head DDC bus, present on G400 only. You can say Y or M here if you want to experiment with monitor detection code. You must say Y or M here if you want to use either second head of G400 or MGA-TVO on G200 or G400. If you compile it as module, it will create a module named i2c-matroxfb.o. Matrox G400 second head support CONFIG_FB_MATROX_MAVEN WARNING !!! This support does not work with G450 !!! Say Y or M here if you want to use a secondary head (meaning two monitors in parallel) on G400 or MGA-TVO add-on on G200. Secondary head is not compatible with accelerated XFree 3.3.x SVGA servers - secondary head output is blanked while you are in X. With XFree 3.9.17 preview you can use both heads if you use SVGA over fbdev or the fbdev driver on first head and the fbdev driver on second head. If you compile it as module, two modules are created, matroxfb_crtc2.o and matroxfb_maven.o. Matroxfb_maven is needed for both G200 and G400, matroxfb_crtc2 is needed only by G400. You must also load i2c-matroxfb to get it to run. The driver starts in monitor mode and you must use the matroxset tool (available at ) to switch it to PAL or NTSC or to swap primary and secondary head outputs. Secondary head driver also always start in 640x480 resolution, you must use fbset to change it. Also do not forget that second head supports only 16 and 32 bpp packed pixels, so it is a good idea to compile them into the kernel too. You can use only some font widths, as the driver uses generic painting procedures (the secondary head does not use acceleration engine). Matrox G450 second head support CONFIG_FB_MATROX_G450 Say Y or M here if you want to use a secondary head (meaning two monitors in parallel) on G450, or if you are using analog output of G550. If you compile it as module, two modules are created, matroxfb_crtc2.o and matroxfb_g450.o. Both modules are needed if you want two independent display devices. The driver starts in monitor mode and currently does not support output in TV modes. You must use the matroxset tool (available at ) to swap primary and secondary head outputs. Secondary head driver always start in 640x480 resolution and you must use fbset to change it. Note on most G550 cards the analog output is the secondary head, so you will need to say Y here to use it. Also do not forget that second head supports only 16 and 32 bpp packed pixels, so it is a good idea to compile them into the kernel too. You can use only some font widths, as the driver uses generic painting procedures (the secondary head does not use acceleration engine). Matrox unified driver multihead support CONFIG_FB_MATROX_MULTIHEAD Say Y here if you have more than one (supported) Matrox device in your computer and you want to use all of them for different monitors ("multihead"). If you have only one device, you should say N because the driver compiled with Y is larger and a bit slower, especially on ia32 (ix86). If you said M to "Matrox unified accelerated driver" and N here, you will still be able to use several Matrox devices simultaneously: insert several instances of the module matroxfb.o into the kernel with insmod, supplying the parameter "dev=N" where N is 0, 1, etc. for the different Matrox devices. This method is slightly faster but uses 40 KB of kernel memory per Matrox card. There is no need for enabling 'Matrox multihead support' if you have only one Matrox card in the box. 3Dfx Voodoo Graphics / Voodoo2 frame buffer support CONFIG_FB_VOODOO1 Say Y here if you have a 3Dfx Voodoo Graphics (Voodoo1/sst1) or Voodoo2 (cvg) based graphics card. 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 sstfb.o. If you want to compile it as a module, say M here and read Documentation/modules.txt. WARNING: Do not use any application that uses the 3D engine (namely glide) while using this driver. Please read the file Documentation/fb/README-sstfb.txt for supported options and other important info support. MDA text console (dual-headed) CONFIG_MDA_CONSOLE 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 . If unsure, say N. SBUS and UPA framebuffers CONFIG_FB_SBUS Say Y if you want support for SBUS or UPA based frame buffer device. Creator/Creator3D support CONFIG_FB_CREATOR This is the frame buffer device driver for the Creator and Creator3D graphics boards. CGsix (GX,TurboGX) support CONFIG_FB_CGSIX This is the frame buffer device driver for the CGsix (GX, TurboGX) frame buffer. BWtwo support CONFIG_FB_BWTWO This is the frame buffer device driver for the BWtwo frame buffer. CGthree support CONFIG_FB_CGTHREE This is the frame buffer device driver for the CGthree frame buffer. CGfourteen (SX) support CONFIG_FB_CGFOURTEEN This is the frame buffer device driver for the CGfourteen frame buffer on Desktop SPARCsystems with the SX graphics option. P9100 (Sparcbook 3 only) support CONFIG_FB_P9100 This is the frame buffer device driver for the P9100 card supported on Sparcbook 3 machines. Leo (ZX) support CONFIG_FB_LEO This is the frame buffer device driver for the SBUS-based Sun ZX (leo) frame buffer cards. IGA 168x display support CONFIG_FB_IGA This is the framebuffer device for the INTERGRAPHICS 1680 and successor frame buffer cards. TCX (SS4/SS5 only) support CONFIG_FB_TCX This is the frame buffer device driver for the TCX 24/8bit frame buffer. HD64461 Frame Buffer support CONFIG_FB_HIT This is the frame buffer device driver for the Hitachi HD64461 LCD frame buffer card. SIS acceleration CONFIG_FB_SIS This is the frame buffer device driver for the SiS 630 and 640 Super Socket 7 UMA cards. Specs available at . SIS 630/540/730 support CONFIG_FB_SIS_300 This is the frame buffer device driver for the SiS 630 and related Super Socket 7 UMA cards. Specs available at . SIS 315H/315 support CONFIG_FB_SIS_315 This is the frame buffer device driver for the SiS 315 graphics card. Specs available at . IMS Twin Turbo display support CONFIG_FB_IMSTT The IMS Twin Turbo is a PCI-based frame buffer card bundled with many Macintosh and compatible computers. CONFIG_FB_TX3912 The TX3912 is a Toshiba RISC processor based on the MIPS 3900 core; see . Say Y here to enable kernel support for the on-board framebuffer. Virtual Frame Buffer support (ONLY FOR TESTING!) CONFIG_FB_VIRTUAL This is a `virtual' frame buffer device. It operates on a chunk of unswappable kernel memory instead of on the memory of a graphics board. This means you cannot see any output sent to this frame buffer device, while it does consume precious memory. The main use of this frame buffer device is testing and debugging the frame buffer subsystem. Do NOT enable it for normal systems! To protect the innocent, it has to be enabled explicitly at boot time using the kernel option `video=vfb:'. 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 vfb.o. If you want to compile it as a module, say M here and read . If unsure, say N. Mach64 CT/VT/GT/LT (incl. 3D RAGE) support CONFIG_FB_ATY_CT Say Y here to support use of ATI's 64-bit Rage boards (or other boards based on the Mach64 CT, VT, GT, and LT chipsets) as a framebuffer device. The ATI product support page for these boards is at . Sony Vaio Picturebook laptop LCD panel support CONFIG_FB_ATY_CT_VAIO_LCD Say Y here if you want to use the full width of the Sony Vaio Picturebook laptops LCD panels (you will get a 128x30 console). Note that you need to activate this mode using the 'vga=0x301' option from your boot loader (lilo or loadlin). See the documentation of your boot loader about how to pass options to the kernel. Mach64 GX support CONFIG_FB_ATY_GX Say Y here to support use of the ATI Mach64 Graphics Expression board (or other boards based on the Mach64 GX chipset) as a framebuffer device. The ATI product support page for these boards is at . ATI Radeon display support CONFIG_FB_RADEON Choose this option if you want to use an ATI Radeon graphics card as a framebuffer device. There are both PCI and AGP versions. You don't need to choose this to run the Radeon in plain VGA mode. There is a product page at . SA-1100 LCD support CONFIG_FB_SA1100 This is a framebuffer device for the SA-1100 LCD Controller. See for information on framebuffer devices. If you plan to use the LCD display with your SA-1100 system, say Y here. Advanced low level driver options CONFIG_FBCON_ADVANCED The frame buffer console uses character drawing routines that are tailored to the specific organization of pixels in the memory of your graphics hardware. These are called the low level frame buffer console drivers. Note that they are used for text console output only; they are NOT needed for graphical applications. If you say N here, the needed low level drivers are automatically enabled, depending on what frame buffer devices you selected above. This is recommended for most users. If you say Y here, you have more fine-grained control over which low level drivers are enabled. You can e.g. leave out low level drivers for color depths you do not intend to use for text consoles. Low level frame buffer console drivers can be modules ( = code which can be inserted and removed from the running kernel whenever you want). The modules will be called fbcon-*.o. If you want to compile (some of) them as modules, read . If unsure, say N. Monochrome support CONFIG_FBCON_MFB This is the low level frame buffer console driver for monochrome (2 colors) packed pixels. 2 bpp packed pixels support CONFIG_FBCON_CFB2 This is the low level frame buffer console driver for 2 bits per pixel (4 colors) packed pixels. 4 bpp packed pixels support CONFIG_FBCON_CFB4 This is the low level frame buffer console driver for 4 bits per pixel (16 colors) packed pixels. 8 bpp packed pixels support CONFIG_FBCON_CFB8 This is the low level frame buffer console driver for 8 bits per pixel (256 colors) packed pixels. 16 bpp packed pixels support CONFIG_FBCON_CFB16 This is the low level frame buffer console driver for 15 or 16 bits per pixel (32K or 64K colors, also known as `hicolor') packed pixels. 24 bpp packed pixels support CONFIG_FBCON_CFB24 This is the low level frame buffer console driver for 24 bits per pixel (16M colors, also known as `truecolor') packed pixels. It is NOT for `sparse' 32 bits per pixel mode. 32 bpp packed pixels support CONFIG_FBCON_CFB32 This is the low level frame buffer console driver for 32 bits per pixel (16M colors, also known as `truecolor') sparse packed pixels. Amiga bitplanes support CONFIG_FBCON_AFB This is the low level frame buffer console driver for 1 to 8 bitplanes (2 to 256 colors) on Amiga. Amiga interleaved bitplanes support CONFIG_FBCON_ILBM This is the low level frame buffer console driver for 1 to 8 interleaved bitplanes (2 to 256 colors) on Amiga. Atari interleaved bitplanes (2 planes) support CONFIG_FBCON_IPLAN2P2 This is the low level frame buffer console driver for 2 interleaved bitplanes (4 colors) on Atari. Atari interleaved bitplanes (4 planes) support CONFIG_FBCON_IPLAN2P4 This is the low level frame buffer console driver for 4 interleaved bitplanes (16 colors) on Atari. Atari interleaved bitplanes (8 planes) support CONFIG_FBCON_IPLAN2P8 This is the low level frame buffer console driver for 8 interleaved bitplanes (256 colors) on Atari. Mac variable bpp packed pixels support CONFIG_FBCON_MAC This is the low level frame buffer console driver for 1/2/4/8/16/32 bits per pixel packed pixels on Mac. It supports variable font widths for low resolution screens. Permedia3 support (EXPERIMENTAL) CONFIG_FB_PM3 This is the frame buffer device driver for the 3DLabs Permedia3 chipset, used in Formac ProFormance III, 3DLabs Oxygen VX1 & similar boards, 3DLabs Permedia3 Create!, Appian Jeronimo 2000 and maybe other boards. HGA monochrome support CONFIG_FBCON_HGA This is the low level frame buffer console driver for Hercules mono graphics cards. VGA characters/attributes support CONFIG_FBCON_VGA This is the low level frame buffer console driver for VGA text mode; it is used by frame buffer device drivers that support VGA text mode. Parallel-port support CONFIG_PARPORT 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 and . For extensive information about drivers for many devices attaching to the parallel port see 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 . 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 . If unsure, say Y. PC-style hardware CONFIG_PARPORT_PC 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 . The module will be called parport_pc.o. If unsure, say Y. Parallel+serial PCI multi-IO card support CONFIG_PARPORT_SERIAL This adds support for multi-IO PCI cards that have parallel and serial ports. You should say Y or M here. If you say M, the module will be called parport_serial.o. Use FIFO/DMA if available CONFIG_PARPORT_PC_FIFO 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 to find out how to specify which IRQ/DMA to use. SuperIO chipset support CONFIG_PARPORT_PC_SUPERIO 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. Support for PCMCIA management for PC-style ports CONFIG_PARPORT_PC_PCMCIA Say Y here if you need PCMCIA support for your PC-style parallel ports. If unsure, 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). If you want to compile it as a module, say M here and read . The module will be called parport_cs.o Support foreign hardware CONFIG_PARPORT_OTHER 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. Amiga built-in parallel port support CONFIG_PARPORT_AMIGA Say Y here if you need support for the parallel port hardware on Amiga machines. This code is also available as a module (say M), called parport_amiga.o. If in doubt, saying N is the safe plan. Atari built-in parallel port support CONFIG_PARPORT_ATARI Say Y here if you need support for the parallel port hardware on Atari machines. This code is also available as a module (say M), called parport_atari.o. If in doubt, saying N is the safe plan. Multiface III parallel port support CONFIG_PARPORT_MFC3 Say Y here if you need parallel port support for the MFC3 card. This code is also available as a module (say M), called parport_mfc3.o. If in doubt, saying N is the safe plan. Support IEEE 1284 status readback CONFIG_PRINTER_READBACK If you have a device on your parallel port that support this protocol, this option will allow the device to report its status. It is safe to say Y. IEEE 1284 transfer modes CONFIG_PARPORT_1284 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. Enable loadable module support CONFIG_MODULES Kernel modules are small pieces of compiled code which can be inserted in or removed from the running kernel, using the programs insmod and rmmod. This is described in the file , including the fact that you have to say "make modules" in order to compile the modules that you chose during kernel configuration. Modules can be device drivers, file systems, binary executable formats, and so on. If you think that you may want to make use of modules with this kernel in the future, then say Y here. If unsure, say Y. Set version information on all symbols for modules CONFIG_MODVERSIONS Usually, modules have to be recompiled whenever you switch to a new kernel. Saying Y here makes it possible, and safe, to use the same modules even after compiling a new kernel; this requires the program modprobe. All the software needed for module support is in the modutils package (check the file for location and latest version). NOTE: if you say Y here but don't have the program genksyms (which is also contained in the above mentioned modutils package), then the building of your kernel will fail. If you are going to use modules that are generated from non-kernel sources, you would benefit from this option. Otherwise it's not that important. So, N ought to be a safe bet. Kernel module loader support CONFIG_KMOD Normally when you have selected some drivers and/or file systems to be created as loadable modules, you also have the responsibility to load the corresponding modules (using the programs insmod or modprobe) before you can use them. If you say Y here however, the kernel will be able to load modules for itself: when a part of the kernel needs a module, it runs modprobe with the appropriate arguments, thereby loading the module if it is available. (This is a replacement for kerneld.) Say Y here and read about configuring it in . ARP daemon support CONFIG_ARPD Normally, the kernel maintains an internal cache which maps IP addresses to hardware addresses on the local network, so that Ethernet/Token Ring/ etc. frames are sent to the proper address on the physical networking layer. For small networks having a few hundred directly connected hosts or less, keeping this address resolution (ARP) cache inside the kernel works well. However, maintaining an internal ARP cache does not work well for very large switched networks, and will use a lot of kernel memory if TCP/IP connections are made to many machines on the network. If you say Y here, the kernel's internal ARP cache will never grow to more than 256 entries (the oldest entries are expired in a LIFO manner) and communication will be attempted with the user space ARP daemon arpd. Arpd then answers the address resolution request either from its own cache or by asking the net. This code is experimental and also obsolete. If you want to use it, you need to find a version of the daemon arpd on the net somewhere, and you should also say Y to "Kernel/User network link driver", below. If unsure, say N. TCP/IP networking CONFIG_INET These are the protocols used on the Internet and on most local Ethernets. It is highly recommended to say Y here (this will enlarge your kernel by about 144 KB), since some programs (e.g. the X window system) use TCP/IP even if your machine is not connected to any other computer. You will get the so-called loopback device which allows you to ping yourself (great fun, that!). For an excellent introduction to Linux networking, please read the NET-3-HOWTO, available from . This option is also necessary if you want to use the full power of 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; for more information, read ). If you say Y here and also to "/proc file system support" and "Sysctl support" below, you can change various aspects of the behaviour of the TCP/IP code by writing to the (virtual) files in /proc/sys/net/ipv4/*; the options are explained in the file . Short answer: say Y. IP multicasting CONFIG_IP_MULTICAST This is code for addressing several networked computers at once, enlarging your kernel by about 2 KB. You need multicasting if you intend to participate in the MBONE, a high bandwidth network on top of the Internet which carries audio and video broadcasts. More information about the MBONE is on the WWW at . Information about the multicast capabilities of the various network cards is contained in . For most people, it's safe to say N. Advanced router CONFIG_IP_ADVANCED_ROUTER If you intend to run your Linux box mostly as a router, i.e. as a computer that forwards and redistributes network packets, say Y; you will then be presented with several options that allow more precise control about the routing process. The answer to this question won't directly affect the kernel: answering N will just cause the configurator to skip all the questions about advanced routing. Note that your box can only act as a router if you enable IP forwarding in your kernel; you can do that by saying Y to "/proc file system support" and "Sysctl support" below and executing the line echo "1" > /proc/sys/net/ipv4/ip_forward at boot time after the /proc file system has been mounted. If you turn on IP forwarding, you will also get the rp_filter, which automatically rejects incoming packets if the routing table entry for their source address doesn't match the network interface they're arriving on. This has security advantages because it prevents the so-called IP spoofing, however it can pose problems if you use asymmetric routing (packets from you to a host take a different path than packets from that host to you) or if you operate a non-routing host which has several IP addresses on different interfaces. To turn rp_filter off use: echo 0 > /proc/sys/net/ipv4/conf//rp_filter or echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter If unsure, say N here. Policy routing CONFIG_IP_MULTIPLE_TABLES Normally, a router decides what to do with a received packet based solely on the packet's final destination address. If you say Y here, the Linux router will also be able to take the packet's source address into account. Furthermore, if you also say Y to "Use TOS value as routing key" below, the TOS (Type-Of-Service) field of the packet can be used for routing decisions as well. In addition, if you say Y here and to "Fast network address translation" below, the router will also be able to modify source and destination addresses of forwarded packets. If you are interested in this, please see the preliminary documentation at and . You will need supporting software from . If unsure, say N. Equal cost multipath CONFIG_IP_ROUTE_MULTIPATH Normally, the routing tables specify a single action to be taken in a deterministic manner for a given packet. If you say Y here however, it becomes possible to attach several actions to a packet pattern, in effect specifying several alternative paths to travel for those packets. The router considers all these paths to be of equal "cost" and chooses one of them in a non-deterministic fashion if a matching packet arrives. Use TOS value as routing key CONFIG_IP_ROUTE_TOS The header of every IP packet carries a TOS (Type Of Service) value with which the packet requests a certain treatment, e.g. low latency (for interactive traffic), high throughput, or high reliability. If you say Y here, you will be able to specify different routes for packets with different TOS values. Use netfilter MARK value as routing key CONFIG_IP_ROUTE_FWMARK If you say Y here, you will be able to specify different routes for packets with different mark values (see iptables(8), MARK target). Verbose route monitoring CONFIG_IP_ROUTE_VERBOSE If you say Y here, which is recommended, then the kernel will print verbose messages regarding the routing, for example warnings about received packets which look strange and could be evidence of an attack or a misconfigured system somewhere. The information is handled by the klogd daemon which is responsible for kernel messages ("man klogd"). Large routing tables CONFIG_IP_ROUTE_LARGE_TABLES If you have routing zones that grow to more than about 64 entries, you may want to say Y here to speed up the routing process. Fast network address translation CONFIG_IP_ROUTE_NAT If you say Y here, your router will be able to modify source and destination addresses of packets that pass through it, in a manner you specify. General information about Network Address Translation can be gotten from the document . Kernel level IP autoconfiguration CONFIG_IP_PNP This enables automatic configuration of IP addresses of devices and of the routing table during kernel boot, based on either information supplied on the kernel command line or by BOOTP or RARP protocols. You need to say Y only for diskless machines requiring network access to boot (in which case you want to say Y to "Root file system on NFS" as well), because all other machines configure the network in their startup scripts. BOOTP support CONFIG_IP_PNP_BOOTP If you want your Linux box to mount its whole root file system (the one containing the directory /) from some other computer over the net via NFS and you want the IP address of your computer to be discovered automatically at boot time using the BOOTP protocol (a special protocol designed for doing this job), say Y here. In case the boot ROM of your network card was designed for booting Linux and does BOOTP itself, providing all necessary information on the kernel command line, you can say N here. If unsure, say Y. Note that if you want to use BOOTP, a BOOTP server must be operating on your network. Read for details. DHCP support CONFIG_IP_PNP_DHCP If you want your Linux box to mount its whole root file system (the one containing the directory /) from some other computer over the net via NFS and you want the IP address of your computer to be discovered automatically at boot time using the DHCP protocol (a special protocol designed for doing this job), say Y here. In case the boot ROM of your network card was designed for booting Linux and does DHCP itself, providing all necessary information on the kernel command line, you can say N here. If unsure, say Y. Note that if you want to use DHCP, a DHCP server must be operating on your network. Read for details. RARP support CONFIG_IP_PNP_RARP If you want your Linux box to mount its whole root file system (the one containing the directory /) from some other computer over the net via NFS and you want the IP address of your computer to be discovered automatically at boot time using the RARP protocol (an older protocol which is being obsoleted by BOOTP and DHCP), say Y here. Note that if you want to use RARP, a RARP server must be operating on your network. Read for details. IP tunneling CONFIG_NET_IPIP Tunneling means encapsulating data of one protocol type within another protocol and sending it over a channel that understands the encapsulating protocol. This particular tunneling driver implements encapsulation of IP within IP, which sounds kind of pointless, but can be useful if you want to make your (or some other) machine appear on a different network than it physically is, or to use mobile-IP facilities (allowing laptops to seamlessly move between networks without changing their IP addresses; check out ). Saying Y to this option will produce two modules ( = code which can be inserted in and removed from the running kernel whenever you want). Most people won't need this and can 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). If you want to compile it as a module, say M here and read . The module will be called ipip.o IPv6 over IPv4 tunneling support (replaces sitXX devices) CONFIG_NET_IPIP_IPV6 If you say Y here, you can transport IPv6 packet over the tunlXX devices; The sitXX devices will be dissappeared with this option. Note: tunnel manipulation commands such as iptunnel should be updated. GRE tunnels over IP CONFIG_NET_IPGRE Tunneling means encapsulating data of one protocol type within another protocol and sending it over a channel that understands the encapsulating protocol. This particular tunneling driver implements GRE (Generic Routing Encapsulation) and at this time allows encapsulating of IPv4 or IPv6 over existing IPv4 infrastructure. This driver is useful if the other endpoint is a Cisco router: Cisco likes GRE much better than the other Linux tunneling driver ("IP tunneling" above). In addition, GRE allows multicast redistribution through the tunnel. 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 . The module will be called ip_gre.o Broadcast GRE over IP CONFIG_NET_IPGRE_BROADCAST One application of GRE/IP is to construct a broadcast WAN (Wide Area Network), which looks like a normal Ethernet LAN (Local Area Network), but can be distributed all over the Internet. If you want to do that, say Y here and to "IP multicast routing" below. IP multicast routing CONFIG_IP_MROUTE This is used if you want your machine to act as a router for IP packets that have several destination addresses. It is needed on the MBONE, a high bandwidth network on top of the Internet which carries audio and video broadcasts. In order to do that, you would most likely run the program mrouted. Information about the multicast capabilities of the various network cards is contained in . If you haven't heard about it, you don't need it. PIM-SM version 1 support CONFIG_IP_PIMSM_V1 Kernel side support for Sparse Mode PIM (Protocol Independent Multicast) version 1. This multicast routing protocol is used widely because Cisco supports it. You need special software to use it (pimd-v1). Please see for more information about PIM. Say Y if you want to use PIM-SM v1. Note that you can say N here if you just want to use Dense Mode PIM. PIM-SM version 2 support CONFIG_IP_PIMSM_V2 Kernel side support for Sparse Mode PIM version 2. In order to use this, you need an experimental routing daemon supporting it (pimd or gated-5). This routing protocol is not used widely, so say N unless you want to play with it. Restrict SO_REUSEADDR only for same user CONFIG_NET_RESTRICTED_REUSE With this option, kernel restrict effect of SO_REUSEADDR to prevent other users from performing 'binding closer' type attacks like NFS theft. Say Y. Unix domain sockets CONFIG_UNIX If you say Y here, you will include support for Unix domain sockets; sockets are the standard Unix mechanism for establishing and accessing network connections. Many commonly used programs such as the X Window system and syslog use these sockets even if your machine is not connected to any network. Unless you are working on an embedded system or something similar, you therefore definitely want to say Y here. However, the socket support 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 . The module will be called unix.o. If you try building this as a module and you have said Y to "Kernel module loader support" above, be sure to add 'alias net-pf-1 unix' to your /etc/modules.conf file. Note that several important services won't work correctly if you say M here and then neglect to load the module. Say Y unless you know what you are doing. The IPv6 protocol CONFIG_IPV6 This is experimental support for the next version of the Internet Protocol: IP version 6 (also called IPng "IP next generation"). Features of this new protocol include: expanded address space, authentication and privacy, and seamless interoperability with the current version of IP (IP version 4). For general information about IPv6, see ; for specific information about IPv6 under Linux read the HOWTO at and the file net/ipv6/README in the kernel source. If you want to use IPv6, please upgrade to the newest net-tools as given in . You will still be able to do regular IPv4 networking as well. This protocol support 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 ipv6.o. If you want to compile it as a module, say M here and read . Say Y. :-) IPv6: Verbose debugging messages CONFIG_IPV6_DEBUG Verbose kernel message for debugging IPv6 stack. If unsure, it is safe to say N. IPv6: inter-module support. CONFIG_IPV6_IM Export some interface via the inter-module feature. This is needed if you want to use generic tunnel (CONFIG_NET_IPGRE) with modulized ipv6. Say Y in such case, otherwise say N. IPv6: enable gre tunnel support with modulized ipv6 CONFIG_IPV6_MODULE_IP_GRE Use generic tunnel support with modulized ipv6 via inter-module interface. IPv6: drop packets with fake ipv4-mapped address(es) CONFIG_IPV6_DROP_FAKE_V4MAPPED Drop incoming packets with fake ipv4-mapped address(es) that may cause security problems. It is safe and recommended to say Y. IPv6: Anycast support Anycast support for IPv6. If unsure, say N. IPv6: 6to4 Address in NextHop Support CONFIG_IPV6_6TO4_NEXTHOP It is a transition mechanism which is defined by RFC2529. It configures dynamic IPv6 over IPv4 tunnel according to 6to4 addresses which are registerd in DNS. If you want to use 6to4 protocol, Say Y. If unsure, Say N. IPv6: Privacy Extensions (RFC 3041) support CONFIG_IPV6_PRIVACY Privacy Extensions for Stateless Address Autoconfiguration in IPv6 support. With this option, additional periodically-alter pseudo-random global-scope unicast address(es) will assigned to your interface(s). By default, kernel generates temporary addresses but it won't use them unless application explicitly bind them. To prefer temporary address, do echo 2 >/proc/sys/net/ipv6/conf/all/use_tempaddr IPv6: Anycast Address support (EXPERIMENTAL) CONFIG_IPV6_ANYCAST Supporting anycast address in kernel. Say N. IPv6: ISATAP interface support (EXPERIMENTAL) CONFIG_IPV6_ISATAP Support for Intra-Site Automatic Tunnel Addressing Protocol (ISATAP), based on draft-ietf-ngtrans-isatap-04.txt. It is a transition mechanism for Intra-Site network which doesn't support native IPv6 protocol. Using dynamic IPv6 over IPv4 tunneling, hosts can communicate via IPv6 in Intra-Site. If unsure, say N. IPv6: Loose scope_id CONFIG_IPV6_LOOSE_SCOPE_ID It is recommended to say N. NOTE: This option is disabled by default. IPv6: Restrict "double binding" only for same user CONFIG_IPV6_RESTRICTED_DOUBLE_BIND With this option, kernel doesn't allow bind the same port number of socket which already binded by other user with other protocol. For example, If user A binds #8000 port with IPv6 protocol kernel doesn't allow to bind #8000 port with IPv4 protocol other than user A. For security reason, we recommend say Y. If you say Y here, note that "double binding" restriction is not enabled by default; you can enable this by setting net.ipv6.conf.all. binv6only_restriction to 1. If you want to compile IPv6 as a module, you also need to say Y to "inter-module support" to enable this option. IPv6: IPv6 over IPv6 Tunneling (EXPERIMENTAL) CONFIG_IPV6_IPV6_TUNNEL Experimental IP6-IP6 tunneling. If you don't want IP6-IP6 tunnels, say N. IPv6: Neighbor Discovery debugging CONFIG_IPV6_NDISC_DEBUG Verbose kernel message to debug Neighbor Discovery Protocol for IPv6. Say N. IPv6: Stateless Address Autoconfiguration debugging CONFIG_IPV6_ACONF_DEBUG Verbose kernel message to debug the IPv6 Stateless Address Autoconfiguration. Say N. IPv6: Debug on source address selection CONFIG_IPV6_ACONF_DEBUG_SADDR Verbose kernel messages for debugging IPv6 Source Address Selection Algorithm. Say N. IPv6: ignore too small Valid Lifetime for Address Autoconfiguration CONFIG_IPV6_ACONF_MIN_VALID_LFT Do not update valid-lifetime with small value to avoid particular DoS attack. See RFC 2461 section 6.3.6 and RFC 2462 section 5.5.3. Say Y. IPv6: Routing Information debugging CONFIG_IPV6_RT6_DEBUG Verbose kernel messages for debugging IPv6 routing. Say N. IPv6: allow default route when forwarding is enabled CONFIG_IPV6_EN_DFLT When a Linux box is Configured as an IPv6 router, Linux kernel recognizes IPv6 default routes as default routes of IPv6. If you want to use a Linux box as an IPv6 router, Say Y. IPv6: sub-tree in routing table support (just for testing) CONFIG_IPV6_SUBTREES Sub-tree in IPv6 routing table to have routes by source address. This is just for testing. Say N. IPv6: Multicast Listener Discovery debugging CONFIG_IPV6_MLD6_DEBUG Verbose kernel message to debug Multicast Listeners Discovery for IPv6. Say N. IPv6: Disable optimization of MLD6 Done message CONFIG_IPV6_MLD6_ALL_DONE When a node ceases to listen to a multicast address on an interface, it should send a single Done message. If its recent Report was suppressed by hearing another Report, it MAY send nothing. You can turn off this optimization by CONFIG_IPV6_MLD6_ALL_DONE. See RFC 2710. Say N. IPv6: enable Node Information Queries CONFIG_IPV6_NODEINFO Support ICMPv6 Node Information Queries defined in draft-ietf-ipngwg-icmp-name-lookups-07.txt. IPv6: regard NIS domain as DNS domain CONFIG_IPV6_NODEINFO_USE_UTS_DOMAIN When the NI DNS Query requests FQDN of your Linux box, it will try to add the (NIS) domain to your hostname. Generally, this is not a good idea, so say N; your box will reply as FQDN if its hostname includes two or more dots, otherwise it will reply as hostname. IPv6: ICMPv6 NI debug message (very verbose) CONFIG_IPV6_NODEINFO_DEBUG Very verbose debug message. Say N. Kernel httpd acceleration CONFIG_KHTTPD The kernel httpd acceleration daemon (kHTTPd) is a (limited) web server built into the kernel. It is limited since it can only serve files from the file system and cannot deal with executable content such as CGI scripts. Serving files is sped up if you use kHTTPd. If kHTTPd is not able to fulfill a request, it can transparently pass it through to a user space web server such as apache. Saying "M" here builds the kHTTPd module; this is NOT enough to have a working kHTTPd. For safety reasons, the module has to be activated by doing a "echo 1 > /proc/sys/net/khttpd/start" after inserting the module. Before using this, read the README in net/khttpd ! The kHTTPd is experimental. Be careful when using it on a production machine. Also note that kHTTPd doesn't support virtual servers yet. Use IPv6 socket for khttpd CONFIG_KHTTPD_IPV6 Use IPv6 socket for khttpd module. The IPX protocol CONFIG_IPX This is support for the Novell networking protocol, IPX, commonly used for local networks of Windows machines. You need it if you want to access Novell NetWare file or print servers using the Linux Novell client ncpfs (available from ) or from within the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from ). In order to do the former, you'll also have to say Y to "NCP file system support", below. IPX is similar in scope to IP, while SPX, which runs on top of IPX, is similar to TCP. There is also experimental support for SPX in Linux (see "SPX networking", below). To turn your Linux box into a fully featured NetWare file server and IPX router, say Y here and fetch either lwared from or mars_nwe from . For more information, read the IPX-HOWTO available from . General information about how to connect Linux, Windows machines and Macs is on the WWW at . The IPX driver would enlarge your kernel by about 16 KB. 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 ipx.o. If you want to compile it as a module, say M here and read . Unless you want to integrate your Linux box with a local Novell network, say N. Full internal IPX network CONFIG_IPX_INTERN Every IPX network has an address that identifies it. Sometimes it is useful to give an IPX "network" address to your Linux box as well (for example if your box is acting as a file server for different IPX networks: it will then be accessible from everywhere using the same address). The way this is done is to create a virtual internal "network" inside your box and to assign an IPX address to this network. Say Y here if you want to do this; read the IPX-HOWTO at for details. The full internal IPX network enables you to allocate sockets on different virtual nodes of the internal network. This is done by evaluating the field sipx_node of the socket address given to the bind call. So applications should always initialize the node field to 0 when binding a socket on the primary network. In this case the socket is assigned the default node that has been given to the kernel when the internal network was created. By enabling the full internal IPX network the cross-forwarding of packets targeted at 'special' sockets to sockets listening on the primary network is disabled. This might break existing applications, especially RIP/SAP daemons. A RIP/SAP daemon that works well with the full internal net can be found on . If you don't know what you are doing, say N. #(We're told this will come back someday) SPX networking CONFIG_SPX * Orphaned entry retained 20 April 2001 by Petr Vandrovec * * If you read this note from the configurator, please contact * * the Configure.help maintainers. * The Sequenced Packet eXchange protocol is a transport layer protocol built on top of IPX. It is used in Novell NetWare systems for client-server applications and is similar to TCP (which runs on top of IP). Note that Novell NetWare file sharing does not use SPX; it uses a protocol called NCP, for which separate Linux support is available ("NCP file system support" below for the client side, and the user space programs lwared or mars_nwe for the server side). Say Y here if you have use for SPX; read the IPX-HOWTO at 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 will be called af_spx.o. If you want to compile it as a module, say M here and read . DECnet networking CONFIG_DECNET The DECnet networking protocol was used in many products made by Digital (now Compaq). It provides reliable stream and sequenced packet communications over which run a variety of services similar to those which run over TCP/IP. To find some tools to use with the kernel layer support, please look at Patrick Caulfield's web site: . More detailed documentation is available in . Be sure to say Y to "/proc file system support" and "Sysctl support" below when using DECnet, since you will need sysctl support to aid in configuration at run time. The DECnet code 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 decnet.o. DECnet SIOCFIGCONF support CONFIG_DECNET_SIOCGIFCONF This option should only be turned on if you are really sure that you know what you are doing. It can break other applications which use this system call and the proper way to get the information provided by this call is to use rtnetlink. If unsure, say N. DECnet router support CONFIG_DECNET_ROUTER Add support for turning your DECnet Endnode into a level 1 or 2 router. This is an unfinished option for developers only. If you do say Y here, then make sure that you also say Y to "Kernel/User network link driver", "Routing messages" and "Network packet filtering". The first two are required to allow configuration via rtnetlink (currently you need Alexey Kuznetsov's iproute2 package from ). The "Network packet filtering" option will be required for the forthcoming routing daemon to work. See for more information. Use FWMARK value as DECnet routing key CONFIG_DECNET_ROUTE_FWMARK If you say Y here, you will be able to specify different routes for packets with different FWMARK ("firewalling mark") values (see ipchains(8), "-m" argument). AppleTalk interfaces support CONFIG_DEV_APPLETALK AppleTalk is the protocol that Apple computers can use to communicate on a network. If your Linux box is connected to such a network, and wish to do IP over it, or you have a LocalTalk card and wish to use it to connect to the AppleTalk network, say Y. AppleTalk protocol support CONFIG_ATALK AppleTalk is the protocol that Apple computers can use to communicate on a network. If your Linux box is connected to such a network and you wish to connect to it, say Y. You will need to use the netatalk package so that your Linux box can act as a print and file server for Macs as well as access AppleTalk printers. Check out on the WWW for details. EtherTalk is the name used for AppleTalk over Ethernet and the cheaper and slower LocalTalk is AppleTalk over a proprietary Apple network using serial links. EtherTalk and LocalTalk are fully supported by Linux. General information about how to connect Linux, Windows machines and Macs is on the WWW at . The NET-3-HOWTO, available from , contains valuable information 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 is called appletalk.o. If you want to compile it as a module, say M here and read . You almost certainly want to compile it as a module so you can restart your AppleTalk stack without rebooting your machine. I hear that the GNU boycott of Apple is over, so even politically correct people are allowed to say Y here. AppleTalk-IP driver support CONFIG_IPDDP This allows IP networking for users who only have AppleTalk networking available. This feature is experimental. With this driver, you can encapsulate IP inside AppleTalk (e.g. if your Linux box is stuck on an AppleTalk only network) or decapsulate (e.g. if you want your Linux box to act as an Internet gateway for a zoo of AppleTalk connected Macs). Please see the file for more information. If you say Y here, the AppleTalk-IP support will be compiled into the kernel. In this case, you can either use encapsulation or decapsulation, but not both. With the following two questions, you decide which one you want. If you say M here, the AppleTalk-IP support will be compiled as a module ( = code which can be inserted in and removed from the running kernel whenever you want, read ). The module is called ipddp.o. In this case, you will be able to use both encapsulation and decapsulation simultaneously, by loading two copies of the module and specifying different values for the module option ipddp_mode. IP to AppleTalk-IP Encapsulation support CONFIG_IPDDP_ENCAP If you say Y here, the AppleTalk-IP code will be able to encapsulate IP packets inside AppleTalk frames; this is useful if your Linux box is stuck on an AppleTalk network (which hopefully contains a decapsulator somewhere). Please see for more information. If you said Y to "AppleTalk-IP driver support" above and you say Y here, then you cannot say Y to "AppleTalk-IP to IP Decapsulation support", below. AppleTalk-IP to IP Decapsulation support CONFIG_IPDDP_DECAP If you say Y here, the AppleTalk-IP code will be able to decapsulate AppleTalk-IP frames to IP packets; this is useful if you want your Linux box to act as an Internet gateway for an AppleTalk network. Please see for more information. If you said Y to "AppleTalk-IP driver support" above and you say Y here, then you cannot say Y to "IP to AppleTalk-IP Encapsulation support", above. Apple/Farallon LocalTalk PC card support CONFIG_LTPC This allows you to use the AppleTalk PC card to connect to LocalTalk networks. The card is also known as the Farallon PhoneNet PC card. If you are in doubt, this card is the one with the 65C02 chip on it. You also need version 1.3.3 or later of the netatalk package. This driver is experimental, which means that it may not work. See the file . 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 . The module will be called ltpc.o COPS LocalTalk PC card support CONFIG_COPS This allows you to use COPS AppleTalk cards to connect to LocalTalk networks. You also need version 1.3.3 or later of the netatalk package. This driver is experimental, which means that it may not work. This driver will only work if you choose "AppleTalk DDP" networking support, above. Please read the file . 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 . The module will be called cops.o Dayna firmware support CONFIG_COPS_DAYNA Support COPS compatible cards with Dayna style firmware (Dayna DL2000/ Daynatalk/PC (half length), COPS LT-95, Farallon PhoneNET PC III, Farallon PhoneNET PC II). Tangent firmware support CONFIG_COPS_TANGENT Support COPS compatible cards with Tangent style firmware (Tangent ATB_II, Novell NL-1000, Daystar Digital LT-200. Amateur Radio support CONFIG_HAMRADIO If you want to connect your Linux box to an amateur radio, answer Y here. You want to read and the AX25-HOWTO, available from . Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about amateur radio. Amateur Radio AX.25 Level 2 protocol CONFIG_AX25 This is the protocol used for computer communication over amateur radio. It is either used by itself for point-to-point links, or to carry other protocols such as tcp/ip. To use it, you need a device that connects your Linux box to your amateur radio. You can either use a low speed TNC (a Terminal Node Controller acts as a kind of modem connecting your computer's serial port to your radio's microphone input and speaker output) supporting the KISS protocol or one of the various SCC cards that are supported by the generic Z8530 or the DMA SCC driver. Another option are the Baycom modem serial and parallel port hacks or the sound card modem (supported by their own drivers). If you say Y here, you also have to say Y to one of those drivers. Information about where to get supporting software for Linux amateur radio as well as information about how to configure an AX.25 port is contained in the AX25-HOWTO, available from . You might also want to check out the file in the kernel source. More information about digital amateur radio in general is on the WWW at . 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 ax25.o. If you want to compile it as a module, say M here and read . AX.25 DAMA Slave support CONFIG_AX25_DAMA_SLAVE DAMA is a mechanism to prevent collisions when doing AX.25 networking. A DAMA server (called "master") accepts incoming traffic from clients (called "slaves") and redistributes it to other slaves. If you say Y here, your Linux box will act as a DAMA slave; this is transparent in that you don't have to do any special DAMA configuration. (Linux cannot yet act as a DAMA server.) If unsure, say N. AX.25 DAMA Master support CONFIG_AX25_DAMA_MASTER DAMA is a mechanism to prevent collisions when doing AX.25 networking. A DAMA server (called "master") accepts incoming traffic from clients (called "slaves") and redistributes it to other slaves. If you say Y here, your Linux box will act as a DAMA server. If unsure, say N. Amateur Radio NET/ROM support CONFIG_NETROM NET/ROM is a network layer protocol on top of AX.25 useful for routing. A comprehensive listing of all the software for Linux amateur radio users as well as information about how to configure an AX.25 port is contained in the AX25-HOWTO, available from . You also might want to check out the file . More information about digital amateur radio in general is on the WWW at . 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 netrom.o. If you want to compile it as a module, say M here and read . Amateur Radio X.25 PLP (Rose) CONFIG_ROSE The Packet Layer Protocol (PLP) is a way to route packets over X.25 connections in general and amateur radio AX.25 connections in particular, essentially an alternative to NET/ROM. A comprehensive listing of all the software for Linux amateur radio users as well as information about how to configure an AX.25 port is contained in the AX25-HOWTO, available from . You also might want to check out the file . More information about digital amateur radio in general is on the WWW at . 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 rose.o. If you want to compile it as a module, say M here and read . Serial port KISS driver for AX.25 CONFIG_MKISS KISS is a protocol used for the exchange of data between a computer and a Terminal Node Controller (a small embedded system commonly used for networking over AX.25 amateur radio connections; it connects the computer's serial port with the radio's microphone input and speaker output). Although KISS is less advanced than the 6pack protocol, it has the advantage that it is already supported by most modern TNCs without the need for a firmware upgrade. 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 . The module will be called mkiss.o. Serial port 6PACK driver for AX.25 CONFIG_6PACK 6pack is a transmission protocol for the data exchange between your PC and your TNC (the Terminal Node Controller acts as a kind of modem connecting your computer's serial port to your radio's microphone input and speaker output). This protocol can be used as an alternative to KISS for networking over AX.25 amateur radio connections, but it has some extended functionality. Note that this driver is still experimental and might cause problems. For details about the features and the usage of the driver, read . 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 . The module will be called 6pack.o. BPQ Ethernet driver CONFIG_BPQETHER AX.25 is the protocol used for computer communication over amateur radio. If you say Y here, you will be able to send and receive AX.25 traffic over Ethernet (also called "BPQ AX.25"), which could be useful if some other computer on your local network has a direct amateur radio connection. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called bpqether.o. High-speed (DMA) SCC driver for AX.25 CONFIG_DMASCC This is a driver for high-speed SCC boards, i.e. those supporting DMA on one port. You usually use those boards to connect your computer to an amateur radio modem (such as the WA4DSY 56kbps modem), in order to send and receive AX.25 packet radio network traffic. Currently, this driver supports Ottawa PI/PI2, Paccomm/Gracilis PackeTwin, and S5SCC/DMA boards. They are detected automatically. If you have one of these cards, say Y here and read the AX25-HOWTO, available from . This driver can operate multiple boards simultaneously. If you compile it as a module (by saying M instead of Y), it will be called dmascc.o. If you don't pass any parameter to the driver, all possible I/O addresses are probed. This could irritate other devices that are currently not in use. You may specify the list of addresses to be probed by "dmascc=addr1,addr2,..." (when compiled into the kernel image) or "io=addr1,addr2,..." (when loaded as a module). The network interfaces will be called dmascc0 and dmascc1 for the board detected first, dmascc2 and dmascc3 for the second one, and so on. Before you configure each interface with ifconfig, you MUST set certain parameters, such as channel access timing, clock mode, and DMA channel. This is accomplished with a small utility program, dmascc_cfg, available at . Please be sure to get at least version 1.27 of dmascc_cfg, as older versions will not work with the current driver. Z8530 SCC driver for AX.25 CONFIG_SCC These cards are used to connect your Linux box to an amateur radio in order to communicate with other computers. If you want to use this, read and the AX25-HOWTO, available from . Also make sure to say Y to "Amateur Radio AX.25 Level 2" support. 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 . The module will be called scc.o. Support for TRX that feedback the tx signal to rx CONFIG_SCC_TRXECHO Some transmitters feed the transmitted signal back to the receive line. Say Y here to foil this by explicitly disabling the receiver during data transmission. If in doubt, say Y. Additional delay for PA0HZP OptoSCC compatible boards CONFIG_SCC_DELAY Say Y here if you experience problems with the SCC driver not working properly; please read for details. If unsure, say N. YAM driver for AX.25 CONFIG_YAM The YAM is a modem for packet radio which connects to the serial port and includes some of the functions of a Terminal Node Controller. If you have one of those, say Y here. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called yam.o. BAYCOM picpar and par96 driver for AX.25 CONFIG_BAYCOM_PAR This is a driver for Baycom style simple amateur radio modems that connect to a parallel interface. The driver supports the picpar and par96 designs. To configure the driver, use the sethdlc utility available in the standard ax25 utilities package. For information on the modems, see and the file . 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 . This is recommended. The module will be called baycom_par.o. BAYCOM EPP driver for AX.25 CONFIG_BAYCOM_EPP This is a driver for Baycom style simple amateur radio modems that connect to a parallel interface. The driver supports the EPP designs. To configure the driver, use the sethdlc utility available in the standard ax25 utilities package. For information on the modems, see and the file . 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 . This is recommended. The module will be called baycom_par.o. BAYCOM ser12 full-duplex driver for AX.25 CONFIG_BAYCOM_SER_FDX This is one of two drivers for Baycom style simple amateur radio modems that connect to a serial interface. The driver supports the ser12 design in full-duplex mode. In addition, it allows the baudrate to be set between 300 and 4800 baud (however not all modems support all baudrates). This is the preferred driver. The next driver, "BAYCOM ser12 half-duplex driver for AX.25" is the old driver and still provided in case this driver does not work with your serial interface chip. To configure the driver, use the sethdlc utility available in the standard ax25 utilities package. For information on the modems, see and . 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 . This is recommended. The module will be called baycom_ser_fdx.o. BAYCOM ser12 half-duplex driver for AX.25 CONFIG_BAYCOM_SER_HDX This is one of two drivers for Baycom style simple amateur radio modems that connect to a serial interface. The driver supports the ser12 design in full-duplex mode. This is the old driver. It is still provided in case your serial interface chip does not work with the full-duplex driver. This driver is depreciated. To configure the driver, use the sethdlc utility available in the standard ax25 utilities package. For information on the modems, see and . 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 . This is recommended. The module will be called baycom_ser_hdx.o. Sound card modem driver for AX.25 CONFIG_SOUNDMODEM This experimental driver allows a standard Sound Blaster or WindowsSoundSystem compatible sound card to be used as a packet radio modem (NOT as a telephone modem!), to send digital traffic over amateur radio. To configure the driver, use the sethdlc, smdiag and smmixer utilities available in the standard ax25 utilities package. For information on how to key the transmitter, see and . 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 . This is recommended. The module will be called soundmodem.o. Sound card modem support for Sound Blaster and compatible cards CONFIG_SOUNDMODEM_SBC This option enables the soundmodem driver to use Sound Blaster and compatible cards. If you have a dual mode card (i.e. a WSS cards with a Sound Blaster emulation) you should say N here and Y to "Sound card modem support for WSS and Crystal cards", below, because this usually results in better performance. This option also supports SB16/32/64 in full-duplex mode. Sound card modem support for WSS and Crystal cards CONFIG_SOUNDMODEM_WSS This option enables the soundmodem driver to use WindowsSoundSystem compatible cards. These cards feature a codec chip from either Analog Devices (such as AD1848, AD1845, AD1812) or Crystal Semiconductors (such as CS4248, CS423x). This option also supports the WSS full-duplex operation which currently works with Crystal CS423x chips. If you don't need full-duplex operation, do not enable it to save performance. Sound card modem support for 1200 baud AFSK modulation CONFIG_SOUNDMODEM_AFSK1200 This option enables the soundmodem driver 1200 baud AFSK modem, compatible to popular modems using TCM3105 or AM7911. The demodulator requires about 12% of the CPU power of a Pentium 75 CPU per channel. Sound card modem support for 2400 baud AFSK modulation (7.3728MHz crystal) CONFIG_SOUNDMODEM_AFSK2400_7 This option enables the soundmodem driver 2400 baud AFSK modem, compatible to TCM3105 modems (over-)clocked with a 7.3728MHz crystal. Note that the availability of this driver does _not_ imply that I recommend building such links. It is only here since users especially in eastern Europe have asked me to do so. In fact this modulation scheme has many disadvantages, mainly its incompatibility with many transceiver designs and the fact that the TCM3105 (if used) is operated widely outside its specifications. Sound card modem support for 2400 baud AFSK modulation (8MHz crystal) CONFIG_SOUNDMODEM_AFSK2400_8 This option enables the soundmodem driver 2400 baud AFSK modem, compatible to TCM3105 modems (over-)clocked with an 8MHz crystal. Note that the availability of this driver does _not_ imply that I recommend building such links. It is only here since users especially in eastern Europe have asked me to do so. In fact this modulation scheme has many disadvantages, mainly its incompatibility with many transceiver designs and the fact that the TCM3105 (if used) is operated widely outside its specifications. Sound card modem support for 2666 baud AFSK modulation CONFIG_SOUNDMODEM_AFSK2666 This option enables the soundmodem driver 2666 baud AFSK modem. This modem is experimental, and not compatible to anything else I know of. Sound card modem support for 4800 baud 8PSK modulation CONFIG_SOUNDMODEM_PSK4800 This option enables the soundmodem driver 4800 baud 8PSK modem. This modem is experimental, and not compatible to anything else I know of. Sound card modem support for 4800 baud HAPN-1 modulation CONFIG_SOUNDMODEM_HAPN4800 This option enables the soundmodem driver 4800 baud HAPN-1 compatible modem. This modulation seems to be widely used 'down under' and in the Netherlands. Here, nobody uses it, so I could not test if it works. It is compatible to itself, however :-) Sound card modem support for 9600 baud FSK G3RUH modulation CONFIG_SOUNDMODEM_FSK9600 This option enables the soundmodem driver 9600 baud FSK modem, compatible to the G3RUH standard. The demodulator requires about 4% of the CPU power of a Pentium 75 CPU per channel. You can say Y to both 1200 baud AFSK and 9600 baud FSK if you want (but obviously you can only use one protocol at a time, depending on what the other end can understand). CCITT X.25 Packet Layer CONFIG_X25 X.25 is a set of standardized network protocols, similar in scope to frame relay; the one physical line from your box to the X.25 network entry point can carry several logical point-to-point connections (called "virtual circuits") to other computers connected to the X.25 network. Governments, banks, and other organizations tend to use it to connect to each other or to form Wide Area Networks (WANs). Many countries have public X.25 networks. X.25 consists of two protocols: the higher level Packet Layer Protocol (PLP) (say Y here if you want that) and the lower level data link layer protocol LAPB (say Y to "LAPB Data Link Driver" below if you want that). You can read more about X.25 at and . Information about X.25 for Linux is contained in the files and . One connects to an X.25 network either with a dedicated network card using the X.21 protocol (not yet supported by Linux) or one can do X.25 over a standard telephone line using an ordinary modem (say Y to "X.25 async driver" below) or over Ethernet using an ordinary Ethernet card and either the 802.2 LLC protocol (say Y to "802.2 LLC" below) or LAPB over Ethernet (say Y to "LAPB Data Link Driver" and "LAPB over Ethernet driver" below). 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 . The module will be called x25.o. If unsure, say N. LAPB Data Link Driver CONFIG_LAPB Link Access Procedure, Balanced (LAPB) is the data link layer (i.e. the lower) part of the X.25 protocol. It offers a reliable connection service to exchange data frames with one other host, and it is used to transport higher level protocols (mostly X.25 Packet Layer, the higher part of X.25, but others are possible as well). Usually, LAPB is used with specialized X.21 network cards, but Linux currently supports LAPB only over Ethernet connections. If you want to use LAPB connections over Ethernet, say Y here and to "LAPB over Ethernet driver" below. Read for technical details. If you want to compile this driver as a module though ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called lapb.o. If unsure, say N. 802.2 LLC CONFIG_LLC This is a Logical Link Layer protocol used for X.25 connections over Ethernet, using ordinary Ethernet cards. Frame Diverter CONFIG_NET_DIVERT The Frame Diverter allows you to divert packets from the network, that are not aimed at the interface receiving it (in promisc. mode). Typically, a Linux box setup as an Ethernet bridge with the Frames Diverter on, can do some *really* transparent www caching using a Squid proxy for example. This is very useful when you don't want to change your router's config (or if you simply don't have access to it). The other possible usages of diverting Ethernet Frames are numberous: - reroute smtp traffic to another interface - traffic-shape certain network streams - transparently proxy smtp connections - etc... For more informations, please refer to: If unsure, say N. 802.1d Ethernet Bridging CONFIG_BRIDGE If you say Y here, then your Linux box will be able to act as an Ethernet bridge, which means that the different Ethernet segments it is connected to will appear as one Ethernet to the participants. Several such bridges can work together to create even larger networks of Ethernets using the IEEE 802.1 spanning tree algorithm. As this is a standard, Linux bridges will cooperate properly with other third party bridge products. In order to use the Ethernet bridge, you'll need the bridge configuration tools; see for location. Please read the Bridge mini-HOWTO for more information. Note that if your box acts as a bridge, it probably contains several Ethernet devices, but the kernel is not able to recognize more than one at boot time without help; for details read the Ethernet-HOWTO, available from in . If you want to compile this code as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called bridge.o. If unsure, say N. Packet socket CONFIG_PACKET The Packet protocol is used by applications which communicate directly with network devices without an intermediate network protocol implemented in the kernel, e.g. tcpdump. If you want them to work, choose Y. This driver is also available as a module called af_packet.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 ; if you use modprobe or kmod, you may also want to add "alias net-pf-17 af_packet" to /etc/modules.conf. If unsure, say Y. Packet socket: mmapped IO CONFIG_PACKET_MMAP If you say Y here, the Packet protocol driver will use an IO mechanism that results in faster communication. If unsure, say N. Netlink device emulation CONFIG_NETLINK_DEV This option will be removed soon. Any programs that want to use character special nodes like /dev/tap0 or /dev/route (all with major number 36) need this option, and need to be rewritten soon to use the real netlink socket. This is a backward compatibility option, choose Y for now. 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 . The module will be called netlink_dev.o Asynchronous Transfer Mode (ATM) CONFIG_ATM ATM is a high-speed networking technology for Local Area Networks and Wide Area Networks. It uses a fixed packet size and is connection oriented, allowing for the negotiation of minimum bandwidth requirements. In order to participate in an ATM network, your Linux box needs an ATM networking card. If you have that, say Y here and to the driver of your ATM card below. Note that you need a set of user-space programs to actually make use of ATM. See the file for further details. Classical IP over ATM CONFIG_ATM_CLIP Classical IP over ATM for PVCs and SVCs, supporting InARP and ATMARP. If you want to communication with other IP hosts on your ATM network, you will typically either say Y here or to "LAN Emulation (LANE)" below. Do NOT send ICMP if no neighbour CONFIG_ATM_CLIP_NO_ICMP Normally, an "ICMP host unreachable" message is sent if a neighbour cannot be reached because there is no VC to it in the kernel's ATMARP table. This may cause problems when ATMARP table entries are briefly removed during revalidation. If you say Y here, packets to such neighbours are silently discarded instead. IPv6 Enhance for ATM (EXPERIMENTAL) CONFIG_ATM_IPV6 IPv6 support on a PVC link. To install and for usage, please refer usagi/doc/HOWTO/ATM. If unsure, say N. RFC1483/2684 Bridged protocols CONFIG_ATM_BR2684 ATM PVCs can carry ethernet PDUs according to rfc2684 (formerly 1483) This device will act like an ethernet from the kernels point of view, with the traffic being carried by ATM PVCs (currently 1 PVC/device). This is sometimes used over DSL lines. If in doubt, say N. Per-VC IP filter kludge CONFIG_ATM_BR2684_IPFILTER This is an experimental mechanism for users who need to terminating a large number of IP-only vcc's. Do not enable this unless you are sure you know what you are doing. LAN Emulation (LANE) support CONFIG_ATM_LANE LAN Emulation emulates services of existing LANs across an ATM network. Besides operating as a normal ATM end station client, Linux LANE client can also act as an proxy client bridging packets between ELAN and Ethernet segments. You need LANE if you want to try MPOA. Multi-Protocol Over ATM (MPOA) support CONFIG_ATM_MPOA Multi-Protocol Over ATM allows ATM edge devices such as routers, bridges and ATM attached hosts establish direct ATM VCs across subnetwork boundaries. These shortcut connections bypass routers enhancing overall network performance. ATM over TCP CONFIG_ATM_TCP ATM over TCP driver. Useful mainly for development and for experiments. If unsure, say N. Efficient Networks ENI155P CONFIG_ATM_ENI Driver for the Efficient Networks ENI155p series and SMC ATM Power155 155 Mbps ATM adapters. Both, the versions with 512KB and 2MB on-board RAM (Efficient calls them "C" and "S", respectively), and the FPGA and the ASIC Tonga versions of the board are supported. The driver works with MMF (-MF or ...F) and UTP-5 (-U5 or ...D) adapters. This driver is also available as a module. If you want to compile it as a module, say M here and read . The module will be called eni.o. Enable extended debugging CONFIG_ATM_ENI_DEBUG Extended debugging records various events and displays that list when an inconsistency is detected. This mechanism is faster than generally using printks, but still has some impact on performance. Note that extended debugging may create certain race conditions itself. Enable this ONLY if you suspect problems with the driver. Fine-tune burst settings CONFIG_ATM_ENI_TUNE_BURST In order to obtain good throughput, the ENI NIC can transfer multiple words of data per PCI bus access cycle. Such a multi-word transfer is called a burst. The default settings for the burst sizes are suitable for most PCI chipsets. However, in some cases, large bursts may overrun buffers in the PCI chipset and cause data corruption. In such cases, large bursts must be disabled and only (slower) small bursts can be used. The burst sizes can be set independently in the send (TX) and receive (RX) direction. Note that enabling many different burst sizes in the same direction may increase the cost of setting up a transfer such that the resulting throughput is lower than when using only the largest available burst size. Also, sometimes larger bursts lead to lower throughput, e.g. on an Intel 440FX board, a drop from 135 Mbps to 103 Mbps was observed when going from 8W to 16W bursts. Enable 16W TX bursts (discouraged) CONFIG_ATM_ENI_BURST_TX_16W Burst sixteen words at once in the send direction. This may work with recent PCI chipsets, but is known to fail with older chipsets. Enable 8W TX bursts (recommended) CONFIG_ATM_ENI_BURST_TX_8W Burst eight words at once in the send direction. This is the default setting. Enable 4W TX bursts (optional) CONFIG_ATM_ENI_BURST_TX_4W Burst four words at once in the send direction. You may want to try this if you have disabled 8W bursts. Enabling 4W if 8W is also set may or may not improve throughput. Enable 2W TX bursts (optional) CONFIG_ATM_ENI_BURST_TX_2W Burst two words at once in the send direction. You may want to try this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W are also set may or may not improve throughput. Enable 16W RX bursts (discouraged) CONFIG_ATM_ENI_BURST_RX_16W Burst sixteen words at once in the receive direction. This may work with recent PCI chipsets, but is known to fail with older chipsets. Enable 8W RX bursts (discouraged) CONFIG_ATM_ENI_BURST_RX_8W Burst eight words at once in the receive direction. This may work with recent PCI chipsets, but is known to fail with older chipsets, such as the Intel Neptune series. Enable 4W RX bursts (recommended) CONFIG_ATM_ENI_BURST_RX_4W Burst four words at once in the receive direction. This is the default setting. Enabling 4W if 8W is also set may or may not improve throughput. Enable 2W RX bursts (optional) CONFIG_ATM_ENI_BURST_RX_2W Burst two words at once in the receive direction. You may want to try this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W are also set may or may not improve throughput. ZeitNet ZN1221/ZN1225 CONFIG_ATM_ZATM Driver for the ZeitNet ZN1221 (MMF) and ZN1225 (UTP-5) 155 Mbps ATM adapters. This driver is also available as a module. If you want to compile it as a module, say M here and read . The module will be called zatm.o. Enable extended debugging CONFIG_ATM_ZATM_DEBUG Extended debugging records various events and displays that list when an inconsistency is detected. This mechanism is faster than generally using printks, but still has some impact on performance. Note that extended debugging may create certain race conditions itself. Enable this ONLY if you suspect problems with the driver. Fujitsu FireStream (FS50/FS155) CONFIG_ATM_FIRESTREAM Driver for the Fujitsu FireStream 155 (MB86697) and FireStream 50 (MB86695) ATM PCI chips. This driver is also available as a module. If you want to compile it as a module, say M here and read . The module will be called firestream.o. Enable usec resolution timestamps CONFIG_ATM_ZATM_EXACT_TS The uPD98401 SAR chip supports a high-resolution timer (approx. 30 MHz) that is used for very accurate reception timestamps. Because that timer overflows after 140 seconds, and also to avoid timer drift, time measurements need to be periodically synchronized with the normal system time. Enabling this feature will add some general overhead for timer synchronization and also per-packet overhead for time conversion. IDT 77201/11 (NICStAR) (ForeRunnerLE) CONFIG_ATM_NICSTAR The NICStAR chipset family is used in a large number of ATM NICs for 25 and for 155 Mbps, including IDT cards and the Fore ForeRunnerLE series. Say Y if you have one of those. This driver is also available as a module. If you want to compile it as a module, say M here and read . The module will be called nicstar.o. Use suni PHY driver (155Mbps) CONFIG_ATM_NICSTAR_USE_SUNI Support for the S-UNI and compatible PHYsical layer chips. These are found in most 155Mbps NICStAR based ATM cards, namely in the ForeRunner LE155 cards. This driver provides detection of cable~ removal and reinsertion and provides some statistics. This driver doesn't have removal capability when compiled as a module, so if you need that capability don't include S-UNI support (it's not needed to make the card work). Use IDT77015 PHY driver (25Mbps) CONFIG_ATM_NICSTAR_USE_IDT77105 Support for the PHYsical layer chip in ForeRunner LE25 cards. In addition to cable removal/reinsertion detection, this driver allows you to control the loopback mode of the chip via a dedicated IOCTL. This driver is required for proper handling of temporary carrier loss, so if you have a 25Mbps NICStAR based ATM card you must say Y. IDT 77252 (NICStAR II) CONFIG_ATM_IDT77252 Driver for the IDT 77252 ATM PCI chips. This driver is also available as a module. If you want to compile it as a module, say M here and read . The module will be called idt77252.o Enable debugging messages CONFIG_ATM_IDT77252_DEBUG Somewhat useful debugging messages are available. The choice of messages is controlled by a bitmap. This may be specified as a module argument. See the file for the meanings of the bits in the mask. When active, these messages can have a significant impact on the speed of the driver, and the size of your syslog files! When inactive, they will have only a modest impact on performance. Receive ALL cells in raw queue CONFIG_ATM_IDT77252_RCV_ALL Enable receiving of all cells on the ATM link, that do not match an open connection in the raw cell queue of the driver. Useful for debugging or special applications only, so the safe answer is N. Madge Ambassador (Collage PCI 155 Server) CONFIG_ATM_AMBASSADOR This is a driver for ATMizer based ATM card produced by Madge Networks Ltd. Say Y (or M to compile as a module named ambassador.o) here if you have one of these cards. Enable debugging messages CONFIG_ATM_AMBASSADOR_DEBUG Somewhat useful debugging messages are available. The choice of messages is controlled by a bitmap. This may be specified as a module argument (kernel command line argument as well?), changed dynamically using an ioctl (not yet) or changed by sending the string "Dxxxx" to VCI 1023 (where x is a hex digit). See the file for the meanings of the bits in the mask. When active, these messages can have a significant impact on the speed of the driver, and the size of your syslog files! When inactive, they will have only a modest impact on performance. Madge Horizon [Ultra] (Collage PCI 25 and Collage PCI 155 Client) CONFIG_ATM_HORIZON This is a driver for the Horizon chipset ATM adapter cards once produced by Madge Networks Ltd. Say Y (or M to compile as a module named horizon.o) here if you have one of these cards. Enable debugging messages CONFIG_ATM_HORIZON_DEBUG Somewhat useful debugging messages are available. The choice of messages is controlled by a bitmap. This may be specified as a module argument (kernel command line argument as well?), changed dynamically using an ioctl (not yet) or changed by sending the string "Dxxxx" to VCI 1023 (where x is a hex digit). See the file for the meanings of the bits in the mask. When active, these messages can have a significant impact on the speed of the driver, and the size of your syslog files! When inactive, they will have only a modest impact on performance. Interphase ATM PCI x575/x525/x531 CONFIG_ATM_IA This is a driver for the Interphase (i)ChipSAR adapter cards which include a variety of variants in term of the size of the control memory (128K-1KVC, 512K-4KVC), the size of the packet memory (128K, 512K, 1M), and the PHY type (Single/Multi mode OC3, UTP155, UTP25, DS3 and E3). Go to: for more info about the cards. Say Y (or M to compile as a module named iphase.o) here if you have one of these cards. See the file for further details. Enable debugging messages CONFIG_ATM_IA_DEBUG Somewhat useful debugging messages are available. The choice of messages is controlled by a bitmap. This may be specified as a module argument (kernel command line argument as well?), changed dynamically using an ioctl (Get the debug utility, iadbg, from ). See the file for the meanings of the bits in the mask. When active, these messages can have a significant impact on the speed of the driver, and the size of your syslog files! When inactive, they will have only a modest impact on performance. Efficient Networks Speedstream 3010 CONFIG_ATM_LANAI Supports ATM cards based on the Efficient Networks "Lanai" chipset such as the Speedstream 3010 and the ENI-25p. The Speedstream 3060 is currently not supported since we don't have the code to drive the on-board Alcatel DSL chipset (yet). Linux telephony support CONFIG_PHONE Say Y here if you have a telephony card, which for example allows you to use a regular phone for voice-over-IP applications. Note: this has nothing to do with modems. You do not need to say Y here in order to be able to use a modem under Linux. This support is also available as a module. If you want to compile it as a module, say M here and read . The module will be called phonedev.o. Compaq Smart Array support CONFIG_BLK_CPQ_CISS_DA This is the driver for Compaq Smart Array 5xxx controllers. Everyone using these boards should say Y here. See for the current list of boards supported by this driver, and for further information on the use of this driver. 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 . The module will be called cciss.o SCSI tape drive support for Smart Array 5xxx CONFIG_CISS_SCSI_TAPE When enabled (Y), this option allows SCSI tape drives and SCSI medium changers (tape robots) to be accessed via a Compaq 5xxx array controller. (See Documentation/cciss.txt for more details.) "SCSI support" and "SCSI tape support" must also be enabled for this option to work. When this option is disabled (N), the SCSI portion of the driver is not compiled. QuickNet Internet LineJack/PhoneJack support CONFIG_PHONE_IXJ Say M if you have a telephony card manufactured by Quicknet Technologies, Inc. These include the Internet PhoneJACK and Internet LineJACK Telephony Cards. You will get a module called ixj.o. For the ISA versions of these products, you can configure the cards using the isapnp tools (pnpdump/isapnp) or you can use the isapnp support. Please read . For more information on these cards, see Quicknet's web site at: . If you do not have any Quicknet telephony cards, you can safely say N here. QuickNet Internet LineJack/PhoneJack PCMCIA support CONFIG_PHONE_IXJ_PCMCIA Say Y here to configure in PCMCIA service support for the Quicknet cards manufactured by Quicknet Technologies, Inc. This builds an additional support module for the PCMCIA version of the card. FORE Systems 200E-series CONFIG_ATM_FORE200E_MAYBE This is a driver for the FORE Systems 200E-series ATM adapter cards. It simultaneously supports PCA-200E and SBA-200E models on PCI and SBUS hosts. Say Y (or M to compile as a module named fore_200e.o) here if you have one of these ATM adapters. Note that the driver will actually be compiled only if you additionally enable the support for PCA-200E and/or SBA-200E cards. See the file for further details. Enable PCA-200E card support on PCI-based hosts CONFIG_ATM_FORE200E_PCA Say Y here if you want your PCA-200E cards to be probed. Use default PCA-200E firmware CONFIG_ATM_FORE200E_PCA_DEFAULT_FW Use the default PCA-200E firmware data shipped with the driver. Normal users do not have to deal with the firmware stuff, so they should say Y here. Pathname of user-supplied binary firmware CONFIG_ATM_FORE200E_PCA_FW This defines the pathname of an alternative PCA-200E binary firmware image supplied by the user. This pathname may be absolute or relative to the drivers/atm directory. The driver comes with an adequate firmware image, so normal users do not have to supply an alternative one. They just say Y to "Use default PCA-200E firmware" instead. Enable SBA-200E card support on SBUS-based hosts CONFIG_ATM_FORE200E_SBA Say Y here if you want your SBA-200E cards to be probed. Use default SBA-200E firmware CONFIG_ATM_FORE200E_SBA_DEFAULT_FW Use the default SBA-200E firmware data shipped with the driver. Normal users do not have to deal with the firmware stuff, so they should say Y here. Pathname of user-supplied binary firmware CONFIG_ATM_FORE200E_SBA_FW This defines the pathname of an alternative SBA-200E binary firmware image supplied by the user. This pathname may be absolute or relative to the drivers/atm directory. The driver comes with an adequate firmware image, so normal users do not have to supply an alternative one. They just say Y to "Use default SBA-200E firmware", above. Maximum number of tx retries CONFIG_ATM_FORE200E_TX_RETRY Specifies the number of times the driver attempts to transmit a message before giving up, if the transmit queue of the ATM card is transiently saturated. Saturation of the transmit queue may occur only under extreme conditions, e.g. when a fast host continuously submits very small frames (<64 bytes) or raw AAL0 cells (48 bytes) to the ATM adapter. Note that under common conditions, it is unlikely that you encounter a saturation of the transmit queue, so the retry mechanism never comes into play. Debugging level (0-3) CONFIG_ATM_FORE200E_DEBUG Specifies the level of debugging messages issued by the driver. The verbosity of the driver increases with the value of this parameter. When active, these messages can have a significant impact on the performances of the driver, and the size of your syslog files! Keep the debugging level to 0 during normal operations. IP Security Protocol (IPSEC) (EXPERIMENTAL) CONFIG_IPSEC This unit is experimental code. Pick 'y' for static linking, 'm' for module support or 'n' for none. This option adds support for network layer packet encryption and/or authentication with participating hosts. The standards start with: RFCs 2411, 2407 and 2401. Others are mentioned where they refer to specific features below. There are more pending which can be found at: ftp://ftp.ietf.org/internet-drafts/draft-ietf-ipsec-*. A description of each document can also be found at: http://ietf.org/ids.by.wg/ipsec.html. Their charter can be found at: http://www.ietf.org/html.charters/ipsec-charter.html Snapshots and releases of the current work can be found at: http://www.freeswan.org/ IPSEC: IP-in-IP encapsulation CONFIG_IPSEC_IPIP This option provides support for tunnel mode IPSEC. It is recommended to enable this. IPSEC: Authentication Header CONFIG_IPSEC_AH This option provides support for the IPSEC Authentication Header (IP protocol 51) which provides packet layer sender and content authentication. It is recommended to enable this. RFC2402 HMAC-MD5 algorithm CONFIG_IPSEC_AUTH_HMAC_MD5 Provides support for authentication using the HMAC MD5 algorithm with 96 bits of hash used as the authenticator. RFC2403 HMAC-SHA1 algorithm CONFIG_IPSEC_AUTH_HMAC_SHA1 Provides support for Authentication Header using the HMAC SHA1 algorithm with 96 bits of hash used as the authenticator. RFC2404 IPSEC: Encapsulating Security Payload CONFIG_IPSEC_ESP This option provides support for the IPSEC Encapsulation Security Payload (IP protocol 50) which provides packet layer content hiding. It is recommended to enable this. RFC2406 3DES algorithm CONFIG_IPSEC_ENC_3DES Provides support for Encapsulation Security Payload protocol, using the triple DES encryption algorithm. RFC2451 IPSEC Debugging Option CONFIG_IPSEC_DEBUG Enables IPSEC kernel debugging. It is further controlled by the user space utility 'klipsdebug'. PPP over ATM CONFIG_PPPOATM Support PPP (Point to Point Protocol) encapsulated in ATM frames. This implementation does not yet comply with section 8 of RFC2364, which can lead to bad results idf the ATM peer loses state and changes its encapsulation unilaterally. Fusion MPT device support CONFIG_FUSION LSI Logic Fusion(TM) Message Passing Technology (MPT) device support provides high performance SCSI host initiator, and LAN [1] interface services to a host system. The Fusion architecture is capable of duplexing these protocols on high-speed Fibre Channel (up to 2 GHz x 2 ports = 4 GHz) and parallel SCSI (up to Ultra-320) physical medium. [1] LAN is not supported on parallel SCSI medium. These drivers require a Fusion MPT compatible PCI adapter installed in the host system. MPT adapters contain specialized I/O processors to handle I/O workload, and more importantly to offload this work from the host CPU(s). If you have Fusion MPT hardware and want to use it, you can say Y or M here to add MPT (base + ScsiHost) drivers. = build lib (fusion.o), and link [static] into the kernel [2] proper = compiled as [dynamic] modules [3] named: (mptbase.o, mptscsih.o) [2] In order enable capability to boot the linux kernel natively from a Fusion MPT target device, you MUST answer Y here! (currently requires CONFIG_BLK_DEV_SD) [3] This support 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 as modules, say M here and read . If unsure, say N. If you say Y or M here you will get a choice of these additional protocol and support module options: Module Name: Enhanced SCSI error reporting (isense.o) Fusion MPT misc device (ioctl) driver (mptctl.o) Fusion MPT LAN driver (mptlan.o) --- Fusion MPT is trademark of LSI Logic Corporation, and its architecture is based on LSI Logic's Message Passing Interface (MPI) specification. Fusion MPT enhanced SCSI error reporting [optional] module CONFIG_FUSION_ISENSE The isense module (roughly stands for Interpret SENSE data) is completely optional. It simply provides extra English readable strings in SCSI Error Report(s) that might be generated from the Fusion MPT SCSI Host driver, for example when a target device returns a SCSI check condition on a I/O. Without this module loaded you might see: SCSI Error Report =-=-= (ioc0,scsi5:0) SCSI_Status=02h (CHECK_CONDITION) Original_CDB[]: 2A 00 00 00 00 41 00 00 02 00 SenseData[12h]: 70 00 02 00 00 00 00 0A 00 00 00 00 04 02 02 00 00 00 SenseKey=2h (NOT READY); FRU=02h ASC/ASCQ=29h/00h Where otherwise, if this module had been loaded, you would see: SCSI Error Report =-=-= (ioc0,scsi5:0) SCSI_Status=02h (CHECK_CONDITION) Original_CDB[]: 2A 00 00 00 00 41 00 00 02 00 - "WRITE(10)" SenseData[12h]: 70 00 02 00 00 00 00 0A 00 00 00 00 04 02 02 00 00 00 SenseKey=2h (NOT READY); FRU=02h ASC/ASCQ=29h/00h "LOGICAL UNIT NOT READY, INITIALIZING CMD. REQUIRED" Say M for "Enhanced SCSI error reporting" to compile this optional module, creating a driver named: isense.o. NOTE: Support for building this feature into the kernel is not available, due to kernel size considerations. Fusion MPT misc device (ioctl) driver [optional] module CONFIG_FUSION_CTL The Fusion MPT misc device driver provides specialized control of MPT adapters via system ioctl calls. Use of ioctl calls to the MPT driver requires that you create and use a misc device node ala: mknod /dev/mptctl c 10 240 One use of this ioctl interface is to perform an upgrade (reflash) of the MPT adapter firmware. Refer to readme file(s) distributed with the Fusion MPT linux driver for additional details. If enabled by saying M to this, a driver named: mptctl.o will be compiled. If unsure whether you really want or need this, say N. Fusion MPT LAN driver [optional] CONFIG_FUSION_LAN This module supports LAN IP traffic over Fibre Channel port(s) on Fusion MPT compatible hardware (LSIFC9xx chips). The physical interface used is defined in RFC 2625. Please refer to that document for details. Installing this driver requires the knowledge to configure and activate a new network interface, "fc0", using standard Linux tools. If enabled by saying M to this, a driver named: mptlan.o will be compiled. If unsure whether you really want or need this, say N. NOTES: This feature is NOT available nor supported for linux-2.2.x kernels. You must be building a linux-2.3.x or linux-2.4.x kernel in order to configure this option. Support for building this feature into the linux kernel is not yet available. IP Security Protocol (IPSEC) (EXPERIMENTAL) CONFIG_IPSEC This unit is experimental code. Pick 'y' for static linking, 'm' for module support or 'n' for none. This option adds support for network layer packet encryption and/or authentication with participating hosts. The standards start with: RFCs 2411, 2407 and 2401. Others are mentioned where they refer to specific features below. There are more pending which can be found at: ftp://ftp.ietf.org/internet-drafts/draft-ietf-ipsec-*. A description of each document can also be found at: http://ietf.org/ids.by.wg/ipsec.html. Their charter can be found at: http://www.ietf.org/html.charters/ipsec-charter.html Snapshots and releases of the current work can be found at: http://www.freeswan.org/ IPSEC: IP-in-IP encapsulation CONFIG_IPSEC_IPIP This option provides support for tunnel mode IPSEC. It is recommended to enable this. IPSEC: Authentication Header CONFIG_IPSEC_AH This option provides support for the IPSEC Authentication Header (IP protocol 51) which provides packet layer sender and content authentication. It is recommended to enable this. RFC2402 HMAC-MD5 algorithm CONFIG_IPSEC_AUTH_HMAC_MD5 Provides support for authentication using the HMAC MD5 algorithm with 96 bits of hash used as the authenticator. RFC2403 HMAC-SHA1 algorithm CONFIG_IPSEC_AUTH_HMAC_SHA1 Provides support for Authentication Header using the HMAC SHA1 algorithm with 96 bits of hash used as the authenticator. RFC2404 IPSEC: Encapsulating Security Payload CONFIG_IPSEC_ESP This option provides support for the IPSEC Encapsulation Security Payload (IP protocol 50) which provides packet layer content hiding. It is recommended to enable this. RFC2406 3DES algorithm CONFIG_IPSEC_ENC_3DES Provides support for Encapsulation Security Payload protocol, using the triple DES encryption algorithm. RFC2451 IPSEC Debugging Option CONFIG_IPSEC_DEBUG Enables IPSEC kernel debugging. It is further controlled by the user space utility 'klipsdebug'. SCSI support CONFIG_SCSI 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 and . However, do not compile this as a module if your root file system (the one containing the directory /) is located on a SCSI device. SCSI disk support CONFIG_BLK_DEV_SD 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 . 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 and . 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. Maximum number of SCSI disks that can be loaded as modules CONFIG_SD_EXTRA_DEVS 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. Maximum number of SCSI tapes that can be loaded as modules CONFIG_ST_EXTRA_DEVS 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 tapes 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. SCSI tape support CONFIG_CHR_DEV_ST If you want to use a SCSI tape drive under Linux, say Y and read the SCSI-HOWTO, available from , and 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 and . OnStream SC-x0 SCSI tape support CONFIG_CHR_DEV_OSST 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 and in the kernel source. More info on the OnStream driver may be found on 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 and . SCSI CD-ROM support CONFIG_BLK_DEV_SR If you want to use a SCSI CD-ROM under Linux, say Y and read the SCSI-HOWTO and the CD-ROM-HOWTO at . 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 and . Maximum number of CD-ROM devices that can be loaded as modules CONFIG_SR_EXTRA_DEVS 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. Enable vendor-specific extensions (for SCSI CD-ROM) CONFIG_BLK_DEV_SR_VENDOR 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. SCSI generic support CONFIG_CHR_DEV_SG 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 (). For CD writer software look at Cdrtools () and for burning a "disk at once": CDRDAO (). Cdparanoia is a high quality digital reader of audio CDs (). For other devices, it's possible that you'll have to write the driver software yourself. Please read the file 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 and . The module will be called sg.o. If unsure, say N. Probe all LUNs on each SCSI device CONFIG_SCSI_MULTI_LUN 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. Verbose SCSI error reporting (kernel size +=12K) CONFIG_SCSI_CONSTANTS 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. SCSI logging facility CONFIG_SCSI_LOGGING 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: ), 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. SGI WD93C93 SCSI Driver CONFIG_SCSI_SGIWD93 Say Y here to support the on-board WD93C93 SCSI controller found (a) on the Indigo2 and other MIPS-based SGI machines, and (b) on ARCS ARM-based machines. DEC NCR53C94 SCSI Driver CONFIG_SCSI_DECNCR Say Y here to support the NCR53C94 SCSI controller chips on IOASIC based TURBOchannel DECstations and TURBOchannel PMAZ-A cards. AdvanSys SCSI support CONFIG_SCSI_ADVANSYS This is a driver for all SCSI host adapters manufactured by AdvanSys. It is documented in the kernel source in . 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 . The module will be called advansys.o. Adaptec AHA152X/2825 support CONFIG_SCSI_AHA152X This is a driver for the AHA-1510, AHA-1520, AHA-1522, and AHA-2825 SCSI host adapters. It also works for the AVA-1505, but the IRQ etc. must be manually specified in this case. It is explained in section 3.3 of the SCSI-HOWTO, available from . You might also want to read the file . 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 aha152x.o. If you want to compile it as a module, say M here and read . Adaptec AHA1542 support CONFIG_SCSI_AHA1542 This is support for a SCSI host adapter. It is explained in section 3.4 of the SCSI-HOWTO, available from . Note that Trantor was purchased by Adaptec, and some former Trantor products are being sold under the Adaptec name. If it doesn't work out of the box, you may have to change some settings in . 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 . The module will be called aha1542.o. Adaptec AHA1740 support CONFIG_SCSI_AHA1740 This is support for a SCSI host adapter. It is explained in section 3.5 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . 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 aha1740.o. If you want to compile it as a module, say M here and read . Adaptec AIC7xxx support CONFIG_SCSI_AIC7XXX This driver supports all of Adaptec's PCI based SCSI controllers (not the hardware RAID controllers though) as well as the aic7770 based EISA and VLB SCSI controllers (the 274x and 284x series). This is an Adaptec sponsored driver written by Justin Gibbs. It is intended to replace the previous aic7xxx driver maintained by Doug Ledford since Doug is no longer maintaining that driver. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called aic7xxx.o. Adaptec I2O RAID support CONFIG_SCSI_DPT_I2O This driver supports all of Adaptec's I2O based RAID controllers as well as the DPT SmartRaid V cards. This is an Adaptec maintained driver by Deanna Bonds. See . 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 . The module will be called dpt_i2o.o. Default number of TCQ commands per device CONFIG_AIC7XXX_CMDS_PER_DEVICE Specify the number of commands you would like to allocate per SCSI device when Tagged Command Queueing (TCQ) is enabled on that device. This is an upper bound value for the number of tagged transactions to be used for any device. The aic7xxx driver will automatically vary this number based on device behaviour. For devices with a fixed maximum, the driver will eventually lock to this maximum and display a console message indicating this value. Note: Unless you experience some type of device failure, the default value, no enforced limit, should work for you. Default: 253 Delay in seconds after SCSI bus reset CONFIG_AIC7XXX_RESET_DELAY_MS The number of milliseconds to delay after an initial bus reset. The bus settle delay following all error recovery actions is dictated by the SCSI layer and is not affected by this value. Default: 15000 (15 seconds) Build Adapter Firmware with Kernel Build CONFIG_AIC7XXX_BUILD_FIRMWARE This option should only be enabled if you are modifying the firmware source to the aic7xxx driver and wish to have the generated firmware include files updated during a normal kernel build. The assembler for the firmware requires lex and yacc or their equivalents, as well as the db v1 library. You may have to install additional packages or modify the assembler make file or the files it includes if your build environment is different than that of the author. Old Adaptec AIC7xxx support CONFIG_SCSI_AIC7XXX_OLD 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 at a minimum before contacting the maintainer with any questions. The SCSI-HOWTO, available from , 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 . The module will be called aic7xxx_old.o. Enable tagged command queueing (TCQ) by default CONFIG_AIC7XXX_OLD_TCQ_ON_BY_DEFAULT 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 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 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. Default number of TCQ commands per device CONFIG_AIC7XXX_OLD_CMDS_PER_DEVICE 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 Collect statistics to report in /proc CONFIG_AIC7XXX_OLD_PROC_STATS 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. IBM ServeRAID support CONFIG_SCSI_IPS This is support for the IBM ServeRAID hardware RAID controllers. See for more information. If this driver does not work correctly without modification please contact the author by email at ipslinux@us.ibm.com. You can build this driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), but only a single instance may be loaded. If you want to compile it as a module, say M here and read . The module will be called ips.o. BusLogic SCSI support CONFIG_SCSI_BUSLOGIC This is support for BusLogic MultiMaster and FlashPoint SCSI Host Adapters. Consult the SCSI-HOWTO, available from , and the files and for more information. If this driver does not work correctly without modification, please contact the author, Leonard N. Zubkoff, by email to lnz@dandelion.com. You can also build this driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), but only a single instance may be loaded. If you want to compile it as a module, say M here and read . The module will be called BusLogic.o. Omit BusLogic SCSI FlashPoint support CONFIG_SCSI_OMIT_FLASHPOINT This option allows you to omit the FlashPoint support from the BusLogic SCSI driver. The FlashPoint SCCB Manager code is substantial, so users of MultiMaster Host Adapters may wish to omit it. Compaq Fibre Channel 64-bit/66Mhz HBA support CONFIG_SCSI_CPQFCTS Say Y here to compile in support for the Compaq StorageWorks Fibre Channel 64-bit/66Mhz Host Bus Adapter. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called cpqfc.o. DMX3191D SCSI support CONFIG_SCSI_DMX3191D This is support for Domex DMX3191D SCSI Host Adapters. 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 dmx3191d.o. If you want to compile it as a module, say M here and read . DTC3180/3280 SCSI support CONFIG_SCSI_DTC3280 This is support for DTC 3180/3280 SCSI Host Adapters. Please read the SCSI-HOWTO, available from , and the file . 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 dtc.o. If you want to compile it as a module, say M here and read . EATA-DMA [Obsolete] (DPT, NEC, AT&T, SNI, AST, Olivetti, Alphatronix) support CONFIG_SCSI_EATA_DMA This is support for the EATA-DMA protocol compliant SCSI Host Adapters like the SmartCache III/IV, SmartRAID controller families and the DPT PM2011B and PM2012B controllers. Note that this driver is obsolete; if you have one of the above SCSI Host Adapters, you should normally say N here and Y to "EATA ISA/EISA/PCI support", below. Please read the SCSI-HOWTO, available from . 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 eata_dma.o. If you want to compile it as a module, say M here and read . EATA-PIO (old DPT PM2001, PM2012A) support CONFIG_SCSI_EATA_PIO This driver supports all EATA-PIO protocol compliant SCSI Host Adapters like the DPT PM2001 and the PM2012A. EATA-DMA compliant host adapters could also use this driver but are discouraged from doing so, since this driver only supports hard disks and lacks numerous features. You might want to have a look at the SCSI-HOWTO, available from . 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 . The module will be called eata_pio.o. UltraStor 14F/34F support CONFIG_SCSI_U14_34F This is support for the UltraStor 14F and 34F SCSI-2 host adapters. The source at contains some information about this hardware. If the driver doesn't work out of the box, you may have to change some settings in . Read the SCSI-HOWTO, available from . Note that there is also another driver for the same hardware: "UltraStor SCSI support", below. You should say Y to both only if you want 24F support 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 u14-34f.o. If you want to compile it as a module, say M here and read . enable elevator sorting CONFIG_SCSI_U14_34F_LINKED_COMMANDS This option enables elevator sorting for all probed SCSI disks and CD-ROMs. It definitely reduces the average seek distance when doing random seeks, but this does not necessarily result in a noticeable performance improvement: your mileage may vary... The safe answer is N. maximum number of queued commands CONFIG_SCSI_U14_34F_MAX_TAGS This specifies how many SCSI commands can be maximally queued for each probed SCSI device. You should reduce the default value of 8 only if you have disks with buggy or limited tagged command support. Minimum is 2 and maximum is 14. This value is also the window size used by the elevator sorting option above. The effective value used by the driver for each probed SCSI device is reported at boot time. Future Domain 16xx SCSI/AHA-2920A support CONFIG_SCSI_FUTURE_DOMAIN This is support for Future Domain's 16-bit SCSI host adapters (TMC-1660/1680, TMC-1650/1670, TMC-3260, TMC-1610M/MER/MEX) and other adapters based on the Future Domain chipsets (Quantum ISA-200S, ISA-250MG; Adaptec AHA-2920A; and at least one IBM board). It is explained in section 3.7 of the SCSI-HOWTO, available from . NOTE: Newer Adaptec AHA-2920C boards use the Adaptec AIC-7850 chip and should use the aic7xxx driver ("Adaptec AIC7xxx chipset SCSI controller support"). This Future Domain driver works with the older Adaptec AHA-2920A boards with a Future Domain chip on them. 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 fdomain.o. If you want to compile it as a module, say M here and read . Future Domain MCS-600/700 SCSI support CONFIG_SCSI_FD_MCS This is support for Future Domain MCS 600/700 MCA SCSI adapters. Some PS/2 computers are equipped with IBM Fast SCSI Adapter/A which is identical to the MCS 700 and hence also supported by this driver. This driver also supports the Reply SB16/SCSI card (the SCSI part). It supports multiple adapters in the same system. 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 fd_mcs.o. If you want to compile it as a module, say M here and read . Generic NCR5380/53c400 SCSI support CONFIG_SCSI_GENERIC_NCR5380 This is the generic NCR family of SCSI controllers, not to be confused with the NCR 53c7 or 8xx controllers. It is explained in section 3.8 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . 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 g_NCR5380.o. If you want to compile it as a module, say M here and read . Enable NCR53c400 extensions CONFIG_SCSI_GENERIC_NCR53C400 This enables certain optimizations for the NCR53c400 SCSI cards. You might as well try it out. Note that this driver will only probe for the Trantor T130B in its default configuration; you might have to pass a command line option to the kernel at boot time if it does not detect your card. See the file for details. # Choice: ncr5380 NCR5380/53c400 mapping method (use Port for T130B) CONFIG_SCSI_G_NCR5380_PORT The NCR5380 and NCR53c400 SCSI controllers come in two varieties: port or memory mapped. You should know what you have. The most common card, Trantor T130B, uses port mapped mode. NCR Dual 700 MCA SCSI support CONFIG_SCSI_NCR_D700 This is a driver for the MicroChannel Dual 700 card produced by NCR and commonly used in 345x/35xx/4100 class machines. It always tries to negotiate sync and uses tag command queueing. Unless you have an NCR manufactured machine, the chances are that you do not have this SCSI card, so say N. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called NCR_D700.o. HP LASI SCSI support for 53c700/710 CONFIG_SCSI_LASI700 This is a driver for the lasi baseboard in some parisc machines which is based on the 53c700 chip. Will also support LASI subsystems based on the 710 chip using 700 emulation mode. Unless you know you have a 53c700 or 53c710 based lasi, say N here NCR53c7,8xx SCSI support CONFIG_SCSI_NCR53C7xx This is a driver for the 53c7 and 8xx NCR family of SCSI controllers, not to be confused with the NCR 5380 controllers. It is explained in section 3.8 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . Please read for the available boot time command line options. Note: there is another driver for the 53c8xx family of controllers ("NCR53C8XX SCSI support" below). 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, it's better to use the other driver. 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 53c7,8xx.o. If you want to compile it as a module, say M here and read . Always negotiate synchronous transfers CONFIG_SCSI_NCR53C7xx_sync In general, this is good; however, it is a bit dangerous since there are some broken SCSI devices out there. Take your chances. Safe bet is N. Allow FAST-SCSI [10MHz] CONFIG_SCSI_NCR53C7xx_FAST This will enable 10MHz FAST-SCSI transfers with your host adapter. Some systems have problems with that speed, so it's safest to say N here. Allow DISCONNECT CONFIG_SCSI_NCR53C7xx_DISCONNECT This enables the disconnect/reconnect feature of the NCR SCSI controller. When you say Y here, a slow SCSI device will not lock the SCSI bus while processing a request, allowing simultaneous use of e.g. a SCSI hard disk and SCSI tape or CD-ROM drive, and providing much better performance when using slow and fast SCSI devices at the same time. Some devices, however, do not operate properly with this option enabled, and will cause your SCSI system to hang, which might cause a system crash. The safe answer therefore is to say N. SYM53C8XX Version 2 SCSI support CONFIG_SCSI_SYM53C8XX_2 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 for more information. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called sym53c8xx.o. PCI DMA addressing mode CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE 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. use normal IO CONFIG_SCSI_SYM53C8XX_IOMAPPED If you say Y here, the driver will preferently use normal IO rather than memory mapped IO. maximum number of queued commands CONFIG_SCSI_SYM53C8XX_MAX_TAGS 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. default tagged command queue depth CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS 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. NCR53C8XX SCSI support CONFIG_SCSI_NCR53C8XX 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 for more information. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ncr53c8xx.o. SYM53C8XX Version 1 SCSI support CONFIG_SCSI_SYM53C8XX 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 for more information. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called sym53c8xx.o. Synchronous transfer frequency in MHz CONFIG_SCSI_NCR53C8XX_SYNC 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. Use normal IO CONFIG_SCSI_NCR53C8XX_IOMAPPED 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. Not allow targets to disconnect CONFIG_SCSI_NCR53C8XX_NO_DISCONNECT 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. Default tagged command queue depth CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS "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. Maximum number of queued commands CONFIG_SCSI_NCR53C8XX_MAX_TAGS 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. Assume boards are SYMBIOS compatible CONFIG_SCSI_NCR53C8XX_SYMBIOS_COMPAT 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. Enable traffic profiling CONFIG_SCSI_NCR53C8XX_PROFILE 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. Include support for the NCR PQS/PDS SCSI card CONFIG_SCSI_NCR53C8XX_PQS_PDS 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. IBMMCA SCSI support CONFIG_SCSI_IBMMCA This is support for the IBM SCSI adapter found in many of the PS/2 series computers. These machines have an MCA bus, so you need to answer Y to "MCA support" as well and read . If the adapter isn't found during boot (a common problem for models 56, 57, 76, and 77) you'll need to use the 'ibmmcascsi=' kernel option, where is the id of the SCSI subsystem (usually 7, but if that doesn't work check your reference diskette). Owners of model 95 with a LED-matrix-display can in addition activate some activity info like under OS/2, but more informative, by setting 'ibmmcascsi=display' as an additional kernel parameter. Try "man bootparam" or see the documentation of your boot loader about how to pass options to the kernel. 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 . The module will be called ibmmca.o. Standard SCSI-order CONFIG_IBMMCA_SCSI_ORDER_STANDARD In the PC-world and in most modern SCSI-BIOS-setups, SCSI-hard disks are assigned to the drive letters, starting with the lowest SCSI-id (physical number -- pun) to be drive C:, as seen from DOS and similar operating systems. When looking into papers describing the ANSI-SCSI-standard, this assignment of drives appears to be wrong. The SCSI-standard follows a hardware-hierarchy which says that id 7 has the highest priority and id 0 the lowest. Therefore, the host adapters are still today everywhere placed as SCSI-id 7 by default. In the SCSI-standard, the drive letters express the priority of the disk. C: should be the hard disk, or a partition on it, with the highest priority. This must therefore be the disk with the highest SCSI-id (e.g. 6) and not the one with the lowest! IBM-BIOS kept the original definition of the SCSI-standard as also industrial- and process-control-machines, like VME-CPUs running under realtime-OSes (e.g. LynxOS, OS9) do. If you like to run Linux on your MCA-machine with the same assignment of hard disks as seen from e.g. DOS or OS/2 on your machine, which is in addition conformant to the SCSI-standard, you must say Y here. This is also necessary for MCA-Linux users who want to keep downward compatibility to older releases of the IBM-MCA-SCSI-driver (older than driver-release 2.00 and older than June 1997). If you like to have the lowest SCSI-id assigned as drive C:, as modern SCSI-BIOSes do, which does not conform to the standard, but is widespread and common in the PC-world of today, you must say N here. If unsure, say Y. Reset SCSI-devices at boot time CONFIG_IBMMCA_SCSI_DEV_RESET By default, SCSI-devices are reset when the machine is powered on. However, some devices exist, like special-control-devices, SCSI-CNC-machines, SCSI-printer or scanners of older type, that do not reset when switched on. If you say Y here, each device connected to your SCSI-bus will be issued a reset-command after it has been probed, while the kernel is booting. This may cause problems with more modern devices, like hard disks, which do not appreciate these reset commands, and can cause your system to hang. So say Y only if you know that one of your older devices needs it; N is the safe answer. NCR MCA 53C9x SCSI support CONFIG_SCSI_MCA_53C9X Some MicroChannel machines, notably the NCR 35xx line, use a SCSI controller based on the NCR 53C94. This driver will allow use of the controller on the 3550, and very possibly others. If you want to compile this as a module (= code which can be inserted and removed from the running kernel whenever you want), say M here and read . The module will be called mca_53c9x.o. Always IN2000 SCSI support CONFIG_SCSI_IN2000 This is support for an ISA bus SCSI host adapter. You'll find more information in . If it doesn't work out of the box, you may have to change the jumpers for IRQ or address selection. 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 . The module will be called in2000.o. Initio 91XXU(W) SCSI support CONFIG_SCSI_INITIO This is support for the Initio 91XXU(W) SCSI host adapter. Please read the SCSI-HOWTO, available from . 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 . The module will be called initio.o. PAS16 SCSI support CONFIG_SCSI_PAS16 This is support for a SCSI host adapter. It is explained in section 3.10 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . 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 pas16.o. If you want to compile it as a module, say M here and read . Initio INI-A100U2W SCSI support CONFIG_SCSI_INIA100 This is support for the Initio INI-A100U2W SCSI host adapter. Please read the SCSI-HOWTO, available from . 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 . The module will be called a100u2w.o. PCI2000 support CONFIG_SCSI_PCI2000 This is support for the PCI2000I EIDE interface card which acts as a SCSI host adapter. Please read the SCSI-HOWTO, available from . This driver is also available as a module called pci2000.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 . PCI2220i support CONFIG_SCSI_PCI2220I This is support for the PCI2220i EIDE interface card which acts as a SCSI host adapter. Please read the SCSI-HOWTO, available from . This driver is also available as a module called pci2220i.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 . PSI240i support CONFIG_SCSI_PSI240I This is support for the PSI240i EIDE interface card which acts as a SCSI host adapter. Please read the SCSI-HOWTO, available from . This driver is also available as a module called psi240i.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 . Qlogic FAS SCSI support CONFIG_SCSI_QLOGIC_FAS This is a driver for the ISA, VLB, and PCMCIA versions of the Qlogic FastSCSI! cards as well as any other card based on the FASXX chip (including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards). This driver does NOT support the PCI versions of these cards. The PCI versions are supported by the Qlogic ISP driver ("Qlogic ISP SCSI support"), below. Information about this driver is contained in . You should also read the SCSI-HOWTO, available from . 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 qlogicfas.o. If you want to compile it as a module, say M here and read . Qlogic ISP SCSI support CONFIG_SCSI_QLOGIC_ISP 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 . You should also read the SCSI-HOWTO, available from . 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 . Qlogic ISP FC SCSI support CONFIG_SCSI_QLOGIC_FC 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 . Include loadable firmware in driver CONFIG_SCSI_QLOGIC_FC_FIRMWARE Say Y to include ISP2100 Fabric Initiator/Target Firmware, with expanded LUN addressing and FcTape (FCP-2) support, in the Qlogic QLA 1280 driver. This is required on some platforms. Qlogic QLA 1280 SCSI support CONFIG_SCSI_QLOGIC_1280 Say Y if you have a QLogic ISP1x80/1x160 SCSI 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 qla1280.o. If you want to compile it as a module, say M here and read . Seagate ST-02 and Future Domain TMC-8xx SCSI support CONFIG_SCSI_SEAGATE These are 8-bit SCSI controllers; the ST-01 is also supported by this driver. It is explained in section 3.9 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . 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 seagate.o. If you want to compile it as a module, say M here and read . Trantor T128/T128F/T228 SCSI support CONFIG_SCSI_T128 This is support for a SCSI host adapter. It is explained in section 3.11 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . Note that Trantor was purchased by Adaptec, and some former Trantor products are being sold under the Adaptec name. 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 t128.o. If you want to compile it as a module, say M here and read . UltraStor SCSI support CONFIG_SCSI_ULTRASTOR This is support for the UltraStor 14F, 24F and 34F SCSI-2 host adapter family. This driver is explained in section 3.12 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . Note that there is also another driver for the same hardware: "UltraStor 14F/34F support", above. 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 . The module will be called ultrastor.o. 7000FASST SCSI support CONFIG_SCSI_7000FASST This driver supports the Western Digital 7000 SCSI host adapter family. Some information is in the source: . 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 wd7000.o. If you want to compile it as a module, say M here and read . ACARD SCSI support CONFIG_SCSI_ACARD This driver supports the ACARD 870U/W SCSI 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 atp870u.o. If you want to compile it as a module, say M here and read . EATA ISA/EISA/PCI (DPT and generic EATA/DMA-compliant boards) support CONFIG_SCSI_EATA This driver supports all EATA/DMA-compliant SCSI host adapters. DPT ISA and all EISA I/O addresses are probed looking for the "EATA" signature. If you chose "BIOS" at the question "PCI access mode", the addresses of all the PCI SCSI controllers reported by the PCI subsystem are probed as well. You want to read the start of and the SCSI-HOWTO, available from . Note that there is also another driver for the same hardware available: "EATA-DMA [Obsolete] (DPT, NEC, AT&T, SNI, AST, Olivetti, Alphatronix) support". You should say Y to only one of them. 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 . The module will be called eata.o. enable tagged command queueing CONFIG_SCSI_EATA_TAGGED_QUEUE This 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. Most EATA adapters negotiate this feature automatically with the device, even if your answer is N. The safe answer is N. enable elevator sorting CONFIG_SCSI_EATA_LINKED_COMMANDS This option enables elevator sorting for all probed SCSI disks and CD-ROMs. It definitely reduces the average seek distance when doing random seeks, but this does not necessarily result in a noticeable performance improvement: your mileage may vary... The safe answer is N. maximum number of queued commands CONFIG_SCSI_EATA_MAX_TAGS This specifies how many SCSI commands can be maximally queued for each probed SCSI device. You should reduce the default value of 16 only if you have disks with buggy or limited tagged command support. Minimum is 2 and maximum is 62. This value is also the window size used by the elevator sorting option above. The effective value used by the driver for each probed SCSI device is reported at boot time. NCR53c406a SCSI support CONFIG_SCSI_NCR53C406A This is support for the NCR53c406a SCSI host adapter. For user configurable parameters, check out in the kernel source. Also read the SCSI-HOWTO, available from . 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 . The module will be called NCR53c406.o. Symbios 53c416 SCSI support CONFIG_SCSI_SYM53C416 This is support for the sym53c416 SCSI host adapter, the SCSI adapter that comes with some HP scanners. This driver requires that the sym53c416 is configured first using some sort of PnP configuration program (e.g. isapnp) or by a PnP aware BIOS. If you are using isapnp then you need to compile this driver as a module and then load it using insmod after isapnp has run. The parameters of the configured card(s) should be passed to the driver. The format is: insmod sym53c416 sym53c416=, [sym53c416_1=,] There is support for up to four adapters. 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 . The module will be called sym53c416.o. Simple 53c710 SCSI support (Compaq, NCR machines) CONFIG_SCSI_SIM710 This is a simple driver for NCR53c710 based SCSI host adapters. More complex drivers for this chip are available ("NCR53c7,8xx SCSI support", above), but they require that the scsi chip be able to do DMA block moves between memory and on-chip registers, which can cause problems under certain conditions. This driver is designed to avoid these problems and is intended to work with any Intel machines using 53c710 chips, including various Compaq and NCR machines. Please read the comments at the top of the file for more information. 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 . The module will be called sim710.o. Tekram DC390(T) and Am53/79C974 SCSI support CONFIG_SCSI_DC390T This driver supports PCI SCSI host adapters based on the Am53C974A chip, e.g. Tekram DC390(T), DawiControl 2974 and some onboard PCscsi/PCnet (Am53/79C974) solutions. Documentation can be found in . Note that this driver does NOT support Tekram DC390W/U/F, which are based on NCR/Symbios chips. Use "NCR53C8XX SCSI support" for those. Also note that there is another generic Am53C974 driver, "AM53/79C974 PCI SCSI support" below. You can pick either one. 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 . The module will be called tmscsim.o. Omit support for other Am53/79C974 based SCSI adapters CONFIG_SCSI_DC390T_NOGENSUPP If you say N here, the DC390(T) SCSI driver relies on the DC390 EEPROM to get initial values for its settings, such as speed, termination, etc. If it can't find this EEPROM, it will use defaults or the user supplied boot/module parameters. For details on driver configuration see . If you say Y here and if no EEPROM is found, the driver gives up and thus only supports Tekram DC390(T) adapters. This can be useful if you have a DC390(T) and another Am53C974 based adapter, which, for some reason, you want to drive with the other AM53C974 driver. If unsure, say N. AM53/79C974 PCI SCSI support CONFIG_SCSI_AM53C974 This is support for the AM53/79C974 SCSI host adapters. Please read for details. Also, the SCSI-HOWTO, available from , is for you. Note that there is another driver for AM53C974 based adapters: "Tekram DC390(T) and Am53/79C974 (PCscsi) SCSI support", above. You can pick either one. 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 . The module will be called AM53C974.o. AMI MegaRAID support CONFIG_SCSI_MEGARAID This driver supports the AMI MegaRAID 418, 428, 438, 466, 762, 490 and 467 SCSI host adapters. 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 . The module will be called megaraid.o. Intel/ICP (former GDT SCSI Disk Array) RAID Controller support CONFIG_SCSI_GDTH Formerly called GDT SCSI Disk Array Controller Support. This is a driver for RAID/SCSI Disk Array Controllers (EISA/ISA/PCI) manufactured by Intel/ICP vortex (an Intel Company). It is documented in the kernel source in and If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called gdth.o. IOMEGA parallel port (ppa - older drives) CONFIG_SCSI_PPA This driver supports older versions of IOMEGA's parallel port ZIP drive (a 100 MB removable media device). Note that you can say N here if you have the SCSI version of the ZIP drive: it will be supported automatically if you said Y to the generic "SCSI disk support", above. If you have the ZIP Plus drive or a more recent parallel port ZIP drive (if the supplied cable with the drive is labeled "AutoDetect") then you should say N here and Y to "IOMEGA parallel port (imm - newer drives)", below. For more information about this driver and how to use it you should read the file . You should also read the SCSI-HOWTO, which is available from . If you use this driver, you will still be able to use the parallel port for other tasks, such as a printer; it is safe to compile both drivers into the kernel. This driver is also available as a module which can be inserted in and removed from the running kernel whenever you want. To compile this driver as a module, say M here and read . The module will be called ppa.o. IOMEGA parallel port (imm - newer drives) CONFIG_SCSI_IMM This driver supports newer versions of IOMEGA's parallel port ZIP drive (a 100 MB removable media device). Note that you can say N here if you have the SCSI version of the ZIP drive: it will be supported automatically if you said Y to the generic "SCSI disk support", above. If you have the ZIP Plus drive or a more recent parallel port ZIP drive (if the supplied cable with the drive is labeled "AutoDetect") then you should say Y here; if you have an older ZIP drive, say N here and Y to "IOMEGA Parallel Port (ppa - older drives)", above. For more information about this driver and how to use it you should read the file . You should also read the SCSI-HOWTO, which is available from . If you use this driver, you will still be able to use the parallel port for other tasks, such as a printer; it is safe to compile both drivers into the kernel. This driver is also available as a module which can be inserted in and removed from the running kernel whenever you want. To compile this driver as a module, say M here and read . The module will be called imm.o. Force the Iomega ZIP drivers to use EPP-16 CONFIG_SCSI_IZIP_EPP16 EPP (Enhanced Parallel Port) is a standard for parallel ports which allows them to act as expansion buses that can handle up to 64 peripheral devices. Some parallel port chipsets are slower than their motherboard, and so we have to control the state of the chipset's FIFO queue every now and then to avoid data loss. This will be done if you say Y here. Generally, saying Y is the safe option and slows things down a bit. Assume slow parallel port control register CONFIG_SCSI_IZIP_SLOW_CTR Some parallel ports are known to have excessive delays between changing the parallel port control register and good data being available on the parallel port data/status register. This option forces a small delay (1.0 usec to be exact) after changing the control register to let things settle out. Enabling this option may result in a big drop in performance but some very old parallel ports (found in 386 vintage machines) will not work properly. Generally, saying N is fine. SCSI debugging host simulator CONFIG_SCSI_DEBUG This is a host adapter simulator that can be programmed to simulate a large number of conditions that could occur on a real bus. The advantage is that many hard to reproduce problems can be tested in a controlled environment where there is reduced risk of losing important data. This is primarily of use to people trying to debug the middle and upper layers of the SCSI subsystem. If unsure, say N. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called scsi_debug.o. Fibre Channel and FC4 SCSI support CONFIG_FC4 Fibre Channel is a high speed serial protocol mainly used to connect large storage devices to the computer; it is compatible with and intended to replace SCSI. This is an experimental support for storage arrays connected to your computer using optical fibre cables and the "X3.269-199X Fibre Channel Protocol for SCSI" specification. If you want to use this, you need to say Y here and to "SCSI support" as well as to the drivers for the storage array itself and for the interface adapter such as SOC or SOC+. This subsystem could even serve for IP networking, with some code extensions. If unsure, say N. Sun SOC/Sbus CONFIG_FC4_SOC Serial Optical Channel is an interface card with one or two Fibre Optic ports, each of which can be connected to a disk array. Note that if you have older firmware in the card, you'll need the microcode from the Solaris driver to make it work. This support is also available as a module called soc.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 . Sun SOC+ (aka SOCAL) CONFIG_FC4_SOCAL Serial Optical Channel Plus is an interface card with up to two Fibre Optic ports. This card supports FC Arbitrated Loop (usually A5000 or internal FC disks in E[3-6]000 machines through the Interface Board). You'll probably need the microcode from the Solaris driver to make it work. This support is also available as a module called socal.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 . SparcSTORAGE Array 100 and 200 series CONFIG_SCSI_PLUTO If you never bought a disk array made by Sun, go with N. This support is also available as a module called pluto.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 . Sun Enterprise Network Array (A5000 and EX500) CONFIG_SCSI_FCAL This driver drives FC-AL disks connected through a Fibre Channel card using the drivers/fc4 layer (currently only SOCAL). The most common is either A5000 array or internal disks in E[3-6]000 machines. This support is also available as a module called fcal.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 . If unsure, say N. Acorn SCSI card (aka30) support CONFIG_SCSI_ACORNSCSI_3 This enables support for the Acorn SCSI card (aka30). If you have an Acorn system with one of these, say Y. If unsure, say N. Support SCSI 2 Tagged queueing CONFIG_SCSI_ACORNSCSI_TAGGED_QUEUE Say Y here to enable tagged queuing support on the Acorn SCSI card. This 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. Some SCSI devices don't implement this properly, so the safe answer is N. Support SCSI 2 Synchronous Transfers CONFIG_SCSI_ACORNSCSI_SYNC Say Y here to enable synchronous transfer negotiation with all targets on the Acorn SCSI card. In general, this improves performance; however some SCSI devices don't implement it properly, so the safe answer is N. ARXE SCSI support CONFIG_SCSI_ARXESCSI Around 1991, Arxe Systems Limited released a high density floppy disc interface for the Acorn Archimedes range, to allow the use of HD discs from the then new A5000 on earlier models. This interface was either sold on its own or with an integral SCSI controller. Technical details on this NCR53c94-based device are available at Say Y here to compile in support for the SCSI controller. Oak SCSI support CONFIG_SCSI_OAK1 This enables support for the Oak SCSI card. If you have an Acorn system with one of these, say Y. If unsure, say N. Cumana SCSI I support CONFIG_SCSI_CUMANA_1 This enables support for the Cumana SCSI I card. If you have an Acorn system with one of these, say Y. If unsure, say N. Cumana SCSI II support CONFIG_SCSI_CUMANA_2 This enables support for the Cumana SCSI II card. If you have an Acorn system with one of these, say Y. If unsure, say N. EcoSCSI support CONFIG_SCSI_ECOSCSI This enables support for the EcoSCSI card -- a small card that sits in the Econet socket. If you have an Acorn system with one of these, say Y. If unsure, say N. EESOX SCSI support CONFIG_SCSI_EESOXSCSI This enables support for the EESOX SCSI card. If you have an Acorn system with one of these, say Y, otherwise say N. PowerTec SCSI support CONFIG_SCSI_POWERTECSCSI This enables support for the Powertec SCSI card on Acorn systems. If you have one of these, say Y. If unsure, say N. IEEE 1394 (FireWire) support CONFIG_IEEE1394 IEEE 1394 describes a high performance serial bus, which is also known as FireWire(tm) or i.Link(tm) and is used for connecting all sorts of devices (most notably digital video cameras) to your computer. If you have FireWire hardware and want to use it, say Y here. This is the core support only, you will also need to select a driver for your IEEE 1394 adapter. 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 . The module will be called ieee1394.o. Texas Instruments PCILynx support CONFIG_IEEE1394_PCILYNX Say Y here if you have an IEEE-1394 controller with the Texas Instruments PCILynx chip. Note: this driver is written for revision 2 of this chip and may not work with revision 0. 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 . The module will be called pcilynx.o. Use local RAM on PCILynx board CONFIG_IEEE1394_PCILYNX_LOCALRAM This option makes the PCILynx driver use local RAM available on some PCILynx setups for Packet Control Lists. Local RAM is random access memory which resides on the PCILynx board as opposed to on your computer's motherboard. Local RAM may speed up command processing because no PCI transfers are necessary during use of the Packet Control Lists. Note that there are no known PCILynx systems providing local RAM except for the evaluation boards by Texas Instruments and that the PCILynx does not reliably report missing RAM. This means that it is dangerous to say Y here if you are not absolutely sure that your board provides 64KB of local RAM. If unsure, say N. Support for non-IEEE1394 local ports CONFIG_IEEE1394_PCILYNX_PORTS This option enables driver code to access the RAM, ROM and AUX ports of the PCILynx through character devices in /dev. If you don't know what this is about then you won't need it. If unsure, say N. #Adaptec AIC-5800 IEEE 1394 support #CONFIG_IEEE1394_AIC5800 # Say Y here if you have a IEEE 1394 controller using the Adaptec # AIC-5800 chip. All Adaptec host adapters (89xx series) use this # chip, as well as miro's DV boards. # # 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 . The module # will be called aic5800.o. # OHCI-1394 (Open Host Controller Interface) support CONFIG_IEEE1394_OHCI1394 Enable this driver if you have an IEEE 1394 controller based on the OHCI-1394 specification. The current driver is only tested with OHCI chipsets made by Texas Instruments and NEC. Most third-party vendors use one of these chipsets. It should work with any OHCI-1394 compliant card, however. 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 . The module will be called ohci1394.o. OHCI-1394 Video support CONFIG_IEEE1394_VIDEO1394 This option enables video device usage for OHCI-1394 cards. Enable this option only if you have an IEEE 1394 video device connected to an OHCI-1394 card. SBP-2 support (Harddisks etc.) CONFIG_IEEE1394_SBP2 This option enables you to use SBP-2 devices connected to your IEEE 1394 bus. SBP-2 devices include harddrives and DVD devices. Raw IEEE 1394 I/O support CONFIG_IEEE1394_RAWIO Say Y here if you want support for the raw device. This is generally a good idea, so you should say Y here. The raw device enables direct communication of user programs with the IEEE 1394 bus and thus with the attached peripherals. 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 . The module will be called raw1394.o. Excessive debugging output CONFIG_IEEE1394_VERBOSEDEBUG If you say Y here, you will get very verbose debugging logs from the subsystem which includes a dump of the header of every sent and received packet. This can amount to a high amount of data collected in a very short time which is usually also saved to disk by the system logging daemons. Say Y if you really want or need the debugging output, everyone else says N. Network device support CONFIG_NETDEVICES 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 ) 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 ). 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 . If unsure, say Y. Dummy net driver support CONFIG_DUMMY 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 . 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 . 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. Bonding driver support CONFIG_BONDING 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 . The module will be called bonding.o. SLIP (serial line) support CONFIG_SLIP 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 ) 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 , 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 ). 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 as well as . The module will be called slip.o. CSLIP compressed headers CONFIG_SLIP_COMPRESSED 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 ) 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 , explains how to configure CSLIP. This won't enlarge your kernel. Keepalive and linefill CONFIG_SLIP_SMART Adds additional capabilities to the SLIP driver to support the RELCOM line fill and keepalive monitoring. Ideal on poor quality analogue lines. Six bit SLIP encapsulation CONFIG_SLIP_MODE_SLIP6 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. PPP (point-to-point protocol) support CONFIG_PPP 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 . Make sure that you have the version of pppd recommended in . 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 as well as . PPP multilink support CONFIG_PPP_MULTILINK PPP multilink is a protocol (defined in RFC 1990) which allows you to combine several (logical or physical) lines into one logical PPP connection, so that you can utilize your full bandwidth. This has to be supported at the other end as well and you need a version of the pppd daemon which understands the multilink protocol. If unsure, say N. PPP filtering CONFIG_PPP_FILTER Say Y here if you want to be able to filter the packets passing over PPP interfaces. This allows you to control which packets count as activity (i.e. which packets will reset the idle timer or bring up a demand-dialled link) and which packets are to be dropped entirely. You need to say Y here if you wish to use the pass-filter and active-filter options to pppd. If unsure, say N. PPP support for async serial ports CONFIG_PPP_ASYNC 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. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ppp_async.o. If unsure, say Y. PPP support for sync tty ports CONFIG_PPP_SYNC_TTY 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. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ppp_synctty.o. PPP Deflate compression CONFIG_PPP_DEFLATE 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. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ppp_deflate.o. PPP BSD-Compress compression CONFIG_PPP_BSDCOMP 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. PPP over Ethernet CONFIG_PPPOE Support for PPP over Ethernet. This driver requires the current pppd from the "ppp" CVS repository on cvs.samba.org. The required support will be present in the next ppp release (2.4.2). Wireless LAN (non-hamradio) CONFIG_NET_RADIO Support for wireless LANs and everything having to do with radio, but not with amateur radio or FM broadcasting. Saying Y here also enables the Wireless Extensions (creates /proc/net/wireless and enables ifconfig access). The Wireless Extension is a generic API allowing a driver to expose to the user space configuration and statistics specific to common Wireless LANs. The beauty of it is that a single set of tool can support all the variations of Wireless LANs, regardless of their type (as long as the driver supports Wireless Extension). Another advantage is that these parameters may be changed on the fly without restarting the driver (or Linux). If you wish to use Wireless Extensions with wireless PCMCIA (PC-) cards, you need to say Y here; you can fetch the tools from . Some user-level drivers for scarab devices which don't require special kernel support are available from . STRIP (Metricom Starmode radio IP) CONFIG_STRIP Say Y if you have a Metricom radio and intend to use Starmode Radio IP. STRIP is a radio protocol developed for the MosquitoNet project (on the WWW at ) to send Internet traffic using Metricom radios. Metricom radios are small, battery powered, 100kbit/sec packet radio transceivers, about the size and weight of a cellular telephone. (You may also have heard them called "Metricom modems" but we avoid the term "modem" because it misleads many people into thinking that you can plug a Metricom modem into a phone line and use it as a modem.) You can use STRIP on any Linux machine with a serial port, although it is obviously most useful for people with laptop computers. If you think you might get a Metricom radio in the future, there is no harm in saying Y to STRIP now, except that it makes the kernel a bit bigger. You can also 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 . The module will be called strip.o. AT&T WaveLAN & DEC RoamAbout DS support CONFIG_WAVELAN The Lucent WaveLAN (formerly NCR and AT&T; or DEC RoamAbout DS) is a Radio LAN (wireless Ethernet-like Local Area Network) using the radio frequencies 900 MHz and 2.4 GHz. This driver support the ISA version of the WaveLAN card. A separate driver for the PCMCIA (PC-card) hardware is available in David Hinds' pcmcia-cs package (see the file for location). If you want to use an ISA WaveLAN card under Linux, say Y and read the Ethernet-HOWTO, available from . Some more specific information is contained in and in the source code . You will also need the wireless tools package available from . Please read the man pages contained therein. 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 wavelan.o. If you want to compile it as a module, say M here and read as well as . Aironet Arlan 655 & IC2200 DS support CONFIG_ARLAN Aironet makes Arlan, a class of wireless LAN adapters. These use the www.Telxon.com chip, which is also used on several similar cards. This driver is tested on the 655 and IC2200 series cards. Look at for the latest information. The driver is built as two modules, arlan and arlan-proc. The latter is the /proc interface and is not needed most of time. On some computers the card ends up in non-valid state after some time. Use a ping-reset script to clear it. Aironet 4500/4800 series adapters CONFIG_AIRONET4500 www.aironet.com (recently bought by Cisco) makes these 802.11 DS adapters. Driver by Elmer Joandi (elmer@ylenurme.ee). Say Y here if you have such an adapter, and then say Y below to the option that applies to your particular type of card (PCI, ISA, or PCMCIA). 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 aironet4500_core.o. If you want to compile it as a module, say M here and read as well as . quick config parameters: SSID=tsunami - "The Password" adhoc=1 there are no Access Points around master=1 Adhoc master (the one who creates network sync) slave=1 Adhoc slave (btw, it is still forming own net sometimes, and has problems with firmware... change IbssJoinNetTimeout from /proc...) channel=1..? meaningful in adhoc mode If you have problems with screwing up card, both_bap_lock=1 is a conservative value (performance hit 15%). All other parameters can be set via the proc interface. Aironet 4500/4800 ISA/PCI/PNP/365 support CONFIG_AIRONET4500_NONCS If you have an ISA, PCI or PCMCIA Aironet 4500/4800 wireless LAN card, say Y here, and then also to the options below that apply to you. 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 aironet4500_card.o. If you want to compile it as a module, say M here and read . Aironet 4500/4800 PNP support CONFIG_AIRONET4500_PNP If you have an ISA Aironet 4500/4800 card which you want to use in PnP (Plug and Play) mode, say Y here. This is the recommended mode for ISA cards. Remember however to enable the PnP jumper on the board if you say Y here. Aironet 4500/4800 PCI support CONFIG_AIRONET4500_PCI If you have an PCI Aironet 4500/4800 card, say Y here. Aironet 4500/4800 ISA broken support CONFIG_AIRONET4500_ISA If you have an ISA Aironet 4500/4800 card which you want to run in non-PnP mode, say Y here. This is not recommended and does not work correctly at this point. Say N. Aironet 4500/4800 I365 broken support CONFIG_AIRONET4500_I365 If you have a PCMCIA Aironet 4500/4800 card which you want to use without the standard PCMCIA cardservices provided by the pcmcia-cs package, say Y here. This is not recommended, so say N. Aironet 4500/4800 PCMCIA support CONFIG_AIRONET4500_CS Say Y here if you have a PCMCIA Aironet 4500/4800 card which you want to use with the standard PCMCIA cardservices provided by the pcmcia-cs package. 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 aironet4500_cs.o. If you want to compile it as a module, say M here and read . Aironet 4500/4800 PROC interface CONFIG_AIRONET4500_PROC If you say Y here (and to the "/proc file system" below), you will be able to configure your Aironet card via the /proc/sys/aironet4500 interface. Additional info: look in . 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 aironet4500_proc.o. If you want to compile it as a module, say M here and read . NOTE: the proc interface uses a lot of memory, so it is recommended to compile it as a module and remove the module after configuration. LAPB over Ethernet driver CONFIG_LAPBETHER This is a driver for a pseudo device (typically called /dev/lapb0) which allows you to open an LAPB point-to-point connection to some other computer on your Ethernet network. In order to do this, you need to say Y or M to the driver for your Ethernet card as well as to "LAPB Data Link Driver". 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 . The module will be called lapbether.o. If unsure, say N. X.25 async driver CONFIG_X25_ASY This is a driver for sending and receiving X.25 frames over regular asynchronous serial lines such as telephone lines equipped with ordinary modems. Experts should note that this driver doesn't currently comply with the asynchronous HDLS framing protocols in CCITT recommendation X.25. 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 . The module will be called x25_asy.o. If unsure, say N. PCMCIA network device support CONFIG_NET_PCMCIA Say Y if you would like to include support for any PCMCIA or CardBus network adapters, then say Y to the driver for your particular card below. PCMCIA- or PC-cards are credit-card size devices often used with laptops computers; CardBus is the newer and faster version of PCMCIA. To use your PC-cards, you will need supporting software from David Hinds' pcmcia-cs package (see the file for location). You also want to check out the PCMCIA-HOWTO, available from . If unsure, say N. 3Com 3c589 PCMCIA support CONFIG_PCMCIA_3C589 Say Y here if you intend to attach a 3Com 3c589 or compatible PCMCIA (PC-card) Ethernet card to your computer. 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 3c589_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. 3Com 3c574 PCMCIA support CONFIG_PCMCIA_3C574 Say Y here if you intend to attach a 3Com 3c574 or compatible PCMCIA (PC-card) Fast Ethernet card to your computer. 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 3c574_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. Fujitsu FMV-J18x PCMCIA support CONFIG_PCMCIA_FMVJ18X Say Y here if you intend to attach a Fujitsu FMV-J18x or compatible PCMCIA (PC-card) Ethernet card to your computer. 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 fmvj18x_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. NE2000 compatible PCMCIA support CONFIG_PCMCIA_PCNET Say Y here if you intend to attach an NE2000 compatible PCMCIA (PC-card) Ethernet or Fast Ethernet card to your computer. 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 pcnet_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. Asix AX88190 PCMCIA support CONFIG_PCMCIA_AXNET Say Y here if you intend to attach an Asix AX88190-based PCMCIA (PC-card) Fast Ethernet card to your computer. These cards are nearly NE2000 compatible but need a separate driver due to a few misfeatures. 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 axnet_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. New Media PCMCIA support CONFIG_PCMCIA_NMCLAN Say Y here if you intend to attach a New Media Ethernet or LiveWire PCMCIA (PC-card) Ethernet card to your computer. 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 nmclan_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. SMC 91Cxx PCMCIA support CONFIG_PCMCIA_SMC91C92 Say Y here if you intend to attach an SMC 91Cxx compatible PCMCIA (PC-card) Ethernet or Fast Ethernet card to your computer. 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 smc91c92_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. Xircom 16-bit PCMCIA support CONFIG_PCMCIA_XIRC2PS Say Y here if you intend to attach a Xircom 16-bit PCMCIA (PC-card) Ethernet or Fast Ethernet card to your computer. 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 xirc2ps_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. COM20020 ARCnet PCMCIA support CONFIG_ARCNET_COM20020_CS Say Y here if you intend to attach this type of ARCnet PCMCIA card to your computer. 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 com20020_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. IBM PCMCIA Token Ring adapter support CONFIG_PCMCIA_IBMTR Say Y here if you intend to attach this type of Token Ring PCMCIA card to your computer. You then also need to say Y to "Token Ring driver support". 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 ibmtr_cs.o. If you want to compile it as a module, say M here and read . Xircom Tulip-like CardBus support (old driver) CONFIG_PCMCIA_XIRTULIP This driver is for the Digital "Tulip" Ethernet CardBus adapters. It should work with most DEC 21*4*-based chips/ethercards, as well as with work-alike chips from Lite-On (PNIC) and Macronix (MXIC) and ASIX. 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 xircom_tulip_cb.o. If you want to compile it as a module, say M here and read . If unsure, say N. Xircom CardBus support (new driver) CONFIG_PCMCIA_XIRCOM This driver is for the Digital "Tulip" Ethernet CardBus adapters. It should work with most DEC 21*4*-based chips/ethercards, as well as with work-alike chips from Lite-On (PNIC) and Macronix (MXIC) and ASIX. 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 xircom_cb.o. If you want to compile it as a module, say M here and read . If unsure, say N. PCMCIA Wireless LAN CONFIG_NET_PCMCIA_RADIO Say Y here if you would like to use a PCMCIA (PC-card) device to connect to a wireless local area network. Then say Y to the driver for your particular card below. To use your PC-cards, you will need supporting software from David Hinds' pcmcia-cs package (see the file for location). You also want to check out the PCMCIA-HOWTO, available from . Hermes chipset 802.11b support (Orinoco/Prism2/Symbol cards) CONFIG_HERMES A driver for 802.11b wireless cards based based on the "Hermes" or Intersil HFA384x (Prism 2) MAC controller. This includes the vast majority of the PCMCIA 802.11b cards (which are nearly all rebadges) - except for the Cisco/Aironet cards. Cards supported include the Apple Airport (not a PCMCIA card), WavelanIEEE/Orinoco, Cabletron/EnteraSys Roamabout, ELSA AirLancer, MELCO Buffalo, Avaya, IBM High Rate Wireless, Farralon Syyline, Samsung MagicLAN, Netgear MA401, LinkSys WPC-11, D-Link DWL-650, 3Com AirConnect, Intel PRO/Wireless, and Symbol Spectrum24 High Rate amongst others. This option includes the guts of the driver, but in order to actually use a card you will also need to enable support for PCMCIA Hermes cards, PLX9052 based PCI adaptors or the Apple Airport below. You will also very likely also need the Wireless Tools in order to configure your card and that /etc/pcmcia/wireless.opts works : If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called hermes.o. Hermes 802.11b in PLX9052 based PCI adaptor support CONFIG_PLX_HERMES Enable support for PCMCIA cards supported by the "Hermes" (aka orinoco_cs) driver when used in PLX9052 based PCI adaptors. These adaptors are not a full PCMCIA controller but act as a more limited PCI <-> PCMCIA bridge. Several vendors sell such adaptors so that 802.11b PCMCIA cards can be used in desktop machines. The Netgear MA301 is such an adaptor. Support for these adaptors is so far still incomplete and buggy. You have been warned. Prism 2.5 PCI 802.11b adaptor support CONFIG_PCI_HERMES Enable support for PCI and mini-PCI 802.11b wireless NICs based on the Prism 2.5 chipset. These are true PCI cards, not the 802.11b PCMCIA cards bundled with PCI<->PCMCIA adaptors which are also common. Some of the built-in wireless adaptors in laptops are of this variety. Hermes support (Orinoco/WavelanIEEE/PrismII/Symbol 802.11b cards) CONFIG_PCMCIA_HERMES A driver for "Hermes" chipset based PCMCIA wireless adaptors, such as the Lucent WavelanIEEE/Orinoco cards and their OEM (Cabletron/ EnteraSys RoamAbout 802.11, ELSA Airlancer, Melco Buffalo and others). It should also be usable on various Prism II based cards such as the Linksys, D-Link and Farallon Skyline. It should also work on Symbol cards such as the 3Com AirConnect and Ericsson WLAN. To use your PC-cards, you will need supporting software from David Hinds' pcmcia-cs package (see the file for location). You also want to check out the PCMCIA-HOWTO, available from . You will also very likely also need the Wireless Tools in order to configure your card and that /etc/pcmcia/wireless.opts works: . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called orinoco_cs.o. Host AP support for Prism2/2.5/3 IEEE 802.11b CONFIG_HOSTAP A driver for 802.11b wireless cards based on Intersil Prism2/2.5/3 chipset. This driver supports so called Host AP mode that allows the card to act as an IEEE 802.11 access point. See for more information about the Host AP driver configuration and tools. This option includes the base Host AP driver code that is shared by different hardware models. You will also need to enable support for PLX/PCI/CS version of the driver to actually use the driver. The driver can be compiled as modules and they will be called "hostap.o" and "hostap_crypt_wep.o". Host AP driver for Prism2/2.5/3 in PLX9052 based PCI adaptors CONFIG_HOSTAP_PLX Host AP driver's version for Prism2/2.5/3 PC Cards in PLX9052 based PCI adaptors. "Host AP support for Prism2/2.5/3 IEEE 802.11b" is required for this driver and its help text includes more information about the Host AP driver. The driver can be compiled as a module and will be named "hostap_plx.o". Host AP driver for Prism2.5 PCI adaptors CONFIG_HOSTAP_PCI Host AP driver's version for Prism2.5 PCI adaptors. "Host AP support for Prism2/2.5/3 IEEE 802.11b" is required for this driver and its help text includes more information about the Host AP driver. The driver can be compiled as a module and will be named "hostap_pci.o". Host AP driver for Prism2/2.5/3 PC Cards CONFIG_HOSTAP_CS Host AP driver's version for Prism2/2.5/3 PC Cards. "Host AP support for Prism2/2.5/3 IEEE 802.11b" is required for this driver and its help text includes more information about the Host AP driver. The driver can be compiled as a module and will be named "hostap_cs.o". Cisco/Aironet 34X/35X/4500/4800 ISA and PCI cards CONFIG_AIRO This is the standard Linux driver to support Cisco/Aironet ISA and PCI 802.11 wireless cards. It supports the new 802.11b cards from Cisco (Cisco 34X, Cisco 35X - with or without encryption) as well as card before the Cisco acquisition (Aironet 4500, Aironet 4800, Aironet 4800B). This driver support both the standard Linux Wireless Extensions and Cisco proprietary API, so both the Linux Wireless Tools and the Cisco Linux utilities can be used to configure the card. The driver can be compiled as a module and will be named "airo.o". Cisco/Aironet 34X/35X/4500/4800 PCMCIA cards CONFIG_AIRO_CS This is the standard Linux driver to support Cisco/Aironet PCMCIA 802.11 wireless cards. This driver is the same as the Aironet driver part of the Linux Pcmcia package. It supports the new 802.11b cards from Cisco (Cisco 34X, Cisco 35X - with or without encryption) as well as card before the Cisco acquisition (Aironet 4500, Aironet 4800, Aironet 4800B). It also supports OEM of Cisco such as the DELL TrueMobile 4800 and Xircom 802.11b cards. This driver support both the standard Linux Wireless Extensions and Cisco proprietary API, so both the Linux Wireless Tools and the Cisco Linux utilities can be used to configure the card. To use your PC-cards, you will need supporting software from David Hinds' pcmcia-cs package (see the file for location). You also want to check out the PCMCIA-HOWTO, available from . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called airo_cs.o. Aviator/Raytheon 2.4MHz wireless support CONFIG_PCMCIA_RAYCS Say Y here if you intend to attach an Aviator/Raytheon PCMCIA (PC-card) wireless Ethernet networking card to your computer. Please read the file 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 will be called ray_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. Apple Airport support (built-in) CONFIG_APPLE_AIRPORT Say Y here to support the Airport 802.11b wireless Ethernet hardware built into the Macintosh iBook and other recent PowerPC-based Macintosh machines. This is essentially a Lucent Orinoco card with a non-standard interface Xircom Netwave AirSurfer wireless support CONFIG_PCMCIA_NETWAVE Say Y here if you intend to attach this type of PCMCIA (PC-card) wireless Ethernet networking card to your computer. 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 netwave_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. AT&T/Lucent Wavelan wireless support CONFIG_PCMCIA_WAVELAN Say Y here if you intend to attach an AT&T/Lucent Wavelan PCMCIA (PC-card) wireless Ethernet networking card to your computer. This driver is for the non-IEEE-802.11 Wavelan cards. 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 wavelan_cs.o. If you want to compile it as a module, say M here and read . If unsure, say N. PLIP (parallel port) support CONFIG_PLIP PLIP (Parallel Line Internet Protocol) is used to create a reasonably fast mini network consisting of two (or, rarely, more) local machines. A PLIP link from a Linux box is a popular means to install a Linux distribution on a machine which doesn't have a CD-ROM drive (a minimal system has to be transferred with floppies first). The kernels on both machines need to have this PLIP option enabled for this to work. The PLIP driver has two modes, mode 0 and mode 1. The parallel ports (the connectors at the computers with 25 holes) are connected with "null printer" or "Turbo Laplink" cables which can transmit 4 bits at a time (mode 0) or with special PLIP cables, to be used on bidirectional parallel ports only, which can transmit 8 bits at a time (mode 1); you can find the wiring of these cables in . The cables can be up to 15m long. Mode 0 works also if one of the machines runs DOS/Windows and has some PLIP software installed, e.g. the Crynwr PLIP packet driver () and winsock or NCSA's telnet. If you want to use PLIP, say Y and read the PLIP mini-HOWTO as well as the NET-3-HOWTO, both available from . Note that the PLIP protocol has been changed and this PLIP driver won't work together with the PLIP support in Linux versions 1.0.x. This option enlarges your kernel by about 8 KB. 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 as well as . The module will be called plip.o. If unsure, say Y or M, in case you buy a laptop later. EQL (serial line load balancing) support CONFIG_EQUALIZER If you have two serial connections to some other computer (this usually requires two modems and two telephone lines) and you use SLIP (the protocol for sending Internet traffic over telephone lines) or PPP (a better SLIP) on them, 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 EQL Linux driver or with a Livingston Portmaster 2e. Say Y if you want this and read . You may also want to read section 6.2 of the NET-3-HOWTO, available from . 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 eql.o. If you want to compile it as a module, say M here and read . If unsure, say N. Universal TUN/TAP device driver support CONFIG_TUN 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 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 . If you don't know what to use this for, you don't need it. Ethertap network tap (OBSOLETE) CONFIG_ETHERTAP 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 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 . If you don't know what to use this for, you don't need it. Sealevel Systems 4021 support CONFIG_SEALEVEL_4021 This is a driver for the Sealevel Systems ACB 56 serial I/O adapter. This driver can only be compiled as a module ( = code which can be inserted in and removed from the running kernel whenever you want). If you want to do that, say M here. The module will be called sealevel.o. TMPTX3912/PR31700 serial port support CONFIG_SERIAL_TX3912 The TX3912 is a Toshiba RISC processor based o the MIPS 3900 core; see . Say Y here to enable kernel support for the on-board serial port. Console on TMPTX3912/PR31700 serial port CONFIG_SERIAL_TX3912_CONSOLE The TX3912 is a Toshiba RISC processor based o the MIPS 3900 core; see . Say Y here to direct console I/O to the on-board serial port. Enable Au1000 serial console CONFIG_AU1000_SERIAL_CONSOLE If you have an Alchemy AU1000 processor (MIPS based) and you want to use a console on a serial port, say Y. Otherwise, say N. Enable Au1000 UART Support CONFIG_AU1000_UART If you have an Alchemy AU1000 processor (MIPS based) and you want to use serial ports, say Y. Otherwise, say N. SyncLink HDLC/SYNCPPP support CONFIG_SYNCLINK_SYNCPPP Enables HDLC/SYNCPPP support for the SyncLink WAN driver. Normally the SyncLink WAN driver works with the main PPP driver (ppp.c) and pppd program. HDLC/SYNCPPP support allows use of the Cisco HDLC/PPP driver (syncppp.c). The SyncLink WAN driver (in character devices) must also be enabled. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called syncppp.o. FarSync T-Series X.21 (and V.35/V.24) cards CONFIG_FARSYNC This driver supports the FarSync T-Series X.21 (and V.35/V.24) cards from FarSite Communications Ltd. Synchronous communication is supported on all ports at speeds up to 8Mb/s (128K on V.24) using synchronous PPP or Cisco HDLC. 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 . The module will be called farsync.o and if you want the module to be automatically loaded when the interface is referenced then you should add "alias syncX farsync" to /etc/modules.conf for each interface, where X is 0, 1, 2, ... Frame Relay (DLCI) support CONFIG_DLCI This is support for the frame relay protocol; frame relay is a fast low-cost way to connect to a remote Internet access provider or to form a private wide area network. The one physical line from your box to the local "switch" (i.e. the entry point to the frame relay network, usually at the phone company) can carry several logical point-to-point connections to other computers connected to the frame relay network. For a general explanation of the protocol, check out on the WWW. To use frame relay, you need supporting hardware (called FRAD) and certain programs from the net-tools package as explained in . 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 dlci.o. If you want to compile it as a module, say M here and read . Max open DLCI CONFIG_DLCI_COUNT This is the maximal number of logical point-to-point frame relay connections (the identifiers of which are called DCLIs) that the driver can handle. The default is probably fine. Max DLCI per device CONFIG_DLCI_MAX You can specify here how many logical point-to-point frame relay connections (the identifiers of which are called DCLIs) should be handled by each of your hardware frame relay access devices. Go with the default. SDLA (Sangoma S502/S508) support CONFIG_SDLA Say Y here if you need a driver for the Sangoma S502A, S502E, and S508 Frame Relay Access Devices. These are multi-protocol cards, but only frame relay is supported by the driver at this time. Please read . 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 sdla.o. If you want to compile it as a module, say M here and read . Acorn Econet/AUN protocols CONFIG_ECONET Econet is a fairly old and slow networking protocol mainly used by Acorn computers to access file and print servers. It uses native Econet network cards. AUN is an implementation of the higher level parts of Econet that runs over ordinary Ethernet connections, on top of the UDP packet protocol, which in turn runs on top of the Internet protocol IP. If you say Y here, you can choose with the next two options whether to send Econet/AUN traffic over a UDP Ethernet connection or over a native Econet network card. 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 econet.o. If you want to compile it as a module, say M here and read . AUN over UDP CONFIG_ECONET_AUNUDP Say Y here if you want to send Econet/AUN traffic over a UDP connection (UDP is a packet based protocol that runs on top of the Internet protocol IP) using an ordinary Ethernet network card. Native Econet CONFIG_ECONET_NATIVE Say Y here if you have a native Econet network card installed in your computer. WAN router CONFIG_WAN_ROUTER Wide Area Networks (WANs), such as X.25, frame relay and leased lines, are used to interconnect Local Area Networks (LANs) over vast distances with data transfer rates significantly higher than those achievable with commonly used asynchronous modem connections. Usually, a quite expensive external device called a `WAN router' is needed to connect to a WAN. As an alternative, WAN routing can be built into the Linux kernel. With relatively inexpensive WAN interface cards available on the market, a perfectly usable router can be built for less than half the price of an external router. If you have one of those cards and wish to use your Linux box as a WAN router, say Y here and also to the WAN driver for your card, below. You will then need the wan-tools package which is available from . Read for more information. The WAN routing support is also available as a module called wanrouter.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 . If unsure, say N. Fast switching (read help!) CONFIG_NET_FASTROUTE Saying Y here enables direct NIC-to-NIC (NIC = Network Interface Card) data transfers on the local network, which is fast. IMPORTANT NOTE: This option is NOT COMPATIBLE with "Network packet filtering" (CONFIG_NETFILTER). Say N here if you say Y there. However, it will work with all options in the "Advanced router" section (except for "Use TOS value as routing key" and "Use FWMARK value as routing key"). At the moment, few devices support fast switching (tulip is one of them, a modified 8390 driver can be found at ). If unsure, say N. Forwarding between high speed interfaces CONFIG_NET_HW_FLOWCONTROL This option enables NIC (Network Interface Card) hardware throttling during periods of extremal congestion. At the moment only a couple of device drivers support it (really only one -- tulip, a modified 8390 driver can be found at ). Really, this option is applicable to any machine attached to a fast enough network, and even a 10 Mb NIC is able to kill a not very slow box, such as a 120MHz Pentium. However, do not say Y here if you did not experience any serious problems. QoS and/or fair queueing CONFIG_NET_SCHED When the kernel has several packets to send out over a network device, it has to decide which ones to send first, which ones to delay, and which ones to drop. This is the job of the packet scheduler, and several different algorithms for how to do this "fairly" have been proposed. If you say N here, you will get the standard packet scheduler, which is a FIFO (first come, first served). If you say Y here, you will be able to choose from among several alternative algorithms which can then be attached to different network devices. This is useful for example if some of your network devices are real time devices that need a certain minimum data flow rate, or if you need to limit the maximum data flow rate for traffic which matches specified criteria. This code is considered to be experimental. To administer these schedulers, you'll need the user-level utilities from the package iproute2+tc at . That package also contains some documentation; for more, check out . This Quality of Service (QoS) support will enable you to use Differentiated Services (diffserv) and Resource Reservation Protocol (RSVP) on your Linux router if you also say Y to "QoS support", "Packet classifier API" and to some classifiers below. Documentation and software is at . If you say Y here and to "/proc file system" below, you will be able to read status information about packet schedulers from the file /proc/net/psched. The available schedulers are listed in the following questions; you can say Y to as many as you like. If unsure, say N now. CBQ packet scheduler CONFIG_NET_SCH_CBQ Say Y here if you want to use the Class-Based Queueing (CBQ) packet scheduling algorithm for some of your network devices. This algorithm classifies the waiting packets into a tree-like hierarchy of classes; the leaves of this tree are in turn scheduled by separate algorithms (called "disciplines" in this context). See the top of for references about the CBQ algorithm. CBQ is a commonly used scheduler, so if you're unsure, you should say Y here. Then say Y to all the queueing algorithms below that you want to use as CBQ disciplines. Then say Y to "Packet classifier API" and say Y to all the classifiers you want to use; a classifier is a routine that allows you to sort your outgoing traffic into classes based on a certain criterion. This code is also available as a module called sch_cbq.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 . CONFIG_NET_SCH_HTB Say Y here if you want to use the Hierarchical Token Buckets (HTB) packet scheduling algorithm for some of your network devices. See URL for complete manual and in-depth articles. HTB is very similar to the CBQ regarding its goals however is has different properties and different algorithm. This code is also available as a module called sch_htb.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 . CSZ packet scheduler CONFIG_NET_SCH_CSZ Say Y here if you want to use the Clark-Shenker-Zhang (CSZ) packet scheduling algorithm for some of your network devices. At the moment, this is the only algorithm that can guarantee service for real-time applications (see the top of for details and references about the algorithm). Note: this scheduler is currently broken. This code is also available as a module called sch_csz.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 . ATM pseudo-scheduler CONFIG_NET_SCH_ATM Say Y here if you want to use the ATM pseudo-scheduler. This provides a framework for invoking classifiers (aka "filters"), which in turn select classes of this queuing discipline. Each class maps the flow(s) it is handling to a given virtual circuit (see the top of ). This code is also available as a module called sch_atm.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 . The simplest PRIO pseudo-scheduler CONFIG_NET_SCH_PRIO Say Y here if you want to use an n-band priority queue packet "scheduler" for some of your network devices or as a leaf discipline for the CBQ scheduling algorithm. If unsure, say Y. This code is also available as a module called sch_prio.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 . Diffserv field marker CONFIG_NET_SCH_DSMARK Say Y if you want to schedule packets according to the Differentiated Services architecture proposed in RFC 2475. Technical information on this method, with pointers to associated RFCs, is available at . This code is also available as a module called sch_dsmark.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 . GRED queue CONFIG_NET_SCH_GRED Say Y here if you want to use the Generic Random Early Detection (RED) packet scheduling algorithm for some of your network devices (see the top of for details and references about the algorithm). This code is also available as a module called sch_gred.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 . RED queue CONFIG_NET_SCH_RED Say Y here if you want to use the Random Early Detection (RED) packet scheduling algorithm for some of your network devices (see the top of for details and references about the algorithm). This code is also available as a module called sch_red.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 . SFQ queue CONFIG_NET_SCH_SFQ Say Y here if you want to use the Stochastic Fairness Queueing (SFQ) packet scheduling algorithm for some of your network devices or as a leaf discipline for the CBQ scheduling algorithm (see the top of for details and references about the SFQ algorithm). This code is also available as a module called sch_sfq.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 . TEQL queue CONFIG_NET_SCH_TEQL Say Y here if you want to use the True Link Equalizer (TLE) packet scheduling algorithm for some of your network devices or as a leaf discipline for the CBQ scheduling algorithm. This queueing discipline allows the combination of several physical devices into one virtual device. (see the top of for details). This code is also available as a module called sch_teql.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 . TBF queue CONFIG_NET_SCH_TBF Say Y here if you want to use the Simple Token Bucket Filter (TBF) packet scheduling algorithm for some of your network devices or as a leaf discipline for the CBQ scheduling algorithm (see the top of for a description of the TBF algorithm). This code is also available as a module called sch_tbf.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 . Ingress Qdisc CONFIG_NET_SCH_INGRESS If you say Y here, you will be able to police incoming bandwidth and drop packets when this bandwidth exceeds your desired rate. If unsure, say Y. This code is also available as a module called cls_ingress.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 . QoS support CONFIG_NET_QOS Say Y here if you want to include Quality Of Service scheduling features, which means that you will be able to request certain rate-of-flow limits for your network devices. This Quality of Service (QoS) support will enable you to use Differentiated Services (diffserv) and Resource Reservation Protocol (RSVP) on your Linux router if you also say Y to "Packet classifier API" and to some classifiers below. Documentation and software is at . Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about QoS support. Rate estimator CONFIG_NET_ESTIMATOR In order for Quality of Service scheduling to work, the current rate-of-flow for a network device has to be estimated; if you say Y here, the kernel will do just that. Packet classifier API CONFIG_NET_CLS The CBQ scheduling algorithm requires that network packets which are scheduled to be sent out over a network device be classified according to some criterion. If you say Y here, you will get a choice of several different packet classifiers with the following questions. This will enable you to use Differentiated Services (diffserv) and Resource Reservation Protocol (RSVP) on your Linux router. Documentation and software is at . Traffic policing (needed for in/egress) CONFIG_NET_CLS_POLICE Say Y to support traffic policing (bandwidth limits). Needed for ingress and egress rate limiting. TC index classifier CONFIG_NET_CLS_TCINDEX If you say Y here, you will be able to classify outgoing packets according to the tc_index field of the skb. You will want this feature if you want to implement Differentiated Services using sch_dsmark. If unsure, say Y. This code is also available as a module called cls_tcindex.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 . Routing tables based classifier CONFIG_NET_CLS_ROUTE4 If you say Y here, you will be able to classify outgoing packets according to the route table entry they matched. If unsure, say Y. This code is also available as a module called cls_route.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 . Firewall based classifier CONFIG_NET_CLS_FW If you say Y here, you will be able to classify outgoing packets according to firewall criteria you specified. This code is also available as a module called cls_fw.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 . U32 classifier CONFIG_NET_CLS_U32 If you say Y here, you will be able to classify outgoing packets according to their destination address. If unsure, say Y. This code is also available as a module called cls_u32.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 . Special RSVP classifier CONFIG_NET_CLS_RSVP The Resource Reservation Protocol (RSVP) permits end systems to request a minimum and maximum data flow rate for a connection; this is important for real time data such as streaming sound or video. Say Y here if you want to be able to classify outgoing packets based on their RSVP requests. This code is also available as a module called cls_rsvp.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 . Special RSVP classifier for IPv6 CONFIG_NET_CLS_RSVP6 The Resource Reservation Protocol (RSVP) permits end systems to request a minimum and maximum data flow rate for a connection; this is important for real time data such as streaming sound or video. Say Y here if you want to be able to classify outgoing packets based on their RSVP requests and you are using the new Internet Protocol IPv6 as opposed to the older and more common IPv4. This code is also available as a module called cls_rsvp6.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 . Network code profiler CONFIG_NET_PROFILE If you say Y here and to "/proc file system support" below, some obscure and undocumented information about the network code's performance will be written to /proc/net/profile. If you don't know what it is about, you don't need it: say N. Network packet generator CONFIG_NET_PKTGEN This module will inject preconfigured packets, at a configurable rate, out of a given interface. It is used for network interface stress testing and performance analysis. If you don't understand what was just said, you don't need it: say N. Documentation on how to use the packet generator can be found at . This code is also available as a module called pktgen.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 . Wan interfaces support CONFIG_WAN Wide Area Networks (WANs), such as X.25, frame relay and leased lines, are used to interconnect Local Area Networks (LANs) over vast distances with data transfer rates significantly higher than those achievable with commonly used asynchronous modem connections. Usually, a quite expensive external device called a `WAN router' is needed to connect to a WAN. As an alternative, a relatively inexpensive WAN interface card can allow your Linux box to directly connect to a WAN. If you have one of those cards and wish to use it under Linux, say Y here and also to the WAN driver for your card, below. If unsure, say N. Comtrol Hostess SV-11 support CONFIG_HOSTESS_SV11 This is a network card for low speed synchronous serial links, at up to 256Kbps. It supports both PPP and Cisco HDLC. At this point, the driver can only be compiled as a module. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called hostess_sv11.o. COSA/SRP sync serial board support CONFIG_COSA This is a driver for COSA and SRP synchronous serial boards. These boards allow to connect synchronous serial devices (for example base-band modems, or any other device with the X.21, V.24, V.35 or V.36 interface) to your Linux box. The cards can work as the character device, synchronous PPP network device, or the Cisco HDLC network device. To actually use the COSA or SRP board, you will need user-space utilities for downloading the firmware to the cards and to set them up. Look at the for more information about the cards (including the pointer to the user-space utilities). You can also read the comment at the top of the for details about the cards and the driver itself. The driver will be compiled as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called cosa.o. For general information about modules read . Etinc PCISYNC serial board support CONFIG_DSCC4 This is a driver for Etinc PCISYNC boards based on the Infineon (ex. Siemens) DSCC4 chipset. It is supposed to work with the four ports card. Take a look at for further informations about the driver and his configuration. The driver will be compiled as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called dscc4.o. For general information about modules read . LanMedia Corp. serial boards (SSI/V.35, T1/E1, HSSI, T3) CONFIG_LANMEDIA This is a driver for the following Lan Media family of serial boards. LMC 1000 board allows you to connect synchronous serial devices (for example base-band modems, or any other device with the X.21, V.24, V.35 or V.36 interface) to your Linux box. LMC 1200 with on board DSU board allows you to connect your Linux box directly to a T1 or E1 circuit. LMC 5200 board provides a HSSI interface capable of running up to 52 mbits per second. LMC 5245 board connects directly to a T3 circuit saving the additional external hardware. To change setting such as syncPPP vs cisco HDLC or clock source you will need lmcctl. It is available at . This code is also available as a module called lmc.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 . Fibre Channel driver support CONFIG_NET_FC Fibre Channel is a high speed serial protocol mainly used to connect large storage devices to the computer; it is compatible with and intended to replace SCSI. If you intend to use Fibre Channel, you need to have a Fibre channel adaptor card in your computer; say Y here and to the driver for your adaptor below. You also should have said Y to "SCSI support" and "SCSI generic support". Interphase 5526 Tachyon chipset based adaptor support CONFIG_IPHASE5526 Say Y here if you have a Fibre Channel adaptor of this kind. The 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 iph5526.o. For general information about modules read . Red Creek Hardware VPN CONFIG_RCPCI This is a driver for hardware which provides a Virtual Private Network (VPN). Say Y if you have it. This code is also available as a module called rcpci.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 . Granch SBNI12 Leased Line adapter driver CONFIG_SBNI This is a driver for ISA SBNI12-xx cards which are low cost alternatives to leased line modems. Say Y if you want to insert the driver into the kernel or say M to compile it as a module (the module will be called sbni.o). You can find more information and last versions of drivers and utilities at . If you have any question you can send email to sbni@granch.ru. Say N if unsure. SBNI multiple-line feature support CONFIG_SBNI_MULTILINE Schedule traffic for some parallel lines, via SBNI12 adapters. If you have two computers connected with two parallel lines it's possible to increase transfer rate nearly twice. You should have a program named 'sbniconfig' to configure adapters. Say N if unsure. WAN router drivers CONFIG_WAN_ROUTER_DRIVERS If you have a WAN interface card and you want your Linux box to act as a WAN router, thereby connecting you Local Area Network to the outside world over the WAN connection, say Y here and then to the driver for your card below. In addition, you need to say Y to "Wan Router". You will need the wan-tools package which is available from . Read for more information. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about WAN router drivers. If unsure, say N. Sangoma WANPIPE(tm) multiprotocol cards CONFIG_VENDOR_SANGOMA WANPIPE from Sangoma Technologies Inc. () is a family of intelligent multiprotocol WAN adapters with data transfer rates up to 4Mbps. They are also known as Synchronous Data Link Adapters (SDLA) and are designated as S514-PCI or S508-ISA. These cards support - X.25, Frame Relay, PPP, Cisco HDLC protocols. - API support for protocols like HDLC (LAPB), HDLC Streaming, X.25, Frame Relay and BiSync. - Ethernet Bridging over Frame Relay protocol. - MULTILINK PPP - Async PPP (Modem Dialup) If you have one or more of these cards, say M to this option; you may then also want to read the file . The next questions will ask you about the protocols you want the driver to support. The driver will be compiled as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called wanpipe.o. For general information about modules read . WANPIPE X.25 support CONFIG_WANPIPE_X25 Say Y to this option if you are planning to connect a WANPIPE card to an X.25 network. Note, this feature also includes the X.25 API support used to develop custom applications over the X.25 protocol. If you say N, the X.25 support will not be included in the driver. The X.25 option is supported on S514-PCI and S508-ISA cards. WANPIPE Frame Relay support CONFIG_WANPIPE_FR Say Y to this option if you are planning to connect a WANPIPE card to a frame relay network, or use frame relay API to develop custom applications over the Frame Relay protocol. This feature also contains the Ethernet Bridging over Frame Relay, where a WANPIPE frame relay link can be directly connected to the Linux kernel bridge. If you say N, the frame relay support will not be included in the driver. The Frame Relay option is supported on S514-PCI and S508-ISA cards. WANPIPE PPP support CONFIG_WANPIPE_PPP Say Y to this option if you are planning to connect a WANPIPE card to a leased line using Point-to-Point protocol (PPP). If you say N, the PPP support will not be included in the driver. The PPP option is supported on S514-PCI/S508-ISA cards. WANPIPE Multi-Port PPP support CONFIG_WANPIPE_MULTPPP Say Y to this option if you are planning to connect a WANPIPE card to a leased line using Point-to-Point protocol (PPP). Note, the MultiPort PPP uses the Linux Kernel SyncPPP protocol over the Sangoma HDLC Streaming adapter. In this case each Sangoma adapter port can support an independent PPP connection. For example, a single Quad-Port PCI adapter can support up to four independent PPP links. If you say N,the PPP support will not be included in the driver. The PPP option is supported on S514-PCI/S508-ISA cards. WANPIPE Cisco HDLC support CONFIG_WANPIPE_CHDLC Say Y to this option if you are planning to connect a WANPIPE card to a leased line using the Cisco HDLC protocol. This now supports Dual Port Cisco HDLC on the S514-PCI/S508-ISA cards. This support also allows user to build applications using the HDLC streaming API. CHDLC Streaming driver also supports MULTILINK PPP support that can bind multiple WANPIPE T1 cards into a single logical channel. If you say N, the Cisco HDLC support and HDLC streaming API and MULTILINK PPP will not be included in the driver. MultiGate (COMX) synchronous serial board support CONFIG_COMX Say Y if you want to use any board from the MultiGate (COMX) family. These boards are synchronous serial adapters for the PC, manufactured by ITConsult-Pro Co, Hungary. Read for help on configuring and using COMX interfaces. Further info on these cards can be found at or . You must say Y to "/proc file system support" (CONFIG_PROC_FS) to use this driver. If you want to compile this as a module, say M and read . The module will be called comx.o. Support for COMX/CMX/HiCOMX boards CONFIG_COMX_HW_COMX Hardware driver for the 'CMX', 'COMX' and 'HiCOMX' boards from the MultiGate family. Say Y if you have one of these. You will need additional firmware to use these cards, which are downloadable from . If you want to compile this as a module, say M and read . The module will be called comx-hw-comx.o. Support for LoCOMX board CONFIG_COMX_HW_LOCOMX Hardware driver for the 'LoCOMX' board from the MultiGate family. Say Y if you have a board like this. If you want to compile this as a module, say M and read . The module will be called comx-hw-locomx.o. Support for MixCOM board CONFIG_COMX_HW_MIXCOM Hardware driver for the 'MixCOM' board from the MultiGate family. Say Y if you have a board like this. If you want to use the watchdog device on this card, you should select it in the Watchdog Cards section of the Character Devices configuration. The ISDN interface of this card is Teles 16.3 compatible, you should enable it in the ISDN configuration menu. The driver for the flash ROM of this card is available separately on . If you want to compile this as a module, say M and read . The module will be called comx-hw-mixcom.o. i810 TCO timer/watchdog support CONFIG_I810_TCO Hardware driver for the TCO timer built into the Intel i810 and i815 chipset family. The TCO (Total Cost of Ownership) timer is a watchdog timer that will reboot the machine after its second expiration. The expiration time can be configured by command argument "i810_margin=" where is the counter initial value. It is decremented every 0.6 secs, the default is 50 which gives a timeout of 30 seconds and one minute until reset. On some motherboards the driver may fail to reset the chipset's NO_REBOOT flag which prevents the watchdog from rebooting the machine. If this is the case you will get a kernel message like "i810tco init: failed to reset NO_REBOOT flag". If you want to compile this as a module, say M and read . The module will be called i810-tco.o. SliceCOM/PciCOM board support CONFIG_COMX_HW_MUNICH Hardware driver for the 'SliceCOM' (channelized E1) and 'PciCOM' boards (X21) from the MultiGate family. 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 comx-hw-munich.o. If you want to compile it as a module, say M here and read . Read linux/Documentation/networking/slicecom.txt for help on configuring and using SliceCOM interfaces. Further info on these cards can be found at or . Support for HDLC and syncPPP protocols on MultiGate boards CONFIG_COMX_PROTO_PPP Cisco-HDLC and synchronous PPP protocol driver for all MultiGate boards. Say Y if you want to use either protocol on your MultiGate boards. If you want to compile this as a module, say M and read . The module will be called comx-proto-ppp.o. Support for LAPB protocol on MultiGate boards CONFIG_COMX_PROTO_LAPB LAPB protocol driver for all MultiGate boards. Say Y if you want to use this protocol on your MultiGate boards. If you want to compile this as a module, say M and read . The module will be called comx-proto-lapb.o. Support for Frame Relay on MultiGate boards CONFIG_COMX_PROTO_FR Frame Relay protocol driver for all MultiGate boards. Say Y if you want to use this protocol on your MultiGate boards. If you want to compile this as a module, say M and read . The module will be called comx-proto-fr.o. Cyclom 2X(tm) multiprotocol cards CONFIG_CYCLADES_SYNC Cyclom 2X from Cyclades Corporation ( and ) is an intelligent multiprotocol WAN adapter with data transfer rates up to 512 Kbps. These cards support the X.25 and SNA related protocols. If you have one or more of these cards, say Y to this option. The next questions will ask you about the protocols you want the driver to support (for now only X.25 is supported). While no documentation is available at this time please grab the wanconfig tarball in (with minor changes to make it compile with the current wanrouter include files; efforts are being made to use the original package available at ). Feel free to contact me or the cycsyn-devel mailing list at acme@conectiva.com.br and cycsyn-devel@bazar.conectiva.com.br for additional details, I hope to have documentation available as soon as possible. (Cyclades Brazil is writing the Documentation). The driver will be compiled as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called cyclomx.o. For general information about modules read . Cyclom 2X X.25 support CONFIG_CYCLOMX_X25 Say Y to this option if you are planning to connect a Cyclom 2X card to an X.25 network. If you say N, the X.25 support will not be included in the driver (saves about 11 KB of kernel memory). Generic HDLC driver CONFIG_HDLC Say Y to this option if your Linux box contains a WAN card supported by this driver and you are planning to connect the box to a WAN ( = Wide Area Network). You will need supporting software from . Generic HDLC driver currently supports raw HDLC, Cisco HDLC, Frame Relay, synchronous Point-to-Point Protocol (PPP) and X.25. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called hdlc.o. If unsure, say N here. Raw HDLC support CONFIG_HDLC_RAW Say Y to this option if you want generic HDLC driver to support raw HDLC over WAN (Wide Area Network) connections. If unsure, say N here. Cisco HDLC support CONFIG_HDLC_CISCO Say Y to this option if you want generic HDLC driver to support Cisco HDLC over WAN (Wide Area Network) connections. If unsure, say N here. Frame-Relay HDLC support CONFIG_HDLC_FR Say Y to this option if you want generic HDLC driver to support Frame-Relay protocol over WAN (Wide Area Network) connections. If unsure, say N here. Frame-Relay bridging support CONFIG_HDLC_FR_BRIDGE Say Y to this option if you want generic HDLC driver to support bridging LAN frames over Frame-Relay links. If unsure, say N here. Synchronous Point-to-Point Protocol (PPP) support CONFIG_HDLC_PPP Say Y to this option if you want generic HDLC driver to support PPP over WAN (Wide Area Network) connections. If unsure, say N here. CCITT X.25 over HDLC support CONFIG_HDLC_X25 Say Y to this option if you want generic HDLC driver to support X.25 protocol over WAN (Wide Area Network) connections. If unsure, say N here. SDL RISCom/N2 support CONFIG_N2 This driver is for RISCom/N2 single or dual channel ISA cards made by SDL Communications Inc. If you have such a card, say Y here and see . Note that N2csu and N2dds cards are not supported by this driver. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called n2.o. If unsure, say N here. Moxa C101 support CONFIG_C101 This driver is for C101 SuperSync ISA cards made by Moxa Technologies Co., Ltd. If you have such a card, say Y here and see If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called c101.o. If unsure, say N here. Ethernet (10 or 100Mbit) CONFIG_NET_ETHERNET Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common type of Local Area Network (LAN) in universities and companies. Common varieties of Ethernet are: 10BASE-2 or Thinnet (10 Mbps over coaxial cable, linking computers in a chain), 10BASE-T or twisted pair (10 Mbps over twisted pair cable, linking computers to central hubs), 10BASE-F (10 Mbps over optical fiber links, using hubs), 100BASE-TX (100 Mbps over two twisted pair cables, using hubs), 100BASE-T4 (100 Mbps over 4 standard voice-grade twisted pair cables, using hubs), 100BASE-FX (100 Mbps over optical fiber links) [the 100BASE varieties are also known as Fast Ethernet], and Gigabit Ethernet (1 Gbps over optical fiber or short copper links). If your Linux machine will be connected to an Ethernet and you have an Ethernet network interface card (NIC) installed in your computer, say Y here and read the Ethernet-HOWTO, available from . You will then also have to say Y to the driver for your particular NIC. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about Ethernet network cards. If unsure, say N. Western Digital/SMC cards CONFIG_NET_VENDOR_SMC If you have a network (Ethernet) card belonging to this class, say Y and read the Ethernet-HOWTO, available from . 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 Western Digital cards. If you say Y, you will be asked for your specific card in the following questions. WD80*3 support CONFIG_WD80x3 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 wd.o. If you want to compile it as a module, say M here and read as well as . SMC Ultra MCA support CONFIG_ULTRAMCA If you have a network (Ethernet) card of this type and are running an MCA based system (PS/2), say Y and read the Ethernet-HOWTO, available from . 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 smc-mca.o. If you want to compile it as a module, say M here and read as well as . SMC Ultra support CONFIG_ULTRA If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Important: There have been many reports that, with some motherboards mixing an SMC Ultra and an Adaptec AHA154x SCSI card (or compatible, such as some BusLogic models) causes corruption problems with many operating systems. The Linux smc-ultra driver has a work-around for this but keep it in mind if you have such a SCSI card and have problems. 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 smc-ultra.o. If you want to compile it as a module, say M here and read as well as . SMC Ultra32 EISA support CONFIG_ULTRA32 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 smc-ultra32.o. If you want to compile it as a module, say M here and read as well as . SMC 9194 support CONFIG_SMC9194 This is support for the SMC9xxx based Ethernet cards. Choose this option if you have a DELL laptop with the docking station, or another SMC9192/9194 based chipset. Say Y if you want it compiled into the kernel, and read the file and the Ethernet-HOWTO, available from . 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 smc9194.o. If you want to compile it as a module, say M here and read as well as . PCI NE2000 and clones support CONFIG_NE2K_PCI This driver is for NE2000 compatible PCI cards. It will not work with ISA NE2000 cards (they have their own driver, "NE2000/NE1000 support" below). If you have a PCI NE2000 network (Ethernet) card, say Y and read the Ethernet-HOWTO, available from . This driver also works for the following NE2000 clone cards: RealTek RTL-8029 Winbond 89C940 Compex RL2000 KTI ET32P2 NetVin NV5000SC Via 86C926 SureCom NE34 Winbond Holtek HT80232 Holtek HT80229 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 ne2k-pci.o. If you want to compile it as a module, say M here and read as well as . Racal-Interlan (Micom) NI cards CONFIG_NET_VENDOR_RACAL If you have a network (Ethernet) card belonging to this class, such as the NI5010, NI5210 or NI6210, say Y and read the Ethernet-HOWTO, available from . 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 NI cards. If you say Y, you will be asked for your specific card in the following questions. NI5010 support CONFIG_NI5010 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Note that this is still experimental code. 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 ni5010.o. If you want to compile it as a module, say M here and read as well as . NI5210 support CONFIG_NI52 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 ni52.o. If you want to compile it as a module, say M here and read as well as . NI6510 support CONFIG_NI65 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 ni65.o. If you want to compile it as a module, say M here and read as well as . RealTek RTL-8139C+ 10/100 PCI Fast Ethernet Adapter support CONFIG_8139CP This is a driver for the Fast Ethernet PCI network cards based on the RTL8139C+ chips. If you have one of those, say Y and read the Ethernet-HOWTO, available from . 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 Documentation/modules.txt. This is recommended. The module will be called 8139cp.o. RealTek RTL-8139 PCI Fast Ethernet Adapter support CONFIG_8139TOO This is a driver for the Fast Ethernet PCI network cards based on the RTL8139 chips. If you have one of those, say Y and read as well as the Ethernet-HOWTO, available from . 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 . This is recommended. The module will be called 8139too.o. Use PIO instead of MMIO CONFIG_8139TOO_PIO This instructs the driver to use programmed I/O ports (PIO) instead of PCI shared memory (MMIO). This can possibly solve some problems in case your mainboard has memory consistency issues. If unsure, say N. Support for uncommon RTL-8139 rev. K (automatic channel equalization) CONFIG_8139TOO_TUNE_TWISTER This implements a function which might come in handy in case you are using low quality on long cabling. It is required for RealTek RTL-8139 revision K boards, and totally unused otherwise. It tries to match the transceiver to the cable characteristics. This is experimental since hardly documented by the manufacturer. If unsure, say Y. Support for older RTL-8129/8130 boards CONFIG_8139TOO_8129 This enables support for the older and uncommon RTL-8129 and RTL-8130 chips, which support MII via an external transceiver, instead of an internal one. Disabling this option will save some memory by making the code size smaller. If unsure, say Y. Use older RX-reset method CONFIG_8139_OLD_RX_RESET The 8139too driver was recently updated to contain a more rapid reset sequence, in the face of severe receive errors. This "new" RX-reset method should be adequate for all boards. But if you experience problems, you can enable this option to restore the old RX-reset behavior. If unsure, say N. SiS 900/7016 PCI Fast Ethernet Adapter support CONFIG_SIS900 This is a driver for the Fast Ethernet PCI network cards based on the SiS 900 and SiS 7016 chips. The SiS 900 core is also embedded in SiS 630 and SiS 540 chipsets. If you have one of those, say Y and read the Ethernet-HOWTO, available at . Please read and comments at the beginning of for more information. This driver also supports AMD 79C901 HomePNA so that you can use your phone line as a network cable. 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 . This is recommended. The module will be called sis900.o. Packet Engines Yellowfin Gigabit-NIC / Symbios 53c885 support CONFIG_YELLOWFIN Say Y here if you have a Packet Engines G-NIC PCI Gigabit Ethernet adapter or the SYM53C885 Ethernet controller. The Gigabit adapter is used by the Beowulf Linux cluster project. See for more information about this driver in particular and Beowulf in general. 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 . This is recommended. The module will be called yellowfin.o. General Instruments Surfboard 1000 CONFIG_NET_SB1000 This is a driver for the General Instrument (also known as NextLevel) SURFboard 1000 internal cable modem. This is an ISA card which is used by a number of cable TV companies to provide cable modem access. It's a one-way downstream-only cable modem, meaning that your upstream net link is provided by your regular phone modem. At present this driver only compiles as a module, so say M here if you have this card. The module will be called sb1000.o. Then read for information on how to use this module, as it needs special ppp scripts for establishing a connection. Further documentation and the necessary scripts can be found at: If you don't have this card, of course say N. Adaptec Starfire support CONFIG_ADAPTEC_STARFIRE Say Y here if you have an Adaptec Starfire (or DuraLAN) PCI network adapter. The DuraLAN chip is used on the 64 bit PCI boards from Adaptec e.g. the ANA-6922A. The older 32 bit boards use the tulip driver. 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 . This is recommended. The module will be called starfire.o. Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support CONFIG_ACENIC Say Y here if you have an Alteon AceNIC, 3Com 3C985(B), NetGear GA620, SGI Gigabit or Farallon PN9000-SX PCI Gigabit Ethernet adapter. The driver allows for using the Jumbo Frame option (9000 bytes/frame) however it requires that your switches can handle this as well. To enable Jumbo Frames, add `mtu 9000' to your ifconfig line. 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 . This is recommended. The module will be called acenic.o. Omit support for old Tigon I based AceNICs CONFIG_ACENIC_OMIT_TIGON_I Say Y here if you only have Tigon II based AceNICs and want to leave out support for the older Tigon I based cards which are no longer being sold (ie. the original Alteon AceNIC and 3Com 3C985 (non B version)). This will reduce the size of the driver object by app. 100KB. If you are not sure whether your card is a Tigon I or a Tigon II, say N here. The safe and default value for this is N. SysKonnect SK-98xx support CONFIG_SK98LIN Say Y here if you have a SysKonnect SK-98xx Gigabit Ethernet Server Adapter. The following adapters are supported by this driver: - SK-9841 (single link 1000Base-LX) - SK-9842 (dual link 1000Base-LX) - SK-9843 (single link 1000Base-SX) - SK-9844 (dual link 1000Base-SX) - SK-9821 (single link 1000Base-T) - SK-9822 (dual link 1000Base-T) - SK-9861 (single link Volition connector) - SK-9862 (dual link Volition connector) The driver also supports the following adapters from Allied Telesyn: - AT2970... The dual link adapters support a link-failover feature. Read for information about optional driver parameters. Questions concerning this driver may be addressed to: linux@syskonnect.de 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 . This is recommended. The module will be called sk98lin.o. Sun GEM support CONFIG_SUNGEM Support for the Sun GEM chip, aka Sun GigabitEthernet/P 2.0. See also . This chip is also used by Apple under the name GMAC in all their recent machines starting with the first iBook. This includes all AGP capable Apple machines except some early G4s and iMacs that still used a Tulip chip. This driver obsoletes the GMAC driver for these machines. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called sungem.o. Broadcom Tigon3 support CONFIG_TIGON3 This driver supports Broadcom Tigon3 based 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 . This is recommended. The module will be called tg3.o. MyriCOM Gigabit Ethernet support CONFIG_MYRI_SBUS 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 . This is recommended. The module will be called myri_sbus.o. D-Link 2000-based Gigabit Ethernet support CONFIG_DL2K This driver supports D-Link 2000-based gigabit ethernet cards, which includes D-Link DGE-550T Gigabit Ethernet Adapter. D-Link DL2000-based Gigabit Ethernet Adapter. 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 . This is recommended. The module will be called dl2k.o. EtherExpress Pro/100 support (e100, Alternate Intel driver) CONFIG_E100 This driver supports Intel(R) PRO/100 family of adapters, which includes: Controller Adapter Name Board IDs ---------- ------------ --------- 82558 PRO/100+ PCI Adapter 668081-xxx, 689661-xxx 82558 PRO/100+ Management Adapter 691334-xxx, 701738-xxx, 721383-xxx 82558 PRO/100+ Dual Port Server Adapter 714303-xxx, 711269-xxx, A28276-xxx 82558 PRO/100+ PCI Server Adapter 710550-xxx 82550 PRO/100 S Server Adapter 752438-xxx 82559 A56831-xxx, A10563-xxx, A12171-xxx, A12321-xxx, A12320-xxx, A12170-xxx 748568-xxx 748565-xxx 82550 PRO/100 S Desktop Adapter 751767-xxx 82559 748592-xxx, A12167-xxx, A12318-xxx, A12317-xxx, A12165-xxx, 748569-xxx 82559 PRO/100+ Server Adapter 729757-xxx 82559 PRO/100 S Management Adapter 748566-xxx, 748564-xxx 82550 PRO/100 S Dual Port Server Adapter A56831-xxx 82551 PRO/100 M Desktop Adapter A80897-xxx PRO/100 S Advanced Management Adapter 747842-xxx, 745171-xxx CNR PRO/100 VE Desktop Adapter A10386-xxx, A10725-xxx, A23801-xxx, A19716-xxx PRO/100 VM Desktop Adapter A14323-xxx, A19725-xxx, A23801-xxx, A22220-xxx, A23796-xxx To verify that your adapter is supported, find the board ID number on the adapter. Look for a label that has a barcode and a number in the format 123456-001 (six digits hyphen three digits). Match this to the list of numbers above. For more information on how to identify your adapter, go to the Adapter & Driver ID Guide at: http://support.intel.com/support/network/adapter/pro100/21397.htm For the latest Intel PRO/100 network driver for Linux, see: http://appsr.intel.com/scripts-df/support_intel.asp More specific information on configuring the driver is in . 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 e100.o. If you want to compile it as a module, say M here and read as well as . Intel(R) PRO/1000 Gigabit Ethernet support CONFIG_E1000 This driver supports Intel(R) PRO/1000 gigabit ethernet family of adapters, which includes: Controller Adapter Name Board IDs ---------- ------------ --------- 82542 PRO/1000 Gigabit Server Adapter 700262-xxx, 717037-xxx 82543 PRO/1000 F Server Adapter 738640-xxx, A38888-xxx 82543 PRO/1000 T Server Adapter A19845-xxx, A33948-xxx 82544 PRO/1000 XT Server Adapter A51580-xxx 82544 PRO/1000 XF Server Adapter A50484-xxx 82544 PRO/1000 T Desktop Adapter A62947-xxx 82540 PRO/1000 MT Desktop Adapter A78408-xxx 82545 PRO/1000 MT Server Adapter A92165-xxx 82546 PRO/1000 MT Dual Port Server Adapter A92111-xxx 82545 PRO/1000 MF Server Adapter A91622-xxx 82545 PRO/1000 MF Server Adapter(LX) A91624-xxx 82546 PRO/1000 MF Dual Port Server Adapter A91620-xxx For more information on how to identify your adapter, go to the Adapter & Driver ID Guide at: For general information and support, go to the Intel support website at: More specific information on configuring the driver is in . 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 e1000.o. If you want to compile it as a module, say M here and read as well as . AMD LANCE and PCnet (AT1500 and NE2100) support CONFIG_LANCE If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Some LinkSys cards are of this type. 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 . This is recommended. The module will be called lance.o. SGI IOC3 Ethernet CONFIG_SGI_IOC3_ETH If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . National Semiconductor DP83902AV support CONFIG_STNIC Support for cards based on the National Semiconductor DP83902AV ST-NIC Serial Network Interface Controller for Twisted Pair. This is a 10Mbit/sec Ethernet controller. Product overview and specs at . If unsure, say N. 3COM cards CONFIG_NET_VENDOR_3COM If you have a network (Ethernet) card belonging to this class, say Y and read the Ethernet-HOWTO, available from . 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 3COM cards. If you say Y, you will be asked for your specific card in the following questions. 3c501 "EtherLink" support CONFIG_EL1 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Also, consider buying a new card, since the 3c501 is slow, broken, and obsolete: you will have problems. Some people suggest to ping ("man ping") a nearby machine every minute ("man cron") when using this card. 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 3c501.o. If you want to compile it as a module, say M here and read as well as . 3c503 "EtherLink II" support CONFIG_EL2 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 3c503.o. If you want to compile it as a module, say M here and read as well as . 3c505 "EtherLink Plus" support CONFIG_ELPLUS Information about this network (Ethernet) card can be found in . If you have a card of this type, say Y and read the Ethernet-HOWTO, available from . 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 as well as . The module will be called 3c505.o. 3c507 (EtherLink 16) support CONFIG_EL16 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 3c507.o. If you want to compile it as a module, say M here and read as well as . 3c523 "EtherlinkMC" support CONFIG_ELMC If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 3c523.o. If you want to compile it as a module, say M here and read as well as . 3c527 "EtherLink/MC 32" support CONFIG_ELMC_II If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 3c527.o. If you want to compile it as a module, say M here and read as well as . 3c509/3c529 (MCA)/3c579 "EtherLink III" support CONFIG_EL3 If you have a network (Ethernet) card belonging to the 3Com EtherLinkIII series, say Y and read the Ethernet-HOWTO, available from . If your card is not working you may need to use the DOS setup disk to disable Plug & Play mode, and to select the default media type. 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 as well as . The module will be called 3c509.o. 3c515 ISA Fast EtherLink CONFIG_3C515 If you have a 3Com ISA EtherLink XL "Corkscrew" 3c515 Fast Ethernet network card, say Y and read the Ethernet-HOWTO, available from . 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 as well as . The module will be called 3c515.o. 3c590/3c900 series (592/595/597) "Vortex/Boomerang/Cyclone" support CONFIG_VORTEX 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 . More specific information is in and in the comments at the beginning of . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called 3c59x.o. Other ISA cards CONFIG_NET_ISA If your network (Ethernet) card hasn't been mentioned yet and its bus system (that's the way the cards talks to the other components of your computer) is ISA (as opposed to EISA, VLB or PCI), say Y. Make sure you know the name of your card. Read the Ethernet-HOWTO, available from . If unsure, say Y. Note that the answer to this question doesn't directly affect the kernel: saying N will just cause the configurator to skip all the remaining ISA network card questions. If you say Y, you will be asked for your specific card in the following questions. Generic ARCnet support CONFIG_ARCNET If you have a network card of this type, say Y and check out the (arguably) beautiful poetry in . You need both this driver, and the driver for the particular ARCnet chipset of your card. If you don't know, then it's probably a COM90xx type card, so say Y (or M) to "ARCnet COM90xx chipset support" below. You might also want to have a look at the Ethernet-HOWTO, available from (even though ARCnet is not really Ethernet). 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 arcnet.o. If you want to compile it as a module, say M here and read as well as . Enable old ARCNet packet format (RFC 1051) CONFIG_ARCNET_1051 This allows you to use RFC1051 with your ARCnet card via the virtual arc0s device. You only need arc0s if you want to talk to ARCnet software complying with the "old" standard, specifically, the DOS arcnet.com packet driver, Amigas running AmiTCP, and some variants of NetBSD. You do not need to say Y here to communicate with industry-standard RFC1201 implementations, like the arcether.com packet driver or most DOS/Windows ODI drivers. RFC1201 is included automatically as the arc0 device. Please read the ARCnet documentation in for more information about using arc0e and arc0s. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called rfc1051.o. Enable standard ARCNet packet format (RFC 1201) CONFIG_ARCNET_1201 This allows you to use RFC1201 with your ARCnet card via the virtual arc0 device. You need to say Y here to communicate with industry-standard RFC1201 implementations, like the arcether.com packet driver or most DOS/Windows ODI drivers. Please read the ARCnet documentation in for more information about using arc0. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called rfc1201.o. Enable raw mode packet interface CONFIG_ARCNET_RAW ARCnet "raw mode" packet encapsulation, no soft headers. Unlikely to work unless talking to a copy of the same Linux arcnet driver, but perhaps marginally faster in that case. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called arc-rawmode.o. ARCnet COM90xx (normal) chipset driver CONFIG_ARCNET_COM90xx This is the chipset driver for the standard COM90xx cards. If you have always used the old ARCnet driver without knowing what type of card you had, this is probably the one for you. 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 com90xx.o. If you want to compile it as a module, say M here and read as well as . ARCnet COM90xx (IO mapped) chipset driver CONFIG_ARCNET_COM90xxIO This is the chipset driver for the COM90xx cards, using them in IO-mapped mode instead of memory-mapped mode. This is slower than the normal driver. Only use it if your card doesn't support shared memory. 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 com90io.o. If you want to compile it as a module, say M here and read as well as . ARCnet COM90xx (RIM I) chipset driver CONFIG_ARCNET_RIM_I This is yet another chipset driver for the COM90xx cards, but this time only using memory-mapped mode, and no IO ports at all. This driver is completely untested, so if you have one of these cards, please mail dwmw2@infradead.org, especially if it works! 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 arc-rimi.o. If you want to compile it as a module, say M here and read as well as . ARCnet COM20020 chipset driver CONFIG_ARCNET_COM20020 This is the driver for the new COM20020 chipset. It supports such things as promiscuous mode, so packet sniffing is possible, and extra diagnostic 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 com20020.o. If you want to compile it as a module, say M here and read as well as . Cabletron E21xx support CONFIG_E2100 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 e2100.o. If you want to compile it as a module, say M here and read as well as . CS89x0 support (Daynaport CS and LC cards) CONFIG_CS89x0 Support for CS89x0 chipset based Ethernet cards. If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from as well as . 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 as well as . The module will be called cs89x.o. DEPCA, DE10x, DE200, DE201, DE202, DE422 support CONFIG_DEPCA If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from as well as . 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 as well as . The module will be called depca.o. EtherWORKS 3 (DE203, DE204, DE205) support CONFIG_EWRK3 This driver supports the DE203, DE204 and DE205 network (Ethernet) cards. If this is for you, say Y and read in the kernel source as well as the Ethernet-HOWTO, available from . 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 as well as . The module will be called ewrk3.o. SEEQ8005 support CONFIG_SEEQ8005 This is a driver for the SEEQ 8005 network (Ethernet) card. If this is for you, read the Ethernet-HOWTO, available from . 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 as well as . The module will be called ewrk3.o. AT1700/1720 support CONFIG_AT1700 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 as well as . The module will be called at1700.o. FMV-181/182/183/184 support CONFIG_FMV18X If you have a Fujitsu FMV-181/182/183/184 network (Ethernet) card, say Y and read the Ethernet-HOWTO, available from . If you use an FMV-183 or FMV-184 and it is not working, you may need to disable Plug & Play mode of the card. 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 fmv18x.o. If you want to compile it as a module, say M here and read as well as . EtherExpressPro and EtherExpress 10 (i82595) support CONFIG_EEXPRESS_PRO If you have a network (Ethernet) card of this type, say Y. This driver supports intel i82595{FX,TX} based boards. Note however that the EtherExpress PRO/100 Ethernet card has its own separate driver. Please read the Ethernet-HOWTO, available from . 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 eepro.o. If you want to compile it as a module, say M here and read as well as . EtherExpress 16 support CONFIG_EEXPRESS If you have an EtherExpress16 network (Ethernet) card, say Y and read the Ethernet-HOWTO, available from . Note that the Intel EtherExpress16 card used to be regarded as a very poor choice because the driver was very unreliable. We now have a new driver that should do better. 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 as well as . The module will be called eexpress.o. Packet Engines Hamachi GNIC-II support CONFIG_HAMACHI If you have a Gigabit Ethernet card of this type, say Y and read the Ethernet-HOWTO, available from . 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 as well as . The module will be called hamachi.o. HP PCLAN+ (27247B and 27252A) support CONFIG_HPLAN_PLUS If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 hp-plus.o. If you want to compile it as a module, say M here and read as well as . HP PCLAN (27245 and other 27xxx series) support CONFIG_HPLAN If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 hp.o. If you want to compile it as a module, say M here and read as well as . HP 10/100VG PCLAN (ISA, EISA, PCI) support CONFIG_HP100 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 as well as . The module will be called hp100.o. NE2000/NE1000 support CONFIG_NE2000 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Many Ethernet cards without a specific driver are compatible with NE2000. If you have a PCI NE2000 card however, say N here and Y to "PCI NE2000 support", above. If you have a NE2000 card and are running on an MCA system (a bus system used on some IBM PS/2 computers and laptops), say N here and Y to "NE/2 (ne2000 MCA version) support", below. 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 ne.o. If you want to compile it as a module, say M here and read as well as . National Semiconductor DP8381x series PCI Ethernet support CONFIG_NATSEMI This driver is for the National Semiconductor DP83810 series, which is used in cards from PureData, NetGear, Linksys and others, including the 83815 chip. More specific information and updates are available from . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called natsemi.o. NatSemi workaround for high errors CONFIG_NATSEMI_CABLE_MAGIC Some systems see lots of errors with NatSemi ethernet controllers on certain cables. If you are seeing lots of errors, try turning this option on. Some boards have incorrect values for supporting resistors that can cause this change to break. If you turn this option on and your network suddenly stops working, turn this option off. SK_G16 support CONFIG_SK_G16 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . NE/2 (ne2000 MCA version) support CONFIG_NE2_MCA If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 ne2.o. If you want to compile it as a module, say M here and read as well as . SKnet MCA support CONFIG_SKMC These are Micro Channel Ethernet adapters. You need to say Y to "MCA support" in order to use this driver. Supported cards are the SKnet Junior MC2 and the SKnet MC2(+). The driver automatically distinguishes between the two cards. Note that using multiple boards of different type hasn't been tested with this driver. Say Y if you have one of these Ethernet adapters. 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 sk_mca.o. If you want to compile it as a module, say M here and read as well as . IBM LAN Adapter/A support CONFIG_IBMLANA This is a Micro Channel Ethernet adapter. You need to set CONFIG_MCA to use this driver. It is both available as an in-kernel driver and 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 as well as . The only currently supported card is the IBM LAN Adapter/A for Ethernet. It will both support 16K and 32K memory windows, however a 32K window gives a better security against packet losses. Usage of multiple boards with this driver should be possible, but has not been tested up to now due to lack of hardware. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ibmlana.o. EISA, VLB, PCI and on board controllers CONFIG_NET_PCI This is another class of network cards which attach directly to the bus. If you have one of those, say Y and read the Ethernet-HOWTO, available from . 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 this class of network cards. If you say Y, you will be asked for your specific card in the following questions. If you are unsure, say Y. AMD PCnet32 (VLB and PCI) support CONFIG_PCNET32 If you have a PCnet32 or PCnetPCI based network (Ethernet) card, answer Y here and read the Ethernet-HOWTO, available from . 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 pcnet32.o. If you want to compile it as a module, say M here and read as well as . Ansel Communications EISA 3200 support CONFIG_AC3200 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 ac3200.o. If you want to compile it as a module, say M here and read as well as . Mylex EISA LNE390A/LNE390B support CONFIG_LNE390 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 lne390.o. If you want to compile it as a module, say M here and read as well as . Novell/Eagle/Microdyne NE3210 EISA support CONFIG_NE3210 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Note that this driver will NOT WORK for NE3200 cards as they are completely different. 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 ne3210.o. If you want to compile it as a module, say M here and read as well as . Apricot Xen-II on board Ethernet CONFIG_APRICOT If you have a network (Ethernet) controller of this type, say Y and read the Ethernet-HOWTO, available from . 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 as well as . The module will be called apricot.o. Generic DECchip & DIGITAL EtherWORKS PCI/EISA CONFIG_DE4X5 This is support for the DIGITAL series of PCI/EISA Ethernet cards. These include the DE425, DE434, DE435, DE450 and DE500 models. If you have a network card of this type, say Y and read the Ethernet-HOWTO, available from . More specific information is contained in . 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 de4x5.o. If you want to compile it as a module, say M here and read as well as . DECchip Tulip (dc21x4x) PCI support CONFIG_TULIP This driver is developed for the SMC EtherPower series Ethernet cards and also works with cards based on the DECchip 21040/21041/21140 (Tulip series) chips. Some LinkSys PCI cards are of this type. (If your card is NOT SMC EtherPower 10/100 PCI (smc9332dst), you can also try the driver for "Generic DECchip" cards, above. However, most people with a network card of this type will say Y here.) Do read the Ethernet-HOWTO, available from . More specific information is contained in . 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 tulip.o. If you want to compile it as a module, say M here and read as well as . New Tulip bus configuration CONFIG_TULIP_MWI This configures your Tulip card specifically for the card and system cache line size type you are using. This is experimental code, not yet tested on many boards. If unsure, say N. Hotplug firmware loading support (EXPERIMENTAL) CONFIG_FW_LOADER This option is provided for the case where no in-kernel-tree modules require hotplug firmware loading support, but a module built outside the kernel tree does. Use PCI shared memory for NIC registers CONFIG_TULIP_MMIO Use PCI shared memory for the NIC registers, rather than going through the Tulip's PIO (programmed I/O ports). Faster, but could produce obscure bugs if your mainboard has memory controller timing issues. If in doubt, say N. Digi Intl. RightSwitch SE-X support CONFIG_DGRS This is support for the Digi International RightSwitch series of PCI/EISA Ethernet switch cards. These include the SE-4 and the SE-6 models. If you have a network card of this type, say Y and read the Ethernet-HOWTO, available from . More specific information is contained in . 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 dgrs.o. If you want to compile it as a module, say M here and read as well as . EtherExpress Pro/100 support CONFIG_EEPRO100 If you have an Intel EtherExpress PRO/100 PCI network (Ethernet) card, say Y and read the Ethernet-HOWTO, available from . 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 eepro100.o. If you want to compile it as a module, say M here and read as well as . Enable Power Management CONFIG_EEPRO100_PM Many Intel EtherExpress PRO/100 PCI network cards are capable of providing power management capabilities. To make use of these capabilities, say Y. WARNING: This option is intended for kernel developers and testers. It is still very experimental, with some people reporting complete lockups. It is recommended to say N here. Myson MTD-8xx PCI Ethernet support CONFIG_FEALNX Say Y here to support the Mysom MTD-800 family of PCI-based Ethernet cards. Specifications and data at . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called fealnx.o. LP486E on board Ethernet CONFIG_LP486E Say Y here to support the 82596-based on-board Ethernet controller for the Panther motherboard, which is one of the two shipped in the Intel Professional Workstation. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called lp486e.o. ICL EtherTeam 16i/32 support CONFIG_ETH16I If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 eth16i.o. If you want to compile it as a module, say M here and read as well as . TI ThunderLAN support CONFIG_TLAN If you have a PCI Ethernet network card based on the ThunderLAN chip which is supported by this driver, say Y and read the Ethernet-HOWTO, available from . Devices currently supported by this driver are Compaq Netelligent, Compaq NetFlex and Olicom cards. Please read the file for more 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 will be called tlan.o. If you want to compile it as a module, say M here and read as well as . Please email feedback to torben.mathiasen@compaq.com. VIA Rhine support CONFIG_VIA_RHINE If you have a VIA "rhine" based network card (Rhine-I (3043) or Rhine-2 (VT86c100A)), say Y here. 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 via-rhine.o. If you want to compile it as a module, say M here and read as well as . VIA Rhine MMIO support (EXPERIMENTAL) CONFIG_VIA_RHINE_MMIO This instructs the driver to use PCI shared memory (MMIO) instead of programmed I/O ports (PIO). Enabling this gives an improvement in processing time in parts of the driver. It is not known if this works reliably on all "rhine" based cards, but it has been tested successfully on some DFE-530TX adapters. If unsure, say N. Davicom DM910x/DM980x support CONFIG_DM9102 This driver is for DM9102(A)/DM9132/DM9801 compatible PCI cards from Davicom (). If you have such a network (Ethernet) card, say Y. Some information is contained in the file . 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 dmfe.o. If you want to compile it as a module, say M here and read as well as . Racal-Interlan EISA ES3210 support CONFIG_ES3210 If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 es3210.o. If you want to compile it as a module, say M here and read as well as . SMC EtherPower II CONFIG_EPIC100 This driver is for the SMC EtherPower II 9432 PCI Ethernet NIC, which is based on the SMC83c17x (EPIC/100). More specific information and updates are available from . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called epic100.o. DEC LANCE Ethernet controller support CONFIG_DECLANCE This driver is for the series of Ethernet controllers produced by DEC (now Compaq) based on the AMD Lance chipset, including the DEPCA series. (This chipset is better known via the NE2100 cards.) SGI Seeq Ethernet controller support CONFIG_SGISEEQ Say Y here if you have an Seeq based Ethernet network card. This is used in many Silicon Graphics machines. Sundance Alta PCI Ethernet support CONFIG_SUNDANCE This driver is for the Sundance "Alta" chip. More specific information and updates are available from . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called sundance.o. Sundance Alta memory-mapped I/O support CONFIG_SUNDANCE_MMIO Enable memory-mapped I/O for interaction with Sundance NIC registers. Do NOT enable this by default, PIO (enabled when MMIO is disabled) is known to solve bugs on certain chips. If unsure, say N. Sun3/Sun3x on-board LANCE support CONFIG_SUN3LANCE Most Sun3 and Sun3x motherboards (including the 3/50, 3/60 and 3/80) featured an AMD Lance 10Mbit Ethernet controller on board; say Y here to compile in the Linux driver for this and enable Ethernet. General Linux information on the Sun 3 and 3x series (now discontinued) is at . If you're not building a kernel for a Sun 3, say N. Sun3 on-board Intel 82586 support CONFIG_SUN3_82586 This driver enables support for the on-board Intel 82586 based Ethernet adapter found on Sun 3/1xx and 3/2xx motherboards. Note that this driver does not support 82586-based adapters on additional VME boards. Winbond W89c840 PCI Ethernet support CONFIG_WINBOND_840 This driver is for the Winbond W89c840 chip. It also works with the TX9882 chip on the Compex RL100-ATX board. More specific information and updates are available from . Zenith Z-Note support CONFIG_ZNET The Zenith Z-Note notebook computer has a built-in network (Ethernet) card, and this is the Linux driver for it. Note that the IBM Thinkpad 300 is compatible with the Z-Note and is also supported by this driver. Read the Ethernet-HOWTO, available from . Philips SAA9730 Ethernet support CONFIG_LAN_SAA9730 The SAA9730 is a combined multimedia and peripheral controller used in thin clients, Internet access terminals, and diskless workstations. See . Pocket and portable adapters CONFIG_NET_POCKET Cute little network (Ethernet) devices which attach to the parallel port ("pocket adapters"), commonly used with laptops. If you have one of those, say Y and read the Ethernet-HOWTO, available from . If you want to plug a network (or some other) card into the PCMCIA (or PC-card) slot of your laptop instead (PCMCIA is the standard for credit card size extension cards used by all modern laptops), you need the pcmcia-cs package (location contained in the file ) and you can say N here. Laptop users should read the Linux Laptop home page at . 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 this class of network devices. If you say Y, you will be asked for your specific device in the following questions. AT-LAN-TEC/RealTek pocket adapter support CONFIG_ATP This is a network (Ethernet) device which attaches to your parallel port. Read as well as the Ethernet-HOWTO, available from , if you want to use this. If you intend to use this driver, you should have said N to the "Parallel printer support", because the two drivers don't like each other. 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 . The module will be called atp.o. D-Link DE600 pocket adapter support CONFIG_DE600 This is a network (Ethernet) device which attaches to your parallel port. Read as well as the Ethernet-HOWTO, available from , if you want to use this. It is possible to have several devices share a single parallel port 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 . The module will be called de600.o. D-Link DE620 pocket adapter support CONFIG_DE620 This is a network (Ethernet) device which attaches to your parallel port. Read as well as the Ethernet-HOWTO, available from , if you want to use this. It is possible to have several devices share a single parallel port 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 . The module will be called de620.o. Token Ring driver support CONFIG_TR Token Ring is IBM's way of communication on a local network; the rest of the world uses Ethernet. To participate on a Token Ring network, you need a special Token ring network card. If you are connected to such a Token Ring network and want to use your Token Ring card under Linux, say Y here and to the driver for your particular card below and read the Token-Ring mini-HOWTO, available from . Most people can say N here. IBM Tropic chipset based adapter support CONFIG_IBMTR This is support for all IBM Token Ring cards that don't use DMA. If you have such a beast, say Y and read the Token-Ring mini-HOWTO, available from . Warning: this driver will almost definitely fail if more than one active Token Ring card is present. 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 ibmtr.o. If you want to compile it as a module, say M here and read . IBM Olympic chipset PCI adapter support CONFIG_IBMOL This is support for all non-Lanstreamer IBM PCI Token Ring Cards. Specifically this is all IBM PCI, PCI Wake On Lan, PCI II, PCI II Wake On Lan, and PCI 100/16/4 adapters. If you have such an adapter, say Y and read the Token-Ring mini-HOWTO, available from . 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 olympic.o. If you want to compile it as a module, say M here and read . Also read or check the Linux Token Ring Project site for the latest information at . IBM Lanstreamer chipset PCI adapter support CONFIG_IBMLS This is support for IBM Lanstreamer PCI Token Ring Cards. If you have such an adapter, say Y and read the Token-Ring mini-HOWTO, available from . This driver is also available as a modules ( = code which can be inserted in and removed from the running kernel whenever you want). The modules will be called lanstreamer.o. If you want to compile it as a module, say M here and read . Generic TMS380 Token Ring ISA/PCI/MCA/EISA adapter support CONFIG_TMS380TR This driver provides generic support for token ring adapters based on the Texas Instruments TMS380 series chipsets. This includes the SysKonnect TR4/16(+) ISA (SK-4190), SysKonnect TR4/16(+) PCI (SK-4590), SysKonnect TR4/16 PCI (SK-4591), Compaq 4/16 PCI, Thomas-Conrad TC4048 4/16 PCI, and several Madge adapters. If you say Y here, you will be asked to select which cards to support below. If you're using modules, each class of card will be supported by a separate module. If you have such an adapter and would like to use it, say Y and read the Token-Ring mini-HOWTO, available from . Also read the file or check . 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 tms380tr.o. If you want to compile it as a module, say M here and read . Generic TMS380 PCI support CONFIG_TMSPCI This tms380 module supports generic TMS380-based PCI cards. These cards are known to work: - Compaq 4/16 TR PCI - SysKonnect TR4/16 PCI (SK-4590/SK-4591) - Thomas-Conrad TC4048 PCI 4/16 - 3Com Token Link Velocity This driver is available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called tmspci.o. If you want to compile it as a module, say M here and read . Generic TMS380 ISA support CONFIG_TMSISA This tms380 module supports generic TMS380-based ISA cards. These cards are known to work: - SysKonnect TR4/16 ISA (SK-4190) This driver is available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called tmsisa.o. If you want to compile it as a module, say M here and read . Madge Smart 16/4 PCI Mk2 support CONFIG_ABYSS This tms380 module supports the Madge Smart 16/4 PCI Mk2 cards (51-02). This driver is available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called abyss.o. If you want to compile it as a module, say M here and read . Madge Smart 16/4 Ringnode MicroChannel CONFIG_MADGEMC This tms380 module supports the Madge Smart 16/4 MC16 and MC32 MicroChannel adapters. This driver is available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called madgemc.o. If you want to compile it as a module, say M here and read . SMC ISA/MCA Token Ring adapter support CONFIG_SMCTR This is support for the ISA and MCA SMC Token Ring cards, specifically SMC TokenCard Elite (8115T) and SMC TokenCard Elite/A (8115T/A) adapters. If you have such an adapter and would like to use it, say Y or M and read the Token-Ring mini-HOWTO, available from and the file . 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 smctr.o. If you want to compile it as a module, say M here and read . 3COM 3C359 Token Link Velocity XL PCI adapter support CONFIG_3C359 This is support for the 3Com PCI Velocity XL cards, specifically the 3Com 3C359, please note this is not for the 3C339 cards, you should use the tms380 driver instead. If you have such an adapter, say Y and read the Token-Ring mini-HOWTO, available from . 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 will be called 3c359.o. If you want to compile it as a module, say M here and read Documentation/modules.txt. Also read the file or check the Linux Token Ring Project site for the latest information at Sun Happy Meal 10/100baseT support CONFIG_HAPPYMEAL 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 . Sun Lance support CONFIG_SUNLANCE 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 . Sun BigMAC 10/100baseT support CONFIG_SUNBMAC 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 . Sun QuadEthernet support CONFIG_SUNQE 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 . Traffic Shaper CONFIG_SHAPER The traffic shaper is a virtual network device that allows you to limit the rate of outgoing data flow over some other network device. The traffic that you want to slow down can then be routed through these virtual devices. See for more information. An alternative to this traffic shaper is the experimental Class-Based Queueing (CBQ) scheduling support which you get if you say Y to "QoS and/or fair queueing" above. To set up and configure shaper devices, you need the shapecfg program, available from in the shaper package. 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 shaper.o. If you want to compile it as a module, say M here and read . If unsure, say N. FDDI driver support CONFIG_FDDI Fiber Distributed Data Interface is a high speed local area network design; essentially a replacement for high speed Ethernet. FDDI can run over copper or fiber. If you are connected to such a network and want a driver for the FDDI card in your computer, say Y here (and then also Y to the driver for your FDDI card, below). Most people will say N. Digital DEFEA and DEFPA adapter support CONFIG_DEFXX This is support for the DIGITAL series of EISA (DEFEA) and PCI (DEFPA) controllers which can connect you to a local FDDI network. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called defxx.o. SysKonnect FDDI PCI support CONFIG_SKFP Say Y here if you have a SysKonnect FDDI PCI adapter. The following adapters are supported by this driver: - SK-5521 (SK-NET FDDI-UP) - SK-5522 (SK-NET FDDI-UP DAS) - SK-5541 (SK-NET FDDI-FP) - SK-5543 (SK-NET FDDI-LP) - SK-5544 (SK-NET FDDI-LP DAS) - SK-5821 (SK-NET FDDI-UP64) - SK-5822 (SK-NET FDDI-UP64 DAS) - SK-5841 (SK-NET FDDI-FP64) - SK-5843 (SK-NET FDDI-LP64) - SK-5844 (SK-NET FDDI-LP64 DAS) - Netelligent 100 FDDI DAS Fibre SC - Netelligent 100 FDDI SAS Fibre SC - Netelligent 100 FDDI DAS UTP - Netelligent 100 FDDI SAS UTP - Netelligent 100 FDDI SAS Fibre MIC Read for information about the driver. Questions concerning this driver can be addressed to: linux@syskonnect.de 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 . This is recommended. The module will be called skfp.o. HIgh Performance Parallel Interface (HIPPI) support CONFIG_HIPPI HIgh Performance Parallel Interface (HIPPI) is a 800Mbit/sec and 1600Mbit/sec dual-simplex switched or point-to-point network. HIPPI can run over copper (25m) or fiber (300m on multi-mode or 10km on single-mode). HIPPI networks are commonly used for clusters and to connect to super computers. If you are connected to a HIPPI network and have a HIPPI network card in your computer that you want to use under Linux, say Y here (you must also remember to enable the driver for your HIPPI card below). Most people will say N here. Essential RoadRunner HIPPI PCI adapter support CONFIG_ROADRUNNER Say Y here if this is your PCI HIPPI network card. 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 rrunner.o. If you want to compile it as a module, say M here and read . If unsure, say N. Use large TX/RX rings CONFIG_ROADRUNNER_LARGE_RINGS If you say Y here, the RoadRunner driver will preallocate up to 2 MB of additional memory to allow for fastest operation, both for transmitting and receiving. This memory cannot be used by any other kernel code or by user space programs. Say Y here only if you have the memory. Acorn Ether1 support CONFIG_ARM_ETHER1 If you have an Acorn system with one of these (AKA25) network cards, you should say Y to this option if you wish to use it with Linux. Acorn/ANT Ether3 support CONFIG_ARM_ETHER3 If you have an Acorn system with one of these network cards, you should say Y to this option if you wish to use it with Linux. I-Cubed EtherH support CONFIG_ARM_ETHERH If you have an Acorn system with one of these network cards, you should say Y to this option if you wish to use it with Linux. EBSA-110 Ethernet interface (AM79C961A) CONFIG_ARM_AM79C961A If you wish to compile a kernel for the EBSA-110, then you should always answer Y to this. Support Thumb instructions CONFIG_ARM_THUMB Say Y if you want to have kernel support for ARM Thumb instructions, fault handlers, and system calls. The Thumb instruction set is a compressed form of the standard ARM instruction set resulting in smaller binaries at the expense of slightly less efficient code. If you don't know what this all is, saying Y is a safe choice. Support CD-ROM drives that are not SCSI or IDE/ATAPI CONFIG_CD_NO_IDESCSI 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 . 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 . 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). Sony CDU31A/CDU33A CD-ROM support CONFIG_CDU31A These CD-ROM drives have a spring-pop-out caddyless drawer, and a rectangular green LED centered beneath it. NOTE: these CD-ROM drives will not be auto detected by the kernel at boot time; you have to provide the interface address as an option to the kernel at boot time as described in or fill in your parameters into . Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel. If you say Y here, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 cdu31a.o. If you want to compile it as a module, say M here and read . Standard Mitsumi [no XA/Multisession] CD-ROM support CONFIG_MCD This is the older of the two drivers for the older Mitsumi models LU-005, FX-001 and FX-001D. This is not the right driver for the FX-001DE and the triple or quad speed models (all these are IDE/ATAPI models). Please also the file . With the old LU-005 model, the whole drive chassis slides out for cd insertion. The FX-xxx models use a motorized tray type mechanism. Note that this driver does not support XA or MultiSession CDs (PhotoCDs). There is a new driver (next question) which can do this. If you want that one, say N here. If you say Y here, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 mcd.o. If you want to compile it as a module, say M here and read . IRQ channel for Mitsumi CD-ROM CONFIG_MCD_IRQ This allows you to specify the default value of the IRQ used by the driver. This setting can be overridden by passing the "mcd=" parameter to the kernel at boot time (or at module load time if you said M to "Standard Mitsumi CD-ROM support"). I/O base address for Mitsumi CD-ROM CONFIG_MCD_BASE This allows you to specify the default value of the I/O base address used by the driver. This setting can be overridden by passing the "mcd=" parameter to the kernel at boot time (or at module load time if you said M to "Standard Mitsumi CD-ROM support"). Mitsumi [XA/MultiSession] CD-ROM support CONFIG_MCDX Use this driver if you want to be able to read XA or MultiSession CDs (PhotoCDs) as well as ordinary CDs with your Mitsumi LU-005, FX-001 or FX-001D CD-ROM drive. In addition, this driver uses much less kernel memory than the old one, if that is a concern. This driver is able to support more than one drive, but each drive needs a separate interface card. Please read the file . If you say Y here, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 mcdx.o. If you want to compile it as a module, say M here and read . Matsushita/Panasonic/Creative, Longshine, TEAC CD-ROM support CONFIG_SBPCD This driver supports most of the drives which use the Panasonic or Sound Blaster interface. Please read the file . The Matsushita CR-521, CR-522, CR-523, CR-562, CR-563 drives (sometimes labeled "Creative"), the Creative Labs CD200, the Longshine LCS-7260, the "IBM External ISA CD-ROM" (in fact a CR-56x model), the TEAC CD-55A fall under this category. Some other "electrically compatible" drives (Vertos, Genoa, some Funai models) are currently not supported; for the Sanyo H94A drive currently a separate driver (asked later) is responsible. Most drives have a uniquely shaped faceplate, with a caddyless motorized drawer, but without external brand markings. The older CR-52x drives have a caddy and manual loading/eject, but still no external markings. The driver is able to do an extended auto-probing for interface addresses and drive types; this can help to find facts in cases you are not sure, but can consume some time during the boot process if none of the supported drives gets found. Once your drive got found, you should enter the reported parameters into and set "DISTRIBUTION 0" there. This driver can support up to four CD-ROM controller cards, and each card can support up to four CD-ROM drives; if you say Y here, you will be asked how many controller cards you have. If compiled as a module, only one controller card (but with up to four drives) is usable. If you say Y here, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 sbpcd.o. If you want to compile it as a module, say M here and read . Matsushita/Panasonic, ... second CD-ROM controller support CONFIG_SBPCD2 Say Y here only if you have two CD-ROM controller cards of this type (usually only if you have more than four drives). You should enter the parameters for the second, third and fourth interface card into before compiling the new kernel. Read the file . Matsushita/Panasonic, ... third CD-ROM controller support CONFIG_SBPCD3 Say Y here only if you have three CD-ROM controller cards of this type (usually only if you have more than six drives). You should enter the parameters for the second, third and fourth interface card into before compiling the new kernel. Read the file . Matsushita/Panasonic, ... fourth CD-ROM controller support CONFIG_SBPCD4 Say Y here only if you have four CD-ROM controller cards of this type (usually only if you have more than eight drives). You should enter the parameters for the second, third and fourth interface card into before compiling the new kernel. Read the file . Aztech/Orchid/Okano/Wearnes/TXC/CyDROM CD-ROM support CONFIG_AZTCD This is your driver if you have an Aztech CDA268-01A, Orchid CD-3110, Okano or Wearnes CDD110, Conrad TXC, or CyCD-ROM CR520 or CR540 CD-ROM drive. This driver -- just like all these CD-ROM drivers -- is NOT for CD-ROM drives with IDE/ATAPI interfaces, such as Aztech CDA269-031SE. Please read the file . If you say Y here, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 aztcd.o. If you want to compile it as a module, say M here and read . Sony CDU535 CD-ROM support CONFIG_CDU535 This is the driver for the older Sony CDU-535 and CDU-531 CD-ROM drives. Please read the file . If you say Y here, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 sonycd535.o. If you want to compile it as a module, say M here and read . Goldstar R420 CD-ROM support CONFIG_GSCD If this is your CD-ROM drive, say Y here. As described in the file , you might have to change a setting in the file before compiling the kernel. Please read the file . If you say Y here, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 gscd.o. If you want to compile it as a module, say M here and read . Philips/LMS CM206 CD-ROM support CONFIG_CM206 If you have a Philips/LMS CD-ROM drive cm206 in combination with a cm260 host adapter card, say Y here. Please also read the file . If you say Y here, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 cm206.o. If you want to compile it as a module, say M here and read . Optics Storage DOLPHIN 8000AT CD-ROM support CONFIG_OPTCD This is the driver for the 'DOLPHIN' drive with a 34-pin Sony compatible interface. It also works with the Lasermate CR328A. If you have one of those, say Y. This driver does not work for the Optics Storage 8001 drive; use the IDE-ATAPI CD-ROM driver for that one. Please read the file . If you say Y here, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 optcd.o. If you want to compile it as a module, say M here and read . Sanyo CDR-H94A CD-ROM support CONFIG_SJCD If this is your CD-ROM drive, say Y here and read the file . You should then also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on 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 sjcd.o. If you want to compile it as a module, say M here and read . ISP16/MAD16/Mozart soft configurable cdrom interface support CONFIG_ISP16_CDI These are sound cards with built-in cdrom interfaces using the OPTi 82C928 or 82C929 chips. Say Y here to have them detected and possibly configured at boot time. In addition, You'll have to say Y to a driver for the particular cdrom drive you have attached to the card. Read 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 will be called isp16.o. If you want to compile it as a module, say M here and read . iSeries Virtual I/O CD Support CONFIG_VIOCD If you are running Linux on an IBM iSeries system and you want to read a CD drive owned by OS/400, say Y here. Quota support CONFIG_QUOTA If you say Y here, you will be able to set per user limits for disk usage (also called disk quotas). Currently, it works only for the ext2 file system. You need additional software in order to use quota support; for details, read the Quota mini-HOWTO, available from . Probably the quota support is only useful for multi user systems. If unsure, say N. Memory Technology Device (MTD) support CONFIG_MTD Memory Technology Devices are flash, RAM and similar chips, often used for solid state file systems on embedded devices. This option will provide the generic support for MTD drivers to register themselves with the kernel and for potential users of MTD devices to enumerate the devices which are present and obtain a handle on them. It will also allow you to select individual drivers for particular hardware and users of MTD devices. If unsure, 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). If you want to compile it as a module, say M here and read . The module will be called mtdcore.o MTD debugging support CONFIG_MTD_DEBUG This turns on low-level debugging for the entire MTD sub-system. Normally, you should say 'N'. MTD partitioning support CONFIG_MTD_PARTITIONS If you have a device which needs to divide its flash chip(s) up into multiple 'partitions', each of which appears to the user as a separate MTD device, you require this option to be enabled. If unsure, say '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 . The module will be called mtdpart.o Note, however, that you don't need this option for the DiskOnChip devices. Partitioning on NFTL 'devices' is a different - that's the 'normal' form of partitioning used on a block device. RedBoot partition table parsing CONFIG_MTD_REDBOOT_PARTS RedBoot is a ROM monitor and bootloader which deals with multiple 'images' in flash devices by putting a table in the last erase block of the device, similar to a partition table, which gives the offsets, lengths and names of all the images stored in the flash. If you need code which can detect and parse this table, and register MTD 'partitions' corresponding to each image in the table, enable this option. You will still need the parsing functions to be called by the driver for your particular device. It won't happen automatically. The SA1100 map driver (CONFIG_MTD_SA1100) has an option for this, for example. 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 . The module will be called redboot.o Compaq bootldr partition table parsing CONFIG_MTD_BOOTLDR_PARTS The Compaq bootldr deals with multiple 'images' in flash devices by putting a table in one of the first erase blocks of the device, similar to a partition table, which gives the offsets, lengths and names of all the images stored in the flash. If you need code which can detect and parse this table, and register MTD 'partitions' corresponding to each image in the table, enable this option. You will still need the parsing functions to be called by the driver for your particular device. It won't happen automatically. The SA1100 map driver (CONFIG_MTD_SA1100) has an option for this, for example. ARM Firmware Suite flash layout / partition parsing CONFIG_MTD_AFS_PARTS The ARM Firmware Suite allows the user to divide flash devices into multiple 'images'. Each such image has a header containing its name and offset/size etc. If you need code which can detect and parse these tables, and register MTD 'partitions' corresponding to each image detected, enable this option. You will still need the parsing functions to be called by the driver for your particular device. It won't happen automatically. The 'armflash' map driver (CONFIG_MTD_ARMFLASH) does this, for example. MTD debugging verbosity (0 = quiet, 3 = noisy) CONFIG_MTD_DEBUG_VERBOSE Determines the verbosity level of the MTD debugging messages. Direct chardevice access to MTD devices CONFIG_MTD_CHAR This provides a character device for each MTD device present in the system, allowing the user to read and write directly to the memory chips, and also use ioctl() to obtain information about the device, or to erase parts of it. 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 . The module will be called mtdchar.o Caching block device access to MTD devices CONFIG_MTD_BLOCK Although most flash chips have an erase size too large to be useful as block devices, it is possible to use MTD devices which are based on RAM chips in this manner. This block device is a user of MTD devices performing that function. At the moment, it is also required for the Journalling Flash File System(s) to obtain a handle on the MTD device when it's mounted (although JFFS and JFFS2 don't actually use any of the functionality of the mtdblock device). Later, it may be extended to perform read/erase/modify/write cycles on flash chips to emulate a smaller block size. Needless to say, this is very unsafe, but could be useful for file systems which are almost never written to. You do not need this option for use with the DiskOnChip devices. For those, enable NFTL support (CONFIG_NFTL) instead. 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 . The module will be called mtdblock.o Readonly block device access to MTD devices CONFIG_MTD_BLOCK_RO This allows you to mount read-only file systems (such as cramfs) from an MTD device, without the overhead (and danger) of the caching driver. You do not need this option for use with the DiskOnChip devices. For those, enable NFTL support (CONFIG_NFTL) instead. 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 . The module will be called mtdblock_ro.o FTL (Flash Translation Layer) support CONFIG_FTL This provides support for the original Flash Translation Layer which is part of the PCMCIA specification. It uses a kind of pseudo- file system on a flash device to emulate a block device with 512-byte sectors, on top of which you put a 'normal' file system. You may find that the algorithms used in this code are patented unless you live in the Free World where software patents aren't legal - in the USA you are only permitted to use this on PCMCIA hardware, although under the terms of the GPL you're obviously permitted to copy, modify and distribute the code as you wish. Just not use it. 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 . The module will be called ftl.o NFTL (NAND Flash Translation Layer) support CONFIG_NFTL This provides support for the NAND Flash Translation Layer which is used on M-Systems' DiskOnChip devices. It uses a kind of pseudo- file system on a flash device to emulate a block device with 512-byte sectors, on top of which you put a 'normal' file system. You may find that the algorithms used in this code are patented unless you live in the Free World where software patents aren't legal - in the USA you are only permitted to use this on DiskOnChip hardware, although under the terms of the GPL you're obviously permitted to copy, modify and distribute the code as you wish. Just not use it. 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 . The module will be called nftl.o Write support for NFTL (EXPERIMENTAL) CONFIG_NFTL_RW If you're lucky, this will actually work. Don't whinge if it doesn't. Send mail to the MTD mailing list if you want to help to make it more reliable. Detect flash chips by Common Flash Interface (CFI) probe CONFIG_MTD_CFI The Common Flash Interface specification was developed by Intel, AMD and other flash manufactures that provides a universal method for probing the capabilities of flash devices. If you wish to support any device that is CFI-compliant, you need to enable this option. Visit for more information on CFI. 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 . The module will be called cfi_probe.o CFI Advanced configuration options CONFIG_MTD_CFI_ADV_OPTIONS If you need to specify a specific endianness for access to flash chips, or if you wish to reduce the size of the kernel by including support for only specific arrangements of flash chips, say 'Y'. This option does not directly affect the code, but will enable other configuration options which allow you to do so. If unsure, say 'N'. Specific CFI Flash geometry selection CONFIG_MTD_CFI_GEOMETRY This option does not affect the code directly, but will enable some other configuration options which would allow you to reduce the size of the kernel by including support for only certain arrangements of CFI chips. If unsure, say 'N' and all options which are supported by the current code will be enabled. Support 8-bit buswidth CONFIG_MTD_CFI_B1 If you wish to support CFI devices on a physical bus which is 8 bits wide, say 'Y'. Support 16-bit buswidth CONFIG_MTD_CFI_B2 If you wish to support CFI devices on a physical bus which is 16 bits wide, say 'Y'. Support 32-bit buswidth CONFIG_MTD_CFI_B4 If you wish to support CFI devices on a physical bus which is 32 bits wide, say 'Y'. Support 1-chip flash interleave CONFIG_MTD_CFI_I1 If your flash chips are not interleaved - i.e. you only have one flash chip addressed by each bus cycle, then say 'Y'. Support 2-chip flash interleave CONFIG_MTD_CFI_I2 If your flash chips are interleaved in pairs - i.e. you have two flash chips addressed by each bus cycle, then say 'Y'. Support 4-chip flash interleave CONFIG_MTD_CFI_I4 If your flash chips are interleaved in fours - i.e. you have four flash chips addressed by each bus cycle, then say 'Y'. # Choice: mtd_data_swap Flash cmd/query data swapping CONFIG_MTD_CFI_NOSWAP This option defines the way in which the CPU attempts to arrange data bits when writing the 'magic' commands to the chips. Saying 'NO', which is the default when CONFIG_MTD_CFI_ADV_OPTIONS isn't enabled, means that the CPU will not do any swapping; the chips are expected to be wired to the CPU in 'host-endian' form. Specific arrangements are possible with the BIG_ENDIAN_BYTE and LITTLE_ENDIAN_BYTE, if the bytes are reversed. If you have a LART, on which the data (and address) lines were connected in a fashion which ensured that the nets were as short as possible, resulting in a bit-shuffling which seems utterly random to the untrained eye, you need the LART_ENDIAN_BYTE option. Yes, there really exists something sicker than PDP-endian :) CFI support for Intel/Sharp Extended Command Set chips CONFIG_MTD_CFI_INTELEXT The Common Flash Interface defines a number of different command sets which a CFI-compliant chip may claim to implement. This code provides support for one of those command sets, used on Intel StrataFlash and other parts. CFI support for AMD/Fujitsu Standard Command Set chips CONFIG_MTD_CFI_AMDSTD The Common Flash Interface defines a number of different command sets which a CFI-compliant chip may claim to implement. This code provides support for one of those command sets, used on chips chips including the AMD Am29LV320. CFI support for Intel/Sharp Standard Commands CONFIG_MTD_CFI_INTELSTD The Common Flash Interface defines a number of different command sets which a CFI-compliant chip may claim to implement. This code provides support for one of those command sets. pre-CFI Sharp chip support CONFIG_MTD_SHARP This option enables support for flash chips using Sharp-compatible commands, including some which are not CFI-compatible and hence cannot be used with the CONFIG_MTD_CFI_INTELxxx options. 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 . The module will be called sharp.o AMD compatible flash chip support (non-CFI) CONFIG_MTD_AMDSTD This option enables support for flash chips using AMD-compatible commands, including some which are not CFI-compatible and hence cannot be used with the CONFIG_MTD_CFI_AMDSTD option. It also works on AMD compatible chips that do conform to CFI. 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 . The module will be called amd_flash.o Support for RAM chips in bus mapping CONFIG_MTD_RAM This option enables basic support for RAM chips accessed through a bus mapping driver. 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 . The module will be called map_ram.o Support for ROM chips in bus mapping CONFIG_MTD_ROM This option enables basic support for ROM chips accessed through a bus mapping driver. 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 . The module will be called map_rom.o JEDEC device support CONFIG_MTD_JEDEC Enable older older JEDEC flash interface devices for self programming flash. It is commonly used in older AMD chips. It is only called JEDEC because the JEDEC association distributes the identification codes for the chips. WARNING!!!! This code does not compile and is incomplete as are the specific JEDEC devices drivers. 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 . The module will be called jedec.o CFI Flash device mapped on StrongARM SA11x0 CONFIG_MTD_SA1100 This enables access to the flash chips on most platforms based on the SA1100 and SA1110, including the Assabet and the Compaq iPAQ. If you have such a board, say 'Y'. Support for Compaq bootldr partition tables on SA11x0 CONFIG_MTD_SA1100_REDBOOT_PARTITIONS Enabling this option will cause the kernel to look for a RedBoot FIS (Flash Image System) table in the last erase block of the flash chips detected. If you are using RedBoot on your SA11x0-based board and want Linux to present 'partitions' matching the images which RedBoot has listed, say 'Y'. Support for Compaq bootldr partition tables on SA11x0 CONFIG_MTD_SA1100_BOOTLDR_PARTITIONS Enabling this option will cause the kernel to look for a Compaq bootldr partition table on the flash chips detected. If you are using the Compaq bootldr on your SA11x0-based board and want Linux to present 'partitions' matching the images which the bootldr has listed, say 'Y'. Flash chip mapping in physical memory CONFIG_MTD_PHYSMAP This provides a 'mapping' driver which allows the CFI probe and command set driver code to communicate with flash chips which are mapped physically into the CPU's memory. You will need to configure the physical address and size of the flash chips on your particular board as well as the bus width. 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 . The module will be called physmap.o Physical start location of flash chip mapping CONFIG_MTD_PHYSMAP_START This is the physical memory location at which the flash chips are mapped on your particular target board. Refer to the memory map which should hopefully be in the documentation for your board. Physical length of flash chip mapping CONFIG_MTD_PHYSMAP_LEN This is the total length of the mapping of the flash chips on your particular board. If there is space, or aliases, in the physical memory map between the chips, this could be larger than the total amount of flash present. Refer to the memory map which should hopefully be in the documentation for your board. Buswidth of flash in bytes CONFIG_MTD_PHYSMAP_BUSWIDTH This is the total width of the data bus of the flash devices in octets. For example, if you have a data bus width of 32 bits, you would set the bus width octet value to 4. This is used internally by the CFI drivers. Flash chip mapping on Sun Microsystems boardsets CONFIG_MTD_SUN_UFLASH This provides a 'mapping' driver which supports the way in which user-programmable flash chips are connected on various Sun Microsystems boardsets. This driver will require CFI support in the kernel, so if you did not enable CFI previously, do that now. Flash chip mapping on Nora CONFIG_MTD_NORA If you had to ask, you don't have one. Say 'N'. Flash chip mapping on Photron PNC-2000 CONFIG_MTD_PNC2000 PNC-2000 is the name of Network Camera product from PHOTRON Ltd. in Japan. It uses CFI-compliant flash. Flash chip mapping on RPXlite or CLLF PPC board CONFIG_MTD_RPXLITE The RPXLite PowerPC board has CFI-compliant chips mapped in a strange sparse mapping. This 'mapping' driver supports that arrangement, allowing the CFI probe and command set driver code to communicate with the chips on the RPXLite board. More at . Flash chip mapping on AMD SC520 CDP board CONFIG_MTD_SC520CDP The SC520 CDP board has two banks of CFI-compliant chips and one Dual-in-line JEDEC chip. This 'mapping' driver supports that arrangement, implementing three MTD devices. 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 . The module will be called sc520cdp.o Flash chip mapping on Arcom Control Systems SBC-MediaGX CONFIG_MTD_SBC_GXX This provides a driver for the on-board flash of Arcom Control Systems' SBC-GXn family of boards, formerly known as SBC-MediaGX. By default the flash is split into 3 partitions which are accessed as separate MTD devices. This board utilizes Intel StrataFlash. More info at . CFI Flash device mapped on D-Box2 CONFIG_MTD_DBOX2 This enables access routines for the flash chips on the Nokia/Sagem D-Box 2 board. If you have one of these boards and would like to use the flash chips on it, say 'Y'. CFI Flash device mapped on the XScale IQ80310 board CONFIG_MTD_IQ80310 This enables access routines for the flash chips on the Intel XScale IQ80310 evaluation board. If you have one of these boards and would like to use the flash chips on it, say 'Y'. CFI Flash device mapped on AMD NetSc520 CONFIG_MTD_NETSC520 This enables access routines for the flash chips on the AMD NetSc520 demonstration board. If you have one of these boards and would like to use the flash chips on it, say 'Y'. Flash chip mapping on Arcom Control Systems ELAN-104NC CONFIG_MTD_ELAN_104NC This provides a driver for the on-board flash of the Arcom Control System's ELAN-104NC development board. By default the flash is split into 3 partitions which are accessed as separate MTD devices. This board utilizes Intel StrataFlash. More info at . Flash chip mapping on Compaq iPAQ/Bitsy CONFIG_MTD_BITSY This provides a driver for the on-board flash found in Compaq's iPAQ Palm PC and their research prototype the Itsy. iPAQ info at and the Itsy . Flash chip mapping on Compaq iPAQ/Bitsy CONFIG_MTD_DC21285 This provides a driver for the flash accessed using Intel's 21285 bridge used with Intel's StrongARM processors. More info at . Flash chip mapping on ITE QED-4N-S01B, Globespan IVR or custom board CONFIG_MTD_CSTM_MIPS_IXX This provides a mapping driver for the Integrated Tecnology Express, Inc (ITE) QED-4N-S01B eval board and the Globespan IVR Reference Board. It provides the necessary addressing, length, buswidth, vpp code and addition setup of the flash device for these boards. In addition, this mapping driver can be used for other boards via setting of the CONFIG_MTD_CSTM_MIPS_IXX_START/LEN/BUSWIDTH parameters. This mapping will provide one mtd device using one partition. The start address can be offset from the beginning of flash and the len can be less than the total flash device size to allow a window into the flash. Both CFI and JEDEC probes are called. Physical start location of flash chip mapping CONFIG_MTD_CSTM_MIPS_IXX_START This is the physical memory location that the MTD driver will use for the flash chips on your particular target board. Refer to the memory map which should hopefully be in the documentation for your board. Physical length of flash chip mapping CONFIG_MTD_CSTM_MIPS_IXX_LEN This is the total length that the MTD driver will use for the flash chips on your particular board. Refer to the memory map which should hopefully be in the documentation for your board. Physical bus width of flash mapping in bytes CONFIG_MTD_CSTM_MIPS_IXX_BUSWIDTH This is the total bus width of the mapping of the flash chips on your particular board. JEDEC Flash device mapped on Mixcom piggyback card CONFIG_MTD_MIXMEM This supports the paging arrangement for access to flash chips on the MixCOM piggyback card, allowing the flash chip drivers to get on with their job of driving the flash chips without having to know about the paging. If you have one of these boards, you probably want to enable this mapping driver. More info is at . JEDEC Flash device mapped on Octagon 5066 SBC CONFIG_MTD_OCTAGON This provides a 'mapping' driver which supports the way in which the flash chips are connected in the Octagon-5066 Single Board Computer. More information on the board is available at . 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 . The module will be called octagon-5066.o JEDEC Flash device mapped on Tempustech VMAX SBC301 CONFIG_MTD_VMAX This provides a 'mapping' driver which supports the way in which the flash chips are connected in the Tempustech VMAX SBC301 Single Board Computer. More information on the board is available at . 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 . The module will be called vmax301.o Support for NAND flash devices CONFIG_MTD_NAND This enables support for accessing all type of NAND flash devices. 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 . The module will be called nand.o Support for software ECC algorithm CONFIG_MTD_NAND_ECC This enables software-based ECC for use with NAND flash chips. It can detect and correct 1 bit errors per 256 byte blocks. This should be used to increase the reliability of the data stored and read on the device. Support for verify read after write CONFIG_MTD_NAND_VERIFY_WRITE This adds an extra check when data is written to the flash. The NAND flash device internally checks only bits transitioning from 1 to 0. There is a rare possibility that even though the device thinks the write was successful, a bit could have been flipped accidentally due to device wear, gamma rays, whatever. Enable this if you are really paranoid. Support for logical address accessing to NAND CONFIG_MTD_NAND_LOGICAL_ADDRESS_ACCESS This enables support for accessing to NAND via logical address if the NAND partition is corresponded to logical address accessing. Support for the SPIA board CONFIG_MTD_NAND_SPIA If you had to ask, you don't have one. Say 'N'. M-Systems Disk-On-Chip 1000 support CONFIG_MTD_DOC1000 This provides an MTD device driver for the M-Systems DiskOnChip 1000 devices, which are obsolete so you probably want to 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). If you want to compile it as a module, say M here and read . The module will be called doc1000.o M-Systems Disk-On-Chip 2000 and Millennium support CONFIG_MTD_DOC2000 This provides an MTD device driver for the M-Systems DiskOnChip 2000 and Millennium devices. Originally designed for the DiskOnChip 2000, it also now includes support for the DiskOnChip Millennium. If you have problems with this driver and the DiskOnChip Millennium, you may wish to try the alternative Millennium driver below. To use the alternative driver, you will need to undefine DOC_SINGLE_DRIVER in the source code. If you use this device, you probably also want to enable the NFTL 'NAND Flash Translation Layer' option below, which is used to emulate a block device by using a kind of file system on the flash chips. 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 . The module will be called doc2000.o Alternative Disk-On-Chip Millennium support CONFIG_MTD_DOC2001 This provides an alternative MTD device driver for the M-Systems DiskOnChip Millennium devices. Use this if you have problems with the combined DiskOnChip 2000 and Millennium driver above. To get the DiskOnChip probe code to load and use this driver instead of the other one, you will need to undefine DOC_SINGLE_DRIVER near the beginning of . If you use this device, you probably also want to enable the NFTL 'NAND Flash Translation Layer' option below, which is used to emulate a block device by using a kind of file system on the flash chips. 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 . The module will be called doc2001.o Probe for DiskOnChip devices CONFIG_MTD_DOCPROBE This isn't a real config option, it's derived. Advanced detection options for DiskOnChip CONFIG_MTD_DOCPROBE_ADVANCED This option allows you to specify nonstandard address at which to probe for a DiskOnChip, or to change the detection options. You are unlikely to need any of this unless you are using LinuxBIOS. Say 'N'. Probe for 0x55 0xAA BIOS Extension Signature CONFIG_MTD_DOCPROBE_55AA Check for the 0x55 0xAA signature of a DiskOnChip, and do not continue with probing if it is absent. The signature will always be present for a DiskOnChip 2000 or a normal DiskOnChip Millennium. Only if you have overwritten the first block of a DiskOnChip Millennium will it be absent. Enable this option if you are using LinuxBIOS or if you need to recover a DiskOnChip Millennium on which you have managed to wipe the first block. Physical address of DiskOnChip CONFIG_MTD_DOCPROBE_ADDRESS By default, the probe for DiskOnChip devices will look for a DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. This option allows you to specify a single address at which to probe for the device, which is useful if you have other devices in that range which get upset when they are probed. (Note that on PowerPC, the normal probe will only check at 0xE4000000.) Normally, you should leave this set to zero, to allow the probe at the normal addresses. Probe high addresses CONFIG_MTD_DOCPROBE_HIGH By default, the probe for DiskOnChip devices will look for a DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. This option changes to make it probe between 0xFFFC8000 and 0xFFFEE000. Unless you are using LinuxBIOS, this is unlikely to be useful to you. Say 'N'. Ramix PMC551 PCI Mezzanine ram card support CONFIG_MTD_PMC551 This provides a MTD device driver for the Ramix PMC551 RAM PCI card from Ramix Inc. . These devices come in memory configurations from 32M - 1G. If you have one, you probably want to enable this. If this driver is compiled as a module you get the ability to select the size of the aperture window pointing into the devices memory. What this means is that if you have a 1G card, normally the kernel will use a 1G memory map as its view of the device. As a module, you can select a 1M window into the memory and the driver will "slide" the window around the PMC551's memory. This was particularly useful on the 2.2 kernels on PPC architectures as there was limited kernel space to deal with. 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 . The module will be called pmc551.o PMC551 256M DRAM Bugfix CONFIG_MTD_PMC551_BUGFIX Some of Ramix's PMC551 boards with 256M configurations have invalid column and row mux values. This option will fix them, but will break other memory configurations. If unsure say N. PMC551 Debugging CONFIG_MTD_PMC551_DEBUG This option makes the PMC551 more verbose during its operation and is only really useful if you are developing on this driver or suspect a possible hardware or driver bug. If unsure say N. Use extra onboard system memory as MTD device CONFIG_MTD_SLRAM If your CPU cannot cache all of the physical memory in your machine, you can still use it for storage or swap by using this driver to present it to the system as a Memory Technology Device. 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 . The module will be called slram.o DEC MS02-NV NVRAM module support CONFIG_MTD_MS02NV This is a MTD driver for the DEC's MS02-type (54-20948-01) battery backed-up NVRAM module. The module was originally meant as an NFS accelerator. Say Y here if you have a DECstation 5000/2x0 or a DECsystem 5900 equipped with such a module. 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 . The module will be called ms02-nv.o. Debugging RAM test driver CONFIG_MTD_MTDRAM This enables a test MTD device driver which uses vmalloc() to provide storage. You probably want to say 'N' unless you're testing stuff. 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 . The module will be called mtdram.o MTDRAM erase block size in KB CONFIG_MTDRAM_ERASE_SIZE This allows you to configure the size of the erase blocks in the device emulated by the MTDRAM driver. If the MTDRAM driver is built as a module, it is also possible to specify this as a parameter when loading the module. MTDRAM device size in KB CONFIG_MTDRAM_TOTAL_SIZE This allows you to configure the total size of the MTD device emulated by the MTDRAM driver. If the MTDRAM driver is built as a module, it is also possible to specify this as a parameter when loading the module. SRAM Hexadecimal Absolute position or 0 CONFIG_MTDRAM_ABS_POS If you have system RAM accessible by the CPU but not used by Linux in normal operation, you can give the physical address at which the available RAM starts, and the MTDRAM driver will use it instead of allocating space from Linux's available memory. Otherwise, leave this set to zero. Most people will want to leave this as zero. CFI Flash device mapping on the Flaga Digital Module CONFIG_MTD_CFI_FLAGADM Mapping for the Flaga digital module. If you don´ô have one, ignore this setting. Momenco Ocelot boot flash device CONFIG_MTD_OCELOT This enables access routines for the boot flash device and for the NVRAM on the Momenco Ocelot board. If you have one of these boards and would like access to either of these, say 'Y'. Support for absent chips in bus mapping CONFIG_MTD_ABSENT This option enables support for a dummy probing driver used to allocated placeholder MTD devices on systems that have socketed or removable media. Use of this driver as a fallback chip probe preserves the expected registration order of MTD device nodes on the system regardless of media presence. Device nodes created with this driver will return -ENODEV upon access. 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 . The module will be called map_absent.o MTD emulation using block device CONFIG_MTD_BLKMTD This driver allows a block device to appear as an MTD. It would generally be used in the following cases: Using Compact Flash as an MTD, these usually present themselves to the system as an ATA drive. Testing MTD users (eg JFFS2) on large media and media that might be removed during a write (using the floppy drive). 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 . The module will be called blkmtd.o Cirrus CDB89712 evaluation board mappings CONFIG_MTD_CDB89712 This enables access to the flash or ROM chips on the CDB89712 board. (This board has 8 MB of Intel Strataflash, a 128 byte boot ROM, and 48 KB of internal SRAM. This driver provides MTD devices for all three components.) If you have such a board, say 'Y'. Detect non-CFI AMD/JEDEC-compatible flash chips CONFIG_MTD_JEDECPROBE This option enables JEDEC-style probing of flash chips which are not compatible with the Common Flash Interface, but will use the common CFI-targetted flash drivers for any chips which are identified which are in fact compatible in all but the probe method. This actually covers most AMD/Fujitsu-compatible chips, and will shortly cover also non-CFI Intel chips (that code is in MTD CVS and should shortly be sent for inclusion in Linus' tree) 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 . The module will be called jedec_probe.o BIOS flash chip on Intel L440GX boards CONFIG_MTD_L440GX Support for treating the BIOS flash chip on Intel L440GX motherboards as an MTD device - with this you can reprogram your BIOS. BE VERY CAREFUL. 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 . The module will be called l440gx.o 28F160xx flash driver for LART CONFIG_MTD_LART This enables the flash driver for LART. Please note that you do not need any mapping/chip driver for LART. This one does it all for you, so go disable all of those if you enabled some of them (: Older (theoretically obsoleted now) drivers for non-CFI chips CONFIG_MTD_OBSOLETE_CHIPS This option does not enable any code directly, but will allow you to select some other chip drivers which are now considered obsolete, because the generic CONFIG_JEDEC_PROBE code above should now detect the chips which are supported by these drivers, and allow the generic CFI-compatible drivers to drive the chips. Say 'N' here unless you have already tried the CONFIG_JEDEC_PROBE method and reported its failure to the MTD mailing list at CFI Flash device mapped on Hitachi SolutionEngine CONFIG_MTD_SOLUTIONENGINE This enables access to the flash chips on the Hitachi SolutionEngine and similar boards. Say 'Y' if you are building a kernel for such a board. CFI Flash device mapped on TQM8XXL PPC board CONFIG_MTD_TQM8XXL The TQM8xxL PowerPC board has up to two banks of CFI-compliant chips, currently uses AMD one. This 'mapping' driver supports that arrangement, allowing the CFI probe and command set driver code to communicate with the chips on the TQM8xxL board. More at . Darkness CONFIG_MEMORY_SET 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. Physical memory size CONFIG_MEMORY_SIZE 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. Cache and PCI noncoherent CONFIG_SH_PCIDMA_NONCOHERENT 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'. USB (Universal Serial Bus) support CONFIG_USB Universal Serial Bus (USB) is a specification for a serial bus subsystem which offers higher speeds and more features than the traditional PC serial port. The bus supplies power to peripherals and allows for hot swapping. Up to 127 USB peripherals can be connected to a single USB port in a tree structure. The USB port is the root of the tree, the peripherals are the leaves and the inner nodes are special USB devices called hubs. Many newer PC's have USB ports and newer peripherals such as scanners, keyboards, mice, modems, and printers support the USB protocol and can be connected to the PC via those ports. Say Y here if your computer has a USB port and you want to use USB devices. You then need to say Y to at least one of "UHCI support" or "OHCI support" below (the type of interface that the USB hardware in your computer provides to the operating system) and then choose from among the drivers for USB peripherals. You may want to check out the information provided in and especially the links given in . 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 usbcore.o. If you want to compile it as a module, say M here and read . USB verbose debug messages CONFIG_USB_DEBUG Say Y here if you want the USB core & hub drivers to produce a bunch of debug messages to the system log. Select this if you are having a problem with USB support and want to see more of what is going on. USB long timeout for slow-responding devices (some MGE Ellipse UPSes) CONFIG_USB_LONG_TIMEOUT This option makes the standard time out a bit longer. Basically, some devices are just slow to respond, so this makes usb more patient. There should be no harm in selecting this, but it is needed for some MGE Ellipse UPSes. If you have an MGE Ellipse UPS, or you see timeouts in HID transactions, say Y; otherwise say N. EHCI (USB 2.0) support CONFIG_USB_EHCI_HCD The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. If your USB host controller supports USB 2.0, you will likely want to configure this Host Controller Driver. At this writing, the primary implementation of EHCI is a chip from NEC, widely available in add-on PCI cards, but implementations are in the works from other vendors including Intel and Philips. Motherboard support is appearing. EHCI controllers are packaged with "companion" host controllers (OHCI or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports will connect to EHCI if it the device is high speed, otherwise they connect to a companion controller. If you configure EHCI, you should probably configure the OHCI (for NEC and some other vendors) USB Host Controller Driver too. You may want to read . 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 ehci-hcd.o. If you want to compile it as a module, say M here and read . UHCI (Intel PIIX4, VIA, ...) support CONFIG_USB_UHCI The Universal Host Controller Interface is a standard by Intel for accessing the USB hardware in the PC (which is also called the USB host controller). If your USB host controller conforms to this standard, you may want to say Y, but see below. All recent boards with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, i810, i820) conform to this standard. Also all VIA PCI chipsets (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 133). Currently there exist two drivers for UHCI host controllers: this one and the so-called JE driver, which you can get from "UHCI alternate (JE) support", below. You need only one. 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 usb-uhci.o. If you want to compile it as a module, say M here and read . UHCI (Intel PIIX4, VIA, ...) alternate (JE) support CONFIG_USB_UHCI_ALT The Universal Host Controller Interface is a standard by Intel for accessing the USB hardware in the PC (which is also called the USB host controller). If your USB host controller conforms to this standard, you may want to say Y, but see below. All recent boards with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, i810, i820) conform to this standard. Also all VIA PCI chipsets (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 133). If unsure, say Y. Currently there exist two drivers for UHCI host controllers: this so-called JE driver, and the one you get from "UHCI support", above. You need only one. 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 uhci.o. If you want to compile it as a module, say M here and read . OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support CONFIG_USB_OHCI The Open Host Controller Interface is a standard by Compaq/Microsoft/National for accessing the USB PC hardware (also called USB host controller). If your USB host controller conforms to this standard, say Y. The USB host controllers on most non-Intel architectures and on several x86 compatibles with non-Intel chipsets -- like SiS (aktual 610, 610 and so on) or ALi (ALi IV, ALi V, Aladdin Pro..) -- conform to this standard. You may want to read . 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 usb-ohci.o. If you want to compile it as a module, say M here and read . USB Human Interface Device (full HID) support CONFIG_USB_HID Say Y here if you want full HID support to connect keyboards, mice, joysticks, graphic tablets, or any other HID based devices to your computer via USB. You also need to select HID Input layer support (below) if you want to use keyboards, mice, joysticks and the like. You can't use this driver and the HIDBP (Boot Protocol) keyboard and mouse drivers at the same time. More information is available: . If unsure, say Y. 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 hid.o. If you want to compile it as a module, say M here and read . USB HID Input layer support CONFIG_USB_HIDINPUT Say Y here if you want to use a USB keyboard, mouse or joystick, or any other HID input device. You also need Input layer support, (CONFIG_INPUT) which you select under "Input core support". If unsure, say Y. /dev/usb/hiddev raw HID device support CONFIG_USB_HIDDEV Say Y here if you want to support HID devices (from the USB specification standpoint) that aren't strictly user interface devices, like monitor controls and Uninterruptable Power Supplies. This module supports these devices separately using a separate event interface on /dev/usb/hiddevX (char 180:96 to 180:111). This driver requires CONFIG_USB_HID. If unsure, say Y. USB HIDBP Keyboard (basic) support CONFIG_USB_KBD Say Y here only if you are absolutely sure that you don't want to use the generic HID driver for your USB keyboard and prefer to use the keyboard in its limited Boot Protocol mode instead. This is almost certainly not what you want. 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 usbkbd.o. If you want to compile it as a module, say M here and read . If even remotely unsure, say N. USB HIDBP Mouse (basic) support CONFIG_USB_MOUSE Say Y here only if you are absolutely sure that you don't want to use the generic HID driver for your USB keyboard and prefer to use the keyboard in its limited Boot Protocol mode instead. This is almost certainly not what you want. 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 usbmouse.o. If you want to compile it as a module, say M here and read . If even remotely unsure, say N. Wacom Intuos/Graphire tablet support CONFIG_USB_WACOM Say Y here if you want to use the USB version of the Wacom Intuos or Graphire tablet. Make sure to say Y to "Mouse support" (CONFIG_INPUT_MOUSEDEV) and/or "Event interface support" (CONFIG_INPUT_EVDEV) 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 wacom.o. If you want to compile it as a module, say M here and read . Aiptek 6000U/8000U tablet support CONFIG_USB_AIPTEK Say Y here if you want to use the USB version of the Aiptek 6000U/8000U tablet. Make sure to say Y to "Event interface support" (CONFIG_INPUT_EVDEV) 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 aiptek.o. If you want to compile it as a module, say M here and read . Use input layer for ADB devices CONFIG_INPUT_ADBHID Say Y here if you want to have ADB (Apple Desktop Bus) HID devices such as keyboards, mice, joysticks, 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 you say N here, you still have the option of using the old ADB keyboard and mouse drivers. If unsure, say Y. Input core support CONFIG_INPUT Say Y here if you want to enable any of the following options for USB Human Interface Device (HID) support. Say Y here if you want to enable any of the USB HID options in the USB support section which require Input core support. Otherwise, say N. Keyboard support CONFIG_INPUT_KEYBDEV Say Y here if you want your USB HID keyboard (or an ADB keyboard handled by the input layer) to be able to serve as a system keyboard. 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 keybdev.o. If you want to compile it as a module, say M here and read . Mouse support CONFIG_INPUT_MOUSEDEV Say Y here if you want your USB HID mouse (or ADB mouse handled by the input layer) to be accessible as char devices 13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an emulated ImPS/2 mouse. That way, all user space programs will be able to use your mouse. If unsure, say Y. 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 mousedev.o. If you want to compile it as a module, say M here and read . Horizontal screen resolution CONFIG_INPUT_MOUSEDEV_SCREEN_X If you're using a digitizer, or a graphic tablet, and want to use it as a mouse then the mousedev driver needs to know the X window screen resolution you are using to correctly scale the data. If you're not using a digitizer, this value is ignored. Vertical screen resolution CONFIG_INPUT_MOUSEDEV_SCREEN_Y If you're using a digitizer, or a graphic tablet, and want to use it as a mouse then the mousedev driver needs to know the X window screen resolution you are using to correctly scale the data. If you're not using a digitizer, this value is ignored. Joystick support CONFIG_INPUT_JOYDEV Say Y here if you want your USB HID joystick or gamepad to be accessible as char device 13:0+ - /dev/input/jsX device. 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 joydev.o. If you want to compile it as a module, say M here and read . Event interface support CONFIG_INPUT_EVDEV Say Y here if you want your USB or ADB HID device events be accessible under char device 13:64+ - /dev/input/eventX in a generic way. This is the future ... CONFIG_INPUT_UINPUT Say Y here if you want to support user level drivers for input subsystem accessible under char device 10:223 - /dev/input/uinput. 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 uinput.o. If you want to compile it as a module, say M here and read . USB Scanner support CONFIG_USB_SCANNER Say Y here if you want to connect a USB scanner to your computer's USB port. Please read and for more information. 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 scanner.o. If you want to compile it as a module, say M here and read . HP 5300C scanner support CONFIG_USB_HP5300 Say Y here if you want to connect a HP5300C scanner to your computer's USB port. 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 hp5300.o. If you want to compile it as a module, say M here and read . USB Audio support CONFIG_USB_AUDIO Say Y here if you want to connect USB audio equipment such as speakers to your computer's USB port. 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 audio.o. If you want to compile it as a module, say M here and read . EMI 2|6 USB Audio interface support CONFIG_USB_EMI26 This driver loads firmware to Emagic EMI 2|6 low latency USB Audio interface. After firmware load the device is handled with standard linux USB Audio driver. 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 audio.o. If you want to compile it as a module, say M here and read . USB Modem (CDC ACM) support CONFIG_USB_ACM This driver supports USB modems and ISDN adapters which support the Communication Device Class Abstract Control Model interface. Please read for details. 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 acm.o. If you want to compile it as a module, say M here and read . USB serial converter support CONFIG_USB_SERIAL Say Y here if you have a USB device that provides normal serial ports, or acts like a serial device, and you want to connect it to your USB bus. Please read for more information on the specifics of the different devices that are supported, and on how to use them. 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 usbserial.o. If you want to compile it as a module, say M here and read . USB Generic Serial Driver CONFIG_USB_SERIAL_GENERIC Say Y here if you want to use the generic USB serial driver. Please read for more information on using this driver. It is recommended that the "USB Serial converter support" be compiled as a module for this driver to be used properly. USB ConnectTech WhiteHEAT Serial Driver CONFIG_USB_SERIAL_WHITEHEAT Say Y here if you want to use a ConnectTech WhiteHEAT 4 port USB to serial converter device. 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 whiteheat.o. If you want to compile it as a module, say M here and read . USB Handspring Visor Driver CONFIG_USB_SERIAL_VISOR Say Y here if you want to connect to your HandSpring Visor, Palm m500 or m505 through its USB docking station. See for more information on using this driver. 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 visor.o. If you want to compile it as a module, say M here and read . USB Compaq iPAQ Driver CONFIG_USB_SERIAL_IPAQ Say Y here if you want to connect to your Compaq iPAQ, HP Jornada 548/568 or Casio EM500 running Windows CE 3.0 or PocketPC 2002 using a USB cradle/cable. For information on using the driver, read . 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 ipaq.o. If you want to compile it as a module, say M here and read . USB IR Dongle Serial Driver CONFIG_USB_SERIAL_IR Say Y here if you want to enable simple serial support for USB IrDA devices. This is useful if you do not want to use the full IrDA stack. 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 ir-usb.o. If you want to compile it as a module, say M here and read . USB Belkin and Paracom Single Port Serial Driver CONFIG_USB_SERIAL_BELKIN Say Y here if you want to use a Belkin USB Serial single port adaptor (F5U103 is one of the model numbers) or the Peracom single port USB to serial adapter. 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 belkin_sa.o. If you want to compile it as a module, say M here and read . USB FTDI Single Port Serial Driver CONFIG_USB_SERIAL_FTDI_SIO Say Y here if you want to use a FTDI SIO single port USB to serial converter device. The implementation I have is called the USC-1000. This driver has also be tested with the 245 and 232 devices. See for more information on this driver and the device. 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 ftdi_sio.o. If you want to compile it as a module, say M here and read . USB Keyspan PDA Single Port Serial Driver CONFIG_USB_SERIAL_KEYSPAN_PDA Say Y here if you want to use a Keyspan PDA single port USB to serial converter device. This driver makes use of firmware developed from scratch by Brian Warner. 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 keyspan_pda.o. If you want to compile it as a module, say M here and read . USB Xircom / Entregra Single Port Serial Driver CONFIG_USB_SERIAL_XIRCOM Say Y here if you want to use a Xircom or Entregra single port USB to serial converter device. This driver makes use of firmware developed from scratch by Brian Warner. 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 keyspan_pda.o. If you want to compile it as a module, say M here and read . USB Keyspan USA-xxx Serial Driver CONFIG_USB_SERIAL_KEYSPAN Say Y here if you want to use Keyspan USB to serial converter devices. This driver makes use of Keyspan's official firmware and was developed with their support. You must also include firmware to support your particular device(s). See for more information. 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 keyspan.o. If you want to compile it as a module, say M here and read . USB Keyspan USA-28 Firmware CONFIG_USB_SERIAL_KEYSPAN_USA28 Say Y here to include firmware for the USA-28 converter. USB Keyspan USA-28X Firmware CONFIG_USB_SERIAL_KEYSPAN_USA28X Say Y here to include firmware for the USA-28X converter. Be sure you have a USA-28X, there are also 28XA and 28XB models, the label underneath has the actual part number. USB Keyspan USA-28XA Firmware CONFIG_USB_SERIAL_KEYSPAN_USA28XA Say Y here to include firmware for the USA-28XA converter. Be sure you have a USA-28XA, there are also 28X and 28XB models, the label underneath has the actual part number. USB Keyspan USA-28XB Firmware CONFIG_USB_SERIAL_KEYSPAN_USA28XB Say Y here to include firmware for the USA-28XB converter. Be sure you have a USA-28XB, there are also 28X and 28XA models, the label underneath has the actual part number. USB Keyspan USA-19 Firmware CONFIG_USB_SERIAL_KEYSPAN_USA19 Say Y here to include firmware for the USA-19 converter. USB Keyspan USA-18X Firmware CONFIG_USB_SERIAL_KEYSPAN_USA18X Say Y here to include firmware for the USA-18X converter. USB Keyspan USA-19W Firmware CONFIG_USB_SERIAL_KEYSPAN_USA19W Say Y here to include firmware for the USA-19W converter. USB Keyspan USA-19QW Firmware CONFIG_USB_SERIAL_KEYSPAN_USA19QW Say Y here to include firmware for the USA-19QW converter. USB Keyspan USA-19QI Firmware CONFIG_USB_SERIAL_KEYSPAN_USA19QI Say Y here to include firmware for the USA-19QI converter. USB Keyspan USA-49W Firmware CONFIG_USB_SERIAL_KEYSPAN_USA49W Say Y here to include firmware for the USA-49W converter. USB ZyXEL omni.net LCD Plus Driver CONFIG_USB_SERIAL_OMNINET Say Y here if you want to use a ZyXEL omni.net LCD ISDN TA. 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 omninet.o. If you want to compile it as a module, say M here and read . USB Digi International AccelePort USB Serial Driver CONFIG_USB_SERIAL_DIGI_ACCELEPORT Say Y here if you want to use Digi AccelePort USB 2 or 4 devices, 2 port (plus parallel port) and 4 port USB serial converters. The parallel port on the USB 2 appears as a third serial port on Linux. The Digi Acceleport USB 8 is not yet supported by this driver. This driver works under SMP with the usb-uhci driver. It does not work under SMP with the uhci driver. 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 digi_acceleport.o. If you want to compile it as a module, say M here and read . USB Empeg empeg-car Mark I/II Driver CONFIG_USB_SERIAL_EMPEG Say Y here if you want to connect to your Empeg empeg-car Mark I/II mp3 player via USB. The driver uses a single ttyUSB{0,1,2,...} device node. See for more tidbits of information. 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 empeg.o. If you want to compile it as a module, say M here and read . USB MCT Single Port Serial Driver CONFIG_USB_SERIAL_MCT_U232 Say Y here if you want to use a USB Serial single port adapter from Magic Control Technology Corp. (U232 is one of the model numbers). This driver also works with Sitecom U232-P25 and D-Link DU-H3SP USB BAY devices. 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 mct_u232.o. If you want to compile it as a module, say M here and read . USB Prolific 2303 Single Port Serial Driver CONFIG_USB_SERIAL_PL2303 Say Y here if you want to use the PL2303 USB Serial single port adapter from Prolific. 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 pl2303.o. If you want to compile it as a module, say M here and read . USB REINER SCT cyberJack pinpad/e-com chipcard reader CONFIG_USB_SERIAL_CYBERJACK Say Y here if you want to use a cyberJack pinpad/e-com USB chipcard reader. This is an interface to ISO 7816 compatible contactbased chipcards, e.g. GSM SIMs. 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 cyberjack.o. If you want to compile it as a module, say M here and read . If unsure, say N. USB Edgeport Serial Driver CONFIG_USB_SERIAL_EDGEPORT Say Y here if you want to use any of the following devices from Inside Out Networks (Digi): Edgeport/4 Rapidport/4 Edgeport/4t Edgeport/2 Edgeport/4i Edgeport/2i Edgeport/421 Edgeport/21 Edgeport/8 Edgeport/8 Dual Edgeport/2D8 Edgeport/4D8 Edgeport/8i Edgeport/2 DIN Edgeport/4 DIN Edgeport/16 Dual 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 io_edgeport.o. If you want to compile it as a module, say M here and read . USB PalmConnect (and other KL5KUSB105-based) Single Port Serial Driver CONFIG_USB_SERIAL_KLSI Say Y here if you want to use a KL5KUSB105 - based single port serial adapter. The most widely known -- and currently the only tested -- device in this category is the PalmConnect USB Serial adapter sold by Palm Inc. for use with their Palm III and Palm V series PDAs. Please read for more information. 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 kl5kusb105.o. If you want to compile it as a module, say M here and read . USB Serial Converter verbose debug CONFIG_USB_SERIAL_DEBUG Say Y here if you want verbose debug messages from the USB Serial Drivers sent to the kernel debug log. USB Printer support CONFIG_USB_PRINTER Say Y here if you want to connect a USB printer to your computer's USB port. 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 printer.o. If you want to compile it as a module, say M here and read . USB IBM (Xirlink) C-It Camera support CONFIG_USB_IBMCAM Say Y here if you want to connect a IBM "C-It" camera, also known as "Xirlink PC Camera" to your computer's USB port. For more information, read . This driver uses the Video For Linux API. You must enable (Y or M in config) Video For Linux (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 ibmcam.o. If you want to compile it as a module, say M here and read . This camera has several configuration options which can be specified when you load the module. Read to learn more. USB OV511 Camera support CONFIG_USB_OV511 Say Y here if you want to connect this type of camera to your computer's USB port. See for more information and for a list of supported cameras. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 ov511.o. If you want to compile it as a module, say M here and read . USB Communication Class Ethernet device support CONFIG_USB_CDCETHER This driver supports devices conforming to the Communication Device Class Ethernet Control Model. This is used in some cable modems. For more details on the specification, get the Communication Device Class specification from . This driver should work with the following devices: * Ericsson PipeRider (all variants) * Motorola (DM100 and SB4100) * Broadcom Cable Modem (reference design) * Toshiba PCX1100U and possibly other cable modems * Sharp Zaurus SL-5000D The device creates a network device (ethX, where X depends on what other networking devices you have in use), as for a normal PCI or ISA based ethernet network card. 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 CDCEther.o. If you want to compile it as a module, say M here and read . NetChip 1080-based USB Host-to-Host Link CONFIG_USB_NET1080 The NetChip 1080 is a USB 1.1 host controller. NetChip has a web site with technical information at . Philips webcam support CONFIG_USB_PWC Say Y or M here if you want to use one of these Philips USB webcams: PCA645, PCA646, PCVC675, PCVC680, PCVC690, PCVC730, PCVC740, or the Askey VC010. The PCA635, PCVC665 and PCVC720 are not supported by this driver and never will be. This driver has an optional plugin, which is distributed as a binary module only. It contains code that allow you to use higher resolutions and framerates but may not be distributed as source. But even without this plugin you can these cams for most applications. See for more information and installation instructions. The built-in microphone is enabled by selecting USB Audio support. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 pwc.o. If you want to compile it as a module, say M here and read . Logitech QuickCam webcam support CONFIG_USB_QC Say Y or M here if you want to use the Logitech QuickCam Express cameras. Also some other cameras are supported, such as Dexxa and Labtec cameras, which are based on ST Microelectronics VV6410, Hewlett Packard HDCS-1000/1100, Agilent Technologies HDCS-1020, or Photobit PB-0100/0101 sensor chip. This driver has an user space configuration tool, which allows setting some driver parameters without reloading it (the parameters can be also set as driver options when loading it). It is available from . This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 quickcam.o. If you want to compile it as a module, say M here and read . USB SE401 Camera support CONFIG_USB_SE401 Say Y here if you want to connect this type of camera to your computer's USB port. See for more information and for a list of supported cameras. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Multimedia Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 se401.o. If you want to compile it as a module, say M here and read . USB STV680 (Pencam) Camera support CONFIG_USB_STV680 Say Y here if you want to connect this type of camera to your computer's USB port. This includes the Pencam line of cameras. See for more information and for a list of supported cameras. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Multimedia Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 stv680.o. If you want to compile it as a module, say M here and read . Vicam CONFIG_USB_VICAM Say Y here if you have 3com homeconnect camera (vicam). This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Multimedia Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 vicam.o. If you want to compile it as a module, say M here and read . Pegasus/Pegasus II based USB-Ethernet device support CONFIG_USB_PEGASUS Say Y here if you know you have Pegasus or Pegasus-II based adapter. If in doubt then look at linux/drivers/usb/pegasus.h for the complete list of supported devices. If your particular adapter is not in the list and you are _sure_ it is Pegasus or Pegasus-II based then send me (pmanolov@users.sourceforge.net) vendor and device IDs. 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 pegasus.o. If you want to compile it as a module, say M here and read . Realtek RTL8150 based USB-Ethernet device support CONFIG_USB_RTL8150 Say Y here if you have RTL8150 based usb-ethernet adapter. Send me (petkan@users.sourceforge.net) any comments you may have. You can also check for updates at 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 rtl8150.o. If you want to compile it as a module, say M here and read . USB KLSI KL5USB101-based Ethernet device support CONFIG_USB_KAWETH Say Y here if you want to use one of the following 10Mbps only USB Ethernet adapters based on the KLSI KL5KUSB101B chipset: 3Com 3C19250 ADS USB-10BT ATEN USB Ethernet ASANTE USB To Ethernet Adapter AOX Endpoints USB Ethernet Correga K.K. D-Link DSB-650C and DU-E10 Entrega / Portgear E45 I-O DATA USB-ET/T Jaton USB Ethernet Device Adapter Kingston Technology USB Ethernet Adapter Linksys USB10T Mobility USB-Ethernet Adapter NetGear EA-101 Peracom Enet and Enet2 Portsmith Express Ethernet Adapter Shark Pocket Adapter SMC 2202USB Sony Vaio port extender This driver is likely to work with most 10Mbps only USB Ethernet adapters, including some "no brand" devices. It does NOT work on SmartBridges smartNIC or on Belkin F5U111 devices - you should use the CATC NetMate driver for those. If you are not sure which one you need, select both, and the correct one should be selected for you. This driver makes the adapter appear as a normal Ethernet interface, typically on eth0, if it is the only ethernet device, or perhaps on eth1, if you have a PCI or ISA ethernet card installed. 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 kaweth.o. If you want to compile it as a module, say M here and read . USB CATC NetMate-based Ethernet device support CONFIG_USB_CATC Say Y if you want to use one of the following 10Mbps USB Ethernet device based on the EL1210A chip. Supported devices are: Belkin F5U011 Belkin F5U111 CATC NetMate CATC NetMate II smartBridges smartNIC This driver makes the adapter appear as a normal Ethernet interface, typically on eth0, if it is the only ethernet device, or perhaps on eth1, if you have a PCI or ISA ethernet card installed. 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 catc.o. If you want to compile it as a module, say M here and read . USB Kodak DC-2xx Camera support CONFIG_USB_DC2XX Say Y here if you want to connect this type of still camera to your computer's USB port. See for more information; some non-Kodak cameras may also work with this driver, given application support (such as ). 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 dc2xx.o. If you want to compile it as a module, say M here and read . USB Mustek MDC800 Digital Camera support CONFIG_USB_MDC800 Say Y here if you want to connect this type of still camera to your computer's USB port. This driver can be used with gphoto 0.4.3 and higher (look at ). To use it create a device node with "mknod /dev/mustek c 180 32" and configure it in your software. 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 mdc800.o. If you want to compile it as a module, say M here and read . USB Mass Storage support CONFIG_USB_STORAGE Say Y here if you want to connect USB mass storage devices to your computer's USB port. 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 usb-storage.o. If you want to compile it as a module, say M here and read . USB Mass Storage verbose debug CONFIG_USB_STORAGE_DEBUG Say Y here in order to have the USB Mass Storage code generate verbose debugging messages. ISD-200 USB/ATA Bridge support CONFIG_USB_STORAGE_ISD200 Say Y here if you want to use USB Mass Store devices based on the In-Systems Design ISD-200 USB/ATA bridge. Some of the products that use this chip are: - Archos Jukebox 6000 - ISD SmartCable for Storage - Taiwan Skymaster CD530U/DEL-0241 IDE bridge - Sony CRX10U CD-R/RW drive - CyQ've CQ8060A CDRW drive - Planex eXtreme Drive RX-25HU USB-IDE cable (not model RX-25U) USS720 parport driver CONFIG_USB_USS720 This driver is for USB parallel port adapters that use the Lucent Technologies USS-720 chip. These cables are plugged into your USB port and provide USB compatibility to peripherals designed with parallel port interfaces. The chip has two modes: automatic mode and manual mode. In automatic mode, it looks to the computer like a standard USB printer. Only printers may be connected to the USS-720 in this mode. The generic USB printer driver ("USB Printer support", above) may be used in that mode, and you can say N here if you want to use the chip only in this mode. Manual mode is not limited to printers, any parallel port device should work. This driver utilizes manual mode. Note however that some operations are three orders of magnitude slower than on a PCI/ISA Parallel Port, so timing critical applications might not work. Say Y here if you own an USS-720 USB->Parport cable and intend to connect anything other than a printer to it. 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 uss720.o. If you want to compile it as a module, say M here and read . USB device file system CONFIG_USB_DEVICEFS If you say Y here (and to "/proc file system support" in the "File systems section, above), you will get a file /proc/bus/usb/devices which lists the devices currently connected to your USB bus or busses, a file /proc/bus/usb/drivers which lists the USB kernel client drivers currently loaded, and for every connected device a file named "/proc/bus/usb/xxx/yyy", where xxx is the bus number and yyy the device number; the latter files can be used by user space programs to talk directly to the device. These files are "virtual", meaning they are generated on the fly and not stored on the hard drive. You may need to mount the usbdevfs file system to see the files, use mount -t usbdevfs none /proc/bus/usb For the format of the various /proc/bus/usb/ files, please read . Please note that this code is completely unrelated to devfs, the "/dev file system support". Most users want to say Y here. Enforce USB bandwidth allocation CONFIG_USB_BANDWIDTH If you say Y here, the USB subsystem enforces USB bandwidth allocation and will prevent some device opens from succeeding if they would cause USB bandwidth usage to go above 90% of the bus bandwidth. If you say N here, these conditions will cause warning messages about USB bandwidth usage to be logged and some devices or drivers may not work correctly. DABUSB driver CONFIG_USB_DABUSB A Digital Audio Broadcasting (DAB) Receiver for USB and Linux brought to you by the DAB-Team (). This driver can be taken as an example for URB-based bulk, control, and isochronous transactions. URB's are explained in . 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 dabusb.o. If you want to compile it as a module, say M here and read . Host-to-Host USB networking CONFIG_USB_USBNET This driver supports network links over USB with USB "Network" or "data transfer" cables, often used to network laptops to PCs. Such cables have chips from suppliers such as Belkin/eTEK, GeneSys (GeneLink), NetChip and Prolific. Intelligent USB devices could also use this approach to provide Internet access, using standard USB cabling. You can find these chips also on some motherboards with USB PC2PC support. These links will have names like "usb0", "usb1", etc. They act like two-node Ethernets, so you can use 802.1d Ethernet Bridging (CONFIG_BRIDGE) to simplify your network routing. This code is also available as a kernel module (code which can be inserted in and removed from the running kernel whenever you want). The module will be called usbnet.o. If you want to compile it as a module, say M here and read . Freecom USB/ATAPI Bridge support CONFIG_USB_STORAGE_FREECOM Support for the Freecom USB to IDE/ATAPI adaptor. Freecom has a web page at . Microtech CompactFlash/SmartMedia reader CONFIG_USB_STORAGE_DPCM Say Y here to support the Microtech ZiO! CompactFlash/SmartMedia reader, details at . This driver treats the flash card as a removable storage device. SanDisk SDDR-09 (and other SmartMedia) support CONFIG_USB_STORAGE_SDDR09 Say Y here to include additional code to support the Sandisk SDDR-09 SmartMedia reader in the USB Mass Storage driver. SanDisk SDDR-55 SmartMedia support CONFIG_USB_STORAGE_SDDR55 Say Y here to include additional code to support the Sandisk SDDR-55 SmartMedia reader in the USB Mass Storage driver. USB Diamond Rio500 support CONFIG_USB_RIO500 Say Y here if you want to connect a USB Rio500 mp3 player to your computer's USB port. Please read for more information. 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 rio500.o. If you want to compile it as a module, say M here and read . USB Auerswald ISDN device support CONFIG_USB_AUERSWALD Say Y here if you want to connect an Auerswald USB ISDN Device to your computer's USB port. 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 auerswald.o. If you want to compile it as a module, say M here and read CONFIG_USB_TIGL If you own a Texas Instruments graphing calculator and use a TI-GRAPH LINK USB cable (aka SilverLink), then you might be interested in this driver. If you enable this driver, you will be able to communicate with your calculator through a set of device nodes under /dev. 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 tiglusb.o. If you want to compile it as a module, say M here and read Documentation/modules.txt. If you don't know what the SilverLink cable is or what a Texas Instruments graphing calculator is, then you probably don't need this driver. If unsure, say N. Tieman Voyager USB Braille display support CONFIG_USB_BRLVOYAGER Say Y here if you want to use the Voyager USB Braille display from Tieman. See for more information. 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 brlvger.o. If you want to compile it as a module, say M here and read . USBLCD support CONFIG_USB_LCD Say Y here if you want to connect an USBLCD to your computer's USB port. The USBLCD is a small USB interface board for alphanumeric LCD modules. See for more information. 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 usblcd.o. If you want to compile it as a module, say M here and read . D-Link DSB-R100 FM radio support CONFIG_USB_DSBR Say Y here if you want to connect this type of radio to your computer's USB port. Note that the audio is not digital, and you must connect the line out connector to a sound card or a set of speakers. This driver uses the Video For Linux API. You must enable (Y or M in config) Video For Linux (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 dsbr100.o. If you want to compile it as a module, say M here and read . Always do synchronous disk IO for UBD CONFIG_BLK_DEV_UBD_SYNC The User-Mode Linux port includes a driver called UBD which will let you access arbitrary files on the host computer as block devices. Writes to such a block device are not immediately written to the host's disk; this may cause problems if, for example, the User-Mode Linux 'Virtual Machine' uses a journalling file system and the host computer crashes. Synchronous operation (i.e. always writing data to the host's disk immediately) is configurable on a per-UBD basis by using a special kernel command line option. Alternatively, you can say Y here to turn on synchronous operation by default for all block. If you're running a journalling file system (like reiserfs, for example) in your virtual machine, you will want to say Y here. If you care for the safety of the data in your virtual machine, Y is a wise choice too. In all other cases (for example, if you're just playing around with User-Mode Linux) you can choose N. Enable ptrace proxy CONFIG_PT_PROXY This option enables a debugging interface which allows gdb to debug the kernel without needing to actually attach to kernel threads. If you want to do kernel debugging, say Y here; otherwise say N. Management console CONFIG_MCONSOLE The user mode linux management console is a low-level interface to the kernel, somewhat like the i386 SysRq interface. Since there is a full-blown operating system running under every user mode linux instance, there is much greater flexibility possible than with the SysRq mechanism. If you answer 'Y' to this option, to use this feature, you need the mconsole client (called uml_mconsole) which is present in CVS in 2.4.5-9um and later (path /tools/mconsole), and is also in the distribution RPM package in 2.4.6 and later. It is safe to say 'Y' here. Enable kernel debugging symbols CONFIG_DEBUGSYM When this is enabled, the User-Mode Linux binary will include debugging symbols. This enlarges the binary by a few megabytes, but aids in tracking down kernel problems in UML. It is required if you intend to do any kernel development. If you're truly short on disk space or don't expect to report any bugs back to the UML developers, say N, otherwise say Y. Enable gcov support CONFIG_GCOV This option allows developers to retrieve coverage data from a UML session. See for more details. If you're involved in UML kernel development and want to use gcov, say Y. If you're unsure, say N. Enable gprof support CONFIG_GPROF This allows profiling of a User-Mode Linux kernel with the gprof utility. See for more details. If you're involved in UML kernel development and want to use gprof, say Y. If you're unsure, say N. Host filesystem CONFIG_HOSTFS While the User-Mode Linux port uses its own root file system for booting and normal file access, this module lets the UML user access files stored on the host. It does not require any network connection between the Host and UML. An example use of this might be: mount none /tmp/fromhost -t hostfs -o /tmp/umlshare where /tmp/fromhost is an empty directory inside UML and /tmp/umlshare is a directory on the host with files the UML user wishes to access. For more information, see . If you'd like to be able to work with files stored on the host, say Y or M here; otherwise say N. Example IO Memory driver CONFIG_MMAPPER The User-Mode Linux port can provide support for IO Memory emulation with this option. This allows a host file to be specified as an I/O region on the kernel command line. That file will be mapped into UML's kernel address space where a driver can locate it and do whatever it wants with the memory, including providing an interface to it for UML processes to use. For more information, see . If you'd like to be able to provide a simulated IO port space for User-Mode Linux processes, say Y. If unsure, say N. Virtual Serial Line CONFIG_SSL The User-Mode Linux environment allows you to create virtual serial lines on the UML that are usually made to show up on the host as ttys or ptys. See for more information and command line examples of how to use this facility. Unless you have a specific reason for disabling this, say Y. Virtual network device CONFIG_UML_NET While the User-Mode port cannot directly talk to any physical hardware devices, this choice and the following transport options provide one or more virtual network devices through which the UML kernels can talk to each other, the host, and with the host's help, machines on the outside world. For more information, including explanations of the networking and sample configurations, see . If you'd like to be able to enable networking in the User-Mode linux environment, say Y; otherwise say N. Note that you must enable at least one of the following transport options to actually make use of UML networking. Daemon transport CONFIG_UML_NET_DAEMON This User-Mode Linux network transport allows one or more running UMLs on a single host to communicate with each other, but not to the host. To use this form of networking, you'll need to run the UML networking daemon on the host. For more information, see That site has examples of the UML command line to use to enable Daemon networking. If you'd like to set up a network with other UMLs on a single host, say Y. If you need a network between UMLs on multiple physical hosts, choose the Multicast Transport. To set up a network with the host and/or other IP machines, say Y to the Ethertap or Slip transports. You'll need at least one of them, but may choose more than one without conflict. If you don't need UML networking, say N. Ethertap transport CONFIG_UML_NET_ETHERTAP The Ethertap User-Mode Linux network transport allows a single running UML to exchange packets with its host over one of the host's Ethertap devices, such as /dev/tap0. Additional running UMLs can use additional Ethertap devices, one per running UML. While the UML believes it's on a (multi-device, broadcast) virtual Ethernet network, it's in fact communicating over a point-to-point link with the host. To use this, your host kernel must have support for Ethertap devices. Also, if your host kernel is 2.4.x, it must have CONFIG_NETLINK_DEV configured as Y or M. For more information, see That site has examples of the UML command line to use to enable Ethertap networking. If you'd like to set up an IP network with the host and/or the outside world, say Y to this, the Daemon Transport and/or the Slip Transport. You'll need at least one of them, but may choose more than one without conflict. If you don't need UML networking, say N. TUN/TAP transport CONFIG_UML_NET_TUNTAP The UML TUN/TAP network transport allows a UML instance to exchange packets with the host over a TUN/TAP device. This option will only work with a 2.4 host, unless you've applied the TUN/TAP patch to your 2.2 host kernel. To use this transport, your host kernel must have support for TUN/TAP devices, either built-in or as a module. Multicast transport CONFIG_UML_NET_MCAST This Multicast User-Mode Linux network transport allows multiple UMLs (even ones running on different host machines!) to talk to each other over a virtual ethernet network. However, it requires at least one UML with one of the other transports to act as a bridge if any of them need to be able to talk to their hosts or any other IP machines. To use this, your host kernel(s) must support IP Multicasting. For more information, see That site has examples of the UML command line to use to enable Multicast networking, and notes about the security of this approach. If you need UMLs on multiple physical hosts to communicate as if they shared an Ethernet network, say Y. If you need to communicate with other IP machines, make sure you select one of the other transports (possibly in addition to Multicast; they're not exclusive). If you don't need to network UMLs say N to each of the transports. SLIP transport CONFIG_UML_NET_SLIP The Slip User-Mode Linux network transport allows a running UML to network with its host over a point-to-point link. Unlike Ethertap, which can carry any Ethernet frame (and hence even non-IP packets), the Slip transport can only carry IP packets. To use this, your host must support Slip devices. For more information, see . That site has examples of the UML command line to use to enable Slip networking, and details of a few quirks with it. The Ethertap Transport is preferred over Slip because of its limitation. If you prefer Slip, however, say Y here. Otherwise choose the Multicast transport (to network multiple UMLs on multiple hosts), Ethertap (to network with the host and the outside world), and/or the Daemon transport (to network multiple UMLs on a single host). You may choose more than one without conflict. If you don't need UML networking, say N. Microtek USB scanner support CONFIG_USB_MICROTEK Say Y here if you want support for the Microtek X6USB and possibly the Phantom 336CX, Phantom C6 and ScanMaker V6U(S)L. Support for anything but the X6 is experimental. Please report failures and successes. The scanner will appear as a scsi generic device to the rest of the system. Scsi support is required for this driver to compile and work. SANE 1.0.4 or newer is needed to make use of your scanner. This driver can be compiled as a module. HP53xx and Minolta Dual Scanner support CONFIG_USB_HPUSBSCSI Say Y here if you want support for the HP 53xx series of scanners and the Minolta Scan Dual. This driver is experimental. The scanner will be accessible as a SCSI device. USB Bluetooth support CONFIG_USB_BLUETOOTH Say Y here if you want to connect a USB Bluetooth device to your computer's USB port. You will need the Bluetooth stack (available at ) to fully use the device. 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 bluetooth.o. If you want to compile it as a module, say M here and read . USB MIDI support CONFIG_USB_MIDI Say Y here if you want to connect a USB MIDI device to your computer's USB port. This driver is for devices that comply with 'Universal Serial Bus Device Class Definition for MIDI Device'. The following devices are known to work: * Steinberg USB2MIDI * Roland MPU64 * Roland PC-300 * Roland SC8850 * Roland UM-1 * Roland UM-2 * Roland UA-100 * Yamaha MU1000 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 usb-midi.o. If you want to compile it as a module, say M here and read . Minix fs support CONFIG_MINIX_FS Minix is a simple operating system used in many classes about OS's. The minix file system (method to organize files on a hard disk partition or a floppy disk) was the original file system for Linux, but has been superseded by the second extended file system ext2fs. You don't want to use the minix file system on your hard disk because of certain built-in restrictions, but it is sometimes found on older Linux floppy disks. This option will enlarge your kernel by about 28 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 . The module will be called minix.o. Note that the file system of your root partition (the one containing the directory /) cannot be compiled as a module. Reiserfs support CONFIG_REISERFS_FS Stores not just filenames but the files themselves in a balanced tree. Uses journalling. Balanced trees are more efficient than traditional file system architectural foundations. In general, ReiserFS is as fast as ext2, but is very efficient with large directories and small files. Additional patches are needed for NFS and quotas, please see for links. It is more easily extended to have features currently found in database and keyword search systems than block allocation based file systems are. The next version will be so extended, and will support plugins consistent with our motto ``It takes more than a license to make source code open.'' Read to learn more about reiserfs. Sponsored by Threshold Networks, Emusic.com, and Bigstorage.com. If you like it, you can pay us to add new features to it that you need, buy a support contract, or pay us to port it to another OS. Enable extra Reiserfs consistency checks CONFIG_REISERFS_CHECK If you set this to Y, then ReiserFS will perform every check it can possibly imagine of its internal consistency throughout its operation. It will also go substantially slower. More than once we have forgotten that this was on, and then gone despondent over the latest benchmarks.:-) Use of this option allows our team to go all out in checking for consistency when debugging without fear of its effect on end users. If you are on the verge of sending in a bug report, say Y and you might get a useful error message. Almost everyone should say N. Publish some reiserfs-specific info under /proc/fs/reiserfs CONFIG_REISERFS_PROC_INFO Create under /proc/fs/reiserfs a hierarchy of files, displaying various ReiserFS statistics and internal data at the expense of making your kernel or module slightly larger (+8 KB). This also increases the amount of kernel memory required for each mount by 440 bytes. It isn't useful to average persons, and you probably can't measure the performance cost of it. If you are fine-tuning reiserfs, say Y, otherwise say N. Second extended fs support CONFIG_EXT2_FS This is the de facto standard Linux file system (method to organize files on a storage device) for hard disks. You want to say Y here, unless you intend to use Linux exclusively from inside a DOS partition using the UMSDOS file system. The advantage of the latter is that you can get away without repartitioning your hard drive (which often implies backing everything up and restoring afterwards); the disadvantage is that Linux becomes susceptible to DOS viruses and that UMSDOS is somewhat slower than ext2fs. Even if you want to run Linux in this fashion, it might be a good idea to have ext2fs around: it enables you to read more floppy disks and facilitates the transition to a *real* Linux partition later. Another (rare) case which doesn't require ext2fs is a diskless Linux box which mounts all files over the network using NFS (in this case it's sufficient to say Y to "NFS file system support" below). Saying Y here will enlarge your kernel by about 44 KB. The Ext2fs-Undeletion mini-HOWTO, available from , gives information about how to retrieve deleted files on ext2fs file systems. To change the behaviour of ext2 file systems, you can use the tune2fs utility ("man tune2fs"). To modify attributes of files and directories on ext2 file systems, use chattr ("man chattr"). Ext2fs partitions can be read from within DOS using the ext2tool command line tool package (available from ) and from within Windows NT using the ext2nt command line tool package from . Explore2fs is a graphical explorer for ext2fs partitions which runs on Windows 95 and Windows NT and includes experimental write support; it is available from . If you want to compile this file system as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ext2.o. Be aware however that the file system of your root partition (the one containing the directory /) cannot be compiled as a module, and so this could be dangerous. Most everyone wants to say Y here. Ext3 journalling file system support (EXPERIMENTAL) CONFIG_EXT3_FS This is the journalling version of the Second extended file system (often called ext3), the de facto standard Linux file system (method to organize files on a storage device) for hard disks. The journalling code included in this driver means you do not have to run e2fsck (file system checker) on your file systems after a crash. The journal keeps track of any changes that were being made at the time the system crashed, and can ensure that your file system is consistent without the need for a lengthy check. Other than adding the journal to the file system, the on-disk format of ext3 is identical to ext2. It is possible to freely switch between using the ext3 driver and the ext2 driver, as long as the file system has been cleanly unmounted, or e2fsck is run on the file system. To add a journal on an existing ext2 file system or change the behaviour of ext3 file systems, you can use the tune2fs utility ("man tune2fs"). To modify attributes of files and directories on ext3 file systems, use chattr ("man chattr"). You need to be using e2fsprogs version 1.20 or later in order to create ext3 journals (available at ). If you want to compile this file system as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ext3.o. Be aware however that the file system of your root partition (the one containing the directory /) cannot be compiled as a module, and so this may be dangerous. Journal Block Device support (JBD for ext3) (EXPERIMENTAL) CONFIG_JBD This is a generic journalling layer for block devices. It is currently used by the ext3 file system, but it could also be used to add journal support to other file systems or block devices such as RAID or LVM. If you are using the ext3 file system, you need to say Y here. If you are not using ext3 then you will probably want to say N. If you want to compile this device as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called jbd.o. If you are compiling ext3 into the kernel, you cannot compile this code as a module. JBD (ext3) debugging support CONFIG_JBD_DEBUG If you are using the ext3 journalling file system (or potentially any other file system/device using JBD), this option allows you to enable debugging output while the system is running, in order to help track down any problems you are having. By default the debugging output will be turned off. If you select Y here, then you will be able to turn on debugging with "echo N > /proc/sys/fs/jbd-debug", where N is a number between 1 and 5, the higher the number, the more debugging output is generated. To turn debugging off again, do "echo 0 > /proc/sys/fs/jbd-debug". Buffer Head tracing (DEBUG) CONFIG_BUFFER_DEBUG If you are a kernel developer working with file systems or in the block device layer, this buffer head tracing may help you to track down bugs in your code. This enables some debugging macros (BUFFER_TRACE, etc.) which allow you to track the state of a buffer through various layers of code. The debugging code is used primarily by ext3 and JBD code. Because this option adds considerably to the size of each buffer, most people will want to say N here. BeOS filesystem support (BeFS) (read only) CONFIG_BEFS_FS The BeOS File System (BeFS) is the native file system of Be, Inc's BeOS. Notable features include support for arbitrary attributes on files and directories, and database-like indices on selected attributes. (Also note that this driver doesn't make those features available at this time). It is a 64 bit filesystem, so it supports extremely large volumes and files. If you use this filesystem, you should also say Y to at least one of the NLS (native language support) options below. If you don't know what this is about, 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 Documentation/modules.txt. The module will be called befs.o. Debug BeFS CONFIG_BEFS_DEBUG If you say Y here, you can use the 'debug' mount option to enable debugging output from the driver. This is unlike previous versions of the driver, where enabling this option would turn on debugging output automatically. Example: mount -t befs /dev/hda2 /mnt -o debug BFS file system support CONFIG_BFS_FS Boot File System (BFS) is a file system used under SCO UnixWare to allow the bootloader access to the kernel image and other important files during the boot process. It is usually mounted under /stand and corresponds to the slice marked as "STAND" in the UnixWare partition. You should say Y if you want to read or write the files on your /stand slice from within Linux. You then also need to say Y to "UnixWare slices support", below. More information about the BFS file system is contained in the file . If you don't know what this is about, 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 . The module will be called bfs.o. Note that the file system of your root partition (the one containing the directory /) cannot be compiled as a module. Compressed ROM file system support CONFIG_CRAMFS Saying Y here includes support for CramFs (Compressed ROM File System). CramFs is designed to be a simple, small, and compressed file system for ROM based embedded systems. CramFs is read-only, limited to 256MB file systems (with 16MB files), and doesn't support 16/32 bits uid/gid, hard links and timestamps. See and for further 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 . The module will be called cramfs.o. Note that the root file system (the one containing the directory /) cannot be compiled as a module. If unsure, say N. CMS file system support CONFIG_CMS_FS Read only support for CMS minidisk file systems found on IBM mainframe systems. Only the basic format is supported so far. If you don't know what CMS is you probably don't want to know any more. # When the 2.5 version of configure.help goes away, the part of this that # duplicates Documentation/filesystems/tmpfs.txt can drop out. Virtual memory file system support CONFIG_TMPFS Tmpfs is a file system which keeps all files in virtual memory. Everything in tmpfs is temporary in the sense that no files will be created on your hard drive. If you reboot, everything in tmpfs will be lost. In contrast to RAM disks, which get allocated a fixed amount of physical RAM, tmpfs grows and shrinks to accommodate the files it contains and is able to swap unneeded pages out to swap space. Everything is "virtual" in the sense that no files will be created on your hard drive; if you reboot, everything in tmpfs will be lost. You should mount the file system somewhere to be able to use POSIX shared memory. Adding the following line to /etc/fstab should take care of things: tmpfs /dev/shm tmpfs defaults 0 0 Remember to create the directory that you intend to mount tmpfs on if necessary (/dev/shm is automagically created if you use devfs). You can set limits for the number of blocks and inodes used by the file system with the mount options "size", "nr_blocks" and "nr_inodes". These parameters accept a suffix k, m or g for kilo, mega and giga and can be changed on remount. The initial permissions of the root directory can be set with the mount option "mode". See for details. Simple RAM-based file system support CONFIG_RAMFS Ramfs is a file system which keeps all files in RAM. It allows read and write access. It is more of an programming example than a usable file system. If you need a file system which lives in RAM with limit checking use tmpfs. 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 . The module will be called ramfs.o. ISO 9660 CD-ROM file system support CONFIG_ISO9660_FS This is the standard file system used on CD-ROMs. It was previously known as "High Sierra File System" and is called "hsfs" on other Unix systems. The so-called Rock-Ridge extensions which allow for long Unix filenames and symbolic links are also supported by this driver. If you have a CD-ROM drive and want to do more with it than just listen to audio CDs and watch its LEDs, say Y (and read and the CD-ROM-HOWTO, available from ), thereby enlarging your kernel by about 27 KB; otherwise 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 . The module will be called isofs.o. Microsoft Joliet CD-ROM extensions CONFIG_JOLIET Joliet is a Microsoft extension for the ISO 9660 CD-ROM file system which allows for long filenames in unicode format (unicode is the new 16 bit character code, successor to ASCII, which encodes the characters of almost all languages of the world; see for more information). Say Y here if you want to be able to read Joliet CD-ROMs under Linux. Transparent decompression extension CONFIG_ZISOFS This is a Linux-specific extension to RockRidge which lets you store data in compressed form on a CD-ROM and have it transparently decompressed when the CD-ROM is accessed. See for the tools necessary to create such a filesystem. Say Y here if you want to be able to read such compressed CD-ROMs. UDF file system support (read-only) CONFIG_UDF_FS This is the new file system used on some CD-ROMs and DVDs. Say Y if you intend to mount DVD discs or CDRW's written in packet mode, or if written to by other UDF utilities, such as DirectCD. This UDF file system support is read-only. If you want to write to UDF file systems on some media, you need to say Y to "UDF read-write support" below in addition. Please read . This file system support 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 udf.o. If you want to compile it as a module, say M here and read . If unsure, say N. UDF write support (DANGEROUS) CONFIG_UDF_RW Say Y if you want to test write support for UDF file systems. Due to lack of support for writing to CDR/CDRW's, this option is only supported for hard discs, DVD-RAM, and loopback files. DOS FAT fs support CONFIG_FAT_FS If you want to use one of the FAT-based file systems (the MS-DOS, VFAT (Windows 95) and UMSDOS (used to run Linux on top of an ordinary DOS partition) file systems), then you must say Y or M here to include FAT support. You will then be able to mount partitions or diskettes with FAT-based file systems and transparently access the files on them, i.e. MSDOS files will look and behave just like all other Unix files. This FAT support is not a file system in itself, it only provides the foundation for the other file systems. You will have to say Y or M to at least one of "MSDOS fs support" or "VFAT fs support" in order to make use of it. Another way to read and write MSDOS floppies and hard drive partitions from within Linux (but not transparently) is with the mtools ("man mtools") program suite. You don't need to say Y here in order to do that. If you need to move large files on floppies between a DOS and a Linux box, say Y here, mount the floppy under Linux with an MSDOS file system and use GNU tar's M option. GNU tar is a program available for Unix and DOS ("man tar" or "info tar"). It is now also becoming possible to read and write compressed FAT file systems; read for details. The FAT support will enlarge your kernel by about 37 KB. If unsure, say Y. If you want to compile this as a module however ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called fat.o. Note that if you compile the FAT support as a module, you cannot compile any of the FAT-based file systems into the kernel -- they will have to be modules as well. The file system of your root partition (the one containing the directory /) cannot be a module, so don't say M here if you intend to use UMSDOS as your root file system. MSDOS fs support CONFIG_MSDOS_FS This allows you to mount MSDOS partitions of your hard drive (unless they are compressed; to access compressed MSDOS partitions under Linux, you can either use the DOS emulator DOSEMU, described in the DOSEMU-HOWTO, available from , or try dmsdosfs in . If you intend to use dosemu with a non-compressed MSDOS partition, say Y here) and MSDOS floppies. This means that file access becomes transparent, i.e. the MSDOS files look and behave just like all other Unix files. If you want to use UMSDOS, the Unix-like file system on top of a DOS file system, which allows you to run Linux from within a DOS partition without repartitioning, you'll have to say Y or M here. If you have Windows 95 or Windows NT installed on your MSDOS partitions, you should use the VFAT file system (say Y to "VFAT fs support" below), or you will not be able to see the long filenames generated by Windows 95 / Windows NT. This option will enlarge your kernel by about 7 KB. If unsure, answer Y. This will only work if you said Y to "DOS FAT fs support" as well. If you want to compile this as a module however ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called msdos.o. VFAT (Windows-95) fs support CONFIG_VFAT_FS This option provides support for normal Windows file systems with long filenames. That includes non-compressed FAT-based file systems used by Windows 95, Windows 98, Windows NT 4.0, and the Unix programs from the mtools package. You cannot use the VFAT file system for your Linux root partition (the one containing the directory /); use UMSDOS instead if you want to run Linux from within a DOS partition (i.e. say Y to "Unix like fs on top of std MSDOS fs", below). The VFAT support enlarges your kernel by about 10 KB and it only works if you said Y to the "DOS FAT fs support" above. Please read the file for details. If unsure, say Y. 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 . The module will be called vfat.o. Unix-like file system on top of standard MSDOS fs CONFIG_UMSDOS_FS Say Y here if you want to run Linux from within an existing DOS partition of your hard drive. The advantage of this is that you can get away without repartitioning your hard drive (which often implies backing everything up and restoring afterwards) and hence you're able to quickly try out Linux or show it to your friends; the disadvantage is that Linux becomes susceptible to DOS viruses and that UMSDOS is somewhat slower than ext2fs. Another use of UMSDOS is to write files with long unix filenames to MSDOS floppies; it also allows Unix-style soft-links and owner/permissions of files on MSDOS floppies. You will need a program called umssync in order to make use of UMSDOS; read . To get utilities for initializing/checking UMSDOS file system, or latest patches and/or information, visit the UMSDOS home page at . This option enlarges your kernel by about 28 KB and it only works if you said Y to both "DOS FAT fs support" and "MSDOS fs support" above. 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 . The module will be called umsdos.o. Note that the file system of your root partition (the one containing the directory /) cannot be a module, so saying M could be dangerous. If unsure, say N. /proc file system support CONFIG_PROC_FS This is a virtual file system providing information about the status of the system. "Virtual" means that it doesn't take up any space on your hard disk: the files are created on the fly by the kernel when you try to access them. Also, you cannot read the files with older version of the program less: you need to use more or cat. It's totally cool; for example, "cat /proc/interrupts" gives information about what the different IRQs are used for at the moment (there is a small number of Interrupt ReQuest lines in your computer that are used by the attached devices to gain the CPU's attention -- often a source of trouble if two devices are mistakenly configured to use the same IRQ). The program procinfo to display some information about your system gathered from the /proc file system. Before you can use the /proc file system, it has to be mounted, meaning it has to be given a location in the directory hierarchy. That location should be /proc. A command such as "mount -t proc proc /proc" or the equivalent line in /etc/fstab does the job. The /proc file system is explained in the file and on the proc(5) manpage ("man 5 proc"). This option will enlarge your kernel by about 67 KB. Several programs depend on this, so everyone should say Y here. Support for PReP Residual Data CONFIG_PREP_RESIDUAL 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. PReP residual data available in /proc/residual CONFIG_PROC_PREPRESIDUAL 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. /dev file system support CONFIG_DEVFS_FS This is support for devfs, a virtual file system (like /proc) which provides the file system interface to device drivers, normally found in /dev. Devfs does not depend on major and minor number allocations. Device drivers register entries in /dev which then appear automatically, which means that the system administrator does not have to create character and block special device files in the /dev directory using the mknod command (or MAKEDEV script) anymore. This is work in progress. If you want to use this, you *must* read the material in , especially the file README there. If unsure, say N. Automatically mount devfs at boot time CONFIG_DEVFS_MOUNT This option appears if you have CONFIG_DEVFS_FS enabled. Setting this to 'Y' will make the kernel automatically mount devfs onto /dev when the system is booted, before the init thread is started. You can override this with the "devfs=nomount" boot option. If unsure, say N. Debug devfs CONFIG_DEVFS_DEBUG If you say Y here, then the /dev file system code will generate debugging messages. See the file for more details. If unsure, say N. NFS file system support CONFIG_NFS_FS If you are connected to some other (usually local) Unix computer (using SLIP, PLIP, PPP or Ethernet) and want to mount files residing on that computer (the NFS server) using the Network File Sharing protocol, say Y. "Mounting files" means that the client can access the files with usual UNIX commands as if they were sitting on the client's hard disk. For this to work, the server must run the programs nfsd and mountd (but does not need to have NFS file system support enabled in its kernel). NFS is explained in the Network Administrator's Guide, available from , on its man page: "man nfs", and in the NFS-HOWTO. A superior but less widely used alternative to NFS is provided by the Coda file system; see "Coda file system support" below. If you say Y here, you should have said Y to TCP/IP networking also. This option would enlarge your kernel by about 27 KB. This file system 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 nfs.o. If you want to compile it as a module, say M here and read . If you are configuring a diskless machine which will mount its root file system over NFS at boot time, say Y here and to "Kernel level IP autoconfiguration" above and to "Root file system on NFS" below. You cannot compile this driver as a module in this case. There are two packages designed for booting diskless machines over the net: netboot, available from , and Etherboot, available from . If you don't know what all this is about, say N. Provide NFSv3 client support CONFIG_NFS_V3 Say Y here if you want your NFS client to be able to speak the newer version 3 of the NFS protocol. If unsure, say N. Root file system on NFS CONFIG_ROOT_NFS If you want your Linux box to mount its whole root file system (the one containing the directory /) from some other computer over the net via NFS (presumably because your box doesn't have a hard disk), say Y. Read for details. It is likely that in this case, you also want to say Y to "Kernel level IP autoconfiguration" so that your box can discover its network address at boot time. Most people say N here. NFS server support CONFIG_NFSD If you want your Linux box to act as an NFS *server*, so that other computers on your local network which support NFS can access certain directories on your box transparently, you have two options: you can use the self-contained user space program nfsd, in which case you should say N here, or you can say Y and use the kernel based NFS server. The advantage of the kernel based solution is that it is faster. In either case, you will need support software; the respective locations are given in the file in the NFS section. If you say Y here, you will get support for version 2 of the NFS protocol (NFSv2). If you also want NFSv3, say Y to the next question as well. Please read the NFS-HOWTO, available from . The NFS server 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 nfsd.o. If you want to compile it as a module, say M here and read . If unsure, say N. Provide NFSv3 server support CONFIG_NFSD_V3 If you would like to include the NFSv3 server as well as the NFSv2 server, say Y here. If unsure, say Y. Provide NFS over TCP server support EXPERIMENTAL CONFIG_NFSD_TCP Enable NFS service over TCP connections. This the officially still experimental, but seems to work well. OS/2 HPFS file system support CONFIG_HPFS_FS OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS is the file system used for organizing files on OS/2 hard disk partitions. Say Y if you want to be able to read files from and write files to an OS/2 HPFS partition on your hard drive. OS/2 floppies however are in regular MSDOS format, so you don't need this option in order to be able to read them. Read . This file system 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 hpfs.o. If you want to compile it as a module, say M here and read . If unsure, say N. NTFS file system support (read-only) CONFIG_NTFS_FS NTFS is the file system of Microsoft Windows NT/2000/XP. For more information see . Saying Y here would allow you to read from NTFS partitions. This file system 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 ntfs.o. If you want to compile it as a module, say M here and read . If you are not using Windows NT/2000/XP in addition to Linux on your computer it is safe to say N. CONFIG_NTFS_DEBUG If you are experiencing any problems with the NTFS file system, say Y here. This will result in additional consistency checks to be performed by the driver as well as additional debugging messages to be written to the system log. Note that debugging messages are disabled by default. To enable them, supply the option debug_msgs=1 at the kernel command line when booting the kernel or as an option to insmod when loading the ntfs module. Once the driver is active, you can enable debugging messages by doing (as root): echo 1 > /proc/sys/fs/ntfs-debug Replacing the "1" with "0" would disable debug messages. If you leave debugging messages disabled, this results in little overhead, but enabling debug messages results in very significant slowdown of the system. When reporting bugs, please try to have available a full dump of debugging messages while the misbehaviour was occurring. CONFIG_NTFS_RW This enables the experimental write support in the NTFS driver. WARNING: Do not use this option unless you are actively developing NTFS as it is currently guaranteed to be broken and you may lose all your data! It is strongly recommended and perfectly safe to say N here. System V/Xenix/V7/Coherent file system support CONFIG_SYSV_FS SCO, Xenix and Coherent are commercial Unix systems for Intel machines, and Version 7 was used on the DEC PDP-11. Saying Y here would allow you to read from their floppies and hard disk partitions. If you have floppies or hard disk partitions like that, it is likely that they contain binaries from those other Unix systems; in order to run these binaries, you will want to install linux-abi which is a a set of kernel modules that lets you run SCO, Xenix, Wyse, UnixWare, Dell Unix and System V programs under Linux. It is available via FTP (user: ftp) from ). NOTE: that will work only for binaries from Intel-based systems; PDP ones will have to wait until somebody ports Linux to -11 ;-) If you only intend to mount files from some other Unix over the network using NFS, you don't need the System V file system support (but you need NFS file system support obviously). Note that this option is generally not needed for floppies, since a good portable way to transport files and directories between unixes (and even other operating systems) is given by the tar program ("man tar" or preferably "info tar"). Note also that this option has nothing whatsoever to do with the option "System V IPC". Read about the System V file system in . Saying Y here will enlarge your kernel by about 27 KB. 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 . The module will be called sysv.o. If you haven't heard about all of this before, it's safe to say N. Amiga FFS file system support CONFIG_AFFS_FS The Fast File System (FFS) is the common file system used on hard disks by Amiga(tm) systems since AmigaOS Version 1.3 (34.20). Say Y if you want to be able to read and write files from and to an Amiga FFS partition on your hard drive. Amiga floppies however cannot be read with this driver due to an incompatibility of the floppy controller used in an Amiga and the standard floppy controller in PCs and workstations. Read and . With this driver you can also mount disk files used by Bernd Schmidt's Un*X Amiga Emulator (). If you want to do this, you will also need to say Y or M to "Loop device support", above. This file system 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 affs.o. If you want to compile it as a module, say M here and read . If unsure, say N. Apple Macintosh file system support CONFIG_HFS_FS If you say Y here, you will be able to mount Macintosh-formatted floppy disks and hard drive partitions with full read-write access. Please read to learn about the available mount options. This file system support 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 hfs.o. If you want to compile it as a module, say M here and read . ROM file system support CONFIG_ROMFS_FS This is a very small read-only file system mainly intended for initial ram disks of installation disks, but it could be used for other read-only media as well. Read for details. This file system support 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 romfs.o. If you want to compile it as a module, say M here and read . Note that the file system of your root partition (the one containing the directory /) cannot be a module. If you don't know whether you need it, then you don't need it: answer N. QNX4 file system support (read only) CONFIG_QNX4FS_FS This is the file system used by the real-time operating systems QNX 4 and QNX 6 (the latter is also called QNX RTP). Further information is available at . Say Y if you intend to mount QNX hard disks or floppies. Unless you say Y to "QNX4FS read-write support" below, you will only be able to read these file systems. This file system support 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 qnx4.o. If you want to compile it as a module, say M here and read . If you don't know whether you need it, then you don't need it: answer N. QNX4FS write support (DANGEROUS) CONFIG_QNX4FS_RW Say Y if you want to test write support for QNX4 file systems. It's currently broken, so for now: answer N. Kernel automounter support CONFIG_AUTOFS_FS The automounter is a tool to automatically mount remote file systems on demand. This implementation is partially kernel-based to reduce overhead in the already-mounted case; this is unlike the BSD automounter (amd), which is a pure user space daemon. To use the automounter you need the user-space tools from the autofs package; you can find the location in . You also want to answer Y to "NFS file system support", below. If you want to use the newer version of the automounter with more features, say N here and say Y to "Kernel automounter v4 support", below. 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 . The module will be called autofs.o. If you are not a part of a fairly large, distributed network, you probably do not need an automounter, and can say N here. Kernel automounter version 4 support (also supports v3) CONFIG_AUTOFS4_FS The automounter is a tool to automatically mount remote file systems on demand. This implementation is partially kernel-based to reduce overhead in the already-mounted case; this is unlike the BSD automounter (amd), which is a pure user space daemon. To use the automounter you need the user-space tools from ; you also want to answer Y to "NFS file system support", below. 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 . The module will be called autofs4.o. You will need to add "alias autofs autofs4" to your modules configuration file. If you are not a part of a fairly large, distributed network or don't have a laptop which needs to dynamically reconfigure to the local network, you probably do not need an automounter, and can say N here. EFS file system support (read-only) CONFIG_EFS_FS EFS is an older file system used for non-ISO9660 CD-ROMs and hard disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer uses the XFS file system for hard disk partitions however). This implementation only offers read-only access. If you don't know what all this is about, it's safe to say N. For more information about EFS see its home page at . If you want to compile the EFS file system support as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called efs.o. Journalling Flash File System (JFFS) support CONFIG_JFFS_FS JFFS is the Journalling Flash File System developed by Axis Communications in Sweden, aimed at providing a crash/powerdown-safe file system for disk-less embedded devices. Further information is available at (). JFFS debugging verbosity (0 = quiet, 3 = noisy) CONFIG_JFFS_FS_VERBOSE Determines the verbosity level of the JFFS debugging messages. Journalling Flash File System v2 (JFFS2) support CONFIG_JFFS2_FS JFFS2 is the second generation of the Journalling Flash File System for use on diskless embedded devices. It provides improved wear levelling, compression and support for hard links. You cannot use this on normal block devices, only on 'MTD' devices. Further information should be made available soon at . JFFS2 debugging verbosity (0 = quiet, 2 = noisy) CONFIG_JFFS2_FS_DEBUG This controls the amount of debugging messages produced by the JFFS2 code. Set it to zero for use in production systems. For evaluation, testing and debugging, it's advisable to set it to one. This will enable a few assertions and will print debugging messages at the KERN_DEBUG loglevel, where they won't normally be visible. Level 2 is unlikely to be useful - it enables extra debugging in certain areas which at one point needed debugging, but when the bugs were located and fixed, the detailed messages were relegated to level 2. If reporting bugs, please try to have available a full dump of the messages at debug level 1 while the misbehaviour was occurring. JFFS stats available in /proc filesystem CONFIG_JFFS_PROC_FS Enabling this option will cause statistics from mounted JFFS file systems to be made available to the user in the /proc/fs/jffs/ directory. UFS file system support (read-only) CONFIG_UFS_FS BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD, OpenBSD and NeXTstep) use a file system called UFS. Some System V Unixes can create and mount hard disk partitions and diskettes using this file system as well. Saying Y here will allow you to read from these partitions; if you also want to write to them, say Y to the experimental "UFS file system write support", below. Please read the file for more information. If you only intend to mount files from some other Unix over the network using NFS, you don't need the UFS file system support (but you need NFS file system support obviously). Note that this option is generally not needed for floppies, since a good portable way to transport files and directories between unixes (and even other operating systems) is given by the tar program ("man tar" or preferably "info tar"). When accessing NeXTstep files, you may need to convert them from the NeXT character set to the Latin1 character set; use the program recode ("info recode") for this purpose. If you want to compile the UFS file system support as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ufs.o. If you haven't heard about all of this before, it's safe to say N. UFS file system write support (DANGEROUS) CONFIG_UFS_FS_WRITE Say Y here if you want to try writing to UFS partitions. This is experimental, so you should back up your UFS partitions beforehand. Advanced partition selection CONFIG_PARTITION_ADVANCED Say Y here if you would like to use hard disks under Linux which were partitioned under an operating system running on a different architecture than your Linux system. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about foreign partitioning schemes. If unsure, say N. Acorn partition support CONFIG_ACORN_PARTITION Support hard disks partitioned under Acorn operating systems. Native filecore partition support CONFIG_ACORN_PARTITION_ADFS The Acorn Disc Filing System is the standard file system of the RiscOS operating system which runs on Acorn's ARM-based Risc PC systems and the Acorn Archimedes range of machines. If you say `Y' here, Linux will support disk partitions created under ADFS. PowerTec partition support CONFIG_ACORN_PARTITION_POWERTEC Support reading partition tables created on Acorn machines using the PowerTec SCSI drive. RISCiX partition support CONFIG_ACORN_PARTITION_RISCIX Once upon a time, there was a native Unix port for the Acorn series of machines called RISCiX. If you say 'Y' here, Linux will be able to read disks partitioned under RISCiX. ICS partition support CONFIG_ACORN_PARTITION_ICS Say Y here if you would like to use hard disks under Linux which were partitioned using the ICS interface on Acorn machines. Alpha OSF partition support CONFIG_OSF_PARTITION Say Y here if you would like to use hard disks under Linux which were partitioned on an Alpha machine. Macintosh partition map support CONFIG_MAC_PARTITION Say Y here if you would like to use hard disks under Linux which were partitioned on a Macintosh. Windows Logical Disk Manager (Dynamic Disk) support (EXPERIMENTAL) CONFIG_LDM_PARTITION Say Y here if you would like to use hard disks under Linux which were partitioned using Windows 2000's or XP's Logical Disk Manager. They are also known as "Dynamic Disks". Windows 2000 introduced the concept of Dynamic Disks to get around the limitations of the PC's partitioning scheme. The Logical Disk Manager allows the user to repartition a disk and create spanned, mirrored, striped or RAID volumes, all without the need for rebooting. Normal partitions are now called Basic Disks under Windows 2000 and XP. Technical documentation to accompany this driver is available from: . If unsure, say N. Windows LDM extra logging CONFIG_LDM_DEBUG Say Y here if you would like LDM to log verbosely. This could be helpful if the driver doesn't work as expected and you'd like to report a bug. If unsure, say N. PC BIOS (MSDOS partition tables) support CONFIG_MSDOS_PARTITION Say Y here if you would like to use hard disks under Linux which were partitioned on an x86 PC (not necessarily by DOS). Amiga partition table support CONFIG_AMIGA_PARTITION Say Y here if you would like to use hard disks under Linux which were partitioned under AmigaOS. Atari partition table support CONFIG_ATARI_PARTITION Say Y here if you would like to use hard disks under Linux which were partitioned under the Atari OS. BSD disklabel (FreeBSD partition tables) support CONFIG_BSD_DISKLABEL FreeBSD uses its own hard disk partition scheme on your PC. It requires only one entry in the primary partition table of your disk and manages it similarly to DOS extended partitions, putting in its first sector a new partition table in BSD disklabel format. Saying Y here allows you to read these disklabels and further mount FreeBSD partitions from within Linux if you have also said Y to "UFS file system support", above. If you don't know what all this is about, say N. Minix subpartition support CONFIG_MINIX_SUBPARTITION Minix 2.0.0/2.0.2 subpartition table support for Linux. Say Y here if you want to mount and use Minix 2.0.0/2.0.2 subpartitions. Sun partition table support CONFIG_SUN_PARTITION Like most systems, SunOS uses its own hard disk partition table format, incompatible with all others. Saying Y here allows you to read these partition tables and further mount SunOS partitions from within Linux if you have also said Y to "UFS file system support", above. This is mainly used to carry data from a SPARC under SunOS to your Linux box via a removable medium like magneto-optical or ZIP drives; note however that a good portable way to transport files and directories between unixes (and even other operating systems) is given by the tar program ("man tar" or preferably "info tar"). If you don't know what all this is about, say N. Solaris (x86) partition table support CONFIG_SOLARIS_X86_PARTITION Like most systems, Solaris x86 uses its own hard disk partition table format, incompatible with all others. Saying Y here allows you to read these partition tables and further mount Solaris x86 partitions from within Linux if you have also said Y to "UFS file system support", above. SGI partition support CONFIG_SGI_PARTITION Say Y here if you would like to be able to read the hard disk partition table format used by SGI machines. Intel EFI GUID partition support CONFIG_EFI_PARTITION Say Y here if you would like to use hard disks under Linux which were partitioned using EFI GPT. Presently only useful on the IA-64 platform. Ultrix partition table support CONFIG_ULTRIX_PARTITION Say Y here if you would like to be able to read the hard disk partition table format used by DEC (now Compaq) Ultrix machines. Otherwise, say N. IBM disk label and partition support CONFIG_IBM_PARTITION You have to say Y here if you would like to be able to read volume labels of IBM DASD disks. These can be ECKD DASD disks with compatible disk layout (cdl) and standard Linux disk layout (ldl), FBA DASD disks and CMS reserved minidisks. Otherwise, say N and you will not be able to access these disks. ADFS file system support CONFIG_ADFS_FS The Acorn Disc Filing System is the standard file system of the RiscOS operating system which runs on Acorn's ARM-based Risc PC systems and the Acorn Archimedes range of machines. If you say Y here, Linux will be able to read from ADFS partitions on hard drives and from ADFS-formatted floppy discs. If you also want to be able to write to those devices, say Y to "ADFS write support" below. The ADFS partition should be the first partition (i.e., /dev/[hs]d?1) on each of your drives. Please read the file for further details. This code is also available as a module called adfs.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 . If unsure, say N. ADFS write support (DANGEROUS) CONFIG_ADFS_FS_RW If you say Y here, you will be able to write to ADFS partitions on hard drives and ADFS-formatted floppy disks. This is experimental codes, so if you're unsure, say N. JFS filesystem support CONFIG_JFS_FS This is a port of IBM's Journalling Filesystem . More information is available in the file Documentation/filesystems/jfs.txt. If you do not intend to use the JFS filesystem, say N. JFS Debugging CONFIG_JFS_DEBUG If you are experiencing any problems with the JFS filesystem, say Y here. This will result in additional debugging messages to be written to the system log. Under normal circumstances, this results in very little overhead. JFS Statistics CONFIG_JFS_STATISTICS Enabling this option will cause statistics from the JFS file system to be made available to the user in the /proc/fs/jfs/ directory. /dev/pts file system for Unix98 PTYs CONFIG_DEVPTS_FS You should say Y here if you said Y to "Unix98 PTY support" above. You'll then get a virtual file system which can be mounted on /dev/pts with "mount -t devpts". This, together with the pseudo terminal master multiplexer /dev/ptmx, is used for pseudo terminal support as described in The Open Group's Unix98 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/. What was traditionally /dev/ttyp2 will then be /dev/pts/2, for example. The GNU C library glibc 2.1 contains the requisite support for this mode of operation; you also need client programs that use the Unix98 API. Please read for more information about the Unix98 pty devices. Note that the experimental "/dev file system support" (CONFIG_DEVFS_FS) is a more general facility. FreeVxFS file system support (VERITAS VxFS(TM) compatible) CONFIG_VXFS_FS FreeVxFS is a file system driver that support the VERITAS VxFS(TM) file system format. VERITAS VxFS(TM) is the standard file system of SCO UnixWare (and possibly others) and optionally available for Sunsoft Solaris, HP-UX and many other operating systems. Currently only readonly access is supported. NOTE: the file system type as used by mount(1), mount(2) and fstab(5) is 'vxfs' as it describes the file system format, not the actual driver. This file system 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 freevxfs.o. If you want to compile it as a module, say M here and read . If unsure, say N. UnixWare slices support CONFIG_UNIXWARE_DISKLABEL Like some systems, UnixWare uses its own slice table inside a partition (VTOC - Virtual Table of Contents). Its format is incompatible with all other OSes. Saying Y here allows you to read VTOC and further mount UnixWare partitions read-only from within Linux if you have also said Y to "UFS file system support" or "System V and Coherent file system support", above. This is mainly used to carry data from a UnixWare box to your Linux box via a removable medium like magneto-optical, ZIP or removable IDE drives. Note, however, that a good portable way to transport files and directories between unixes (and even other operating systems) is given by the tar program ("man tar" or preferably "info tar"). If you don't know what all this is about, say N. SMB file system support (to mount Windows shares etc.) CONFIG_SMB_FS SMB (Server Message Block) is the protocol Windows for Workgroups (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share files and printers over local networks. Saying Y here allows you to mount their file systems (often called "shares" in this context) and access them just like any other Unix directory. Currently, this works only if the Windows machines use TCP/IP as the underlying transport protocol, and not NetBEUI. For details, read and the SMB-HOWTO, available from . Note: if you just want your box to act as an SMB *server* and make files and printing services available to Windows clients (which need to have a TCP/IP stack), you don't need to say Y here; you can use the program SAMBA (available from ) for that. General information about how to connect Linux, Windows machines and Macs is on the WWW at . If you want to compile the SMB support as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called smbfs.o. Most people say N, however. Use a default NLS CONFIG_SMB_NLS_DEFAULT Enabling this will make smbfs use nls translations by default. You need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls settings and you need to give the default nls for the SMB server as CONFIG_SMB_NLS_REMOTE. The nls settings can be changed at mount time, if your smbmount supports that, using the codepage and iocharset parameters. smbmount from samba 2.2.0 or later supports this. Default Remote NLS Option CONFIG_SMB_NLS_REMOTE This setting allows you to specify a default value for which codepage the server uses. If this field is left blank no translations will be done by default. The local codepage/charset default to CONFIG_NLS_DEFAULT. The nls settings can be changed at mount time, if your smbmount supports that, using the codepage and iocharset parameters. smbmount from samba 2.2.0 or later supports this. Coda file system support (advanced network fs) CONFIG_CODA_FS Coda is an advanced network file system, similar to NFS in that it enables you to mount file systems of a remote server and access them with regular Unix commands as if they were sitting on your hard disk. Coda has several advantages over NFS: support for disconnected operation (e.g. for laptops), read/write server replication, security model for authentication and encryption, persistent client caches and write back caching. If you say Y here, your Linux box will be able to act as a Coda *client*. You will need user level code as well, both for the client and server. Servers are currently user level, i.e. they need no kernel support. Please read and check out the Coda home page . If you want to compile the coda client support as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called coda.o. InterMezzo file system support (replicating fs) CONFIG_INTERMEZZO_FS InterMezzo is a networked file system with disconnected operation and kernel level write back caching. It is most often used for replicating potentially large trees or keeping laptop/desktop copies in sync. If you say Y or M your kernel or module will provide InterMezzo support. You will also need a file server daemon, which you can get from . NCP file system support (to mount NetWare volumes) CONFIG_NCP_FS NCP (NetWare Core Protocol) is a protocol that runs over IPX and is used by Novell NetWare clients to talk to file servers. It is to IPX what NFS is to TCP/IP, if that helps. Saying Y here allows you to mount NetWare file server volumes and to access them just like any other Unix directory. For details, please read the file in the kernel source and the IPX-HOWTO from . You do not have to say Y here if you want your Linux box to act as a file *server* for Novell NetWare clients. General information about how to connect Linux, Windows machines and Macs is on the WWW at . 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 . The module will be called ncpfs.o. Say N unless you are connected to a Novell network. Packet signatures CONFIG_NCPFS_PACKET_SIGNING NCP allows packets to be signed for stronger security. If you want security, say Y. Normal users can leave it off. To be able to use packet signing you must use ncpfs > 2.0.12. Proprietary file locking CONFIG_NCPFS_IOCTL_LOCKING Allows locking of records on remote volumes. Say N unless you have special applications which are able to utilize this locking scheme. Clear remove/delete inhibit when needed CONFIG_NCPFS_STRONG Allows manipulation of files flagged as Delete or Rename Inhibit. To use this feature you must mount volumes with the ncpmount parameter "-s" (ncpfs-2.0.12 and newer). Say Y unless you are not mounting volumes with -f 444. Use NFS namespace if available CONFIG_NCPFS_NFS_NS Allows you to utilize NFS namespace on NetWare servers. It brings you case sensitive filenames. Say Y. You can disable it at mount-time with the `-N nfs' parameter of ncpmount. Use LONG (OS/2) namespace if available CONFIG_NCPFS_OS2_NS Allows you to utilize OS2/LONG namespace on NetWare servers. Filenames in this namespace are limited to 255 characters, they are case insensitive, and case in names is preserved. Say Y. You can disable it at mount time with the -N os2 parameter of ncpmount. Lowercase DOS filenames on LONG namespace volume CONFIG_NCPFS_SMALLDOS If you say Y here, every filename on a NetWare server volume using the OS2/LONG namespace and created under DOS or on a volume using DOS namespace will be converted to lowercase characters. Saying N here will give you these filenames in uppercase. This is only a cosmetic option since the OS2/LONG namespace is case insensitive. The only major reason for this option is backward compatibility when moving from DOS to OS2/LONG namespace support. Long filenames (created by Win95) will not be affected. This option does not solve the problem that filenames appear differently under Linux and under Windows, since Windows does an additional conversions on the client side. You can achieve similar effects by saying Y to "Allow using of Native Language Support" below. Use Native Language Support CONFIG_NCPFS_NLS Allows you to use codepages and I/O charsets for file name translation between the server file system and input/output. This may be useful, if you want to access the server with other operating systems, e.g. Windows 95. See also NLS for more Information. To select codepages and I/O charsets use ncpfs-2.2.0.13 or newer. Symbolic links and mode permission bits CONFIG_NCPFS_EXTRAS This enables the use of symbolic links and an execute permission bit on NCPFS. The file server need not have long name space or NFS name space loaded for these to work. To use the new attributes, it is recommended to use the flags '-f 600 -d 755' on the ncpmount command line. Default NLS Option CONFIG_NLS_DEFAULT The default NLS used when mounting file system. Note, that this is the NLS used by your console, not the NLS used by a specific file system (if different) to store data (filenames) on a disk. Currently, the valid values are: big5, cp437, cp737, cp775, cp850, cp852, cp855, cp857, cp860, cp861, cp862, cp863, cp864, cp865, cp866, cp869, cp874, cp932, cp936, cp949, cp950, cp1250, cp1251, cp1255, euc-jp, euc-kr, gb2312, iso8859-1, iso8859-2, iso8859-3, iso8859-4, iso8859-5, iso8859-6, iso8859-7, iso8859-8, iso8859-9, iso8859-13, iso8859-14, iso8859-15, koi8-r, koi8-ru, koi8-u, sjis, tis-620, utf8. If you specify a wrong value, it will use the built-in NLS; compatible with iso8859-1. If unsure, specify it as "iso8859-1". Codepage 437 (United States, Canada) CONFIG_NLS_CODEPAGE_437 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage that is used in the United States and parts of Canada. This is recommended. Codepage 737 (Greek) CONFIG_NLS_CODEPAGE_737 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage that is used for Greek. If unsure, say N. Codepage 775 (Baltic Rim) CONFIG_NLS_CODEPAGE_775 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage that is used for the Baltic Rim Languages (Latvian and Lithuanian). If unsure, say N. Codepage 850 (Europe) CONFIG_NLS_CODEPAGE_850 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage that is used for much of Europe -- United Kingdom, Germany, Spain, Italy, and [add more countries here]. It has some characters useful to many European languages that are not part of the US codepage 437. If unsure, say Y. Codepage 852 (Central/Eastern Europe) CONFIG_NLS_CODEPAGE_852 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the Latin 2 codepage used by DOS for much of Central and Eastern Europe. It has all the required characters for these languages: Albanian, Croatian, Czech, English, Finnish, Hungarian, Irish, German, Polish, Rumanian, Serbian (Latin transcription), Slovak, Slovenian, and Serbian. Codepage 855 (Cyrillic) CONFIG_NLS_CODEPAGE_855 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Cyrillic. Codepage 857 (Turkish) CONFIG_NLS_CODEPAGE_857 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Turkish. Codepage 860 (Portuguese) CONFIG_NLS_CODEPAGE_860 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Portuguese. Codepage 861 (Icelandic) CONFIG_NLS_CODEPAGE_861 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Icelandic. Codepage 862 (Hebrew) CONFIG_NLS_CODEPAGE_862 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Hebrew. Codepage 863 (Canadian French) CONFIG_NLS_CODEPAGE_863 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Canadian French. Codepage 864 (Arabic) CONFIG_NLS_CODEPAGE_864 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Arabic. Codepage 865 (Norwegian, Danish) CONFIG_NLS_CODEPAGE_865 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for the Nordic European countries. Codepage 866 (Cyrillic/Russian) CONFIG_NLS_CODEPAGE_866 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Cyrillic/Russian. Codepage 869 (Greek) CONFIG_NLS_CODEPAGE_869 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Greek. Thai charset (CP874, TIS-620) CONFIG_NLS_CODEPAGE_874 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Thai. Windows CP1251 (Bulgarian, Belarusian) CONFIG_NLS_CODEPAGE_1251 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Russian and Bulgarian and Belarusian. Japanese charsets (Shift-JIS, EUC-JP) CONFIG_NLS_CODEPAGE_932 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Shift-JIS or EUC-JP. To use EUC-JP, you can use 'euc-jp' as mount option or NLS Default value during kernel configuration, instead of 'cp932'. Simplified Chinese charset (CP936, GB2312) CONFIG_NLS_CODEPAGE_936 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Simplified Chinese(GBK). Korean charset (CP949, EUC-KR) CONFIG_NLS_CODEPAGE_949 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for UHC. Traditional Chinese charset (Big5) CONFIG_NLS_CODEPAGE_950 The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Traditional Chinese(Big5). Central European (Codepage 1250) CONFIG_NLS_CODEPAGE_1250 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CDROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Windows CP-1250 character set, which works for most Latin-written Slavic and Central European languages: Czech, German, Hungarian, Polish, Rumanian, Croatian, Slovak, Slovene. NLS ISO 8859-1 (Latin 1; Western European Languages) CONFIG_NLS_ISO8859_1 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 1 character set, which covers most West European languages such as Albanian, Catalan, Danish, Dutch, English, Faeroese, Finnish, French, German, Galician, Irish, Icelandic, Italian, Norwegian, Portuguese, Spanish, and Swedish. It is also the default for the US. If unsure, say Y. NLS ISO 8859-2 (Latin 2; Slavic/Central European Languages) CONFIG_NLS_ISO8859_2 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 2 character set, which works for most Latin-written Slavic and Central European languages: Czech, German, Hungarian, Polish, Rumanian, Croatian, Slovak, Slovene. NLS ISO 8859-3 (Latin 3; Esperanto, Galician, Maltese, Turkish) CONFIG_NLS_ISO8859_3 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 3 character set, which is popular with authors of Esperanto, Galician, Maltese, and Turkish. NLS ISO 8859-4 (Latin 4; old Baltic charset) CONFIG_NLS_ISO8859_4 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 4 character set which introduces letters for Estonian, Latvian, and Lithuanian. It is an incomplete predecessor of Latin 7. NLS ISO 8859-5 (Cyrillic) CONFIG_NLS_ISO8859_5 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for ISO8859-5, a Cyrillic character set with which you can type Bulgarian, Belarusian, Macedonian, Russian, Serbian, and Ukrainian. Note that the charset KOI8-R is preferred in Russia. NLS ISO 8859-6 (Arabic) CONFIG_NLS_ISO8859_6 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for ISO8859-6, the Arabic character set. NLS ISO 8859-7 (Modern Greek) CONFIG_NLS_ISO8859_7 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for ISO8859-7, the Modern Greek character set. Hebrew charsets (ISO-8859-8, CP1255) CONFIG_NLS_ISO8859_8 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for ISO8859-8, the Hebrew character set. NLS ISO 8859-9 (Latin 5; Turkish) CONFIG_NLS_ISO8859_9 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 5 character set, and it replaces the rarely needed Icelandic letters in Latin 1 with the Turkish ones. Useful in Turkey. NLS ISO 8859-10 (Latin 6; Nordic) CONFIG_NLS_ISO8859_10 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 6 character set, which adds the last Inuit (Greenlandic) and Sami (Lappish) letters that were missing in Latin 4 to cover the entire Nordic area. NLS ISO 8859-13 (Latin 7; Baltic) CONFIG_NLS_ISO8859_13 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 7 character set, which supports modern Baltic languages including Latvian and Lithuanian. NLS ISO 8859-14 (Latin 8; Celtic) CONFIG_NLS_ISO8859_14 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 8 character set, which adds the last accented vowels for Welsh (aka Cymraeg) (and Manx Gaelic) that were missing in Latin 1. has further information. NLS ISO 8859-15 (Latin 9; Western European languages with Euro) CONFIG_NLS_ISO8859_15 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 9 character set, which covers most West European languages such as Albanian, Catalan, Danish, Dutch, English, Estonian, Faeroese, Finnish, French, German, Galician, Irish, Icelandic, Italian, Norwegian, Portuguese, Spanish, and Swedish. Latin 9 is an update to Latin 1 (ISO 8859-1) that removes a handful of rarely used characters and instead adds support for Estonian, corrects the support for French and Finnish, and adds the new Euro character. If unsure, say Y. NLS KOI8-R (Russian) CONFIG_NLS_KOI8_R If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the preferred Russian character set. NLS KOI8-U/RU (Ukrainian, Belarusian) CONFIG_NLS_KOI8_U If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the preferred Ukrainian (koi8-u) and Belarusian (koi8-ru) character sets. NLS UTF8 CONFIG_NLS_UTF8 If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the UTF-8 encoding of the Unicode/ISO9646 universal character set. Virtual terminal CONFIG_VT 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-. 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 :-) Support for console on virtual terminal CONFIG_VT_CONSOLE 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. STI console CONFIG_STI_CONSOLE 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. Use MDIO for PHY configuration CONFIG_USE_MDIO 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. 860T FEC Ethernet CONFIG_FEC_ENET Enable Ethernet support via the Fast Ethernet Controller (FCC) on the Motorola MPC8260. Ethernet on FCC1 CONFIG_FCC1_ENET Use MPC8260 fast Ethernet controller 1 to drive Ethernet (default). Ethernet on FCC2 CONFIG_FCC2_ENET Use MPC8260 fast Ethernet controller 2 to drive Ethernet. Ethernet on FCC3 CONFIG_FCC3_ENET Use MPC8260 fast Ethernet controller 3 to drive Ethernet. CPM SCC Ethernet CONFIG_SCC_ENET Enable Ethernet support via the Motorola MPC8xx serial communications controller. # Choice: scc_ethernet Ethernet on SCC1 CONFIG_SCC1_ENET Use MPC8xx serial communications controller 1 to drive Ethernet (default). Ethernet on SCC2 CONFIG_SCC2_ENET Use MPC8xx serial communications controller 2 to drive Ethernet. Ethernet on SCC3 CONFIG_SCC3_ENET Use MPC8xx serial communications controller 3 to drive Ethernet. Use Big CPM Ethernet Buffers CONFIG_ENET_BIG_BUFFERS Allocate large buffers for MPC8xx Ethernet. Increases throughput and decreases the likelihood of dropped packets, but costs memory. Apple Desktop Bus (ADB) support CONFIG_ADB 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, or a "Blue and White G3", you probably want to say Y here. Otherwise say N. Support for CUDA based PowerMacs CONFIG_ADB_CUDA 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. If unsure say Y. Support for PMU-based PowerMacs CONFIG_ADB_PMU This provides support for PMU based Power Macintosh systems. This includes all PowerBooks and all AGP-based machines. If unsure say Y. Include MacIO ADB driver CONFIG_ADB_MACIO 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.) Support for ADB keyboard (old driver) CONFIG_ADB_KEYBOARD This option allows you to use an ADB keyboard attached to your machine. Note that this disables any other (ie. PS/2) keyboard support, even if your machine is physically capable of using both at the same time. If you use an ADB keyboard (4 pin connector), say Y here. If you use a PS/2 keyboard (6 pin connector), say N here. HIL keyboard support CONFIG_HIL The "Human Interface Loop" is a older, 8-channel USB-like controller used in Hewlett Packard PA-RISC based machines. There are a few cases where it is seen on PC/MAC architectures as well, usually also manufactured by HP. This driver is based off MACH and BSD drivers, and implements support for a keyboard attached to the HIL port. Full support for the USB-like functions and non-keyboard channels of the HIL is not provided for in this driver. There are vestiges of mouse support in the driver, but it is probably not working. The necessary hardware documentation to fully support the HIL controller and interface it to the linux-input API is lacking. Enable this option if you intend to use a HIL keyboard. Include IOP (IIfx/Quadra 9x0) ADB driver CONFIG_ADB_IOP The I/O Processor (IOP) is an Apple custom IC designed to provide intelligent support for I/O controllers. It is described at to enable direct support for it, say 'Y' here. Mac II style Apple Desktop Bus support CONFIG_ADB_MACII Say Y here if want your kernel to support Macintosh systems that use the Mac II style ADB. This includes the II, IIx, IIcx, SE/30, IIci, Quadra 610, Quadra 650, Quadra 700, Quadra 800, Centris 610 and Centris 650. Mac IIsi style Apple Desktop Bus support CONFIG_ADB_MACIISI Say Y here if want your kernel to support Macintosh systems that use the Mac IIsi style ADB. This includes the IIsi, IIvi, IIvx, Classic II, LC, LC II, LC III, Performa 460, and the Performa 600. Apple 68K PowerBook Power Management and Desktop Bus support CONFIG_ADB_PMU68K Say Y here if want your kernel to support the m68k based Powerbooks. This includes the PowerBook 140, PowerBook 145, PowerBook 150, PowerBook 160, PowerBook 165, PowerBook 165c, PowerBook 170, PowerBook 180, PowerBook, 180c, PowerBook 190cs, PowerBook 520, PowerBook Duo 210, PowerBook Duo 230, PowerBook Duo 250, PowerBook Duo 270c, PowerBook Duo 280 and PowerBook Duo 280c. Macintosh IIfx/Quadra 900/Quadra 950 floppy support CONFIG_BLK_DEV_SWIM_IOP Say Y here to support the SWIM (Super Woz Integrated Machine) IOP floppy controller on the Macintosh IIfx and Quadra 900/950. Macintosh NS8390 based Ethernet support CONFIG_MAC8390 If you want to include a driver to support Nubus or LC-PDS Ethernet cards using an NS8390 chipset or its equivalent, say Y and read the Ethernet-HOWTO, available from . Macintosh CS89x0 based Ethernet support CONFIG_MAC89x0 Support for CS89x0 chipset based Ethernet cards. If you have a Nubus or LC-PDS network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . 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 as well as . This module will be called mac89x0.o. Macintosh onboard AMD 79C940 MACE based Ethernet support CONFIG_MACMACE Support for the onboard AMD 79C940 MACE Ethernet controller used in the 660AV and 840AV Macintosh. If you have one of these Macintoshes say Y and read the Ethernet-HOWTO, available from . Macintosh SONIC based Ethernet support (onboard, NuBus, LC, CS) CONFIG_MACSONIC Support for NatSemi SONIC based Ethernet devices. This includes the onboard Ethernet in many Quadras as well as some LC-PDS, a few Nubus and all known Comm Slot Ethernet cards. If you have one of these say Y and read the Ethernet-HOWTO, available from . 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 as well as . This module will be called macsonic.o. Macintosh NCR5380 SCSI support CONFIG_MAC_SCSI This is the NCR 5380 SCSI controller included on most of the 68030 based Macintoshes. If you have one of these say Y and read the SCSI-HOWTO, available from . Macintosh NCR53c9[46] SCSI support CONFIG_SCSI_MAC_ESP This is the NCR 53c9x SCSI controller found on most of the 68040 based Macintoshes. If you have one of these say Y and read the SCSI-HOWTO, available from . 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 mac_esp.o. If you want to compile it as a module, say M here and read . Standard/generic (8250/16550 and compatible UARTs) serial support CONFIG_SERIAL 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 . 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. Support for console on serial port CONFIG_SERIAL_CONSOLE 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. Support for PowerMac serial ports CONFIG_MAC_SERIAL 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. Comtrol Rocketport support CONFIG_ROCKETPORT This is a driver for the Comtrol Rocketport cards which provide multiple serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you want to compile this driver as a module, say M here and read . The module will be called rocket.o. Digiboard Intelligent async support CONFIG_DIGIEPCA This is a driver for Digi International's Xx, Xeve, and Xem series of cards which provide multiple serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. This driver supports the original PC (ISA) boards as well as PCI, and EISA. If you have a card like this, say Y here and read the file . NOTE: There is another, separate driver for the Digiboard PC boards: "Digiboard PC/Xx Support" below. You should (and can) only select one of the two drivers. If you want to compile this driver as a module, say M here and read . The module will be called epca.o. Digiboard PC/Xx Support CONFIG_DIGI This is a driver for the Digiboard PC/Xe, PC/Xi, and PC/Xeve cards that give you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you have a card like that, say Y here and read the file . If you want to compile this driver as a module, say M here and read . The module will be called pcxx.o. SDL RISCom/8 card support CONFIG_RISCOM8 This is a driver for the SDL Communications RISCom/8 multiport card, which gives you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you have a card like that, say Y here and read the file . Also it's possible to say M here and compile this driver as kernel loadable module; the module will be called riscom8.o. Computone IntelliPort Plus serial support CONFIG_COMPUTONE This driver supports the entire family of Intelliport II/Plus controllers with the exception of the MicroChannel controllers and products previous to the Intelliport II. These are multiport cards, which give you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you have a card like that, say Y here and read . 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 . You will get two modules called ip2.o and ip2main.o. Specialix IO8+ card support CONFIG_SPECIALIX This is a driver for the Specialix IO8+ multiport card (both the ISA and the PCI version) which gives you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you have a card like that, say Y here and read the file . Also it's possible to say M here and compile this driver as kernel loadable module which will be called specialix.o. Specialix DTR/RTS pin is RTS CONFIG_SPECIALIX_RTSCTS The Specialix IO8+ card can only support either RTS or DTR. If you say N here, the driver will use the pin as "DTR" when the tty is in software handshake mode. If you say Y here or hardware handshake is on, it will always be RTS. Read the file for more information. Specialix RIO system support CONFIG_RIO This is a driver for the Specialix RIO, a smart serial card which drives an outboard box that can support up to 128 ports. Product information is at . There are both ISA and PCI versions. Support really old RIO/PCI cards CONFIG_RIO_OLDPCI Older RIO PCI cards need some initialization-time configuration to determine the IRQ and some control addresses. If you have a RIO and this doesn't seem to work, try setting this to Y. Cyclades async mux support CONFIG_CYCLADES This is a driver for a card that gives you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. For information about the Cyclades-Z card, read . As of 1.3.9x kernels, this driver's minor numbers start at 0 instead of 32. 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 . The module will be called cyclades.o. If you haven't heard about it, it's safe to say N. Cyclades-Z interrupt mode operation CONFIG_CYZ_INTR The Cyclades-Z family of multiport cards allows 2 (two) driver op modes: polling and interrupt. In polling mode, the driver will check the status of the Cyclades-Z ports every certain amount of time (which is called polling cycle and is configurable). In interrupt mode, it will use an interrupt line (IRQ) in order to check the status of the Cyclades-Z ports. The default op mode is polling. If unsure, say N. Stallion multiport serial support CONFIG_STALDRV Stallion cards give you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you say Y here, you will be asked for your specific card model in the next questions. Make sure to read in this case. If you have never heard about all this, it's safe to say N. Stallion EasyIO or EC8/32 support CONFIG_STALLION If you have an EasyIO or EasyConnection 8/32 multiport Stallion card, then this is for you; say Y. Make sure to read . 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 . The module will be called stallion.o. Stallion EC8/64, ONboard, Brumby support CONFIG_ISTALLION If you have an EasyConnection 8/64, ONboard, Brumby or Stallion serial multiport card, say Y here. Make sure to read . 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 . The module will be called istallion.o. Microgate SyncLink adapter support CONFIG_SYNCLINK Provides support for the SyncLink ISA and PCI multiprotocol serial adapters. These adapters support asynchronous and HDLC bit synchronous communication up to 10Mbps (PCI adapter). This driver can only be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called synclink.o. If you want to do that, say M here. CONFIG_SYNCLINKMP Enable support for the SyncLink Multiport (2 or 4 ports) serial adapter, running asynchronous and HDLC communications up to 2.048Mbps. Each ports is independently selectable for RS-232, V.35, RS-449, RS-530, and X.21 This driver may be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called synclinkmp.o. If you want to do that, say M here. Synchronous HDLC line discipline support CONFIG_N_HDLC Allows synchronous HDLC communications with tty device drivers that support synchronous HDLC such as the Microgate SyncLink adapter. This driver can only be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called n_hdlc.o. If you want to do that, say M here. Specialix SX (and SI) card support CONFIG_SX This is a driver for the SX and SI multiport serial cards. Please read the file for details. This driver can only be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called sx.o. If you want to do that, say M here. Hayes ESP serial port support CONFIG_ESPSERIAL This is a driver which supports Hayes ESP serial ports. Both single port cards and multiport cards are supported. Make sure to read . 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 . The module will be called esp.o. If unsure, say N. Moxa Intellio support CONFIG_MOXA_INTELLIO Say Y here if you have a Moxa Intellio multiport serial card. This driver can also be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called moxa.o. If you want to do that, say M here. Moxa SmartIO support CONFIG_MOXA_SMARTIO Say Y here if you have a Moxa SmartIO multiport serial card. This driver can also be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called mxser.o. If you want to do that, say M here. Multi-Tech multiport card support CONFIG_ISI This is a driver for the Multi-Tech cards which provide several serial ports. The driver is experimental and can currently only be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). Please read . The module will be called isicom.o. Unix98 PTY support CONFIG_UNIX98_PTYS 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/. 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 pertaining to pseudo terminals. It's safe to say N. Maximum number of Unix98 PTYs in use (0-2048) CONFIG_UNIX98_PTY_COUNT 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. Parallel printer support CONFIG_PRINTER 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 . 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 and . 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 . 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. Support for console on line printer CONFIG_LP_CONSOLE 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. Support for user-space parallel port device drivers CONFIG_PPDEV 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 . The module will be called ppdev.o. If unsure, say N. Cobalt Networks support CONFIG_COBALT Support for Cobalt Networks x86-based servers. Gen III (3000 series) system support CONFIG_COBALT_GEN_III This option enables support for the 3000 series of Cobalt Networks systems. This includes the RaQ 3, RaQ 4, and Qube 3 product lines. This platform uses an AMD K6-2 processor, an ALI M1541/1533 chipset, an optional NCR 53c875 SCSI controller, and two Intel 82559ER or National Semiconductor DP83815 NICs. Getting this option wrong will likely result in a kernel that does not boot. Selecting support for more than 1 system series will add bloat to your kernel, but will not cause anything bad to happen. If you have a Cobalt Networks System, but aren't sure what kind, say Y here. Gen V (5000 series) system support CONFIG_COBALT_GEN_V This option enables support for the 5000 series of Cobalt Networks systems. This includes the RaQ XTR product line. This platform uses Intel Pentium III Coppermine FCPGA CPUs, the ServerWorks LE chipset (with registered ECC DIMMs only!), two HighPoint HPT370 IDE controllers, and two National Semiconductor DP83815 NICs. Getting this option wrong will likely result in a kernel that does not boot. Selecting support for more than 1 system series will add bloat to your kernel, but will not cause anything bad to happen. If you have a Cobalt Networks System, but aren't sure what kind, say Y here. Create legacy /proc files CONFIG_COBALT_OLDPROC This option forces some Cobalt Networks drivers to support legacy files in /proc. Older versions of these drivers exported files directly in /proc, as opposed to the newer /proc/cobalt. If you say N to this option, the old filenames will no longer be exported. Regardless of your selection here, files in /proc/cobalt will be exported. Of course, you have to include support for /proc fs, too. It is safe to say Y here. Front panel LCD support CONFIG_COBALT_LCD This enables support for the Cobalt Networks front panel. This is for the LCD panel and buttons. The primary method for connection is via the parallel port (IO base 0x370), but newer systems use an I2C bus. If you have a Cobalt Networks system, you should say Y here. Software controlled LED support CONFIG_COBALT_LED This enables support for the software-controlled LEDs on Cobalt Networks systems. This includes the fault light and front panel LEDs on the RaQ XTR, the lightbar on the Qube 3, and others. If you have a Cobalt Networks system, you should say Y here. Silicon serial number support CONFIG_COBALT_SERNUM This enables support for the on-board serial number on Cobalt Networks systems. This is a universally-unique 64-bit serial number. Some systems use a Dallas DS2401 chip, others have an I2C based EEPROM. If you select Y here, the files /proc/cobalt/hostid and /proc/cobalt/serialnumber will be created. The hostid file contains a 32 bit integer generated from the serial number, in binary form. The serialnumber file contains the hexadecimal representation of the serial number, in ASCII. If you have a Cobalt Networks system, you should say Y here. Chipset watchdog timer support CONFIG_COBALT_WDT This enables support for the watchdog timer built into Cobalt chipsets. The timer wakes up periodically, to make find out if system has hung, or disabled interrupts too long. The result of detecting a hang is a hard reboot. If you have a Cobalt Networks system, you should say Y here. Thermal sensor support CONFIG_COBALT_THERMAL This enables support for the thermal sensor(s) built into Cobalt Networks systems. This driver exports /proc/cobalt/thermal_sensors. If you have a Cobalt Networks system, you should say Y here. Fan tachometer support CONFIG_COBALT_FANS This enables support for the fan tachometers built into some Cobalt Networks systems. This driver exports /proc/cobalt/faninfo. Some Cobalt software depends on this feature, and enabling it does not cause any risks. If you have a Cobalt Networks system, you should say Y here, unless you are absolutely sure. Disk drive ruler support CONFIG_COBALT_RULER This enables support for the cobalt hard drive ruler, found on some Cobalt systems, including the RaQ XTR. This is the device that enables swapping of drives. It is not needed for basic disk operation. Enabling this on a system with no ruler will have no adverse effects. If you have a Cobalt Networks system, you should say Y here, unless you are absolutely sure. IT8172G Sound CONFIG_SOUND_IT8172 Say Y here to support the on-board sound generator on the Integrated Technology Express, Inc. ITE8172 SBC. Vendor page at ; picture of the board at . I2C support CONFIG_I2C I2C (pronounce: I-square-C) is a slow serial bus protocol used in many micro controller applications and developed by Philips. SMBus, or System Management Bus is a subset of the I2C protocol. More information is contained in the directory , especially in the file called "summary" there. Both I2C and SMBus are supported here. You will need this for hardware sensors support, and also for Video For Linux support. Specifically, if you want to use a BT848 based frame grabber/overlay boards under Linux, say Y here and also to "I2C bit-banging interfaces", below. If you want I2C support, you should say Y here and also to the specific driver for your bus adapter(s) below. If you say Y to "/proc file system" below, you will then get a /proc interface which is documented in . This I2C support is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-core.o. UltraSPARC-III bootbus i2c controller driver CONFIG_BBC_I2C 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. I2C bit-banging interfaces CONFIG_I2C_ALGOBIT This allows you to use a range of I2C adapters called bit-banging adapters. Say Y if you own an I2C adapter belonging to this class and then say Y to the specific driver for you adapter below. This support is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-algo-bit.o. Philips style parallel port adapter CONFIG_I2C_PHILIPSPAR This supports parallel-port I2C adapters made by Philips. Say Y if you own such an adapter. This driver is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-philips-par.o. Note that if you want support for different parallel port devices, life will be much easier if you compile them all as modules. ELV adapter CONFIG_I2C_ELV This supports parallel-port I2C adapters called ELV. Say Y if you own such an adapter. This driver is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-elv.o. Velleman K9000 adapter CONFIG_I2C_VELLEMAN This supports the Velleman K9000 parallel-port I2C adapter. Say Y if you own such an adapter. This driver is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-velleman.o. Guide GPIO adapter CONFIG_I2C_GUIDE This supports the Iders GUIDE I2C bit-bashing adapter. If you have selected the GUIDE A07 as your ARM system type, you cannot deselect this option, as it is required for proper operation of the GUIDE. This interface uses /dev/i2c-0 (major 89, minor 0). Say Y if you own such an adapter. This driver is also available as a module. If you want to compile it as a module, say M here and read Documentation/modules.txt. The module will be called i2c-guide.o. I2C PCF 8584 interfaces CONFIG_I2C_ALGOPCF This allows you to use a range of I2C adapters called PCF adapters. Say Y if you own an I2C adapter belonging to this class and then say Y to the specific driver for you adapter below. This support is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-algo-pcf.o. Elektor ISA card CONFIG_I2C_ELEKTOR This supports the PCF8584 ISA bus I2C adapter. Say Y if you own such an adapter. This driver is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-elektor.o. ITE I2C Algorithm CONFIG_ITE_I2C_ALGO This supports the use the ITE8172 I2C interface found on some MIPS systems. Say Y if you have one of these. You should also say Y for the ITE I2C peripheral driver support below. This support is also available as a module. If you want to compile it as a modules, say M here and read . The module will be called i2c-algo-ite.o. ITE I2C Adapter CONFIG_ITE_I2C_ADAP This supports the ITE8172 I2C peripheral found on some MIPS systems. Say Y if you have one of these. You should also say Y for the ITE I2C driver algorithm support above. This support is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-adap-ite.o. I2C device interface CONFIG_I2C_CHARDEV Say Y here to use i2c-* device files, usually found in the /dev directory on your system. They make it possible to have user-space programs use the I2C bus. Information on how to do this is contained in the file . This code is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-dev.o. I2C /proc interface (required for hardware sensors) CONFIG_I2C_PROC This provides support for i2c device entries in the /proc filesystem. The entries will be found in /proc/sys/dev/sensors. This code is also available as a module. If you want to compile it as a module, say M here and read . The module will be called i2c-proc.o. Bus Mouse Support CONFIG_BUSMOUSE Say Y here if your machine has a bus mouse as opposed to a serial mouse. Most people have a regular serial MouseSystem or Microsoft mouse (made by Logitech) that plugs into a COM port (rectangular with 9 or 25 pins). These people say N here. If you have a laptop, you either have to check the documentation or experiment a bit to find out whether the trackball is a serial mouse or not; it's best to say Y here for you. This is the generic bus mouse driver code. If you have a bus mouse, you will have to say Y here and also to the specific driver for your mouse below. 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 busmouse.o. If you want to compile it as a module, say M here and read . Mouse Support (not serial and bus mice) CONFIG_MOUSE This is for machines with a mouse which is neither a serial nor a bus mouse. Examples are PS/2 mice (such as the track balls on some laptops) and some digitizer pads. Most people have a regular serial MouseSystem or Microsoft mouse (made by Logitech) that plugs into a COM port (rectangular with 9 or 25 pins). These people say N here. If you have something else, read the Busmouse-HOWTO, available from . This HOWTO contains information about all non-serial mice, not just bus mice. If you have a laptop, you either have to check the documentation or experiment a bit to find out whether the trackball is a serial mouse or not; it's best to say Y here for you. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about non-serial mice. If unsure, say Y. Logitech busmouse support CONFIG_LOGIBUSMOUSE Logitech mouse connected to a proprietary interface card. It's generally a round connector with 9 pins. Note that the newer mice made by Logitech don't use the Logitech protocol anymore; for those, you don't need this option. You want to read the Busmouse-HOWTO, available from . 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 . The module will be called busmouse.o. If you are unsure, say N and read the HOWTO nevertheless: it will tell you what you have. PS/2 mouse (aka "auxiliary device") support CONFIG_PSMOUSE 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 . 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 ) solves this problem, or you can get the "mconv2" utility from . C&T 82C710 mouse port support (as on TI Travelmate) CONFIG_82C710_MOUSE This is a certain kind of PS/2 mouse used on the TI Travelmate. If you are unsure, try first to say N here and come back if the mouse doesn't work. Read the Busmouse-HOWTO, available from . PC110 digitizer pad support CONFIG_PC110_PAD This drives the digitizer pad on the IBM PC110 palmtop. It can turn the digitizer pad into a PS/2 mouse emulation with tap gestures or into an absolute pad. 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 . The module will be called pc110pad.o. Microsoft busmouse support CONFIG_MS_BUSMOUSE These animals (also called Inport mice) are connected to an expansion board using a round connector with 9 pins. If this is what you have, say Y and read the Busmouse-HOWTO, available from . If you are unsure, say N and read the HOWTO nevertheless: it will tell you what you have. Also be aware that several vendors talk about 'Microsoft busmouse' and actually mean PS/2 busmouse -- so count the pins on the connector. 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 . The module will be called msbusmouse.o. Apple Desktop Bus mouse support CONFIG_ADBMOUSE Say Y here if you have this type of bus mouse (4 pin connector) as is common on Macintoshes. You may want to read the Busmouse-HOWTO, available from . 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 . The module will be called adbmouse.o. ATIXL busmouse support CONFIG_ATIXL_BUSMOUSE This is a rare type of busmouse that is connected to the back of an ATI video card. Say Y if you have one of those. Note however that most mice by ATI are actually Microsoft busmice; you should say Y to "Microsoft busmouse support" above if you have one of those. Read the Busmouse-HOWTO, available from . 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 . The module will be called atixlmouse.o. If you are unsure, say N and read the HOWTO nevertheless: it will tell you what you have. QIC-02 tape support CONFIG_QIC02_TAPE If you have a non-SCSI tape drive like that, say Y. Or, 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 . The module will be called tpqic02.o. iSeries Virtual Tape Support CONFIG_VIOTAPE If you are running Linux on an iSeries system and you want Linux to read and/or write a tape drive owned by OS/400, say Y here. Do you want runtime configuration for QIC-02 CONFIG_QIC02_DYNCONF You can either configure this driver once and for all by editing a header file (), in which case you should say N, or you can fetch a program via anonymous FTP which is able to configure this driver during runtime. The program to do this is called 'qic02conf' and it is part of the tpqic02-support-X.Y.tar.gz support package. If you want to use the qic02conf program, say Y. Floppy tape drive (QIC-80/40/3010/3020/TR-1/TR-2/TR-3) support CONFIG_FTAPE If you have a tape drive that is connected to your floppy controller, say Y here. Some tape drives (like the Seagate "Tape Store 3200" or the Iomega "Ditto 3200" or the Exabyte "Eagle TR-3") come with a "high speed" controller of their own. These drives (and their companion controllers) are also supported if you say Y here. If you have a special controller (such as the CMS FC-10, FC-20, Mountain Mach-II, or any controller that is based on the Intel 82078 FDC like the high speed controllers by Seagate and Exabyte and Iomega's "Ditto Dash") you must configure it by selecting the appropriate entries from the "Floppy tape controllers" sub-menu below and possibly modify the default values for the IRQ and DMA channel and the IO base in ftape's configuration menu. If you want to use your floppy tape drive on a PCI-bus based system, please read the file . The ftape kernel driver is also available as a runtime loadable 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 . The module will be called ftape.o. Note that the Ftape-HOWTO is out of date (sorry) and documents the older version 2.08 of this software but still contains useful information. There is a web page with more recent documentation at . This page always contains the latest release of the ftape driver and useful information (backup software, ftape related patches and documentation, FAQ). Note that the file system interface has changed quite a bit compared to previous versions of ftape. Please read . VFS interface for ftape CONFIG_ZFTAPE Normally, you want to say Y or M. DON'T say N here or you WON'T BE ABLE TO USE YOUR FLOPPY TAPE DRIVE. The ftape module itself no longer contains the routines necessary to interface with the kernel VFS layer (i.e. to actually write data to and read data from the tape drive). Instead the file system interface (i.e. the hardware independent part of the driver) has been moved to a separate module. If you say M zftape will be compiled as a runtime loadable module ( = code which can be inserted in and removed from the running kernel whenever you want). In this case you should read . The module will be called zftape.o. Regardless of whether you say Y or M here, an additional runtime loadable module called `zft-compressor.o' which contains code to support user transparent on-the-fly compression based on Ross William's lzrw3 algorithm will be produced. If you have enabled the kernel module loader (i.e. have said Y to "Kernel module loader support", above) then `zft-compressor.o' will be loaded automatically by zftape when needed. Despite its name, zftape does NOT use compression by default. The file contains a short description of the most important changes in the file system interface compared to previous versions of ftape. The ftape home page contains further information. IMPORTANT NOTE: zftape can read archives created by previous versions of ftape and provide file mark support (i.e. fast skipping between tape archives) but previous version of ftape will lack file mark support when reading archives produced by zftape. Default block size for zftape CONFIG_ZFT_DFLT_BLK_SZ If unsure leave this at its default value, i.e. 10240. Note that you specify only the default block size here. The block size can be changed at run time using the MTSETBLK tape operation with the MTIOCTOP ioctl (i.e. with "mt -f /dev/qft0 setblk #BLKSZ" from the shell command line). The probably most striking difference between zftape and previous versions of ftape is the fact that all data must be written or read in multiples of a fixed block size. The block size defaults to 10240 which is what GNU tar uses. The values for the block size should be either 1 or multiples of 1024 up to a maximum value of 63488 (i.e. 62 K). If you specify `1' then zftape's builtin compression will be disabled. Reasonable values are `10240' (GNU tar's default block size), `5120' (afio's default block size), `32768' (default block size some backup programs assume for SCSI tape drives) or `1' (no restriction on block size, but disables builtin compression). Number of DMA buffers CONFIG_FT_NR_BUFFERS Please leave this at `3' unless you REALLY know what you are doing. It is not necessary to change this value. Values below 3 make the proper use of ftape impossible, values greater than 3 are a waste of memory. You can change the amount of DMA memory used by ftape at runtime with "mt -f /dev/qft0 setdrvbuffer #NUMBUFFERS". Each buffer wastes 32 KB of memory. Please note that this memory cannot be swapped out. Enable procfs status report (+2kb) CONFIG_FT_PROC_FS Optional. Saying Y will result in creation of a directory `/proc/ftape' under the /proc file system. The files can be viewed with your favorite pager (i.e. use "more /proc/ftape/history" or "less /proc/ftape/history" or simply "cat /proc/ftape/history"). The file will contain some status information about the inserted cartridge, the kernel driver, your tape drive, the floppy disk controller and the error history for the most recent use of the kernel driver. Saying Y will enlarge the size of the ftape driver by approximately 2 KB. WARNING: When compiling ftape as a module (i.e. saying M to "Floppy tape drive") it is dangerous to use ftape's /proc file system interface. Accessing `/proc/ftape' while the module is unloaded will result in a kernel Oops. This cannot be fixed from inside ftape. # Choice: ftdebug Controlling the amount of debugging output of ftape CONFIG_FT_NORMAL_DEBUG This option controls the amount of debugging output the ftape driver is ABLE to produce; it does not increase or diminish the debugging level itself. If unsure, leave this at its default setting, i.e. choose "Normal". Ftape can print lots of debugging messages to the system console resp. kernel log files. Reducing the amount of possible debugging output reduces the size of the kernel module by some KB, so it might be a good idea to use "None" for emergency boot floppies. If you want to save memory then the following strategy is recommended: leave this option at its default setting "Normal" until you know that the driver works as expected, afterwards reconfigure the kernel, this time specifying "Reduced" or "None" and recompile and install the kernel as usual. Note that choosing "Excessive" debugging output does not increase the amount of debugging output printed to the console but only makes it possible to produce "Excessive" debugging output. Please read for a short description how to control the amount of debugging output. Excessive CONFIG_FT_FULL_DEBUG Extremely verbose output for driver debugging purposes. Reduced CONFIG_FT_NO_TRACE Reduced tape driver debugging output. None CONFIG_FT_NO_TRACE_AT_ALL Suppress all debugging output from the tape drive. # Choice: ftcontroller The floppy drive controller for ftape CONFIG_FT_STD_FDC Only change this setting if you have a special controller. If you didn't plug any add-on card into your computer system but just plugged the floppy tape cable into the already existing floppy drive controller then you don't want to change the default setting, i.e. choose "Standard". Choose "MACH-2" if you have a Mountain Mach-2 controller. Choose "FC-10/FC-20" if you have a Colorado FC-10 or FC-20 controller. Choose "Alt/82078" if you have another controller that is located at an IO base address different from the standard floppy drive controller's base address of `0x3f0', or uses an IRQ (interrupt) channel different from `6', or a DMA channel different from `2'. This is necessary for any controller card that is based on Intel's 82078 FDC such as Seagate's, Exabyte's and Iomega's "high speed" controllers. If you choose something other than "Standard" then please make sure that the settings for the IO base address and the IRQ and DMA channel in the configuration menus below are correct. Use the manual of your tape drive to determine the correct settings! If you are already successfully using your tape drive with another operating system then you definitely should use the same settings for the IO base, the IRQ and DMA channel that have proven to work with that other OS. Note that this menu lets you specify only the default setting for the hardware setup. The hardware configuration can be changed at boot time (when ftape is compiled into the kernel, i.e. if you have said Y to "Floppy tape drive") or module load time (i.e. if you have said M to "Floppy tape drive"). Please read also the file which contains a short description of the parameters that can be set at boot or load time. If you want to use your floppy tape drive on a PCI-bus based system, please read the file . IO base for the floppy disk controller used with Ftape CONFIG_FT_FDC_BASE You don't need to specify a value if the following default settings for the base IO address are correct: <<< MACH-2 : 0x1E0 >>> <<< FC-10/FC-20: 0x180 >>> <<< Secondary : 0x370 >>> Secondary refers to a secondary FDC controller like the "high speed" controllers delivered by Seagate or Exabyte or Iomega's Ditto Dash. Please make sure that the setting for the IO base address specified here is correct. USE THE MANUAL OF YOUR TAPE DRIVE OR CONTROLLER CARD TO DETERMINE THE CORRECT SETTING. If you are already successfully using the tape drive with another operating system then you definitely should use the same settings for the IO base that has proven to work with that other OS. Note that this menu lets you specify only the default setting for the IO base. The hardware configuration can be changed at boot time (when ftape is compiled into the kernel, i.e. if you specified Y to "Floppy tape drive") or module load time (i.e. if you have said M to "Floppy tape drive"). Please read also the file which contains a short description of the parameters that can be set at boot or load time. IRQ channel for the floppy disk controller used with Ftape CONFIG_FT_FDC_IRQ You don't need to specify a value if the following default settings for the interrupt channel are correct: <<< MACH-2 : 6 >>> <<< FC-10/FC-20: 9 >>> <<< Secondary : 6 >>> Secondary refers to secondary a FDC controller like the "high speed" controllers delivered by Seagate or Exabyte or Iomega's Ditto Dash. Please make sure that the setting for the IO base address specified here is correct. USE THE MANUAL OF YOUR TAPE DRIVE OR CONTROLLER CARD TO DETERMINE THE CORRECT SETTING. If you are already successfully using the tape drive with another operating system then you definitely should use the same settings for the IO base that has proven to work with that other OS. Note that this menu lets you specify only the default setting for the IRQ channel. The hardware configuration can be changed at boot time (when ftape is compiled into the kernel, i.e. if you said Y to "Floppy tape drive") or module load time (i.e. if you said M to "Floppy tape drive"). Please read also the file which contains a short description of the parameters that can be set at boot or load time. DMA channel for the floppy disk controller used with Ftape CONFIG_FT_FDC_DMA You don't need to specify a value if the following default settings for the DMA channel are correct: <<< MACH-2 : 2 >>> <<< FC-10/FC-20: 3 >>> <<< Secondary : 2 >>> Secondary refers to a secondary FDC controller like the "high speed" controllers delivered by Seagate or Exabyte or Iomega's Ditto Dash. Please make sure that the setting for the IO base address specified here is correct. USE THE MANUAL OF YOUR TAPE DRIVE OR CONTROLLER CARD TO DETERMINE THE CORRECT SETTING. If you are already successfully using the tape drive with another operating system then you definitely should use the same settings for the IO base that has proven to work with that other OS. Note that this menu lets you specify only the default setting for the DMA channel. The hardware configuration can be changed at boot time (when ftape is compiled into the kernel, i.e. if you said Y to "Floppy tape drive") or module load time (i.e. if you said M to "Floppy tape drive"). Please read also the file which contains a short description of the parameters that can be set at boot or load time. FDC FIFO Threshold before requesting DMA service CONFIG_FT_FDC_THR Set the FIFO threshold of the FDC. If this is higher the DMA controller may serve the FDC after a higher latency time. If this is lower, fewer DMA transfers occur leading to less bus contention. You may try to tune this if ftape annoys you with "reduced data rate because of excessive overrun errors" messages. However, this doesn't seem to have too much effect. If unsure, don't touch the initial value, i.e. leave it at "8". FDC maximum data rate CONFIG_FT_FDC_MAX_RATE With some motherboard/FDC combinations ftape will not be able to run your FDC/tape drive combination at the highest available speed. If this is the case you'll encounter "reduced data rate because of excessive overrun errors" messages and lots of retries before ftape finally decides to reduce the data rate. In this case it might be desirable to tell ftape beforehand that it need not try to run the tape drive at the highest available speed. If unsure, leave this disabled, i.e. leave it at 2000 bits/sec. Direct Rendering Manager (XFree86 DRI support) CONFIG_DRM 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 for more details. You should also select and configure AGP (/dev/agpgart) support. Build drivers for new (XFree 4.1) DRM CONFIG_DRM_NEW If you set this option, the new DRM version needed by XFree86 4.1 will be used. Otherwise, the old DRM version will be used, appropriate for XFree86 4.0. 3dfx Banshee/Voodoo3+ CONFIG_DRM_TDFX 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. 3dlabs GMX 2000 CONFIG_DRM_GAMMA Choose this option if you have a 3dlabs GMX 2000 graphics card. If M is selected, the module will be called gamma.o. ATI Rage 128 CONFIG_DRM_R128 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). ATI Radeon CONFIG_DRM_RADEON Choose this option if you have an ATI Radeon graphics card. There are both PCI and AGP versions. You don't need to choose this to run the Radeon in plain VGA mode. There is a product page at . If M is selected, the module will be called radeon.o. Intel I810 CONFIG_DRM_I810 Choose this option if you have an Intel I810 graphics card. If M is selected, the module will be called i810.o. AGP support is required for this driver to work. Matrox G200/G400/G450 CONFIG_DRM_MGA Choose this option if you have a Matrox G200, G400 or G450 graphics card. If M is selected, the module will be called mga.o. AGP support is required for this driver to work. 3dfx Banshee/Voodoo3+ CONFIG_DRM40_TDFX 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. 3dlabs GMX 2000 CONFIG_DRM40_GAMMA Choose this option if you have a 3dlabs GMX 2000 graphics card. If M is selected, the module will be called gamma.o. ATI Rage 128 CONFIG_DRM40_R128 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). ATI Radeon CONFIG_DRM40_RADEON Choose this option if you have an ATI Radeon graphics card. There are both PCI and AGP versions. You don't need to choose this to run the Radeon in plain VGA mode. There is a product page at . If M is selected, the module will be called radeon.o. Intel I810 CONFIG_DRM40_I810 Choose this option if you have an Intel I810 graphics card. If M is selected, the module will be called i810.o. AGP support is required for this driver to work. Matrox G200/G400/G450 CONFIG_DRM40_MGA Choose this option if you have a Matrox G200, G400 or G450 graphics card. If M is selected, the module will be called mga.o. AGP support is required for this driver to work. Creator/Creator3D/Elite3D CONFIG_DRM_FFB Choose this option if you have one of Sun's Creator3D-based graphics and frame buffer cards. Product page at . MTRR (Memory Type Range Register) support CONFIG_MTRR 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: The Cyrix 6x86, 6x86MX and M II processors have Address Range Registers (ARRs) which provide a similar functionality to MTRRs. For these, the ARRs are used to emulate the MTRRs. The AMD K6-2 (stepping 8 and above) and K6-3 processors have two MTRRs. The Centaur C6 (WinChip) has 8 MCRs, allowing write-combining. All of these processors are supported by this code and it makes sense to say Y here if you have one of them. 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. You can safely say Y even if your machine doesn't have MTRRs, you'll just add about 9 KB to your kernel. See for more information. CPU clock frequency of your DEC Alpha CONFIG_FT_ALPHA_CLOCK On some DEC Alpha machines the CPU clock frequency cannot be determined automatically, so you need to specify it here ONLY if running a DEC Alpha, otherwise this setting has no effect. Double Talk PC internal speech card support CONFIG_DTLK This driver is for the DoubleTalk PC, a speech synthesizer manufactured by RC Systems (). It is also called the `internal DoubleTalk'. 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 . The module will be called dtlk.o. Siemens R3964 serial protocol support CONFIG_R3964 This driver allows synchronous communication with devices using the Siemens R3964 packet protocol. Unless you are dealing with special hardware like PLCs, you are unlikely to need this. 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 . The module will be called n_r3964.o. If unsure, say N. Applicom intelligent fieldbus card support CONFIG_APPLICOM This driver provides the kernel-side support for the intelligent fieldbus cards made by Applicom International. More information about these cards can be found on the WWW at the address , or by email from David Woodhouse . 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 . The module will be called applicom.o. If unsure, say N. Sony Vaio Programmable I/O Control Device support CONFIG_SONYPI This driver enables access to the Sony Programmable I/O Control Device which can be found in many (all ?) Sony Vaio laptops. If you have one of those laptops, read , and say Y or M here. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called sonypi.o. Intel Random Number Generator support CONFIG_INTEL_RNG This driver provides kernel-side support for the Random Number Generator hardware found on Intel i8xx-based motherboards. Both a character driver, used to read() entropy data, and a timer function which automatically adds entropy directly into the kernel pool, are exported by this driver. 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 . The module will be called i810_rng.o. If unsure, say N. Power Management support CONFIG_PM "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 and the Battery Powered Linux mini-HOWTO, available from . 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. ACPI support CONFIG_ACPI ACPI/OSPM support for Linux is currently under development. As such, this support is preliminary and EXPERIMENTAL. Configuring ACPI support enables kernel interfaces that allow higher level software (OSPM) to manipulate ACPI defined hardware and software interfaces, including the evaluation of ACPI control methods. If unsure, choose N here. Note, this option will enlarge your kernel by about 120K. This support requires an ACPI compliant platform (hardware/firmware). If both ACPI and Advanced Power Management (APM) support are configured, whichever is loaded first shall be used. This code DOES NOT currently provide a complete OSPM implementation -- it has not yet reached APM's level of functionality. When fully implemented, Linux ACPI/OSPM will provide a more robust functional replacement for legacy configuration and power management interfaces, including the Plug-and-Play BIOS specification (PnP BIOS), the Multi-Processor Specification (MPS), and the Advanced Power Management specification (APM). Linux support for ACPI/OSPM is based on Intel Corporation's ACPI Component Architecture (ACPI CA). The latest ACPI CA source code, documentation, debug builds, and implementation status information can be downloaded from: . The ACPI Sourceforge project may also be of interest: Enable ACPI 2.0 with errata 1.3 CONFIG_ACPI20 Enable support for the 2.0 version of the ACPI interpreter. See the help for ACPI for caveats and discussion. ACPI kernel configuration manager CONFIG_ACPI_KERNEL_CONFIG If you say `Y' here, Linux's ACPI support will use the hardware-level system descriptions found on IA64 machines. ACPI Debug Statements CONFIG_ACPI_DEBUG The ACPI driver can optionally report errors with a great deal of verbosity. Saying Y enables these statements. This will increase your kernel size by around 50K. ACPI Bus Manager CONFIG_ACPI_BUSMGR The ACPI Bus Manager enumerates devices in the ACPI namespace, and handles PnP messages. All ACPI devices use its services, so using them requires saying Y here. ACPI System Driver CONFIG_ACPI_SYS This driver will enable your system to shut down using ACPI, and dump your ACPI DSDT table using /proc/acpi/dsdt. ACPI Processor Driver CONFIG_ACPI_CPU This driver installs ACPI as the idle handler for Linux, and uses ACPI C2 and C3 processor states to save power, on systems that support it. ACPI Button CONFIG_ACPI_BUTTON This driver registers for events based on buttons, such as the power, sleep, and lid switch. In the future, a daemon will read /proc/acpi/event and perform user-defined actions such as shutting down the system. Until then, you can cat it, and see output when a button is pressed. ACPI AC Adapter CONFIG_ACPI_AC This driver adds support for the AC Adapter object, which indicates whether a system is on AC, or not. Typically, only laptops have this object, since desktops are always on AC. ACPI Embedded Controller CONFIG_ACPI_EC This driver is required on some systems for the proper operation of the battery and thermal drivers. If you are compiling for a laptop, say Y. ACPI Control Method Battery CONFIG_ACPI_CMBATT This driver adds support for battery information through /proc/acpi/battery. If you have a laptop with a battery, say Y. ACPI Thermal CONFIG_ACPI_THERMAL This driver handles overheating conditions on laptops. It is HIGHLY recommended, as your laptop CPU may be damaged without it. Advanced Power Management BIOS support CONFIG_APM APM is a BIOS specification for saving power using several different techniques. This is mostly useful for battery powered laptops with APM compliant BIOSes. If you say Y here, the system time will be reset after a RESUME operation, the /proc/apm device will provide battery status information, and user-space programs will receive notification of APM "events" (e.g. battery status change). If you select "Y" here, you can disable actual use of the APM BIOS by passing the "apm=off" option to the kernel at boot time. Note that the APM support is almost completely disabled for machines with more than one CPU. In order to use APM, you will need supporting software. For location and more information, read and the Battery Powered Linux mini-HOWTO, available from . This driver does not spin down disk drives (see the hdparm(8) manpage ("man 8 hdparm") for that), and it doesn't turn off VESA-compliant "green" monitors. This driver does not support the TI 4000M TravelMate and the ACER 486/DX4/75 because they don't have compliant BIOSes. Many "green" desktop machines also don't have compliant BIOSes, and this driver may cause those machines to panic during the boot phase. Generally, if you don't have a battery in your machine, there isn't much point in using this driver and you should say N. If you get random kernel OOPSes or reboots that don't seem to be related to anything, try disabling/enabling this option (or disabling/enabling APM in your BIOS). Some other things you should try when experiencing seemingly random, "weird" problems: 1) make sure that you have enough swap space and that it is enabled. 2) pass the "no-hlt" option to the kernel 3) switch on floating point emulation in the kernel and pass the "no387" option to the kernel 4) pass the "floppy=nodma" option to the kernel 5) pass the "mem=4M" option to the kernel (thereby disabling all but the first 4 MB of RAM) 6) make sure that the CPU is not over clocked. 7) read the sig11 FAQ at 8) disable the cache from your BIOS settings 9) install a fan for the video card or exchange video RAM 10) install a better fan for the CPU 11) exchange RAM chips 12) exchange the motherboard. 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 . The module will be called apm.o. Ignore USER SUSPEND CONFIG_APM_IGNORE_USER_SUSPEND This option will ignore USER SUSPEND requests. On machines with a compliant APM BIOS, you want to say N. However, on the NEC Versa M series notebooks, it is necessary to say Y because of a BIOS bug. Enable APM at boot time CONFIG_APM_DO_ENABLE Enable APM features at boot time. From page 36 of the APM BIOS specification: "When disabled, the APM BIOS does not automatically power manage devices, enter the Standby State, enter the Suspend State, or take power saving steps in response to CPU Idle calls." This driver will make CPU Idle calls when Linux is idle (unless this feature is turned off -- see "Do CPU IDLE calls", below). This should always save battery power, but more complicated APM features will be dependent on your BIOS implementation. You may need to turn this option off if your computer hangs at boot time when using APM support, or if it beeps continuously instead of suspending. Turn this off if you have a NEC UltraLite Versa 33/C or a Toshiba T400CDT. This is off by default since most machines do fine without this feature. Make CPU Idle calls when idle CONFIG_APM_CPU_IDLE Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop. On some machines, this can activate improved power savings, such as a slowed CPU clock rate, when the machine is idle. These idle calls are made after the idle loop has run for some length of time (e.g., 333 mS). On some machines, this will cause a hang at boot time or whenever the CPU becomes idle. (On machines with more than one CPU, this option does nothing.) Enable console blanking using APM CONFIG_APM_DISPLAY_BLANK Enable console blanking using the APM. Some laptops can use this to turn off the LCD backlight when the screen blanker of the Linux virtual console blanks the screen. Note that this is only used by the virtual console screen blanker, and won't turn off the backlight when using the X Window system. This also doesn't have anything to do with your VESA-compliant power-saving monitor. Further, this option doesn't work for all laptops -- it might not turn off your backlight at all, or it might print a lot of errors to the console, especially if you are using gpm. RTC stores time in GMT CONFIG_APM_RTC_IS_GMT Say Y here if your RTC (Real Time Clock a.k.a. hardware clock) stores the time in GMT (Greenwich Mean Time). Say N if your RTC stores localtime. It is in fact recommended to store GMT in your RTC, because then you don't have to worry about daylight savings time changes. The only reason not to use GMT in your RTC is if you also run a broken OS that doesn't understand GMT. Allow interrupts during APM BIOS calls CONFIG_APM_ALLOW_INTS Normally we disable external interrupts while we are making calls to the APM BIOS as a measure to lessen the effects of a badly behaving BIOS implementation. The BIOS should reenable interrupts if it needs to. Unfortunately, some BIOSes do not -- especially those in many of the newer IBM Thinkpads. If you experience hangs when you suspend, try setting this to Y. Otherwise, say N. Use real mode APM BIOS call to power off CONFIG_APM_REAL_MODE_POWER_OFF Use real mode APM BIOS calls to switch off the computer. This is a work-around for a number of buggy BIOSes. Switch this option on if your computer crashes instead of powering off properly. Watchdog Timer Support CONFIG_WATCHDOG 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 in the kernel source. The watchdog is usually used together with the watchdog daemon which is available from . This daemon can also monitor NFS connections and can reboot the machine when the process table is full. If unsure, say N. Disable watchdog shutdown on close CONFIG_WATCHDOG_NOWAYOUT 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. WDT Watchdog timer CONFIG_WDT If you have a WDT500P or WDT501P watchdog board, say Y here, otherwise N. It is not possible to probe for this board, which means that you have to inform the kernel about the IO port and IRQ using the "wdt=" kernel 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). 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 . The module will be called wdt.o. WDT PCI Watchdog timer CONFIG_WDTPCI If you have a PCI WDT500/501 watchdog board, say Y here, otherwise N. It is not possible to probe for this board, which means that you have to inform the kernel about the IO port and IRQ using the "wdt=" kernel 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). 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 . The module will be called wdt_pci.o. WDT501 features CONFIG_WDT_501 Saying Y here and creating a character special file /dev/temperature with major number 10 and minor number 131 ("man mknod") will give you a thermometer inside your computer: reading from /dev/temperature yields one byte, the temperature in degrees Fahrenheit. This works only if you have a WDT501P watchdog board installed. Fan Tachometer CONFIG_WDT_501_FAN Enable the Fan Tachometer on the WDT501. Only do this if you have a fan tachometer actually set up. Software Watchdog CONFIG_SOFT_WATCHDOG 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 . The module will be called softdog.o. Berkshire Products PC Watchdog CONFIG_PCWATCHDOG This is the driver for the Berkshire Products PC Watchdog card. This card simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. This driver is like the WDT501 driver but for different hardware. Please read . The PC watchdog cards can be ordered from . 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 pcwd.o. If you want to compile it as a module, say M here and read . Most people will say N. Acquire SBC Watchdog Timer CONFIG_ACQUIRE_WDT This is the driver for the hardware watchdog on the PSC-6x86 Single Board Computer produced by Acquire Inc (and others). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. This driver is like the WDT501 driver but for different hardware. 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 pscwdt.o. If you want to compile it as a module, say M here and read . Most people will say N. Advantech SBC Watchdog Timer CONFIG_ADVANTECH_WDT If you are configuring a Linux kernel for the Advantech single-board computer, say `Y' here to support its built-in watchdog timer feature. See the help for CONFIG_WATCHDOG for discussion. ALi M7101 Watchdog Timer CONFIG_ALIM7101_WDT This is the driver for the hardware watchdog on the ALi M7101 PMU as used in the x86 Cobalt servers. 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 alim7101_wdt.o. If you want to compile it as a module, say M here and read . Most people will say N. IB700 SBC Watchdog Timer CONFIG_IB700_WDT This is the driver for the hardware watchdog on the IB700 Single Board Computer produced by TMC Technology (www.tmc-uk.com). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. This driver is like the WDT501 driver but for slightly different hardware. 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 ib700wdt.o. If you want to compile it as a module, say M here and read Documentation/modules.txt. Most people will say N. Mixcom Watchdog CONFIG_MIXCOMWD This is a driver for the Mixcom hardware watchdog cards. This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of 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 is called mixcomwd.o. If you want to compile it as a module, say M here and read . Most people will say N. ZF MachZ Watchdog CONFIG_MACHZ_WDT If you are using a ZF Micro MachZ processor, say Y here, otherwise N. This is the driver for the watchdog timer builtin on that processor using ZF-Logic interface. This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of 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 is called machzwd.o. If you want to compile it as a module, say M here and read . CONFIG_SC1200_WDT This is a driver for National Semiconductor PC87307/PC97307 hardware watchdog cards as found on the SC1200. This watchdog is mainly used for power management purposes and can be used to power down the device during inactivity periods (includes interrupt activity monitoring). 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 sc1200wdt.o. If you want to compile it as a module, say M here and read . Most people will say N. SuperH Watchdog CONFIG_SH_WDT This driver adds watchdog support for the integrated watchdog in the SuperH 3, 4 and 5 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. Wafer 5823 Watchdog CONFIG_WAFER_WDT This is a driver for the hardware watchdog on the ICP Wafer 5823 Single Board Computer (and probably other similar models). 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 . The module will be called wafer5823wdt.o Machine Check Exception CONFIG_X86_MCE Machine Check Exception support allows the processor to notify the kernel if it detects a problem (e.g. overheating, component failure). The action the kernel takes depends on the severity of the problem, ranging from a warning message on the console, to halting the machine. You can safely select this on machines that do not support this feature. For pentium machines the mce support defaults to off as the mainboard support is not always present. You must activate it as a boot option. Toshiba Laptop support CONFIG_TOSHIBA This adds a driver to safely access the System Management Mode of the CPU on Toshiba portables with a genuine Toshiba BIOS. It does not work on models with a Phoenix BIOS. The System Management Mode is used to set the BIOS and power saving options on Toshiba portables. For information on utilities to make use of this driver see the Toshiba Linux utilities web site at: . 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 . The module will be called toshiba.o Say Y if you intend to run this kernel on a Toshiba portable. Say N otherwise. Dell laptop support CONFIG_I8K This adds a driver to safely access the System Management Mode of the CPU on the Dell Inspiron and Latitude laptops. The System Management Mode is used to read cpu temperature, cooling fan status and Fn-keys status on Dell laptops. It can also be used to switch the fans on and off. The driver has been developed and tested on an Inspiron 8000 but it should work on any Dell Inspiron or Latitude laptop. You can force loading on unsupported models by passing the parameter `force=1' to the module. Use at your own risk. 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 . The module will be called i8k.o For more information on this driver and for utilities that make use of the module see the I8K Linux Utilities web site at: . Say Y if you intend to run this kernel on a Dell laptop. Say N otherwise. /dev/cpu/microcode - Intel IA32 CPU microcode support CONFIG_MICROCODE If you say Y here and also to "/dev file system support" in the 'File systems' section, you will be able to update the microcode on Intel processors in the IA32 family, e.g. Pentium Pro, Pentium II, Pentium III, Pentium 4, Xeon etc. You will obviously need the actual microcode binary data itself which is not shipped with the Linux kernel. For latest news and information on obtaining all the required ingredients for this driver, check: . 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 microcode.o. If you want to compile it as a module, say M here and read . If you use modprobe or kmod you may also want to add the line 'alias char-major-10-184 microcode' to your /etc/modules.conf file. /dev/cpu/*/msr - Model-specific register support CONFIG_X86_MSR 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. 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 . The module will be called msr.o /dev/cpu/*/cpuid - CPU information support CONFIG_X86_CPUID 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. 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 . The module will be called cpuid.o SBC-60XX Watchdog Timer CONFIG_60XX_WDT This driver can be used with the watchdog timer found on some single board computers, namely the 6010 PII based computer. It may well work with other cards. It reads port 0x443 to enable and re-set the watchdog timer, and reads port 0x45 to disable the watchdog. If you have a card that behave in similar ways, you can probably make this driver work with your card as well. You can compile this driver directly into the kernel, or use it as a module. The module will be called sbc60xxwdt.o. Eurotech CPU-1220/1410 Watchdog Timer CONFIG_EUROTECH_WDT Enable support for the watchdog timer on the Eurotech CPU-1220 and CPU-1410 cards. These are PC/104 SBCs. Spec sheets and product information are at . W83877F Watchdog Timer CONFIG_W83877F_WDT This is the driver for the hardware watchdog on the W83877F chipset as used in EMACS PC-104 motherboards (and may work on others). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. You can compile this driver directly into the kernel, or use it as a module. The module will be called w83877f_wdt.o. SC520 (AMD Elan) Watchdog Timer CONFIG_SC520_WDT This is the driver for the hardware watchdog built in to the AMD "Elan" SC520 microcomputer commonly used in embedded systems. This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. You can compile this driver directly into the kernel, or use it as a module. The module will be called sc520_wdt.o. Enhanced Real Time Clock Support CONFIG_RTC 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 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 . Tadpole ANA H8 Support CONFIG_H8 The Hitachi H8/337 is a microcontroller used to deal with the power and thermal environment. If you say Y here, you will be able to communicate with it via a character special device. If unsure, say N. /dev/nvram support CONFIG_NVRAM If you say Y here and create a character special file /dev/nvram with major number 10 and minor number 144 using mknod ("man mknod"), you get read and write access to the extra bytes of non-volatile memory in the real time clock (RTC), which is contained in every PC and most Ataris. The actual number of bytes varies, depending on the nvram in the system, but is usually 114 (128-14 for the RTC). This memory is conventionally called "CMOS RAM" on PCs and "NVRAM" on Ataris. /dev/nvram may be used to view settings there, or to change them (with some utility). It could also be used to frequently save a few bits of very important data that may not be lost over power-off and for which writing to disk is too insecure. Note however that most NVRAM space in a PC belongs to the BIOS and you should NEVER idly tamper with it. See Ralf Brown's interrupt list for a guide to the use of CMOS bytes by your BIOS. On Atari machines, /dev/nvram is always configured and does not need to be selected. 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 nvram.o. If you want to compile it as a module, say M here and read . Joystick support CONFIG_JOYSTICK If you have a joystick, 6dof controller, gamepad, steering wheel, weapon control system or something like that you can say Y here to enable generic support for these controllers. You will also need to say Y or M to at least one of the hardware specific drivers. This will make the controllers available as /dev/input/jsX devices. Please read the file which contains more information and the location of the joystick package that you'll need. Game port support CONFIG_INPUT_GAMEPORT Gameport support is for the standard 15-pin PC gameport. If you have a joystick, gamepad, gameport card, a soundcard with a gameport or anything else that uses the gameport, say Y or M here and also to at least one of the hardware specific drivers. Please read the file which contains more information and the location of the joystick package that you'll need if you use the gameport with a joystick. 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 gameport.o. If you want to compile it as a module, say M here and read . Classic ISA/PnP gameports CONFIG_INPUT_NS558 Say Y here if you have an ISA or PnP gameport. For more information on how to use the driver please read . 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 ns558.o. If you want to compile it as a module, say M here and read . PDPI Lightning 4 gamecard CONFIG_INPUT_LIGHTNING Say Y here if you have a PDPI Lightning 4 gamecard. For more information on how to use the driver please read . 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 lightning.o. If you want to compile it as a module, say M here and read . Crystal SoundFusion gameports CONFIG_INPUT_CS461X Say Y here if you have a Cirrus CS461x aka "Crystal SoundFusion" PCI audio accelerator. A product page for the CS4614 is at . 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 cs461x.o. If you want to compile it as a module, say M here and read . Aureal Vortex and Trident 4DWave gameports CONFIG_INPUT_PCIGAME Say Y here if you have a Trident 4DWave DX/NX or Aureal Vortex 1/2 card. For more information on how to use the driver please read . 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 pcigame.o. If you want to compile it as a module, say M here and read . SoundBlaster Live! gameports CONFIG_INPUT_EMU10K1 Say Y here if you have a SoundBlaster Live! card and want to use its gameport. For more information on how to use the driver please read . 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 emu10k1-gp.o. If you want to compile it as a module, say M here and read . Classic PC analog joysticks and gamepads CONFIG_INPUT_ANALOG Say Y here if you have a controller that connects to the PC gameport. This supports many different types, including joysticks with throttle control, with rudders, or with extensions like additional hats and buttons compatible with CH Flightstick Pro, ThrustMaster FCS, 6 and 8 button gamepads, or Saitek Cyborg joysticks. For more information on how to use the driver please read . 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 analog.o. If you want to compile it as a module, say M here and read . Assassin 3D and MadCatz Panther devices CONFIG_INPUT_A3D Say Y here if you have an FPGaming or MadCatz controller using the A3D protocol over the PC gameport. For more information on how to use the driver please read . 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 a3d.o. If you want to compile it as a module, say M here and read . Logitech ADI digital joysticks and gamepads CONFIG_INPUT_ADI Say Y here if you have a Logitech controller using the ADI protocol over the PC gameport. For more information on how to use the driver please read . 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 adi.o. If you want to compile it as a module, say M here and read . Creative Labs Blaster Cobra gamepad CONFIG_INPUT_COBRA Say Y here if you have a Creative Labs Blaster Cobra gamepad. For more information on how to use the driver please read . 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 cobra.o. If you want to compile it as a module, say M here and read . Genius Flight2000 Digital joysticks and gamepads CONFIG_INPUT_GF2K Say Y here if you have a Genius Flight2000 or MaxFighter digitally communicating joystick or gamepad. For more information on how to use the driver please read . 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 gf2k.o. If you want to compile it as a module, say M here and read . Gravis GrIP joysticks and gamepads CONFIG_INPUT_GRIP Say Y here if you have a Gravis controller using the GrIP protocol over the PC gameport. For more information on how to use the driver please read . 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 grip.o. If you want to compile it as a module, say M here and read . InterAct digital joysticks and gamepads CONFIG_INPUT_INTERACT Say Y hereif you have an InterAct gameport or joystick communicating digitally over the gameport. For more information on how to use the driver please read . 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 interact.o. If you want to compile it as a module, say M here and read . ThrustMaster DirectConnect joysticks and gamepads CONFIG_INPUT_TMDC Say Y here if you have a ThrustMaster controller using the DirectConnect (BSP) protocol over the PC gameport. For more information on how to use the driver please read . 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 tmdc.o. If you want to compile it as a module, say M here and read . Microsoft SideWinder digital joysticks and gamepads CONFIG_INPUT_SIDEWINDER Say Y here if you have a Microsoft controller using the Digital Overdrive protocol over PC gameport. For more information on how to use the driver please read . 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 sidewinder.o. If you want to compile it as a module, say M here and read . Serial port device support CONFIG_INPUT_SERIO Say Y here and to the Serial port input line discipline option if you plan to use a joystick that communicates over the serial (COM) port. For more information on how to use the driver please read . 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 sidewinder.o. If you want to compile it as a module, say M here and read . Serial port input line discipline CONFIG_INPUT_SERPORT Say Y here if you plan to use a joystick that communicates over the serial (COM) port. For more information on how to use the driver please read . 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 serport.o. If you want to compile it as a module, say M here and read . Logitech WingMan Warrior joystick CONFIG_INPUT_WARRIOR Say Y here if you have a Logitech WingMan Warrior joystick connected to your computer's serial port. For more information on how to use the driver please read . 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 warrior.o. If you want to compile it as a module, say M here and read . LogiCad3d Magellan/SpaceMouse 6dof controller CONFIG_INPUT_MAGELLAN Say Y here if you have a Magellan or Space Mouse 6DOF controller connected to your computer's serial port. For more information on how to use the driver please read . 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 magellan.o. If you want to compile it as a module, say M here and read . SpaceTec SpaceOrb/Avenger 6dof controller CONFIG_INPUT_SPACEORB Say Y here if you have a SpaceOrb 360 or SpaceBall Avenger 6DOF controller connected to your computer's serial port. For more information on how to use the driver please read . 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 spaceorb.o. If you want to compile it as a module, say M here and read . SpaceTec SpaceBall 4000 FLX 6dof controller CONFIG_INPUT_SPACEBALL Say Y here if you have a SpaceTec SpaceBall 4000 FLX controller connected to your computer's serial port. For more information on how to use the driver please read . 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 spaceball.o. If you want to compile it as a module, say M here and read . Gravis Stinger gamepad CONFIG_INPUT_STINGER Say Y here if you have a Gravis Stinger connected to one of your serial ports. For more information on how to use the driver please read . 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 stinger.o. If you want to compile it as a module, say M here and read . I-Force joysticks/wheels CONFIG_INPUT_IFORCE_232 Say Y here if you have an I-Force joystick or steering wheel connected to your serial (COM) port. For more information on how to use the driver please read . 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 iforce.o. If you want to compile it as a module, say M here and read . I-Force joysticks/wheels CONFIG_INPUT_IFORCE_USB Say Y here if you have an I-Force joystick or steering wheel connected to your USB port. For more information on how to use the driver please read . 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 iforce.o. If you want to compile it as a module, say M here and read . Multisystem, Sega Genesis, Saturn joysticks and gamepads CONFIG_INPUT_DB9 Say Y here if you have a Sega Master System gamepad, Sega Genesis gamepad, Sega Saturn gamepad, or a Multisystem -- Atari, Amiga, Commodore, Amstrad CPC joystick connected to your parallel port. For more information on how to use the driver please read and . 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 db9.o. If you want to compile it as a module, say M here and read . Multisystem, NES, SNES, N64, PSX joysticks and gamepads CONFIG_INPUT_GAMECON Say Y here if you have a Nintendo Entertainment System gamepad, Super Nintendo Entertainment System gamepad, Nintendo 64 gamepad, Sony PlayStation gamepad or a Multisystem -- Atari, Amiga, Commodore, Amstrad CPC joystick connected to your parallel port. For more information on how to use the driver please read and . 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 gamecon.o. If you want to compile it as a module, say M here and read . Multisystem joysticks via TurboGraFX device CONFIG_INPUT_TURBOGRAFX Say Y here if you have the TurboGraFX interface by Steffen Schwenke, and want to use it with Multisystem -- Atari, Amiga, Commodore, Amstrad CPC joystick. For more information on how to use the driver please read and . 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 turbografx.o. If you want to compile it as a module, say M here and read . Amiga joysticks CONFIG_INPUT_AMIJOY Say Y here if you have an Amiga with a digital joystick connected to it. For more information on how to use the driver please read . 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 joy-amiga.o. If you want to compile it as a module, say M here and read . Atomwide serial port support CONFIG_ATOMWIDE_SERIAL If you have an Atomwide Serial card for an Acorn system, say Y to this option. The driver can handle 1, 2, or 3 port cards. If unsure, say N. Dual serial port support CONFIG_DUALSP_SERIAL If you have the Serial Port's dual serial card for an Acorn system, say Y to this option. If unsure, say N. NetWinder Button CONFIG_NWBUTTON If you say Y here and create a character device node /dev/nwbutton with major and minor numbers 10 and 158 ("man mknod"), then every time the orange button is pressed a number of times, the number of times the button was pressed will be written to that device. This is most useful for applications, as yet unwritten, which perform actions based on how many times the button is pressed in a row. Do not hold the button down for too long, as the driver does not alter the behaviour of the hardware reset circuitry attached to the button; it will still execute a hard reset if the button is held down for longer than approximately five seconds. 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 . The module will be called nwbutton.o. Most people will answer Y to this question and "Reboot Using Button" below to be able to initiate a system shutdown from the button. Reboot Using Button CONFIG_NWBUTTON_REBOOT If you say Y here, then you will be able to initiate a system shutdown and reboot by pressing the orange button a number of times. The number of presses to initiate the shutdown is two by default, but this can be altered by modifying the value of NUM_PRESSES_REBOOT in nwbutton.h and recompiling the driver or, if you compile the driver as a module, you can specify the number of presses at load time with "insmod button reboot_count=". Sound card support CONFIG_SOUND 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 . General information about the modular sound system is contained in the files . The file 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 ), 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 as well as ; 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 . OSS sound modules CONFIG_SOUND_OSS OSS is the Open Sound System suite of sound card drivers. They make sound programming easier since they provide a common API. Say Y or M here (the module will be called sound.o) if you haven't found a driver for your sound card above, then pick your driver from the list below. Persistent DMA buffers CONFIG_SOUND_DMAP Linux can often have problems allocating DMA buffers for ISA sound cards on machines with more than 16MB of RAM. This is because ISA DMA buffers must exist below the 16MB boundary and it is quite possible that a large enough free block in this region cannot be found after the machine has been running for a while. If you say Y here the DMA buffers (64Kb) will be allocated at boot time and kept until the shutdown. This option is only useful if you said Y to "OSS sound modules", above. If you said M to "OSS sound modules" then you can get the persistent DMA buffer functionality by passing the command-line argument "dmabuf=1" to the sound.o module. Say Y unless you have 16MB or less RAM or a PCI sound card. Support for Aztech Sound Galaxy (non-PnP) cards CONFIG_SOUND_SGALAXY This module initializes the older non Plug and Play sound galaxy cards from Aztech. It supports the Waverider Pro 32 - 3D and the Galaxy Washington 16. If you compile the driver into the kernel, you have to add "sgalaxy=,,,," to the kernel command line. Support for AD1816(A) based cards CONFIG_SOUND_AD1816 Say M here if you have a sound card based on the Analog Devices AD1816(A) chip. If you compile the driver into the kernel, you have to add "ad1816=,,," to the kernel command line. Yamaha OPL3-SA1 audio controller CONFIG_SOUND_OPL3SA1 Say Y or M if you have a Yamaha OPL3-SA1 sound chip, which is usually built into motherboards. Read for details. If you compile the driver into the kernel, you have to add "opl3sa=,,,,," to the kernel command line. ProAudioSpectrum 16 support CONFIG_SOUND_PAS Answer Y only if you have a Pro Audio Spectrum 16, ProAudio Studio 16 or Logitech SoundMan 16 sound card. Answer N if you have some other card made by Media Vision or Logitech since those are not PAS16 compatible. Please read . It is not necessary to add Sound Blaster support separately; it is included in PAS support. If you compile the driver into the kernel, you have to add "pas2=,,,,,,, to the kernel command line. Enable PAS16 joystick port CONFIG_PAS_JOYSTICK Say Y here to enable the Pro Audio Spectrum 16's auxiliary joystick port. 100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support CONFIG_SOUND_SB Answer Y if you have an original Sound Blaster card made by Creative Labs or a 100% hardware compatible clone (like the Thunderboard or SM Games). For an unknown card you may answer Y if the card claims to be Sound Blaster-compatible. Please read the file . You should also say Y here for cards based on the Avance Logic ALS-007 and ALS-1X0 chips (read ) and for cards based on ESS chips (read and ). If you have an SB AWE 32 or SB AWE 64, say Y here and also to "AWE32 synth" below and read . If you have an IBM Mwave card, say Y here and read . If you compile the driver into the kernel and don't want to use isapnp, you have to add "sb=,,," to the kernel command line. You can say M here to compile this driver as a module; the module is called sb.o. Gravis Ultrasound support CONFIG_SOUND_GUS Say Y here for any type of Gravis Ultrasound card, including the GUS or GUS MAX. See also for more information on configuring this card with modules. If you compile the driver into the kernel, you have to add "gus=,,," to the kernel command line. MPU-401 support (NOT for SB16) CONFIG_SOUND_MPU401 Be careful with this question. The MPU401 interface is supported by all sound cards. However, some natively supported cards have their own driver for MPU401. Enabling this MPU401 option with these cards will cause a conflict. Also, enabling MPU401 on a system that doesn't really have a MPU401 could cause some trouble. If your card was in the list of supported cards, look at the card specific instructions in the file. It is safe to answer Y if you have a true MPU401 MIDI interface card. If you compile the driver into the kernel, you have to add "mpu401=," to the kernel command line. 6850 UART support CONFIG_SOUND_UART6850 This option enables support for MIDI interfaces based on the 6850 UART chip. This interface is rarely found on sound cards. It's safe to answer N to this question. If you compile the driver into the kernel, you have to add "uart6850=," to the kernel command line. PSS (AD1848, ADSP-2115, ESC614) support CONFIG_SOUND_PSS Answer Y or M if you have an Orchid SW32, Cardinal DSP16, Beethoven ADSP-16 or some other card based on the PSS chipset (AD1848 codec + ADSP-2115 DSP chip + Echo ESC614 ASIC CHIP). For more information on how to compile it into the kernel or as a module see the file . If you compile the driver into the kernel, you have to add "pss=,,,,," to the kernel command line. Enable PSS mixer (Beethoven ADSP-16 and other compatible) CONFIG_PSS_MIXER Answer Y for Beethoven ADSP-16. You may try to say Y also for other cards if they have master volume, bass, treble, and you can't control it under Linux. If you answer N for Beethoven ADSP-16, you can't control master volume, bass, treble and synth volume. If you said M to "PSS support" above, you may enable or disable this PSS mixer with the module parameter pss_mixer. For more information see the file . Have DSPxxx.LD firmware file CONFIG_PSS_HAVE_BOOT If you have the DSPxxx.LD file or SYNTH.LD file for you card, say Y to include this file. Without this file the synth device (OPL) may not work. Full pathname of DSPxxx.LD firmware file CONFIG_PSS_BOOT_FILE Enter the full pathname of your DSPxxx.LD file or SYNTH.LD file, starting from /. Microsoft Sound System support CONFIG_SOUND_MSS Again think carefully before answering Y to this question. It's safe to answer Y if you have the original Windows Sound System card made by Microsoft or Aztech SG 16 Pro (or NX16 Pro). Also you may say Y in case your card is NOT among these: ATI Stereo F/X, AdLib, Audio Excell DSP16, Cardinal DSP16, Ensoniq SoundScape (and compatibles made by Reveal and Spea), Gravis Ultrasound, Gravis Ultrasound ACE, Gravis Ultrasound Max, Gravis Ultrasound with 16 bit option, Logitech Sound Man 16, Logitech SoundMan Games, Logitech SoundMan Wave, MAD16 Pro (OPTi 82C929), Media Vision Jazz16, MediaTriX AudioTriX Pro, Microsoft Windows Sound System (MSS/WSS), Mozart (OAK OTI-601), Orchid SW32, Personal Sound System (PSS), Pro Audio Spectrum 16, Pro Audio Studio 16, Pro Sonic 16, Roland MPU-401 MIDI interface, Sound Blaster 1.0, Sound Blaster 16, Sound Blaster 16ASP, Sound Blaster 2.0, Sound Blaster AWE32, Sound Blaster Pro, TI TM4000M notebook, ThunderBoard, Turtle Beach Tropez, Yamaha FM synthesizers (OPL2, OPL3 and OPL4), 6850 UART MIDI Interface. For cards having native support in VoxWare, consult the card specific instructions in . Some drivers have their own MSS support and saying Y to this option will cause a conflict. If you compile the driver into the kernel, you have to add "ad1848=,,,[,]" to the kernel command line. SGI Visual Workstation on-board audio CONFIG_SOUND_VWSND Say Y or M if you have an SGI Visual Workstation and you want to be able to use its on-board audio. Read for more info on this driver's capabilities. NEC Vrc5477 AC97 sound CONFIG_SOUND_VRC5477 Say Y here to enable sound support for the NEC Vrc5477 chip, an integrated, multi-function controller chip for MIPS CPUs. Works with the AC97 codec. Ensoniq SoundScape support CONFIG_SOUND_SSCAPE Answer Y if you have a sound card based on the Ensoniq SoundScape chipset. Such cards are being manufactured at least by Ensoniq, Spea and Reveal (Reveal makes also other cards). If you compile the driver into the kernel, you have to add "sscape=,,,," to the kernel command line. MediaTriX AudioTriX Pro support CONFIG_SOUND_TRIX Answer Y if you have the AudioTriX Pro sound card manufactured by MediaTrix. Have TRXPRO.HEX firmware file CONFIG_TRIX_HAVE_BOOT The MediaTrix AudioTrix Pro has an on-board microcontroller which needs to be initialized by downloading the code from the file TRXPRO.HEX in the DOS driver directory. If you don't have the TRXPRO.HEX file handy you may skip this step. However, the SB and MPU-401 modes of AudioTrix Pro will not work without this file! Full pathname of TRXPRO.HEX firmware file CONFIG_TRIX_BOOT_FILE Enter the full pathname of your TRXPRO.HEX file, starting from /. Support for OPTi MAD16 and/or Mozart based cards CONFIG_SOUND_MAD16 Answer Y if your card has a Mozart (OAK OTI-601) or MAD16 (OPTi 82C928 or 82C929 or 82C931) audio interface chip. These chips are quite common so it's possible that many no-name cards have one of them. In addition the MAD16 chip is used in some cards made by known manufacturers such as Turtle Beach (Tropez), Reveal (some models) and Diamond (latest ones). Note however that the Tropez sound cards have their own driver; if you have one of those, say N here and Y or M to "Full support for Turtle Beach WaveFront", below. If you compile the driver into the kernel, you have to add "mad16=,,,,," to the kernel command line. See also and for more information on setting these cards up as modules. Full support for Turtle Beach WaveFront (Tropez Plus, Tropez, Maui) synth/sound cards CONFIG_SOUND_WAVEFRONT Answer Y or M if you have a Tropez Plus, Tropez or Maui sound card and read the files and . Support MIDI in older MAD16 based cards (requires SB) CONFIG_MAD16_OLDCARD Answer Y (or M) if you have an older card based on the C928 or Mozart chipset and you want to have MIDI support. If you enable this option you also need to enable support for Sound Blaster. Support for Crystal CS4232 based (PnP) cards CONFIG_SOUND_CS4232 Say Y here if you have a card based on the Crystal CS4232 chip set, which uses its own Plug and Play protocol. If you compile the driver into the kernel, you have to add "cs4232=,,,,," to the kernel command line. See for more information on configuring this card. Support for Yamaha OPL3-SA2 and SA3 based PnP cards CONFIG_SOUND_OPL3SA2 Say Y or M if you have a card based on one of these Yamaha sound chipsets or the "SAx", which is actually a SA3. Read for more information on configuring these cards. If you compile the driver into the kernel and do not also configure in the optional ISA PnP support, you will have to add "opl3sa2=,,,,," to the kernel command line. Support for Turtle Beach Wave Front (Maui, Tropez) synthesizers CONFIG_SOUND_MAUI Say Y here if you have a Turtle Beach Wave Front, Maui, or Tropez sound card. If you compile the driver into the kernel, you have to add "maui=," to the kernel command line. Have OSWF.MOT firmware file CONFIG_MAUI_HAVE_BOOT Turtle Beach Maui and Tropez sound cards have a microcontroller which needs to be initialized prior to use. OSWF.MOT is a file distributed with the card's DOS/Windows drivers. Answer Y if you have this file. Full pathname of OSWF.MOT firmware file CONFIG_MAUI_BOOT_FILE Enter the full pathname of your OSWF.MOT file, starting from /. Support for Turtle Beach MultiSound Classic, Tahiti, Monterey CONFIG_SOUND_MSNDCLAS Say M here if you have a Turtle Beach MultiSound Classic, Tahiti or Monterey (not for the Pinnacle or Fiji). See for important information about this driver. Note that it has been discontinued, but the Voyetra Turtle Beach knowledge base entry for it is still available at . MSND Classic I/O CONFIG_MSNDCLAS_IO I/O port address for the MultiSound Classic and related cards. MSND Classic IRQ CONFIG_MSNDCLAS_IRQ Interrupt Request line for the MultiSound Classic and related cards. MSND Classic memory address CONFIG_MSNDCLAS_MEM Memory-mapped I/O base address for the MultiSound Classic and related cards. Full pathname of MSNDINIT.BIN firmware file CONFIG_MSNDCLAS_INIT_FILE The MultiSound cards have two firmware files which are required for operation, and are not currently included. These files can be obtained from Turtle Beach. See for information on how to obtain this. Full pathname of MSNDPERM.BIN firmware file CONFIG_MSNDCLAS_PERM_FILE The MultiSound cards have two firmware files which are required for operation, and are not currently included. These files can be obtained from Turtle Beach. See for information on how to obtain this. Support for Turtle Beach MultiSound Pinnacle, Fiji CONFIG_SOUND_MSNDPIN Say M here if you have a Turtle Beach MultiSound Pinnacle or Fiji. See for important information about this driver. Note that it has been discontinued, but the Voyetra Turtle Beach knowledge base entry for it is still available at . MSND Pinnacle IDE I/O 0 CONFIG_MSNDPIN_IDE_IO0 CD-ROM drive 0 memory-mapped I/O base address for the MultiSound Pinnacle and Fiji sound cards. MSND Pinnacle IDE I/O 1 CONFIG_MSNDPIN_IDE_IO1 CD-ROM drive 1 memory-mapped I/O base address for the MultiSound Pinnacle and Fiji sound cards. MSND Pinnacle IDE IRQ CONFIG_MSNDPIN_IDE_IRQ Interrupt request number for the IDE CD-ROM interface on the MultiSound Pinnacle and Fiji sound cards. MSND Pinnacle I/O CONFIG_MSNDPIN_IO Memory-mapped I/O base address for the primary synthesizer on MultiSound Pinnacle and Fiji sound cards. MSND Pinnacle MPU I/O CONFIG_MSNDPIN_MPU_IO Memory-mapped I/O base address for the Kurzweil daughterboard synthesizer on MultiSound Pinnacle and Fiji sound cards. MSND Pinnacle MPU IRQ CONFIG_MSNDPIN_MPU_IRQ Iinterrupt request number for the Kurzweil daughterboard synthesizer on MultiSound Pinnacle and Fiji sound cards. MSND Pinnacle IRQ CONFIG_MSNDPIN_IRQ Interrupt request line for the primary synthesizer on MultiSound Pinnacle and Fiji sound cards. MSND Pinnacle joystick I/O CONFIG_MSNDPIN_JOYSTICK_IO Memory-mapped I/O base address for the joystick port on MultiSound Pinnacle and Fiji sound cards. MSND Pinnacle memory CONFIG_MSNDPIN_MEM Memory-mapped I/O base address for the primary synthesizer on MultiSound Pinnacle and Fiji sound cards. Full pathname of PNDSPINI.BIN firmware file CONFIG_MSNDPIN_INIT_FILE The MultiSound cards have two firmware files which are required for operation, and are not currently included. These files can be obtained from Turtle Beach. See for information on how to obtain this. Full pathname of PNDSPERM.BIN firmware file CONFIG_MSNDPIN_PERM_FILE The MultiSound cards have two firmware files which are required for operation, and are not currently included. These files can be obtained from Turtle Beach. See for information on how to obtain this. MSND Pinnacle has S/PDIF I/O CONFIG_MSNDPIN_DIGITAL If you have the S/PDIF daughter board for the Pinnacle or Fiji, answer Y here; otherwise, say N. If you have this, you will be able to play and record from the S/PDIF port (digital signal). See for information on how to make use of this capability. MSND Pinnacle non-PnP Mode CONFIG_MSNDPIN_NONPNP The Pinnacle and Fiji card resources can be configured either with PnP, or through a configuration port. Say Y here if your card is NOT in PnP mode. For the Pinnacle, configuration in non-PnP mode allows use of the IDE and joystick peripherals on the card as well; these do not show up when the card is in PnP mode. Specifying zero for any resource of a device will disable the device. If you are running the card in PnP mode, you must say N here and use isapnptools to configure the card's resources. MSND Pinnacle config port CONFIG_MSNDPIN_CFG This is the port which the Pinnacle and Fiji uses to configure the card's resources when not in PnP mode. If your card is in PnP mode, then be sure to say N to the previous option, "MSND Pinnacle Non-PnP Mode". MSND buffer size (kB) CONFIG_MSND_FIFOSIZE Configures the size of each audio buffer, in kilobytes, for recording and playing in the MultiSound drivers (both the Classic and Pinnacle). Larger values reduce the chance of data overruns at the expense of overall latency. If unsure, use the default. Yamaha FM synthesizer (YM3812/OPL-3) support CONFIG_SOUND_YM3812 Answer Y if your card has a FM chip made by Yamaha (OPL2/OPL3/OPL4). Answering Y is usually a safe and recommended choice, however some cards may have software (TSR) FM emulation. Enabling FM support with these cards may cause trouble (I don't currently know of any such cards, however). Please read the file if your card has an OPL3 chip. If you compile the driver into the kernel, you have to add "opl3=" to the kernel command line. If unsure, say Y. ACI mixer (miroSOUND PCM1-pro/PCM12/PCM20 radio) CONFIG_SOUND_ACI_MIXER ACI (Audio Command Interface) is a protocol used to communicate with the microcontroller on some sound cards produced by miro and Cardinal Technologies. The main function of the ACI is to control the mixer and to get a product identification. This VoxWare ACI driver currently supports the ACI functions on the miroSOUND PCM1-pro, PCM12 and PCM20 radio. On the PCM20 radio, ACI also controls the radio tuner. This is supported in the video4linux miropcm20 driver (say M or Y here and go back to "Multimedia devices" -> "Radio Adapters"). This driver is also available as a module and will be called aci.o. SB32/AWE support CONFIG_SOUND_AWE32_SYNTH Say Y here if you have a Sound Blaster SB32, AWE32-PnP, SB AWE64 or similar sound card. See , and the Soundblaster-AWE mini-HOWTO, available from for more info. Gallant Audio Cards (SC-6000 and SC-6600 based) CONFIG_SOUND_AEDSP16 Answer Y if you have a Gallant's Audio Excel DSP 16 card. This driver supports Audio Excel DSP 16 but not the III nor PnP versions of this card. The Gallant's Audio Excel DSP 16 card can emulate either an SBPro or a Microsoft Sound System card, so you should have said Y to either "100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support" or "Microsoft Sound System support", above, and you need to answer the "MSS emulation" and "SBPro emulation" questions below accordingly. You should say Y to one and only one of these two questions. Read the file and the head of as well as to get more information about this driver and its configuration. Audio Excel DSP 16 (SBPro emulation) CONFIG_AEDSP16_SBPRO Answer Y if you want your audio card to emulate Sound Blaster Pro. You should then say Y to "100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support" and N to "Audio Excel DSP 16 (MSS emulation)". If you compile the driver into the kernel, you have to add "aedsp16=,,,,," to the kernel command line. Audio Excel DSP 16 (MSS emulation) CONFIG_AEDSP16_MSS Answer Y if you want your audio card to emulate Microsoft Sound System. You should then say Y to "Microsoft Sound System support" and say N to "Audio Excel DSP 16 (SBPro emulation)". SC-6600 based audio cards (new Audio Excel DSP 16) CONFIG_SC6600 The SC6600 is the new version of DSP mounted on the Audio Excel DSP 16 cards. Find in the manual the FCC ID of your audio card and answer Y if you have an SC6600 DSP. SC-6600 Joystick Interface CONFIG_SC6600_JOY Say Y here in order to use the joystick interface of the Audio Excel DSP 16 card. SC-6600 CD-ROM Interface CONFIG_SC6600_CDROM (4=None, 3=IDE, 1=Panasonic, 0=Sony) This is used to activate the CD-ROM interface of the Audio Excel DSP 16 card. Enter: 0 for Sony, 1 for Panasonic, 2 for IDE, 4 for no CD-ROM present. SC-6600 CD-ROM Interface I/O Address CONFIG_SC6600_CDROMBASE Base I/O port address for the CD-ROM interface of the Audio Excel DSP 16 card. Audio Excel DSP 16 (MPU401 emulation) CONFIG_AEDSP16_MPU401 Answer Y if you want your audio card to emulate the MPU-401 midi interface. You should then also say Y to "MPU-401 support". Note that the I/O base for MPU-401 support of aedsp16 is the same you have selected for "MPU-401 support". If you are using this driver as a module you have to specify the MPU I/O base address with the parameter 'mpu_base=0xNNN'. SC-6600 CDROM Interface (4=None, 3=IDE, 1=Panasonic, 0=?Sony?) CONFIG_SC6600_CDROM This is used to activate the CD-ROM interface of the Audio Excel DSP 16 card. Enter: 0 for Sony, 1 for Panasonic, 2 for IDE, 4 for no CD-ROM present. C-Media PCI (CMI8338/8378) CONFIG_SOUND_CMPCI Say Y or M if you have a PCI sound card using the CMI8338 or the CMI8378 chipset. Data on these chips are available at . A userspace utility to control some internal registers of these chips is available at . Support CMI8738 based audio cards CONFIG_SOUND_CMPCI_CM8738 Say Y or M if you have a PCI sound card using the CMI8338 or the CMI8378 chipset. Data on this chip is available at . A userspace utility to control some internal registers of these chips is available at . Enable joystick CONFIG_SOUND_CMPCI_JOYSTICK Say here in order to enable the joystick port on a sound crd using the CMI8338 or the CMI8738 chipset. Data on these chips are available at . Number of speakers (2, 4, 5, 6) CONFIG_SOUND_CMPCI_SPEAKERS Specify the number of speaker channels you want the card to drive, as an integer. Enable S/PDIF loop for CMI8738 CONFIG_SOUND_CMPCI_SPDIFLOOP Enable loopback from SPDIF in to SPDIF out. For discussion, see "The 8738 Audio SPDIF In/Out Technical Data" on the technical support page at . A userspace utility to control even more internal registers of these chips is available at . This package will among other things help you enable SPDIF out/in/loop/monitor. Enable legacy FM CONFIG_SOUND_CMPCI_FM Say Y here to enable the legacy FM (frequency-modulation) synthesis support on a card using the CMI8338 or CMI8378 chipset. FM I/O 388, 3C8, 3E0, 3E8 CONFIG_SOUND_CMPCI_FMIO Set the base I/O address for FM synthesis control on a card using the CMI8338 or CMI8378 chipset. Enable legacy MPU-401 CONFIG_SOUND_CMPCI_MIDI Say Y here to enable the legacy MP401 MIDI synthesis support on a card using the CMI8338 or CMI8378 chipset. MPU-401 I/O 330, 320, 310, 300 CONFIG_SOUND_CMPCI_MPUIO Set the base I/O address for MP401 MIDI synthesis control on a card using the CMI8338 or CMI8378 chipset. Inverse S/PDIF in for CMI8738 CONFIG_SOUND_CMPCI_SPDIFINVERSE Say Y here to have the driver invert the signal presented on SPDIF IN of a card using the CMI8338 or CMI8378 chipset. Use Line-in as Read-out CONFIG_SOUND_CMPCI_LINE_REAR Say Y here to enable using line-in jack as an output jack for a rear speaker. Use Line-in as Bass CONFIG_SOUND_CMPCI_LINE_BASS Say Y here to enable using line-in jack as an output jack for a bass speaker. Creative SBLive! (EMU10K1) based PCI sound cards CONFIG_SOUND_EMU10K1 Say Y or M if you have a PCI sound card using the EMU10K1 chipset, such as the Creative SBLive!, SB PCI512 or Emu-APS. For more information on this driver and the degree of support for the different card models please check: It is now possible to load dsp microcode patches into the EMU10K1 chip. These patches are used to implement real time sound processing effects which include for example: signal routing, bass/treble control, AC3 passthrough, ... Userspace tools to create new patches and load/unload them can be found in the emu-tools package at the above URL. Creative SBLive! (EMU10K1) MIDI CONFIG_MIDI_EMU10K1 Say Y if you want to be able to use the OSS /dev/sequencer interface. This code is still experimental. Crystal SoundFusion (CS4280/461x) CONFIG_SOUND_FUSION This module drives the Crystal SoundFusion devices (CS4280/46xx series) when wired as native sound drivers with AC97 codecs. If this driver does not work try the CS4232 driver. Ensoniq AudioPCI (ES1370) based PCI sound cards CONFIG_SOUND_ES1370 Say Y or M if you have a PCI sound card utilizing the Ensoniq ES1370 chipset, such as Ensoniq's AudioPCI (non-97). To find out if your sound card uses an ES1370 without removing your computer's cover, use lspci -n and look for the PCI ID 1274:5000. Since Ensoniq was bought by Creative Labs, Sound Blaster 64/PCI models are either ES1370 or ES1371 based. This driver differs slightly from OSS/Free, so PLEASE READ . Ensoniq AudioPCI 97 (ES1371) based sound cards CONFIG_SOUND_ES1371 Say Y or M if you have a PCI sound card utilizing the Ensoniq ES1371 chipset, such as Ensoniq's AudioPCI97. To find out if your sound card uses an ES1371 without removing your computer's cover, use lspci -n and look for the PCI ID 1274:1371. Since Ensoniq was bought by Creative Labs, Sound Blaster 64/PCI models are either ES1370 or ES1371 based. This driver differs slightly from OSS/Free, so PLEASE READ . ESS Solo1 based PCI sound cards (eg. SC1938) CONFIG_SOUND_ESSSOLO1 Say Y or M if you have a PCI sound card utilizing the ESS Technology Solo1 chip. To find out if your sound card uses a Solo1 chip without removing your computer's cover, use lspci -n and look for the PCI ID 125D:1969. This driver differs slightly from OSS/Free, so PLEASE READ . S3 SonicVibes based PCI sound cards CONFIG_SOUND_SONICVIBES Say Y or M if you have a PCI sound card utilizing the S3 SonicVibes chipset. To find out if your sound card uses a SonicVibes chip without removing your computer's cover, use lspci -n and look for the PCI ID 5333:CA00. This driver differs slightly from OSS/Free, so PLEASE READ . Trident 4DWave DX/NX, SiS 7018 or ALi 5451 PCI Audio Core CONFIG_SOUND_TRIDENT Say Y or M if you have a PCI sound card utilizing the Trident 4DWave-DX/NX chipset or your mother board chipset has SiS 7018 or ALi 5451 built-in. The SiS 7018 PCI Audio Core is embedded in SiS960 Super South Bridge and SiS540/630 Single Chipset. The ALi 5451 PCI Audio Core is embedded in ALi M1535, M1535D, M1535+ or M1535D+ South Bridge. Use lspci -n to find out if your sound card or chipset uses Trident 4DWave or SiS 7018. PCI ID 1023:2000 or 1023:2001 stands for Trident 4Dwave. PCI ID 1039:7018 stands for SiS7018. PCI ID 10B9:5451 stands for ALi5451. This driver supports S/PDIF in/out (record/playback) for ALi 5451 embedded in ALi M1535+ and M1535D+. Note that they aren't all enabled by default; you can enable them by saying Y to "/proc file system support" and "Sysctl support", and after the /proc file system has been mounted, executing the command command what is enabled echo 0>/proc/ALi5451 pcm out is also set to S/PDIF out. (Default). echo 1>/proc/ALi5451 use S/PDIF out to output pcm data. echo 2>/proc/ALi5451 use S/PDIF out to output non-pcm data. (AC3...). echo 3>/proc/ALi5451 record from Ac97 in(MIC, Line in...). (Default). echo 4>/proc/ALi5451 no matter Ac97 settings, record from S/PDIF in. This driver differs slightly from OSS/Free, so PLEASE READ the comments at the top of . Rockwell WaveArtist CONFIG_SOUND_WAVEARTIST Say Y here to include support for the Rockwell WaveArtist sound system. This driver is mainly for the NetWinder. VIA 82Cxxx Audio Codec CONFIG_SOUND_VIA82CXXX Say Y here to include support for the audio codec found on VIA 82Cxxx-based chips. Typically these are built into a motherboard. DO NOT select Sound Blaster or Adlib with this driver, unless you have a Sound Blaster or Adlib card in addition to your VIA audio chip. VIA 82C686 MIDI CONFIG_MIDI_VIA82CXXX Answer Y to use the MIDI interface of the Via686. You may need to enable this in the BIOS before it will work. This is for connection to external MIDI hardware, and is not required for software playback of MIDI files. NeoMagic 256AV/256ZX sound chipsets CONFIG_SOUND_NM256 Say M here to include audio support for the NeoMagic 256AV/256ZX chipsets. These are the audio chipsets found in the Sony Z505S/SX/DX, some Sony F-series, and the Dell Latitude CPi and CPt laptops. It includes support for an AC97-compatible mixer and an apparently proprietary sound engine. See for further information. ESS Maestro, Maestro2, Maestro2E driver CONFIG_SOUND_MAESTRO Say Y or M if you have a sound system driven by ESS's Maestro line of PCI sound chips. These include the Maestro 1, Maestro 2, and Maestro 2E. See for more details. ESS Maestro3/Allegro driver CONFIG_SOUND_MAESTRO3 Say Y or M if you have a sound system driven by ESS's Maestro 3 PCI sound chip. ForteMedia FM801 driver CONFIG_SOUND_FORTE Say Y or M if you want driver support for the ForteMedia FM801 PCI audio controller (Abit AU10, Genius Sound Maker, HP Workstation zx2000, and others). Adlib Cards CONFIG_SOUND_ADLIB Includes ASB 64 4D. Information on programming AdLib cards is available at . Crystal Sound CS4281 CONFIG_SOUND_CS4281 Picture and feature list at . 16 bit sampling option of GUS (_NOT_ GUS MAX) CONFIG_SOUND_GUS16 Support for Gravis Ulstrasound (GUS) cards (other than the GUS), sampling at 16-bit width. GUS MAX support CONFIG_SOUND_GUSMAX Support for Gravis Ulstrasound MAX. Intel ICH audio support CONFIG_SOUND_ICH Supports the following chipsets: Intel ICH 82801AA Intel ICH 82901AB Intel 440 MX Intel ICH2 Intel ICH3 SiS 7012 NVidia nForce AMD 768 These are audio drivers for integral audio in chipsets of motherboards. Intel's I/O Controller Hub (ICH) is used on 810/815/820/840/845/845D/850 motherboards. SiS 7012 is used on 645/735/745 motherboards. Verbose initialization CONFIG_SOUND_TRACEINIT Verbose soundcard initialization -- affects the format of autoprobe and initialization messages at boot time. TV card (bt848) mixer support CONFIG_SOUND_TVMIXER Support for audio mixer facilities on the BT848 TV frame-grabber card. VIDC 16-bit sound CONFIG_SOUND_VIDC 16-bit support for the VIDC onboard sound hardware found on Acorn machines. Loopback MIDI device support CONFIG_SOUND_VMIDI Support for MIDI loopback on port 1 or 2. Yamaha YMF7xx PCI audio (native mode) CONFIG_SOUND_YMFPCI Support for Yamaha cards with the following chipsets: YMF724, YMF724F, YMF740, YMF740C, YMF744, and YMF754. Two common cards that use this type of chip are Waveforce 192XG, and Waveforce 192 Digital. Yamaha PCI legacy ports support CONFIG_SOUND_YMFPCI_LEGACY Support for YMF7xx PCI cards emulating an MP401. RME Hammerfall (RME96XX) support CONFIG_SOUND_RME96XX Say Y or M if you have a Hammerfall or Hammerfall light multichannel card from RME. If you want to acess advanced features of the card, read Documentation/sound/rme96xx. Are you using a crosscompiler CONFIG_CROSSCOMPILE Say Y here if you are compiling the kernel on a different architecture than the one it is intended to run on. Kernel support for Linux/MIPS 32-bit binary compatibility CONFIG_MIPS32_COMPAT 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. Kernel support for o32 binaries CONFIG_MIPS32_O32 Select this option if you want to run o32 binaries. These are pure 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of existing binaries are in this format. If unsure, say Y. Kernel support for n32 binaries CONFIG_MIPS32_N32 Select this option if you want to run n32 binaries. These are 64-bit binaries using 32-bit quantities for addressing and certain data that would normally be 64-bit. They are used in special cases. If unsure, say N. Build fp exception handler module CONFIG_MIPS_FPE_MODULE 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. Galileo EV64120 Evaluation board CONFIG_MIPS_EV64120 This is an evaluation board based on the Galileo GT-64120 single-chip system controller that contains a MIPS R5000 compatible core running at 75/100MHz. Their website is located at . Say Y here if you wish to build a kernel for this platform. Galileo EV96100 Evaluation board CONFIG_MIPS_EV96100 This is an evaluation board based on the Galielo GT-96100 LAN/WAN communications controllers containing a MIPS R5000 compatible core running at 83MHz. Their website is . Say Y here if you wish to build a kernel for this platform. Support for ITE 8172G board CONFIG_MIPS_ITE8172 Ths is an evaluation board made by ITE with ATX form factor that utilizes a MIPS R5000 to work with its ITE8172G companion internet appliance chip. The MIPS core can be either a NEC Vr5432 or QED RM5231. Say Y here if you wish to build a kernel for this platform. Support for Globespan IVR board CONFIG_MIPS_IVR This is an evaluation board built by Globespan to showcase their iVR (Internet Video Recorder) design. It utilizes a QED RM5231 R5000 MIPS core. More information can be found out their website located at P. Say Y here if you wish to build a kernel for this platform. Support for Alchemy Semi PB1000 board CONFIG_MIPS_PB1000 This is an evaluation board built by Alchemy Semiconductor to showcase their Au1000 Internet Edge Processor. It is SOC design containing a MIPS32 core running at 266/400/500MHz with many integrated peripherals. Further information can be found at their website, . Say Y here if you wish to build a kernel for this platform. Support for Philips Nino CONFIG_NINO Say Y here to select a kernel for the Philips Nino Palm PC. The website at will have more information. # Choice: nino_model CONFIG_NINO_4MB Say Y here to build a kernel specifically for Nino Palm PCs with 4MB of memory. These include models 300/301/302/319. Model-200/210/312/320/325/350/390 CONFIG_NINO_8MB Say Y here to build a kernel specifically for Nino Palm PCs with 8MB of memory. These include models 200/210/312/320/325/350/390. Model-500/510 CONFIG_NINO_16MB Say Y here to build a kernel specifically for Nino 500/501 color Palm PCs from Philips (INCOMPLETE). Model-300/301/302/319 Low-level debugging CONFIG_LL_DEBUG Enable low-level debugging assertion macros in the kernel code. Currently used only by the time services code in the MIPS port. Don't turn this on unless you know what you are doing. Remote GDB kernel debugging CONFIG_REMOTE_DEBUG 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. Run uncached CONFIG_MIPS_UNCACHED 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. AU1000 serial console CONFIG_AU1000_SERIAL_CONSOLE If you have an Alchemy AU1000 processor (MIPS based) and you want to use a console on a serial port, say Y. Otherwise, say N. AU1000 serial support CONFIG_AU1000_UART If you have an Alchemy AU1000 processor (MIPS based) and you want to use serial ports, say Y. Otherwise, say N. AU1000 ethernet controller on SGI MIPS system CONFIG_MIPS_AU1000_ENET If you have an Alchemy Semi AU1000 ethernet controller on an SGI MIPS system, say Y. Otherwise, say N. WD93 SCSI Controller on SGI MIPS system CONFIG_SGIWD93_SCSI If you have a Western Digital WD93 SCSI controller on an SGI MIPS system, say Y. Otherwise, say N. KGDB: Remote (serial) kernel debugging with gdb CONFIG_REMOTE_DEBUG If you say Y here, it will be possible to remotely debug the x86 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. To use this feature you need to perform some basic setup described briefly in Documentation/i386/gdb-serial.txt. This is only useful for kernel hackers. If unsure, say N. KGDB: Thread analysis CONFIG_KGDB_THREAD With thread analysis enabled, gdb can talk to kgdb stub to list threads and to get stack trace for a thread. This option also enables some code which helps gdb get exact status of thread. Thread analysis adds some overhead to schedule and down functions. You can disable this option if you do not want to compromise on speed. KGDB: Console messagegs through gdb CONFIG_GDB_CONSOLE If you say Y here, console messages will appear through gdb. Other consoles such as tty or ttyS will continue to work as usual. Magic System Request Key support CONFIG_MAGIC_SYSRQ 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 . Don't say Y unless you really know what this hack does. ISDN support CONFIG_ISDN ISDN ("Integrated Services Digital Networks", called RNIS in France) is a special type of fully digital telephone service; it's mostly used to connect to your Internet service provider (with SLIP or PPP). The main advantage is that the speed is higher than ordinary modem/telephone connections, and that you can have voice conversations while downloading stuff. It only works if your computer is equipped with an ISDN card and both you and your service provider purchased an ISDN line from the phone company. For details, read on the WWW. This driver allows you to use an ISDN-card for networking connections and as dialin/out device. The isdn-tty's have a built in AT-compatible modem emulator. Network devices support autodial, channel-bundling, callback and caller-authentication without having a daemon running. A reduced T.70 protocol is supported with tty's suitable for German BTX. On D-Channel, the protocols EDSS1 (Euro-ISDN) and 1TR6 (German style) are supported. See for more information. If you want to compile the ISDN code as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called isdn.o. If unsure, say N. Support synchronous PPP CONFIG_ISDN_PPP Over digital connections such as ISDN, there is no need to synchronize sender and recipient's clocks with start and stop bits as is done over analog telephone lines. Instead, one can use "synchronous PPP". Saying Y here will include this protocol. This protocol is used by Cisco and Sun for example. So you want to say Y here if the other end of your ISDN connection supports it. You will need a special version of pppd (called ipppd) for using this feature. See and for more information. Support generic MP (RFC 1717) CONFIG_ISDN_MPP With synchronous PPP enabled, it is possible to increase throughput by bundling several ISDN-connections, using this protocol. See for more information. Use VJ-compression with synchronous PPP CONFIG_ISDN_PPP_VJ This enables Van Jacobson header compression for synchronous PPP. Say Y if the other end of the connection supports it. Support BSD compression CONFIG_ISDN_PPP_BSDCOMP 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. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called isdn_bsdcomp.o. Support audio via ISDN CONFIG_ISDN_AUDIO If you say Y here, the modem-emulator will support a subset of the EIA Class 8 Voice commands. Using a getty with voice-support (mgetty+sendfax by gert@greenie.muc.de with an extension, available with the ISDN utility package for example), you will be able to use your Linux box as an ISDN-answering machine. Of course, this must be supported by the lowlevel driver also. Currently, the HiSax driver is the only voice-supporting driver. See for more information. X.25 PLP on top of ISDN CONFIG_ISDN_X25 This feature provides the X.25 protocol over ISDN connections. See for more information if you are thinking about using this. ISDN diversion services support CONFIG_ISDN_DIVERSION This option allows you to use some supplementary diversion services in conjunction with the HiSax driver on an EURO/DSS1 line. Supported options are CD (call deflection), CFU (Call forward unconditional), CFB (Call forward when busy) and CFNR (call forward not reachable). Additionally the actual CFU, CFB and CFNR state may be interrogated. The use of CFU, CFB, CFNR and interrogation may be limited to some countries. The keypad protocol is still not implemented. CD should work in all countries if the service has been subscribed to. Please read the file . If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called dss1_divert.o. ICN 2B and 4B support CONFIG_ISDN_DRV_ICN This enables support for two kinds of ISDN-cards made by a German company called ICN. 2B is the standard version for a single ISDN line with two B-channels, 4B supports two ISDN lines. For running this card, additional firmware is necessary, which has to be downloaded into the card using a utility which is distributed separately. See and 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 . The module will be called icn.o. isdnloop support CONFIG_ISDN_DRV_LOOP This driver provides a virtual ISDN card. Its primary purpose is testing of linklevel features or configuration without getting charged by your service-provider for lots of phone calls. You need will need the loopctrl utility from the latest isdn4k-utils package to set up this driver. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called isdnloop.o. HiSax SiemensChipSet driver support CONFIG_ISDN_DRV_HISAX This is a driver supporting the Siemens chipset on various ISDN-cards (like AVM A1, Elsa ISDN cards, Teles S0-16.0, Teles S0-16.3, Teles S0-8, Teles/Creatix PnP, ITK micro ix1 and many compatibles). HiSax is just the name of this driver, not the name of any hardware. If you have a card with such a chipset, you should say Y here and also to the configuration option of the driver for your particular card, below. 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 . The module will be called hisax.o. See for more information on using this driver. HiSax Support for EURO/DSS1 CONFIG_HISAX_EURO Say Y or N according to the D-channel protocol which your local telephone service company provides. The call control protocol E-DSS1 is used in most European countries. If unsure, say Y. Support for German chargeinfo CONFIG_DE_AOC If you want that the HiSax hardware driver sends messages to the upper level of the isdn code on each AOCD (Advice Of Charge, During the call -- transmission of the fee information during a call) and on each AOCE (Advice Of Charge, at the End of the call -- transmission of fee information at the end of the call), say Y here. This works only in Germany. Disable sending complete CONFIG_HISAX_NO_SENDCOMPLETE If you have trouble with some ugly exchanges or you live in Australia select this option. Disable sending low layer compatibility CONFIG_HISAX_NO_LLC If you have trouble with some ugly exchanges try to select this option. Disable keypad protocol option CONFIG_HISAX_NO_KEYPAD If you like to send special dial strings including * or # without using the keypad protocol, select this option. HiSax Support for German 1TR6 CONFIG_HISAX_1TR6 Say Y or N according to the D-channel protocol which your local telephone service company provides. 1TR6 is an old call control protocol which was used in Germany before E-DSS1 was established. Nowadays, all new lines in Germany use E-DSS1. HiSax Support for US NI1 CONFIG_HISAX_NI1 Enable this if you like to use ISDN in US on a NI1 basic rate interface. Maximum number of cards supported by HiSax CONFIG_HISAX_MAX_CARDS This is used to allocate a driver-internal structure array with one entry for each HiSax card on your system. Teles 16.0/8.0 CONFIG_HISAX_16_0 This enables HiSax support for the Teles ISDN-cards S0-16.0, S0-8 and many compatibles. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port/shmem settings. Teles 16.3 or PNP or PCMCIA CONFIG_HISAX_16_3 This enables HiSax support for the Teles ISDN-cards S0-16.3 the Teles/Creatix PnP and the Teles PCMCIA. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. Teles PCI CONFIG_HISAX_TELESPCI This enables HiSax support for the Teles PCI. See on how to configure it. Teles S0Box CONFIG_HISAX_S0BOX This enables HiSax support for the Teles/Creatix parallel port S0BOX. See on how to configure it. AVM A1 (Fritz) CONFIG_HISAX_AVM_A1 This enables HiSax support for the AVM A1 (aka "Fritz"). See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. AVM PnP/PCI (Fritz!PnP/PCI) CONFIG_HISAX_FRITZPCI This enables HiSax support for the AVM "Fritz!PnP" and "Fritz!PCI". See on how to configure it. AVM A1 PCMCIA (Fritz) CONFIG_HISAX_AVM_A1_PCMCIA This enables HiSax support for the AVM A1 "Fritz!PCMCIA"). See on how to configure it. Elsa cards CONFIG_HISAX_ELSA This enables HiSax support for the Elsa Mircolink ISA cards, for the Elsa Quickstep series cards and Elsa PCMCIA. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. ITK ix1-micro Revision 2 CONFIG_HISAX_IX1MICROR2 This enables HiSax support for the ITK ix1-micro Revision 2 card. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. Eicon.Diehl Diva cards CONFIG_HISAX_DIEHLDIVA This enables HiSax support for the Eicon.Diehl Diva none PRO versions passive ISDN cards. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. ASUSCOM ISA cards CONFIG_HISAX_ASUSCOM This enables HiSax support for the AsusCom and their OEM versions passive ISDN ISA cards. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. TELEINT cards CONFIG_HISAX_TELEINT This enables HiSax support for the TELEINT SA1 semiactiv ISDN card. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. HFC-S based cards CONFIG_HISAX_HFCS This enables HiSax support for the HFC-S 2BDS0 based cards, like teles 16.3c. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. Sedlbauer cards CONFIG_HISAX_SEDLBAUER This enables HiSax support for the Sedlbauer passive ISDN cards. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. USR Sportster internal TA CONFIG_HISAX_SPORTSTER This enables HiSax support for the USR Sportster internal TA card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. MIC card CONFIG_HISAX_MIC This enables HiSax support for the ITH MIC card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. NETjet card CONFIG_HISAX_NETJET This enables HiSax support for the NetJet from Traverse Technologies. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. NETspider U card CONFIG_HISAX_NETJET_U This enables HiSax support for the Netspider U interface ISDN card from Traverse Technologies. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. Niccy PnP/PCI card CONFIG_HISAX_NICCY This enables HiSax support for the Dr. Neuhaus Niccy PnP or PCI. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. Siemens I-Surf card CONFIG_HISAX_ISURF This enables HiSax support for the Siemens I-Talk/I-Surf card with ISAR chip. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. HST Saphir card CONFIG_HISAX_HSTSAPHIR This enables HiSax support for the HST Saphir card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. Telekom A4T card CONFIG_HISAX_BKM_A4T This enables HiSax support for the Telekom A4T card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. Scitel Quadro card CONFIG_HISAX_SCT_QUADRO This enables HiSax support for the Scitel Quadro card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. Gazel cards CONFIG_HISAX_GAZEL This enables HiSax support for the Gazel cards. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. HFC PCI-Bus cards CONFIG_HISAX_HFC_PCI This enables HiSax support for the HFC-S PCI 2BDS0 based cards. For more informations see under . Winbond W6692 based cards CONFIG_HISAX_W6692 This enables HiSax support for Winbond W6692 based PCI ISDN cards. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. HFC-S+, HFC-SP, HFC-PCMCIA cards CONFIG_HISAX_HFC_SX This enables HiSax support for the HFC-S+, HFC-SP and HFC-PCMCIA cards. This code is not finished yet. Am7930 CONFIG_HISAX_AMD7930 This enables HiSax support for the AMD7930 chips on some SPARCs. This code is not finished yet. HiSax debugging CONFIG_HISAX_DEBUG This enables debugging code in the new-style HiSax drivers, i.e. the ST5481 USB driver currently. If in doubt, say yes. ELSA PCMCIA MicroLink cards CONFIG_HISAX_ELSA_CS This enables the PCMCIA client driver for the Elsa PCMCIA MicroLink card. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called elsa_cs.o. Sedlbauer PCMCIA cards CONFIG_HISAX_SEDLBAUER_CS This enables the PCMCIA client driver for the Sedlbauer Speed Star and Speed Star II cards. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called sedlbauer_cs.o. CONFIG_HISAX_AVM_A1_CS This enables the PCMCIA client driver for the AVM A1 / Fritz!Card PCMCIA cards. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called avma1_cs.o. ST5481 USB ISDN modem CONFIG_HISAX_ST5481 This enables the driver for ST5481 based USB ISDN adapters, e.g. the BeWan Gazel 128 USB PCBIT-D support CONFIG_ISDN_DRV_PCBIT This enables support for the PCBIT ISDN-card. This card is manufactured in Portugal by Octal. For running this card, additional firmware is necessary, which has to be downloaded into the card using a utility which is distributed separately. See and 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 . The module will be called pcbit.o. Spellcaster support CONFIG_ISDN_DRV_SC This enables support for the Spellcaster BRI ISDN boards. This driver currently builds only in a modularized version ( = code which can be inserted in and removed from the running kernel whenever you want, details in ); the module will be called sc.o. See and for more information. Eicon active card support CONFIG_ISDN_DRV_EICON Say Y here if you have an Eicon active ISDN card. In order to use this card, additional firmware is necessary, which has to be loaded into the card using the eiconctrl utility which is part of the latest isdn4k-utils package. Please read the file for more information. Legacy Eicon driver CONFIG_ISDN_DRV_EICON_OLD Say Y here to use your Eicon active ISDN card with ISDN4Linux isdn module. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called eicon.o. Eicon PCI DIVA Server BRI/PRI/4BRI support CONFIG_ISDN_DRV_EICON_PCI Say Y here if you have an Eicon Diva Server (BRI/PRI/4BRI) ISDN card. Please read for more information. Eicon old-type (S,SX,SCOM,Quadro,S2M) card support CONFIG_ISDN_DRV_EICON_ISA Say Y here if you have an old-type Eicon active ISDN card. In order to use this card, additional firmware is necessary, which has to be loaded into the card using the eiconctrl utility which is part of the latest isdn4k-utils package. Please read the file for more information. Eicon driver type standalone CONFIG_ISDN_DRV_EICON_DIVAS Enable this option if you want the eicon driver as standalone version with no interface to the ISDN4Linux isdn module. If you say Y here, the eicon module only supports the Diva Server PCI cards and will provide its own IDI interface. You should say N here. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called divas.o. Support AT-Fax Class 1 and 2 commands CONFIG_ISDN_TTY_FAX If you say Y here, the modem-emulator will support a subset of the Fax Class 1 and 2 commands. Using a getty with fax-support (mgetty+sendfax, hylafax), you will be able to use your Linux box as an ISDN-fax-machine. This must be supported by the lowlevel driver also. See for more information. CAPI2.0 support CONFIG_ISDN_CAPI This provides the CAPI (Common ISDN Application Programming Interface, a standard making it easy for programs to access ISDN hardware, see . This is needed for AVM's set of active ISDN controllers like B1, T1, M1. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The modules will be called capi.o and kernelcapi.o. If you want to compile it as a module, say M here and read . CAPI2.0 /dev/capi20 support CONFIG_ISDN_CAPI_CAPI20 This option will provide the CAPI 2.0 interface to userspace applications via /dev/capi20. Applications should use the standardized libcapi20 to access this functionality. You should say Y/M here. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called capi.o. CAPI2.0 Middleware support CONFIG_ISDN_CAPI_MIDDLEWARE This option will enhance the capabilities of the /dev/capi20 interface. It will provide a means of moving a data connection, established via the usual /dev/capi20 interface to a special tty device. If you want to use pppd with pppdcapiplugin to dial up to your ISP, say Y here. CAPI2.0 filesystem support CONFIG_ISDN_CAPI_CAPIFS This option provides a special file system, similar to /dev/pts with device nodes for the special ttys established by using the middleware extension above. If you want to use pppd with pppdcapiplugin to dial up to your ISP, say Y here. CAPI2.0 capidrv interface support CONFIG_ISDN_CAPI_CAPIDRV This option provides the glue code to hook up CAPI driven cards to the legacy isdn4linux link layer. If you have a card which is supported by a CAPI driver, but still want to use old features like ippp interfaces or ttyI emulation, say Y/M here. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called capidrv.o. AVM B1 ISA support CONFIG_ISDN_DRV_AVMB1_B1ISA Enable support for the ISA version of the AVM B1 card. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called b1isa.o. AVM B1 PCI support CONFIG_ISDN_DRV_AVMB1_B1CICI Enable support for the PCI version of the AVM B1 card. AVM B1 PCI V4 support CONFIG_ISDN_DRV_AVMB1_B1PCIV4 Enable support for the V4 version of AVM B1 PCI card. AVM T1/T1-B ISA support CONFIG_ISDN_DRV_AVMB1_T1ISA Enable support for the AVM T1 T1B card. Note: This is a PRI card and handle 30 B-channels. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called t1isa.o. AVM B1/M1/M2 PCMCIA support CONFIG_ISDN_DRV_AVMB1_B1PCMCIA Enable support for the PCMCIA version of the AVM B1 card. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called b1pcmcia.o. AVM B1/M1/M2 PCMCIA cs module CONFIG_ISDN_DRV_AVMB1_AVM_CS Enable the PCMCIA client driver for the AVM B1/M1/M2 PCMCIA cards. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called avm_cs.o. AVM T1/T1-B PCI support CONFIG_ISDN_DRV_AVMB1_T1PCI Enable support for the AVM T1 T1B card. Note: This is a PRI card and handle 30 B-channels. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called t1pci.o. AVM C4/C2 support CONFIG_ISDN_DRV_AVMB1_C4 Enable support for the AVM C4/C2 PCI cards. These cards handle 4/2 BRI ISDN lines (8/4 channels). If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called c4.o. Verbose reason code reporting (kernel size +=7K) CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON If you say Y here, the AVM B1 driver will give verbose reasons for disconnecting. This will increase the size of the kernel by 7 KB. If unsure, say Y. IBM Active 2000 support CONFIG_ISDN_DRV_ACT2000 Say Y here if you have an IBM Active 2000 ISDN card. In order to use this card, additional firmware is necessary, which has to be loaded into the card using a utility which is part of the latest isdn4k-utils package. Please read the file for more information. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called act2000.o. Auvertech TurboPAM support CONFIG_ISDN_DRV_TPAM This enables support for the Auvertech TurboPAM ISDN-card. For running this card, additional firmware is necessary, which has to be downloaded into the card using a utility which is distributed separately from the Auvertech's web site: . Please redirect all support questions to support@auvertech.fr. 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 . The module will be called tpam.o. Hypercope HYSDN cards (Champ, Ergo, Metro) support (module) CONFIG_HYSDN Say Y here if you have one of Hypercope's active PCI ISDN cards Champ, Ergo and Metro. You will then get a module called hysdn.o. Please read the file for more information. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called hysdn.o. HYSDN CAPI 2.0 support CONFIG_HYSDN_CAPI Say Y here if you like to use Hypercope's CAPI 2.0 interface. Support for SUN4 machines (disables SUN4[CDM] support) CONFIG_SUN4 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.) SPARC ESP SCSI support CONFIG_SCSI_SUNESP 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 . PTI Qlogic, ISP Driver CONFIG_SCSI_QLOGICPTI 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 . Sun PROM console CONFIG_PROM_CONSOLE Say Y to build a console driver for Sun machines that uses the terminal emulation built into their console PROMS. /dev/openprom device support CONFIG_SUN_OPENPROMIO This driver provides user programs with an interface to the SPARC PROM device tree. The driver implements a SunOS-compatible interface and a NetBSD-compatible interface. 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 . If unsure, say Y. Openprom tree appears in /proc/openprom CONFIG_SUN_OPENPROMFS 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 . The module will be called openpromfs.o. If unsure, say M. Kernel support for Linux/Sparc 32bit binary compatibility CONFIG_SPARC32_COMPAT This allows you to run 32-bit binaries on your Ultra. Everybody wants this; say Y. Kernel support for 32-bit ELF binaries CONFIG_BINFMT_ELF32 This allows you to run 32-bit Linux/ELF binaries on your machine. Everybody wants this; say Y. Kernel support for 32-bit (ie. SunOS) a.out binaries CONFIG_BINFMT_AOUT32 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. SunOS binary emulation CONFIG_SUNOS_EMUL 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 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. Mostek real time clock support CONFIG_SUN_MOSTEK_RTC The Mostek RTC chip is used on all known Sun computers except some JavaStations. For a JavaStation you need to say Y both here and to "Enhanced Real Time Clock Support". Say Y here unless you are building a special purpose kernel. OBP Flash Device support CONFIG_OBP_FLASH The OpenBoot PROM on Ultra systems is flashable. If you want to be able to upgrade the OBP firmware, say Y here. JavaStation OS Flash SIMM CONFIG_SUN_JSFLASH If you say Y here, you will be able to boot from your JavaStation's Flash memory. Siemens SAB82532 serial support CONFIG_SAB82532 This driver supports the serial ports on newer (PCI) Ultra systems. Say Y if you want to be able to use your serial ports. Videopix Frame Grabber CONFIG_SUN_VIDEOPIX Say Y here to support the Videopix Frame Grabber from Sun Microsystems, commonly found on SPARCstations. This card, which is based on the Phillips SAA9051, can handle NTSC and PAL/SECAM and SVIDEO signals. Sun bidirectional parallel port support CONFIG_SUN_BPP Say Y here to support Sun's obsolete variant of IEEE1284 bidirectional parallel port protocol as /dev/bppX. Can be built on x86 machines. Aurora Multiboard 1600se CONFIG_SUN_AURORA The Aurora Multiboard is a multi-port high-speed serial controller. If you have one of these, say Y. Tadpole TS102 Microcontroller support CONFIG_TADPOLE_TS102_UCTRL Say Y here to directly support the TS102 Microcontroller interface on the Tadpole Sparcbook 3. This device handles power-management events, and can also notice the attachment/detachment of external monitors and mice. Audio support CONFIG_SPARCAUDIO This driver provides support for the build-in sound devices on most Sun machines. If you want to be able to use this, select this option and one or more of the lowlevel drivers below. See for more information. AMD7930 Lowlevel Driver CONFIG_SPARCAUDIO_AMD7930 This driver supports the AMD 7930 chip found on sun4c, 4/6xx, and SparcClassic systems. CS4231 Lowlevel Driver CONFIG_SPARCAUDIO_CS4231 This driver supports the Crystal Semiconductor CS4231 chip found on the SS4, SS5, and Ultras. DBRI Lowlevel Driver CONFIG_SPARCAUDIO_DBRI This driver supports the DBRI audio interface found on the SS10, SS20, LX, Sparcbook 3, and Voyager systems. Dummy Lowlevel Driver CONFIG_SPARCAUDIO_DUMMY This is a pseudo-driver used for debugging and testing the sparcaudio subsystem. Say N unless you want to work on this subsystem. Sparc hardware CONFIG_PARPORT_SUNBPP This driver provides support for the bidirectional parallel port found on many Sun machines. Note that many of the newer Ultras actually have pc style hardware instead. SPARC power management support CONFIG_SUN_PM Enable power management and CPU standby features on supported SPARC platforms. /proc/hardware support CONFIG_PROC_HARDWARE Say Y here to support the /proc/hardware file, which gives you access to information about the machine you're running on, including the model, CPU, MMU, clock speed, BogoMIPS rating, and memory size. Bluetooth subsystem support CONFIG_BLUEZ Bluetooth is low-cost, low-power, short-range wireless technology. It was designed as a replacement for cables and other short-range technologies like IrDA. Bluetooth operates in personal area range that typically extends up to 10 meters. More information about Bluetooth can be found at . Linux Bluetooth subsystem consist of several layers: BlueZ Core (HCI device and connection manager, scheduler) HCI Device drivers (Interface to the hardware) SCO Module (SCO audio links) L2CAP Module (Logical Link Control and Adaptation Protocol) RFCOMM Module (RFCOMM Protocol) BNEP Module (Bluetooth Network Encapsulation Protocol) CMTP Module (CAPI Message Transport Protocol) HIDP Module (Human Interface Device Protocol) Say Y here to compile Bluetooth support into the kernel or say M to compile it as module (bluez.o). To use Linux Bluetooth subsystem, you will need several user-space utilities like hciconfig and hcid. These utilities and updates to Bluetooth kernel modules are provided in the BlueZ package. For more information, see . L2CAP protocol support CONFIG_BLUEZ_L2CAP L2CAP (Logical Link Control and Adaptation Protocol) provides connection oriented and connection-less data transport. L2CAP support is required for most Bluetooth applications. Say Y here to compile L2CAP support into the kernel or say M to compile it as module (l2cap.o). SCO links support CONFIG_BLUEZ_SCO SCO link provides voice transport over Bluetooth. SCO support is required for voice applications like Headset and Audio. Say Y here to compile SCO support into the kernel or say M to compile it as module (sco.o). RFCOMM protocol support CONFIG_BLUEZ_RFCOMM RFCOMM provides connection oriented stream transport. RFCOMM support is required for Dialup Networking, OBEX and other Bluetooth applications. Say Y here to compile RFCOMM support into the kernel or say M to compile it as module (rfcomm.o). RFCOMM TTY emulation support CONFIG_BLUEZ_RFCOMM_TTY This option enables TTY emulation support for RFCOMM channels. BNEP protocol support CONFIG_BLUEZ_BNEP BNEP (Bluetooth Network Encapsulation Protocol) is Ethernet emulation layer on top of Bluetooth. BNEP is required for Bluetooth PAN (Personal Area Network). Say Y here to compile BNEP support into the kernel or say M to compile it as module (bnep.o). BNEP multicast filter support CONFIG_BLUEZ_BNEP_MC_FILTER This option enables the multicast filter support for BNEP. BNEP protocol filter support CONFIG_BLUEZ_BNEP_PROTO_FILTER This option enables the protocol filter support for BNEP. CMTP protocol support CONFIG_BLUEZ_CMTP CMTP (CAPI Message Transport Protocol) is a transport layer for CAPI messages. CMTP is required for the Bluetooth Common ISDN Access Profile. Say Y here to compile CMTP support into the kernel or say M to compile it as module (cmtp.o). HIDP protocol support CONFIG_BLUEZ_HIDP HIDP (Human Interface Device Protocol) is a transport layer for HID reports. HIDP is required for the Bluetooth Human Interface Device Profile. Say Y here to compile HIDP support into the kernel or say M to compile it as module (hidp.o). HCI UART driver CONFIG_BLUEZ_HCIUART Bluetooth HCI UART driver. This driver is required if you want to use Bluetooth devices with serial port interface. You will also need this driver if you have UART based Bluetooth PCMCIA and CF devices like Xircom Credit Card adapter and BrainBoxes Bluetooth PC Card. Say Y here to compile support for Bluetooth UART devices into the kernel or say M to compile it as module (hci_uart.o). HCI UART (H4) protocol support CONFIG_BLUEZ_HCIUART_H4 UART (H4) is serial protocol for communication between Bluetooth device and host. This protocol is required for most Bluetooth devices with UART interface, including PCMCIA and CF cards. Say Y here to compile support for HCI UART (H4) protocol. HCI BCSP protocol support CONFIG_BLUEZ_HCIUART_BCSP BCSP (BlueCore Serial Protocol) is serial protocol for communication between Bluetooth device and host. This protocol is required for non USB Bluetooth devices based on CSR BlueCore chip, including PCMCIA and CF cards. Say Y here to compile support for HCI BCSP protocol. HCI BCSP transmit CRC with every BCSP packet CONFIG_BLUEZ_HCIUART_BCSP_TXCRC If you say Y here, a 16-bit CRC checksum will be transmitted along with every BCSP (BlueCore Serial Protocol) packet sent to the Bluetooth chip. This increases reliability, but slightly reduces efficiency. HCI USB driver CONFIG_BLUEZ_HCIUSB Bluetooth HCI USB driver. This driver is required if you want to use Bluetooth devices with USB interface. Say Y here to compile support for Bluetooth USB devices into the kernel or say M to compile it as module (hci_usb.o). HCI USB SCO (voice) support CONFIG_BLUEZ_HCIUSB_SCO This option enables the SCO support in the HCI USB driver. You need this to transmit voice data with your Bluetooth USB device. And your device must also support sending SCO data over the HCI layer, because some of them sends the SCO data to an internal PCM adapter. Say Y here to compile support for HCI SCO data. HCI VHCI Virtual HCI device driver CONFIG_BLUEZ_HCIVHCI Bluetooth Virtual HCI device driver. This driver is required if you want to use HCI Emulation software. Say Y here to compile support for virtual HCI devices into the kernel or say M to compile it as module (hci_vhci.o). HCI BFUSB device driver CONFIG_BLUEZ_HCIBFUSB Bluetooth HCI BlueFRITZ! USB driver. This driver provides support for Bluetooth USB devices with AVM interface: AVM BlueFRITZ! USB Say Y here to compile support for HCI BFUSB devices into the kernel or say M to compile it as module (bfusb.o). HCI DTL1 (PC Card) device driver CONFIG_BLUEZ_HCIDTL1 Bluetooth HCI DTL1 (PC Card) driver. This driver provides support for Bluetooth PCMCIA devices with Nokia DTL1 interface: Nokia Bluetooth Card Socket Bluetooth CF Card Say Y here to compile support for HCI DTL1 devices into the kernel or say M to compile it as module (dtl1_cs.o). HCI BT3C (PC Card) device driver CONFIG_BLUEZ_HCIBT3C Bluetooth HCI BT3C (PC Card) driver. This driver provides support for Bluetooth PCMCIA devices with 3Com BT3C interface: 3Com Bluetooth Card (3CRWB6096) HP Bluetooth Card Say Y here to compile support for HCI BT3C devices into the kernel or say M to compile it as module (bt3c_cs.o). HCI BlueCard (PC Card) device driver CONFIG_BLUEZ_HCIBLUECARD Bluetooth HCI BlueCard (PC Card) driver. This driver provides support for Bluetooth PCMCIA devices with Anycom BlueCard interface: Anycom Bluetooth PC Card Anycom Bluetooth CF Card Say Y here to compile support for HCI BlueCard devices into the kernel or say M to compile it as module (bluecard_cs.o). HCI UART (PC Card) device driver CONFIG_BLUEZ_HCIBTUART Bluetooth HCI UART (PC Card) driver. This driver provides support for Bluetooth PCMCIA devices with an UART interface: Xircom CreditCard Bluetooth Adapter Xircom RealPort2 Bluetooth Adapter Sphinx PICO Card H-Soft blue+Card Cyber-blue Compact Flash Card Say Y here to compile support for HCI UART devices into the kernel or say M to compile it as module (btuart_cs.o). # The following options are for Linux when running on the Hitachi # SuperH family of RISC microprocessors. SuperH RTC support CONFIG_SH_RTC Selecting this option will allow the Linux kernel to emulate PC's RTC. If unsure, say N. SuperH DMAC support CONFIG_SH_DMA Selecting this option will provide same API as PC's Direct Memory Access Controller(8237A) for SuperH DMAC. If unsure, say N. # Choice: cf_area CompactFlash Connection Area CONFIG_CF_AREA5 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". Disable data cache CONFIG_DCACHE_DISABLE This option allows you to run the kernel with data cache disabled. Say Y if you experience CPM lock-ups. # # m68k-specific kernel options # Documented by Chris Lawrence et al. # Amiga support CONFIG_AMIGA This option enables support for the Amiga series of computers. If you plan to use this kernel on an Amiga, say Y here and browse the material available in ; otherwise say N. Commodore A2232 serial support CONFIG_A2232 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 "". A4000T SCSI support CONFIG_A4000T_SCSI Support for the NCR53C710 SCSI controller on the Amiga 4000T. A4091 SCSI support CONFIG_A4091_SCSI Support for the NCR53C710 chip on the Amiga 4091 Z3 SCSI2 controller (1993). Very obscure -- the 4091 was part of an Amiga 4000 upgrade plan at the time the Amiga business was sold to DKB. Atari support CONFIG_ATARI This option enables support for the 68000-based Atari series of computers (including the TT, Falcon and Medusa). If you plan to use this kernel on an Atari, say Y here and browse the material available in ; otherwise say N. Hades support CONFIG_HADES This option enables support for the Hades Atari clone. If you plan to use this kernel on a Hades, say Y here; otherwise say N. Macintosh support CONFIG_MAC This option enables support for the Apple Macintosh series of computers (yes, there is experimental support now, at least for part of the series). Say N unless you're willing to code the remaining necessary support. ;) HP9000/300 support CONFIG_HP300 This option enables support for the HP9000/300 series of workstations. Support for these machines is still very experimental. If you plan to try to use the kernel on such a machine say Y here. Everybody else says N. Q40/Q60 support CONFIG_Q40 The Q40 is a Motorola 68040-based successor to the Sinclair QL manufactured in Germany. There is an official Q40 home page at . This option enables support for the Q40 and Q60. Select your CPU below. For 68LC060 don't forget to enable FPU emulation. Q40/Q60 IDE interface support CONFIG_BLK_DEV_Q40IDE Enable the on-board IDE controller in the Q40/Q60. This should normally be on; disable it only if you are running a custom hard drive subsystem through an expansion card. Sun 3 support CONFIG_SUN3 This option enables support for the Sun 3 series of workstations. Note that if this option is enabled, support for all other m68k platforms above must be disabled in order to produce a working kernel. Also, you will want to enable 68020 support below, and disable all other CPU types. General Linux information on the Sun 3x series (now discontinued) is at . If you don't want to compile a kernel for a Sun 3, say N. Sun 3X support CONFIG_SUN3X This option enables support for the Sun 3x series of workstations. Currently, only the Sun 3/80 is supported within the Sun 3x family. You will also want to enable 68030 support below General Linux information on the Sun 3x series (now discontinued) is at . If you don't want to compile a kernel for a Sun 3x, say N. Sun3x builtin serial support CONFIG_SUN3X_ZS ZS refers to a type of asynchronous serial port built in to the Sun3 and Sun3x workstations; if you have a Sun 3, you probably have these. Say 'Y' to support ZS ports directly. This option must be enabled in order to support the keyboard and mouse ports. Sun keyboard support CONFIG_SUN_KEYBOARD Say Y here to support the keyboard found on Sun 3 and 3x workstations. It can also be used support Sun Type-5 keyboards through an adaptor. See and for details on the latter. 68020 support CONFIG_M68020 If you anticipate running this kernel on a computer with a MC68020 processor, say Y. Otherwise, say N. Note that the 68020 requires a 68851 MMU (Memory Management Unit) to run Linux/m68k, except on the Sun 3, which provides its own version. 68030 support CONFIG_M68030 If you anticipate running this kernel on a computer with a MC68030 processor, say Y. Otherwise, say N. Note that a MC68EC030 will not work, as it does not include an MMU (Memory Management Unit). 68040 support CONFIG_M68040 If you anticipate running this kernel on a computer with a MC68LC040 or MC68040 processor, say Y. Otherwise, say N. Note that an MC68EC040 will not work, as it does not include an MMU (Memory Management Unit). 68060 support CONFIG_M68060 If you anticipate running this kernel on a computer with a MC68060 processor, say Y. Otherwise, say N. Math emulation support CONFIG_M68KFPU_EMU At some point in the future, this will cause floating-point math instructions to be emulated by the kernel on machines that lack a floating-point math coprocessor. Thrill-seekers and chronically sleep-deprived psychotic hacker types can say Y now, everyone else should probably wait a while. Math emulation only kernel CONFIG_M68KFPU_EMU_ONLY This option prevents any floating-point instructions from being compiled into the kernel, thereby the kernel doesn't save any floating point context anymore during task switches, so this kernel will only be usable on machines without a floating-point math coprocessor. This makes the kernel a bit faster as no tests needs to be executed whether a floating-point instruction in the kernel should be executed or not. Math emulation extra precision CONFIG_M68KFPU_EMU_EXTRAPREC The fpu uses normally a few bit more during calculations for correct rounding, the emulator can (often) do the same but this extra calculation can cost quite some time, so you can disable it here. The emulator will then "only" calculate with a 64 bit mantissa and round slightly incorrect, what is more then enough for normal usage. Advanced configuration options CONFIG_ADVANCED This gives you access to some advanced options for the CPU. The defaults should be fine for most users, but these options may make it possible for you to improve performance somewhat if you know what you are doing. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about these options. Most users should say N to this question. Use one physical chunk of memory only CONFIG_SINGLE_MEMORY_CHUNK Ignore all but the first contiguous chunk of physical memory for VM purposes. This will save a few bytes kernel size and may speed up some operations. Say N if not sure. Use read-modify-write instructions CONFIG_RMW_INSNS This allows to use certain instructions that work with indivisible read-modify-write bus cycles. While this is faster than the workaround of disabling interrupts, it can conflict with DMA ( = direct memory access) on many Amiga systems, and it is also said to destabilize other machines. It is very likely that this will cause serious problems on any Amiga or Atari Medusa if set. The only configuration where it should work are 68030-based Ataris, where it apparently improves performance. But you've been warned! Unless you really know what you are doing, say N. Try Y only if you're quite adventurous. Amiga Zorro (AutoConfig) bus support CONFIG_ZORRO 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. Zorro device name database CONFIG_ZORRO_NAMES By default, the kernel contains a database of all known Zorro device names to make the information in /proc/iomem comprehensible to the user. This database increases the size of the kernel image by about 15KB, but it gets freed after the system boots up, so it doesn't take up kernel memory. Anyway, if you are building an installation floppy or kernel for an embedded system where kernel image size really matters, you can disable this feature and you'll get device ID numbers instead of names. When in doubt, say Y. Amiga 1200/600 PCMCIA support CONFIG_AMIGA_PCMCIA 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. Hisoft Whippet PCMCIA serial support CONFIG_WHIPPET_SERIAL HiSoft has a web page at , but there is no listing for the Whippet in their Amiga section. Amiga Zorro II ramdisk support CONFIG_AMIGA_Z2RAM This enables support for using Chip RAM and Zorro II RAM as a ramdisk or as a swap partition. Say Y if you want to include this driver in the kernel. 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 z2ram.o. If you want to compile it as a module, say M here and read . Support for ST-RAM as swap space CONFIG_STRAM_SWAP Some Atari 68k machines (including the 520STF and 1020STE) divide their addressable memory into ST and TT sections. The TT section (up to 512MB) is the main memory; the ST section (up to 4MB) is accessible to the built-in graphics board, runs slower, and is present mainly for backward compatibility with older machines. This enables support for using (parts of) ST-RAM as swap space, instead of as normal system memory. This can first enhance system performance if you have lots of alternate RAM (compared to the size of ST-RAM), because executable code always will reside in faster memory. ST-RAM will remain as ultra-fast swap space. On the other hand, it allows much improved dynamic allocations of ST-RAM buffers for device driver modules (e.g. floppy, ACSI, SLM printer, DMA sound). The probability that such allocations at module load time fail is drastically reduced. ST-RAM statistics in /proc CONFIG_STRAM_PROC Say Y here to report ST-RAM usage statistics in /proc/stram. See the help for CONFIG_STRAM_SWAP for discussion of ST-RAM and its uses. Atari ACSI support CONFIG_ATARI_ACSI This enables support for the Atari ACSI interface. The driver supports hard disks and CD-ROMs, which have 512-byte sectors, or can be switched to that mode. Due to the ACSI command format, only disks up to 1 GB are supported. Special support for certain ACSI to SCSI adapters, which could relax that, isn't included yet. The ACSI driver is also the basis for certain other drivers for devices attached to the ACSI bus: Atari SLM laser printer, BioNet-100 Ethernet, and PAMsNet Ethernet. If you want to use one of these devices, you need ACSI support, too. 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 acsi.o. Probe all LUNs on each ACSI device CONFIG_ACSI_MULTI_LUN If you have a ACSI device that supports more than one LUN (Logical Unit Number), e.g. a CD jukebox, you should say Y here so that all will be found by the ACSI driver. An ACSI device with multiple LUNs acts logically like multiple ACSI devices. The vast majority of ACSI devices have only one LUN, and so most people can say N here and should in fact do so, because it is safer. Atari SLM laser printer support CONFIG_ATARI_SLM If you have an Atari SLM laser printer, say Y to include support for it in the kernel. 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 will be called acsi_slm.o. Be warned: the driver needs much ST-RAM and can cause problems due to that fact! A3000 WD33C93A support CONFIG_A3000_SCSI If you have an Amiga 3000 and have SCSI devices connected to the built-in SCSI controller, 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 wd33c93.o. If you want to compile it as a module, say M here and read . A2091 WD33C93A support CONFIG_A2091_SCSI If you have a Commodore A2091 SCSI controller, 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 wd33c93.o. If you want to compile it as a module, say M here and read . GVP Series II WD33C93A support CONFIG_GVP11_SCSI If you have a Great Valley Products Series II SCSI controller, answer Y. Also say Y if you have a later model of GVP SCSI controller (such as the GVP A4008 or a Combo board). Otherwise, answer N. This driver does NOT work for the T-Rex series of accelerators from TekMagic and GVP-M. 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 gvp11.o. If you want to compile it as a module, say M here and read . CyberStorm SCSI support CONFIG_CYBERSTORM_SCSI If you have an Amiga with an original (MkI) Phase5 Cyberstorm accelerator board and the optional Cyberstorm SCSI controller, answer Y. Otherwise, say N. CyberStorm II SCSI support CONFIG_CYBERSTORMII_SCSI If you have an Amiga with a Phase5 Cyberstorm MkII accelerator board and the optional Cyberstorm SCSI controller, say Y. Otherwise, answer N. Blizzard 2060 SCSI support CONFIG_BLZ2060_SCSI If you have an Amiga with a Phase5 Blizzard 2060 accelerator board and want to use the onboard SCSI controller, say Y. Otherwise, answer N. Blizzard 1230IV/1260 SCSI support CONFIG_BLZ1230_SCSI If you have an Amiga 1200 with a Phase5 Blizzard 1230IV or Blizzard 1260 accelerator, and the optional SCSI module, say Y. Otherwise, say N. Blizzard PowerUP 603e+ SCSI support CONFIG_BLZ603EPLUS_SCSI If you have an Amiga 1200 with a Phase5 Blizzard PowerUP 603e+ accelerator, say Y. Otherwise, say N. Fastlane SCSI support CONFIG_FASTLANE_SCSI If you have the Phase5 Fastlane Z3 SCSI controller, or plan to use one in the near future, say Y to this question. Otherwise, say N. BSC Oktagon SCSI support CONFIG_OKTAGON_SCSI If you have the BSC Oktagon SCSI disk controller for the Amiga, say Y to this question. If you're in doubt about whether you have one, see the picture at . Atari native SCSI support CONFIG_ATARI_SCSI If you have an Atari with built-in NCR5380 SCSI controller (TT, Falcon, ...) say Y to get it supported. Of course also, if you have a compatible SCSI controller (e.g. for Medusa). 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 atari_scsi.o. If you want to compile it as a module, say M here and read . This driver supports both styles of NCR integration into the system: the TT style (separate DMA), and the Falcon style (via ST-DMA, replacing ACSI). It does NOT support other schemes, like in the Hades (without DMA). Long delays for Toshiba CD-ROMs CONFIG_ATARI_SCSI_TOSHIBA_DELAY This option increases the delay after a SCSI arbitration to accommodate some flaky Toshiba CD-ROM drives. Say Y if you intend to use a Toshiba CD-ROM drive; otherwise, the option is not needed and would impact performance a bit, so say N. Reset SCSI-devices at boottime CONFIG_ATARI_SCSI_RESET_BOOT Reset the devices on your Atari whenever it boots. This makes the boot process fractionally longer but may assist recovery from errors that leave the devices with SCSI operations partway completed. Hades SCSI DMA emulator CONFIG_TT_DMA_EMUL This option enables code which emulates the TT SCSI DMA chip on the Hades. This increases the SCSI transfer rates at least ten times compared to PIO transfers. Sun3x ESP SCSI CONFIG_SUN3X_ESP This option will enable support for the ESP SCSI controller found onboard the Sun 3/80. Ariadne support CONFIG_ARIADNE If you have a Village Tronic Ariadne Ethernet 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 ariadne.o. If you want to compile it as a module, say M here and read . Ariadne II and X-Surf support CONFIG_ARIADNE2 This driver is for the Village Tronic Ariadne II and the Individual Computers X-Surf Ethernet cards. If you have such a card, 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 will be called ariadne2.o. If you want to compile it as a module, say M here and read . A2065 support CONFIG_A2065 If you have a Commodore A2065 Ethernet 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 a2065.o. If you want to compile it as a module, say M here and read . Hydra support CONFIG_HYDRA If you have a Hydra Ethernet 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 hydra.o. If you want to compile it as a module, say M here and read . Sun3 NCR5380 SCSI CONFIG_SUN3_SCSI This option will enable support for the OBIO (onboard io) NCR5380 SCSI controller found in the Sun 3/50 and 3/60. Note that this driver does not provide support for VME SCSI boards. General Linux information on the Sun 3 series (now discontinued) is at . PCMCIA NE2000 and compatibles support CONFIG_APNE 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 . Atari Lance support CONFIG_ATARILANCE Say Y to include support for several Atari Ethernet adapters based on the AMD Lance chipset: RieblCard (with or without battery), or PAMCard VME (also the version by Rhotron, with different addresses). BioNet-100 support CONFIG_ATARI_BIONET Say Y to include support for BioData's BioNet-100 Ethernet adapter for the ACSI port. The driver works (has to work...) with a polled I/O scheme, so it's rather slow :-( PAMsNet support CONFIG_ATARI_PAMSNET Say Y to include support for the PAMsNet Ethernet adapter for the ACSI port ("ACSI node"). The driver works (has to work...) with a polled I/O scheme, so it's rather slow :-( Amiga mouse support CONFIG_AMIGAMOUSE If you want to be able to use an Amiga mouse in Linux, say Y. 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 amigamouse.o. If you want to compile it as a module, say M here and read . Atari mouse support CONFIG_ATARIMOUSE If you want to be able to use an Atari mouse in Linux, say Y. 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 atarimouse.o. If you want to compile it as a module, say M here and read . Atari MFP serial support CONFIG_ATARI_MFPSER If you like to use the MFP serial ports ("Modem1", "Serial1") under Linux, say Y. The driver equally supports all kinds of MFP serial ports and automatically detects whether Serial1 is available. 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 . Note for Falcon users: You also have an MFP port, it's just not wired to the outside... But you could use the port under Linux. Atari SCC serial support CONFIG_ATARI_SCC If you have serial ports based on a Zilog SCC chip (Modem2, Serial2, LAN) and like to use them under Linux, say Y. All built-in SCC's are supported (TT, MegaSTE, Falcon), and also the ST-ESCC. If you have two connectors for channel A (Serial2 and LAN), they are visible as two separate devices. 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 . Atari SCC serial DMA support CONFIG_ATARI_SCC_DMA This enables DMA support for receiving data on channel A of the SCC. If you have a TT you may say Y here and read drivers/char/atari_SCC.README. All other users should say N here, because only the TT has SCC-DMA, even if your machine keeps claiming so at boot time. Atari MIDI serial support CONFIG_ATARI_MIDI If you want to use your Atari's MIDI port in Linux, say 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 . Atari DSP56k Digital Signal Processor support CONFIG_ATARI_DSP56K If you want to be able to use the DSP56001 in Falcons, say Y. This driver is still experimental, and if you don't know what it is, or if you don't have this processor, just 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). If you want to compile it as a module, say M here and read . Support for early boot text console CONFIG_BOOTX_TEXT Say Y here to see progress messages from the boot firmware in text mode. Requires either BootX or Open Firmware. Amiga builtin serial support CONFIG_AMIGA_BUILTIN_SERIAL 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 . GVP IO-Extender support CONFIG_GVPIOEXT If you want to use a GVP IO-Extender serial card in Linux, say Y. Otherwise, say N. GVP IO-Extender parallel printer support CONFIG_GVPIOEXT_LP Say Y to enable driving a printer from the parallel port on your GVP IO-Extender card, N otherwise. GVP IO-Extender PLIP support CONFIG_GVPIOEXT_PLIP Say Y to enable doing IP over the parallel port on your GVP IO-Extender card, N otherwise. Multiface Card III serial support CONFIG_MULTIFACE_III_TTY 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 . Amiga/Atari/PowerMac DMA sound support CONFIG_DMASOUND Support built-in audio chips accessible by DMA on various machines that have them. Note that this symbol does not affect the kernel directly; rather, it controls whether configuration questions enabling DMA sound drivers for various specific machine architectures will be used. Atari DMA sound support CONFIG_DMASOUND_ATARI If you want to use the internal audio of your Atari in Linux, answer Y to this question. This will provide a Sun-like /dev/audio, compatible with the Linux/i386 sound system. 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). If you want to compile it as a module, say M here and read . PowerMac DMA sound support CONFIG_DMASOUND_PMAC If you want to use the internal audio of your PowerMac in Linux, answer Y to this question. This will provide a Sun-like /dev/audio, compatible with the Linux/i386 sound system. 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). If you want to compile it as a module, say M here and read . Amiga DMA sound support CONFIG_DMASOUND_PAULA If you want to use the internal audio of your Amiga in Linux, answer Y to this question. This will provide a Sun-like /dev/audio, compatible with the Linux/i386 sound system. 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). If you want to compile it as a module, say M here and read . Q40 sound support CONFIG_DMASOUND_Q40 If you want to use the internal audio of your Q40 in Linux, answer Y to this question. This will provide a Sun-like /dev/audio, compatible with the Linux/i386 sound system. 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). If you want to compile it as a module, say M here and read . HP DCA serial support CONFIG_HPDCA If you want to use the internal "DCA" serial ports on an HP300 machine, say Y here. HP on-board LANCE support CONFIG_HPLANCE If you want to use the builtin "LANCE" Ethernet controller on an HP300 machine, say Y here. DIO bus support CONFIG_DIO Say Y here to enable support for the "DIO" expansion bus used in HP300 machines. If you are using such a system you almost certainly want this. # Choice: ppctype Processor Type CONFIG_6xx 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, Power 4). 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. Motorola MPC8260 CPM support CONFIG_8260 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. # Choice: ppc4xxtype Oak CONFIG_OAK 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: . Walnut CONFIG_WALNUT Select Walnut if you have an IBM 405GP "Walnut" Evaluation Board. Workarounds for PPC601 bugs CONFIG_PPC601_SYNC_FIX 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. 8xx Cache (Copy-Back or Writethrough) CONFIG_8xx_COPYBACK 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. MPC860 (Pre Rev. C) CPU6 Silicon Errata CONFIG_8xx_CPU6 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. MPC8xx direct IDE support on PCMCIA port CONFIG_BLK_DEV_MPC8xx_IDE This option provides support for IDE on Motorola MPC8xx Systems. Please see 'Type of MPC8xx IDE interface' for details. If unsure, say N. # Choice: mpc8xxtype Type of MPC8xx IDE interface CONFIG_IDE_8xx_PCCARD Select how the IDE devices are connected to the MPC8xx system: 8xx_PCCARD uses the 8xx internal PCMCIA interface in combination with a PC Card (e.g. ARGOSY portable Hard Disk Adapter), ATA PC Card HDDs or ATA PC Flash Cards (example: TQM8xxL systems) 8xx_DIRECT is used for directly connected IDE devices using the 8xx internal PCMCIA interface (example: IVMS8 systems) EXT_DIRECT is used for IDE devices directly connected to the 8xx bus using some glue logic, but _not_ the 8xx internal PCMCIA interface (example: IDIF860 systems) Use SMC2 for UART CONFIG_SMC2_UART If you would like to use SMC2 as a serial port, say Y here. If in doubt, say Y here. Use SMC2 for Console CONFIG_CONS_SMC2 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. Use the alternate SMC2 I/O CONFIG_ALTSMC2 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. Enable SCC2 and SCC3 for UART CONFIG_USE_SCC_IO 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. # Choice: ppc6xxtype Machine Type CONFIG_ALL_PPC 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), 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 PowerMac/PReP/MTX/CHRP if configuring for any of the above. Select Gemini if configuring for a Synergy Microsystems' Gemini series Single Board Computer. More information is available at: . Select APUS if configuring for a PowerUP Amiga. More information is available at: . Note that Total Impact briQ is handled as a CHRP machine. Synergy-Gemini CONFIG_GEMINI Select Gemini if configuring for a Synergy Microsystems' Gemini series Single Board Computer. More information is available at: . Amiga-Apus CONFIG_APUS Select APUS if configuring for a PowerUP Amiga. More information is available at: . AltiVec kernel support CONFIG_ALTIVEC 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. Thermal Management Support CONFIG_TAU 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. Interrupt driven TAU driver CONFIG_TAU_INT 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. Average high and low temp CONFIG_TAU_AVERAGE The TAU hardware can compare the temperature to an upper and lower bound. The default behaviour 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. Power management support for PowerBooks CONFIG_PMAC_PBOOK 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. You must 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 . If you have a PowerBook, you should say Y. 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. APM emulation CONFIG_PMAC_APM_EMU This driver provides an emulated /dev/apm_bios and /proc/apm. The first one is mostly intended for XFree to sleep & wakeup properly, the second ones provides some battery informations to allow existing APM utilities to work. It provides less useful informations than tools specifically designed for PowerBooks or /proc/pmu/battery_x Backlight control for LCD screens CONFIG_PMAC_BACKLIGHT 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. # Choice: ppc8xxtype Embedded 8xx Board Type CONFIG_RPXLITE 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: - starter kit: - images: FPS850L: FingerPrint Sensor System (based on TQM850L) Manufacturer: IKENDI AG, 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, Date of Release: Mid 2000 (?) End of life: - URL: 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, Date of Release: December 2000 (?) End of life: - URL: IVML24: MPC860 based board used in the "Integrated Voice Mail System", Large Version (24 voice channels) Manufacturer: Speech Design, Date of Release: March 2001 (?) End of life: - URL: SM850: Service Module (based on TQM850L) Manufacturer: Dependable Computer Systems, Date of Release: end 2000 (?) End of life: mid 2001 (?) URL: HERMES_PRO: Hermes-Pro ISDN/LAN router with integrated 8 x hub Manufacturer: Multidata Gesellschaft füò Datentechnik und Informatik Date of Release: 2000 (?) End of life: - URL: IP860: VMEBus IP (Industry Pack) carrier board with MPC860 Manufacturer: MicroSys GmbH, Date of Release: ? End of life: - URL: PCU_E: PCU = Peripheral Controller Unit, Extended Manufacturer: Siemens AG, ICN (Information and Communication Networks) Date of Release: April 2001 End of life: August 2001 URL: n. a. RPX-Classic CONFIG_RPXCLASSIC 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. BSE-IP CONFIG_BSEIP 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. TQM823L CONFIG_TQM823L 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 , and , and an image at . TQM850L CONFIG_TQM850L 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 , and , and an image at . TQM855L CONFIG_TQM855L 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 , and , and an image at . TQM860L CONFIG_TQM860L 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 , and , and an image at . FPS850 CONFIG_FPS850 Say Y here to support the FingerPrint Sensor from AKENDI IG, based on the TQ Components TQM850L module, released November 1999 and discontinued a year later. TQM860 CONFIG_TQM860 Say Y here to support the TQM860, one of an MPC8xx-based family of SBCs (credit-card size) from TQ Components first released in mid-1999 and discontinued mid-2000. SM850 CONFIG_SM850 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 . SPD823TS CONFIG_SPD823TS Say Y here to support the Speech Design 823 Tele-Server from Speech Design, released in 2000. The manufacturer's website is at . IVMS8 CONFIG_IVMS8 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 . # IVML24 is not yet active IVML24 CONFIG_IVML24 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 . MBX CONFIG_MBX 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. WinCept CONFIG_WINCEPT 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. # More systems that will be supported soon, according to # Wolfgang Denk : # # TQM8260: # MPC8260 based module # # Manufacturer: TQ Components, www.tq-group.de # Date of Release: June 2001 # End of Life: not yet :-) # URL: # # IP860: # VMEBus IP (Industry Pack) carrier board with MPC860 # # Manufacturer: MicroSys GmbH, # Date of Release: ? # End of life: - # URL: # # CU824: # VMEBus Board with PCI extension with MPC8240 CPU # # Manufacturer: MicroSys GmbH, # Date of Release: early 2001 (?) # End of life: - # URL: # # PM826: # Modular system with MPC8260 CPU # # Manufacturer: MicroSys GmbH, # Date of Release: mid 2001 # End of life: - # URL: # # PCU_E: # PCU = Peripheral Controller Unit; E = extended (?) # # Mfr: Siemens AG, ICN (Information and Communication Networks) # # Date of Release: April 2001 # End of life: - # URL: n. a.o # Choice: ppc82xxtype Embedded 82xx Board Type CONFIG_EST8260 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 , 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: PM826: Modular system with MPC8260 CPU Manufacturer: MicroSys GmbH, Date of Release: mid 2001 End of life: - URL: CU824: VMEBus Board with PCI extension with MPC8240 CPU Manufacturer: MicroSys GmbH, Date of Release: early 2001 (?) End of life: - URL: ADB raw keycode support CONFIG_MAC_ADBKEYCODES This provides support for sending raw ADB keycodes to console devices. This is the default up to 2.4.0, but in future this may be phased out in favor of generic Linux keycodes. If you say Y here, you can dynamically switch via the /proc/sys/dev/mac_hid/keyboard_sends_linux_keycodes sysctl and with the "keyboard_sends_linux_keycodes=" kernel argument. If unsure, say Y here. I2C/SPI Microcode Patch CONFIG_UCODE_PATCH 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. Mouse button 2+3 emulation support CONFIG_MAC_EMUMOUSEBTN 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 Enhanced Real Time Clock Support (/dev/rtc) CONFIG_PPC_RTC 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. If unsure, say Y here. Support for Open Firmware device tree in /proc CONFIG_PROC_DEVICETREE 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. RTAS (RunTime Abstraction Services) in /proc CONFIG_PPC_RTAS 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. MESH (Power Mac internal SCSI) support CONFIG_SCSI_MESH Many Power Macintoshes and clones have a MESH (Macintosh Enhanced SCSI Hardware) SCSI bus adaptor (the 7200 doesn't, but all of the other Power Macintoshes do). Say Y to include support for this SCSI adaptor. This driver is also available as a module called mesh.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 . Maximum synchronous transfer rate (MB/s) (0 = async) CONFIG_SCSI_MESH_SYNC_RATE On Power Macintoshes (and clones) where the MESH SCSI bus adaptor drives a bus which is entirely internal to the machine (such as the 7500, 7600, 8500, etc.), the MESH is capable of synchronous operation at up to 10 MB/s. On machines where the SCSI bus controlled by the MESH can have external devices connected, it is usually rated at 5 MB/s. 5 is a safe value here unless you know the MESH SCSI bus is internal only; in that case you can say 10. Say 0 to disable synchronous operation. 53C94 (Power Mac external SCSI) support CONFIG_SCSI_MAC53C94 On Power Macintoshes (and clones) with two SCSI buses, the external SCSI bus is usually controlled by a 53C94 SCSI bus adaptor. Older machines which only have one SCSI bus, such as the 7200, also use the 53C94. Say Y to include support for the 53C94. This driver is also available as a module called mac53c94.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 . MACE (Power Mac Ethernet) support CONFIG_MACE Power Macintoshes and clones with Ethernet built-in on the motherboard will usually use a MACE (Medium Access Control for Ethernet) interface. Say Y to include support for the MACE chip. This driver is also available as a module called mace.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 . Use AAUI port instead of TP by default CONFIG_MACE_AAUI_PORT Some Apple machines (notably the Apple Network Server) which use the MACE ethernet chip have an Apple AUI port (small 15-pin connector), instead of an 8-pin RJ45 connector for twisted-pair ethernet. Say Y here if you have such a machine. If unsure, say N. The driver will default to AAUI on ANS anyway, and if you use it as a module, you can provide the port_aaui=0|1 to force the driver. BMAC (G3 Ethernet) support CONFIG_BMAC Say Y for support of BMAC Ethernet interfaces. These are used on G3 computers. This driver is also available as a module called bmac.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 . GMAC (G4/iBook Ethernet) support CONFIG_GMAC Say Y for support of GMAC Ethernet interfaces. These are used on G4 and iBook computers. This driver is also available as a module called gmac.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 . National DP83902AV (Oak Ethernet) support CONFIG_OAKNET Say Y if your machine has this type of Ethernet network card. This driver is also available as a module called oaknet.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 . Video For Linux CONFIG_VIDEO_DEV 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 . 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 . 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 . Video For Linux /proc file system information CONFIG_VIDEO_PROC_FS If you say Y here, you are able to access video device information in /proc/video. To use this option, you have to check, that the "/proc file system support" (CONFIG_PROC_FS) is enabled too. AIMSlab RadioTrack (aka RadioReveal) support CONFIG_RADIO_RTRACK Choose Y here if you have one of these FM radio cards, and then fill in the port address below. Note that newer AIMSlab RadioTrack cards have a different chipset and are not supported by this driver. For these cards, use the RadioTrack II driver below. If you have a GemTeks combined (PnP) sound- and radio card you must use this driver as a module and setup the card with isapnptools. You must also pass the module a suitable io parameter, 0x248 has been reported to be used by these cards. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . More information is contained in the file . 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 . The module will be called radio-aimslab.o. RadioTrack I/O port CONFIG_RADIO_RTRACK_PORT Enter either 0x30f or 0x20f here. The card default is 0x30f, if you haven't changed the jumper setting on the card. AIMSlab RadioTrack II support CONFIG_RADIO_RTRACK2 Choose Y here if you have this FM radio card, and then fill in the port address below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-rtrack2.o. RadioTrack II I/O port CONFIG_RADIO_RTRACK2_PORT Enter either 0x30c or 0x20c here. The card default is 0x30c, if you haven't changed the jumper setting on the card. Aztech/Packard Bell Radio CONFIG_RADIO_AZTECH Choose Y here if you have one of these FM radio cards, and then fill in the port address below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-aztech.o. Aztech/Packard Bell radio card I/O port CONFIG_RADIO_AZTECH_PORT Enter either 0x350 or 0x358 here. The card default is 0x350, if you haven't changed the setting of jumper JP3 on the card. Removing the jumper sets the card to 0x358. ADS Cadet AM/FM Radio Tuner Card CONFIG_RADIO_CADET Choose Y here if you have one of these AM/FM radio cards, and then fill in the port address below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . Further documentation on this driver can be found on the WWW at . 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 . The module will be called radio-cadet.o. SF16FMI Radio CONFIG_RADIO_SF16FMI Choose Y here if you have one of these FM radio cards. If you compile the driver into the kernel and your card is not PnP one, you have to add "sf16fm=" to the kernel command line (I/O address is 0x284 or 0x384). In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-sf16fmi.o. Typhoon Radio (a.k.a. EcoRadio) CONFIG_RADIO_TYPHOON Choose Y here if you have one of these FM radio cards, and then fill in the port address and the frequency used for muting below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-typhoon.o. Support for /proc/radio-typhoon CONFIG_RADIO_TYPHOON_PROC_FS Say Y here if you want the typhoon radio card driver to write status information (frequency, volume, muted, mute frequency, base address) to /proc/radio-typhoon. The file can be viewed with your favorite pager (i.e. use "more /proc/radio-typhoon" or "less /proc/radio-typhoon" or simply "cat /proc/radio-typhoon"). Typhoon I/O port (0x316 or 0x336) CONFIG_RADIO_TYPHOON_PORT Enter the I/O port of your Typhoon or EcoRadio radio card. Typhoon frequency set when muting the device (kHz) CONFIG_RADIO_TYPHOON_MUTEFREQ Enter the frequency used for muting the radio. The device is never completely silent. If the volume is just turned down, you can still hear silent voices and music. For that reason, the frequency of the radio device is set to the frequency you can enter here whenever the device is muted. There should be no local radio station at that frequency. Zoltrix Radio CONFIG_RADIO_ZOLTRIX Choose Y here if you have one of these FM radio cards, and then fill in the port address below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-zoltrix.o. ZOLTRIX I/O port (0x20c or 0x30c) CONFIG_RADIO_ZOLTRIX_PORT Enter the I/O port of your Zoltrix radio card. I2C on parallel port CONFIG_I2C_PARPORT I2C is a simple serial bus system used in many micro controller applications. Saying Y here will allow you to use your parallel port as an I2C interface. 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 . The module will be called i2c-parport.o. miroSOUND PCM20 radio CONFIG_RADIO_MIROPCM20 Choose Y here if you have this FM radio card. You also need to say Y to "ACI mixer (miroSOUND PCM1-pro/PCM12/PCM20 radio)" (in "Sound") for this to work. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called miropcm20.o. miroSOUND PCM20 radio RDS user interface (EXPERIMENTAL) CONFIG_RADIO_MIROPCM20_RDS Choose Y here if you want to see RDS/RBDS information like RadioText, Programme Service name, Clock Time and date, Programme TYpe and Traffic Announcement/Programme identification. You also need to say Y to "miroSOUND PCM20 radio" and devfs! It's not possible to read the raw RDS packets from the device, so the driver cant provide an V4L interface for this. But the availability of RDS is reported over V4L by the basic driver already. Here RDS can be read from files in /dev/v4l/rds. As module the driver will be called miropcm20-rds.o. Maestro on board radio CONFIG_RADIO_MAESTRO Say Y here to directly support the on-board radio tuner on the Maestro 2 or 2E sound card. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-maestro.o. Guillemot MAXI Radio FM 2000 Radio Card CONFIG_RADIO_MAXIRADIO Choose Y here if you have this radio card. This card may also be found as GemTek PCI FM. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-maxiradio.o. GemTek Radio Card support CONFIG_RADIO_GEMTEK Choose Y here if you have this FM radio card, and then fill in the port address below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-gemtek.o. GemTek I/O port CONFIG_RADIO_GEMTEK_PORT Enter either 0x20c, 0x30c, 0x24c or 0x34c here. The card default is 0x34c, if you haven't changed the jumper setting on the card. On Sound Vision 16 Gold PnP with FM Radio (ESS1869+FM GemTek), the I/O port is 0x28c. GemTek PCI Radio Card support CONFIG_RADIO_GEMTEK_PCI Choose Y here if you have this PCI FM radio card. In order to control your radio card, you will need to use programs that are compatible with the Video for Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-gemtek-pci.o. PlanB Video-In for PowerMacs CONFIG_VIDEO_PLANB PlanB is the V4L driver for the PowerMac 7x00/8x00 series video input hardware. If you want to experiment with this, say Y. Otherwise, or if you don't understand a word, say N. See for more info. Saying M will compile this driver as a module (planb.o). TerraTec ActiveRadio CONFIG_RADIO_TERRATEC Choose Y here if you have this FM radio card, and then fill in the port address below. (TODO) Note: This driver is in its early stages. Right now volume and frequency control and muting works at least for me, but unfortunately I have not found anybody who wants to use this card with Linux. So if it is this what YOU are trying to do right now, PLEASE DROP ME A NOTE!! Rolf Offermanns (rolf@offermanns.de) In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . 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 . The module will be called radio-terratec.o. Terratec I/O port (normally 0x590) CONFIG_RADIO_TERRATEC_PORT Fill in the I/O port of your TerraTec FM radio card. If unsure, go with the default. Trust FM radio card CONFIG_RADIO_TRUST This is a driver for the Trust FM radio cards. Say Y if you have such a card and want to use it under Linux. This driver is also available as a module called radio-trust.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 . Trust I/O port (usually 0x350 or 0x358) CONFIG_RADIO_TRUST_PORT Enter the I/O port of your Trust FM radio card. If unsure, try the values "0x350" or "0x358". BT848 Video For Linux CONFIG_VIDEO_BT848 Support for BT848 based frame grabber/overlay boards. This includes the Miro, Hauppauge and STB boards. Please read the material in 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 . BT878 audio DMA CONFIG_SOUND_BT878 Audio DMA support for bt878 based grabber boards. As you might have already noticed, bt878 is listed with two functions in /proc/pci. Function 0 does the video stuff (bt848 compatible), function 1 does the same for audio data. This is a driver for the audio part of the chip. If you say 'Y' here you get a oss-compatible dsp device where you can record from. If you want just watch TV you probably don't need this driver as most TV cards handle sound with a short cable from the TV card to your sound card's line-in. This driver is available as a module called btaudio.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 . SGI Vino Video For Linux CONFIG_VIDEO_VINO Say Y here to build in support for the Vino video input system found on SGI Indy machines. Stradis 4:2:2 MPEG-2 video driver CONFIG_VIDEO_STRADIS Say Y here to enable support for the Stradis 4:2:2 MPEG-2 video driver for PCI. There is a product page at . Zoran ZR36057/36060 Video For Linux CONFIG_VIDEO_ZORAN Say Y here to include support for video cards based on the Zoran ZR36057/36060 encoder/decoder chip (including the Iomega Buz and the Miro DC10 and DC30 video capture cards). Include support for Iomega Buz CONFIG_VIDEO_ZORAN_BUZ Say Y here to include support for the Iomega Buz video card. There is a Buz/Linux homepage at . Miro DC10(+) support CONFIG_VIDEO_ZORAN_DC10 Say Y to support the Pinnacle Systems Studio DC10 plus TV/Video card. Linux page at . Vendor page at . Linux Media Labs LML33 support CONFIG_VIDEO_ZORAN_LML33 Say Y here to support the Linux Media Labs LML33 TV/Video card. Resources page is at . Zoran ZR36120/36125 Video For Linux CONFIG_VIDEO_ZR36120 Support for ZR36120/ZR36125 based frame grabber/overlay boards. This includes the Victor II, WaveWatcher, Video Wonder, Maxi-TV, and Buster boards. Please read the material in for more information. This driver is also available as a module called zr36120.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 . SAA5249 Teletext processor CONFIG_VIDEO_SAA5249 Support for I2C bus based teletext using the SAA5249 chip. At the moment this is only useful on some European WinTV cards. This driver is also available as a module called saa5249.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 . QuickCam BW Video For Linux CONFIG_VIDEO_BWQCAM Say Y have if you the black and white version of the QuickCam camera. See the next option for the color version. This driver is also available as a module called bw-qcam.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 . QuickCam Colour Video For Linux CONFIG_VIDEO_CQCAM This is the video4linux driver for the colour version of the Connectix QuickCam. If you have one of these cameras, say Y here, otherwise say N. This driver does not work with the original monochrome QuickCam, QuickCam VC or QuickClip. It is also available as a module (c-qcam.o). Read for more information. W9966 Webcam (FlyCam Supra and others) Video For Linux CONFIG_VIDEO_W9966 Video4linux driver for Winbond's w9966 based Webcams. Currently tested with the LifeView FlyCam Supra. If you have one of these cameras, say Y here otherwise say N. This driver is also available as a module (w9966.o). Check out and for more information. CPiA Video For Linux CONFIG_VIDEO_CPIA This is the video4linux driver for cameras based on Vision's CPiA (Colour Processor Interface ASIC), such as the Creative Labs Video Blaster Webcam II. If you have one of these cameras, say Y here and select parallel port and/or USB lowlevel support below, otherwise say N. This will not work with the Creative Webcam III. Please read for more information. This driver is also available as a module (cpia.o). CPiA Parallel Port Lowlevel Support CONFIG_VIDEO_CPIA_PP This is the lowlevel parallel port support for cameras based on Vision's CPiA (Colour Processor Interface ASIC), such as the Creative Webcam II. If you have the parallel port version of one of these cameras, say Y here, otherwise say N. It is also available as a module (cpia_pp.o). CPiA USB Lowlevel Support CONFIG_VIDEO_CPIA_USB This is the lowlevel USB support for cameras based on Vision's CPiA (Colour Processor Interface ASIC), such as the Creative Webcam II. If you have the USB version of one of these cameras, say Y here, otherwise say N. This will not work with the Creative Webcam III. It is also available as a module (cpia_usb.o). Mediavision Pro Movie Studio Video For Linux CONFIG_VIDEO_PMS Say Y if you have such a thing. This driver is also available as a module called pms.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 . Sony Vaio Picturebook Motion Eye Video For Linux CONFIG_VIDEO_MEYE This is the video4linux driver for the Motion Eye camera found in the Vaio Picturebook laptops. Please read the material in for more information. If you say Y or M here, you need to say Y or M to "Sony Programmable I/O Control Device" in the character device section. This driver is available as a module called meye.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 . IBM's S/390 architecture CONFIG_ARCH_S390 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. Merge some code into the kernel to make the image IPLable CONFIG_IPL 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 on another question, that pops up, when you select CONFIG_IPL. IPL from a S/390 tape unit CONFIG_IPL_TAPE Select this option if you want to IPL the image from a Tape. IPL from a virtual card reader emulated by VM/ESA CONFIG_IPL_VM Select this option if you are running under VM/ESA and want to IPL the image from the emulated card reader. CONFIG_PFAULT 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 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. Support for IBM-style disk-labels (S/390) CONFIG_S390_PARTITION Enable this option to assure standard IBM labels on the DASDs. You must enable it, if you are planning to access DASDs also attached to another IBM mainframe operation system (OS/390, VM/ESA, VSE/ESA). Support for DASD hard disks CONFIG_DASD Enable this option if you want to access DASDs directly utilizing S/390s channel subsystem commands. This is necessary for running natively on a single image or an LPAR. Support for ECKD hard disks CONFIG_DASD_ECKD ECKD (Extended Count Key Data) devices are the most commonly used devices on S/390s. You should enable this option unless you are very sure you have no ECKD device. ECKD demand loading CONFIG_DASD_AUTO_ECKD This option enables demand loading of the ECKD module. Support for FBA hard disks CONFIG_DASD_FBA Select this option if you want to use FBA (Fixed Block) devices. If you are not sure what it is, say "Y". FBA demand loading CONFIG_DASD_AUTO_FBA This option enables demand loading of the FBA module. Support for DIAG access to CMS reserved Disks CONFIG_DASD_DIAG Select this option if you want to use CMS reserved Disks under VM with the Diagnose250 command. If you are not running under VM or unsure what it is, say "N". DIAG demand loading CONFIG_DASD_AUTO_DIAG This option enables demand loading of the DIAG module. Merge some code into the kernel to make the image IPLable CONFIG_IPLABLE 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 on another question, that pops up, when you select CONFIG_IPLABE. Support for 3215 line mode terminal CONFIG_TN3215 Include support for IBM 3215 line-mode terminals. Support for console on 3215 line mode terminal CONFIG_TN3215_CONSOLE Include support for using an IBM 3215 line-mode terminal as a Linux system console. Support for 3270 line mode terminal CONFIG_TN3270 Include support for IBM 3270 line-mode terminals. Support for console on 3270 line mode terminal CONFIG_TN3270_CONSOLE Include support for using an IBM 3270 line-mode terminal as a Linux system console. Available only if 3270 support is compiled in statically. Support for HWC line mode terminal CONFIG_HWC Include support for IBM HWC line-mode terminals. Console on HWC line mode terminal CONFIG_HWC_CONSOLE Include support for using an IBM HWC line-mode terminal as the Linux system console. Control Program Identification CONFIG_HWC_CPI Allows for Control Program Identification via the HWC interface, i.e. provides a mean to pass an OS instance name (system name) to the machine. This option should only be selected as a module since the system name has to be passed as module parameter. The module will be called hwc_cpi.o. S/390 tape device support CONFIG_S390_TAPE Select this option if you want to access channel-attached tape devices on IBM S/390 or zSeries. If you select this option you will also want to select at least one of the tape interface options and one of the tape hardware options in order to access a tape device. This option is also available as a module. The module will be called tape390.o and include all selected interfaces. The hardware drivers will be seperate modules. If unsure, say "Y". Support for tape character devices CONFIG_S390_TAPE_CHAR Select this option if you want to access your channel-attached tape devices using the character device interface. This interface is similar to other Linux tape devices like SCSI-Tapes (st) and the floppy tape device (ftape). If unsure, say "Y". Support for tape block devices CONFIG_S390_TAPE_BLOCK Select this option if you want to access your channel-attached tape devices using the block device interface. This interface is similar to CD-ROM devices on other platforms. The tapes can only be accessed read-only when using this interface. Have a look at Documentation/s390/TAPE for further information about creating volumes for and using this interface. It is safe to say "Y" here. Support for 3490 tape hardware CONFIG_S390_TAPE_3490 Select this option if you want to access IBM 3490 magnetic tape subsystems and 100% compatibles. This option is also available as a module. The module will be called tape3490.o. If CONFIG_S390_TAPE is selected as a module, this hardware driver cannot be built-in but is only available as a module. It is safe to say "Y" here. Support for 3480 tape hardware CONFIG_S390_TAPE_3480 Select this option if you want to access IBM 3480 magnetic tape subsystems and 100% compatibles. This option is also available as a module. The module will be called tape3480.o. If CONFIG_S390_TAPE is selected as a module, this hardware driver cannot be built-in but is only available as a module. It is safe to say "Y" here. CTC device support CONFIG_CTC Select this option if you want to use channel-to-channel networking on IBM S/390 or zSeries. This device driver supports real CTC coupling using ESCON. It also supports virtual CTCs when running under VM. It will use the channel device configuration if this is available. This option is also available as a module which will be called ctc.o. If you do not know what it is, it's safe to say "Y". XPRAM disk support CONFIG_BLK_DEV_XPRAM Select this option if you want to use your expanded storage on S/390 or zSeries as a disk. This is useful as a _fast_ swap device if you want to access more than 2G of memory when running in 31 bit mode. This option is also available as a module which will be called xpram.o. If unsure, say "N". Fast IRQ handling CONFIG_FAST_IRQ Select this option in order to get the interrupts processed faster on your S/390 or zSeries machine. If selected, after an interrupt is processed, the channel subsystem will be asked for other pending interrupts which will also be processed before leaving the interrupt context. This speeds up the I/O a lot. Say "Y". IUCV device support (VM only) CONFIG_IUCV Select this option if you want to use inter-user communication vehicle networking under VM or VIF. This option is also available as a module which will be called iucv.o. If unsure, say "Y". Process warning machine checks CONFIG_MACHCHK_WARNING 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". Use chscs for Common I/O CONFIG_CHSC Select this option if you want the s390 common I/O layer to use information obtained by channel subsystem calls. This will enable Linux to process link failures and resource accessibility events. Moreover, if you have procfs enabled, you'll be able to toggle chpids logically offline and online. Even if you don't understand what this means, you should say "Y". Kernel support for 31 bit ELF binaries CONFIG_S390_SUPPORT 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". Channel Device Configuration CONFIG_CHANDEV The channel device layer is a layer to provide a consistent interface for configuration & default machine check (devices appearing & disappearing) handling on Linux for s/390 & z/Series channel devices. s/390 & z/Series channel devices include among others lcs (the most common ethernet/token ring/fddi standard on zSeries) ctc/escon hi speed like serial link standard on zSeries claw used to talk to cisco routers. qeth gigabit ethernet. These devices use two channels one read & one write for configuration & communication (& a third channel, the data channel the case of gigabit ethernet). The motivation behind developing this layer was that there was a lot of duplicate code among the channel device drivers for configuration. Also the lcs & ctc drivers tended to fight over 3088/08's & 3088/1F's which could be either 2216/3172 channel attached lcs compatible devices or escon/ctc pipes had to be configured separately as they couldn't autodetect, this is now simplified by doing the configuration in a single place (the channel device layer). This layer isn't invasive & it is quite okay to use channel drivers which don't use the channel device layer in conjunction with drivers which do. For more info see the chandev manpage usually distributed in in the Linux source tree. SAB3036 tuner support CONFIG_TUNER_3036 Say Y here to include support for Philips SAB3036 compatible tuners. If in doubt, say N. Compaq SMART2 support CONFIG_BLK_CPQ_DA This is the driver for Compaq Smart Array controllers. Everyone using these boards should say Y here. See the file for the current list of boards supported by this driver, and for further information on the use of this driver. 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 . The module will be called cpqarray.o Show crashed user process info CONFIG_PROCESS_DEBUG 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. # # ARM options # # CML2 transition note: CML1 asks ARCH_ARCA5K, then has ARCH_A5K and ARCH_ARK # as subquestions. CML2 asks the subquestions in the armtype menu and makes # ARCH_ARCA5K a derived symbol. ARM System type CONFIG_ARCH_ARCA5K This selects what ARM system you wish to build the kernel for. It also selects to some extent the CPU type. If you are unsure what to set this option to, please consult any information supplied with your system. # Choice: armtype A5000 CONFIG_ARCH_A5K Say Y here to to support the Acorn A5000. Linux can support the internal IDE disk and CD-ROM interface, serial and parallel port, and the floppy drive. Note that on some A5000s the floppy is plugged into the wrong socket on the motherboard. Archimedes CONFIG_ARCH_ARC The Acorn Archimedes was an personal computer based on an 8K ARM2 processor, released in 1987. It supported 512K of RAM and 2 800K floppy disks. Picture and more detailed specifications at . EBSA-110 CONFIG_ARCH_EBSA110 This is an evaluation board for the StrongARM processor available from Digital. It has limited hardware on-board, including an onboard Ethernet interface, two PCMCIA sockets, two serial ports and a parallel port. RiscPC CONFIG_ARCH_RPC On the Acorn Risc-PC, Linux can support the internal IDE disk and CD-ROM interface, serial and parallel port, and the floppy drive. 2MB physical memory CONFIG_PAGESIZE_16 Say Y here if your Archimedes or A5000 system has only 2MB of memory, otherwise say N. The resulting kernel will not run on a machine with 4MB of memory. CATS CONFIG_ARCH_CATS Say Y here if you intend to run this kernel on the CATS. Saying N will reduce the size of the Footbridge kernel. EBSA285 (addin mode) CONFIG_ARCH_EBSA285_ADDIN Say Y here if you intend to run this kernel on the EBSA285 card in addin mode. Saying N will reduce the size of the Footbridge kernel. EBSA285 (host mode) CONFIG_ARCH_EBSA285_HOST Say Y here if you intend to run this kernel on the EBSA285 card in host ("central function") mode. Saying N will reduce the size of the Footbridge kernel. LinkUp Systems L7200 SDB CONFIG_ARCH_L7200 Say Y here if you intend to run this kernel on a LinkUp Systems L7200 Software Development Board which uses an ARM720T processor. Information on this board can be obtained at: If you have any questions or comments about the Linux kernel port to this board, send e-mail to sjhill@cotw.com. NetWinder CONFIG_ARCH_NETWINDER Say Y here if you intend to run this kernel on the Rebel.COM NetWinder. Information about this machine can be found at: Saying N will reduce the size of the Footbridge kernel. P720T CONFIG_ARCH_P720T Say Y here if you intend to run this kernel on the ARM Prospector 720T. Compaq Personal Server CONFIG_ARCH_PERSONAL_SERVER Say Y here if you intend to run this kernel on the Compaq Personal Server. Saying N will reduce the size of the Footbridge kernel. The Compaq Personal Server is not available for purchase. There are no product plans beyond the current research prototypes at this time. Information is available at: If you have any questions or comments about the Compaq Personal Server, send e-mail to skiff@crl.dec.com. Cirrus Logic EDB-7211 evaluation board CONFIG_ARCH_EDB7211 Say Y here if you intend to run this kernel on a Cirrus Logic EDB-7211 evaluation board. EP7211 infrared support CONFIG_EP7211_IR Say Y here if you wish to use the infrared port on the EP7211. Note that you can't use the first UART and the infrared port at the same time, and that the EP7211 only supports SIR mode, at speeds up to 115.2 kbps. To use the I/R port, you will need to get the source to irda-utils and apply the patch at . Assabet CONFIG_SA1100_ASSABET Say Y here if you are using the Intel(R) StrongARM(R) SA-1110 Microprocessor Development Board (also known as the Assabet). Neponset CONFIG_ASSABET_NEPONSET Say Y here if you are using the Intel(R) StrongARM(R) SA-1110 Microprocessor Development Board (Assabet) with the SA-1111 Development Board (Nepon). Compaq iPAQ H3600 CONFIG_SA1100_H3600 Say Y here if you intend to run this kernel on the Compaq iPAQ H3600 handheld computer. Information about this machine and the Linux port to this machine can be found at: Brutus CONFIG_SA1100_BRUTUS Say Y here if you are using the Intel(R) StrongARM(R) SA-1100 Microprocessor Development Board (also known as the Brutus). LART CONFIG_SA1100_LART Say Y here if you are using the Linux Advanced Radio Terminal (also known as the LART). See for information on the LART. GraphicsClient CONFIG_SA1100_GRAPHICSCLIENT Say Y here if you are using an Applied Data Systems Intel(R) StrongARM(R) SA-1100 based Graphics Client SBC. See for information on this system. GraphicsMaster CONFIG_SA1100_GRAPHICSMASTER Say Y here if you are using an Applied Data Systems Intel(R) StrongARM(R) SA-1100 based Graphics Master SBC with SA-1111 StrongARM companion chip. See for information on this system. ADSBitsy CONFIG_SA1100_ADSBITSY Say Y here if you are using Applied Data Systems Intel(R) StrongARM(R) 1110 based Bitsy, 3 x 5 inches in size, Compaq - IPAQ - like platform. See for more information. ITSY CONFIG_SA1100_ITSY Say Y here if you are using the Compaq Itsy experimental pocket computer. See for more information. PLEB CONFIG_SA1100_PLEB Say Y here if you are using a Portable Linux Embedded Board (also known as PLEB). See for more information. CerfBoard CONFIG_SA1100_CERF The Intrinsyc CerfBoard is based on the StrongARM 1110. More information is available at: . Say Y if configuring for an Intrinsyc CerfBoard. Say N otherwise. FlexaNet CONFIG_SA1100_FLEXANET Say Y here if you intend to run this kernel on the FlexaNet handheld instruments. Information about this machine can be found at: . nanoEngine CONFIG_SA1100_NANOENGINE The nanoEngine is a StrongARM 1110-based single board computer from Bright Star Engineering. More information is available at: . Say Y if configuring for a nanoEngine. Say N otherwise. Pangolin CONFIG_SA1100_PANGOLIN Pangolin is a StrongARM 1110-based evaluation platform produced by Dialogue Technology. It has EISA slots for ease of configuration with SDRAM/Flash memory card, USB/Serial/Audio card, Compact Flash card, and TFT-LCD card. Say Y if configuring for a Pangolin. Say N otherwise. Victor CONFIG_SA1100_VICTOR Say Y here if you are using a Visu Aide Intel(R) StrongARM(R) SA-1100 based Victor Digital Talking Book Reader. See for information on this system. # Choice: cerf_ram Cerf on-board RAM size CONFIG_SA1100_CERF_8MB Declare the size of the CerfBoard's on-board RAM. Alternatives are 8, 16, 32, and 64MB. 16MB CONFIG_SA1100_CERF_16MB Declare that the CerfBoard has 16MB RAM. 32MB CONFIG_SA1100_CERF_32MB Declare that the CerfBoard has 32MB RAM. 64MB CONFIG_SA1100_CERF_64MB Declare that the CerfBoard has 64MB RAM. # Choice: cerf_flash Cerf flash memory size CONFIG_SA1100_CERF_FLASH_8MB Tell the Cerf kernel the size of on-board memory. The choices are 8MB, 16MB, or 32MB. 16MB CONFIG_SA1100_CERF_FLASH_16MB Configure the Cerf kernel to expect 16MB of flash memory. 32MB CONFIG_SA1100_CERF_FLASH_32MB Configure the Cerf kernel to expect 32MB of flash memory. Support ARM610 processor CONFIG_CPU_ARM610 The ARM610 is the successor to the ARM3 processor and was produced by VLSI Technology Inc. Say Y if you want support for the ARM610 processor. Otherwise, say N. Support ARM710 processor CONFIG_CPU_ARM710 A 32-bit RISC microprocessor based on the ARM7 processor core designed by Advanced RISC Machines Ltd. The ARM710 is the successor to the ARM610 processor. It was released in July 1994 by VLSI Technology Inc. Say Y if you want support for the ARM710 processor. Otherwise, say N. Support ARM720T processor CONFIG_CPU_ARM720T A 32-bit RISC processor with 8kByte Cache, Write Buffer and MMU built around an ARM7TDMI core. Say Y if you want support for the ARM720T processor. Otherwise, say N. Support ARM920T processor CONFIG_CPU_ARM920T The ARM920T is licensed to be produced by numerous vendors, and is used in the Maverick EP9312. More information at . Say Y if you want support for the ARM920T processor. Otherwise, say N. Support ARM1020 processor CONFIG_CPU_ARM1020 The ARM1020 is the cached version of the ARM10 processor, with an addition of a floating-point unit. Say Y if you want support for the ARM1020 processor. Otherwise, say N. Support StrongARM SA-110 processor CONFIG_CPU_SA110 The Intel StrongARM(R) SA-110 is a 32-bit microprocessor and is available at five speeds ranging from 100 MHz to 233 MHz. More information is available at . Say Y if you want support for the SA-110 processor. Otherwise, say N. NET+ARM Processor type CONFIG_NETARM_NET15 The NET+ARM(tm) processor family by NETsilicon(R) is an implementation of the ARM7TDMI architecture, with some integrated peripherals for serial, parallel and ethernet interfaces. These chips differ in cache, speed and other capabilities. Please select your processor type. NET+ARM NET+40 board Rev2 CONFIG_NETARM_NET40_REV2 This refers to the NET+40 board revision, not processor version. The board can have different DRAM configurations, Rev. 2 uses one bank of SDRAM. If unsure, say N. NET+ARM NET+40 board Rev4 CONFIG_NETARM_NET40_REV4 This refers to the NET+40 board revision, not processor version. The board can have different DRAM configurations, Rev. 4 uses two banks of FastPage or EDO DRAM. If unsure, say Y. NET+ARM PLL Bypass Patch CONFIG_NETARM_PLL_BYPASS Say Y here if your NetARM is set to PLL bypass mode, i.e. the PLLTST* input is driven low and the system clock is provided by an external TTL oscillator. This was necessary for some early revisions of the Net+40 chip, where the internal PLL did not work properly. It is also used on the NETsilicon NET+40 development board (at least on the one I know). If unsure, say N. NET+ARM EMLIN Board CONFIG_NETARM_EMLIN The EMLIN is an in-house prototype of a NetARM board with additional peripherals and slightly different memory layout. Say Y here if you are using one. If unsure, say N. Set flash/sdram size and base addr CONFIG_SET_MEM_PARAM If you want to use a memory configuration that differs from the default values, say Y here and enter the parameters in the next 4 fields. If unsure, say N. Tulsa CONFIG_SA1100_PFS168 The Radisys Corp. PFS-168 (aka Tulsa) is an Intel­þStrongArm­þSA-1110 based computer which includes the SA-1111 Microprocessor Companion Chip and other custom I/O designed to add connectivity and multimedia features for vending and business machine applications. Say Y here if you require support for this target. HP Jornada 720 CONFIG_SA1100_JORNADA720 Say Y here if you want to build a kernel for the HP Jornada 720 handheld computer. See for details. InHand Electronics OmniMeter CONFIG_SA1100_OMNIMETER Say Y here if you are using the inhand electronics OmniMeter. See for details. Load kernel using Angel Debug Monitor CONFIG_ANGELBOOT Say Y if you plan to load the kernel using Angel, ARM Ltd's target debug stub. If you are not using Angel, you must say N. It is important to get this setting correct. CDB89712 CONFIG_ARCH_CDB89712 This is an evaluation board from Cirrus for the CS89712 processor. The board includes 2 serial ports, Ethernet, IRDA, and expansion headers. It comes with 16 MB SDRAM and 8 MB flash ROM. GUIDEA07 CONFIG_ARCH_GUIDEA07 Say Y if you are using a GUIDE (A07) board. This board is based on the cs89712 processor and shares much common hardware with the CDB89712 configuration. When you select this option and the CDB89712 becomes enabled also, don't worry. It's supposed to be that way. CLPS-711X internal ROM bootstrap CONFIG_EP72XX_ROM_BOOT If you say Y here, your CLPS711x-based kernel will use the bootstrap mode memory map instead of the normal memory map. Processors derived from the Cirrus CLPS-711X core support two boot modes. Normal mode boots from the external memory device at CS0. Bootstrap mode rearranges parts of the memory map, placing an internal 128 byte bootstrap ROM at CS0. This option performs the address map changes required to support booting in this mode. You almost surely want to say N here. Math emulation CONFIG_FPE_NWFPE Say Y to include the NWFPE floating point emulator in the kernel. This is necessary to run most binaries. Linux does not currently support floating point hardware so you need to say Y here even if your machine has an FPA or floating point co-processor podule. It is also possible to say M to build the emulator as a module (nwfpe.o) or indeed to leave it out altogether. However, unless you know what you are doing this can easily render your machine unbootable. Saying Y is the safe option. You may say N here if you are going to load the Acorn FPEmulator early in the bootup. FastFPE math emulation CONFIG_FPE_FASTFPE Say Y here to include the FAST floating point emulator in the kernel. This is an experimental much faster emulator which is written completely in ARM assembly. All instructions that are not marked as deprecated in the ARM7500FE data sheet are implemented. It supports single, double and double extended precision. It does support exception flags, but not raising exceptions. It gives an average 5 times speed increase over NWFPE for FP only code. FastFPE does not require long multiply instruction anymore and is now suitable for all ARM cpus. The presence of the long multiply instruction is detected during initialisation and used to speedup multiply and divide. Compliance to IEEE Std 754-1985 was verified using the testfloat program of the SoftFloat package version 2a by John Hauser. All operations except square root were reported to be compliant. However, this is not a proof, and especially does not verify the instruction parser. You can compile both emulators into the kernel and choose one of them at boot time by passing "fpe=fastfpe" or "fpe=nwfpe" as kernel parameter. It is also possible to say M to build the emulator as a module (fastfpe.o). This was never tested. Only do it if you know what you are doing! DS1620 thermometer support CONFIG_DS1620 Say Y here to include support for the thermal management hardware found in the NetWinder. This driver allows the user to control the temperature set points and to read the current temperature. It is also possible to say M here to build it as a module (ds1620.o) It is recommended to be used on a NetWinder, but it is not a necessity. Check for stack overflows CONFIG_DEBUG_STACKOVERFLOW This option make do_IRQ() check for enough stack space beeing left. This is safe to enable. Debug high memory support CONFIG_DEBUG_HIGHMEM This options enables addition error checking for high memory systems. Disable for production systems. Verbose kernel error messages CONFIG_DEBUG_ERRORS This option controls verbose debugging information which can be printed when the kernel detects an internal error. This debugging information is useful to kernel hackers when tracking down problems, but mostly meaningless to other people. It's safe to say Y unless you are concerned with the code size or don't want to see these messages. Compile kernel with frame pointer CONFIG_FRAME_POINTER If you say Y here, the resulting kernel will be slightly larger and slower, but it will give very useful debugging information. If you don't debug the kernel, you can say N, but we may not be able to solve problems without frame pointers. Verbose user fault messages CONFIG_DEBUG_USER When a user program crashes due to an exception, the kernel can print a brief message explaining what the problem was. This is sometimes helpful for debugging but serves no purpose on a production system. Most people should say N here. Include gdb debugging information in kernel binary CONFIG_DEBUG_INFO Say Y here to include source-level debugging information in the `vmlinux' binary image. This is handy if you want to use gdb or addr2line to debug the kernel. It has no impact on the in-memory footprint of the running kernel but it can increase the amount of time and disk space needed for compilation of the kernel. If in doubt say N. Kernel low-level debugging functions CONFIG_DEBUG_LL Say Y here to include definitions of printascii, printchar, printhex in the kernel. This is helpful if you are debugging code that executes before the console is initialized. Kernel low-level debugging messages via footbridge serial port CONFIG_DEBUG_DC21285_PORT Say Y here if you want the debug print routines to direct their output to the serial port in the DC21285 (Footbridge). Saying N will cause the debug messages to appear on the first 16550 serial port. Kernel low-level debugging messages via UART2 CONFIG_DEBUG_CLPS711X_UART2 Say Y here if you want the debug print routines to direct their output to the second serial port on these devices. Saying N will cause the debug messages to appear on the first serial port. Disable pgtable cache CONFIG_NO_PGT_CACHE Normally the kernel maintains a `quicklist' of preallocated pagetable structures in order to increase performance. On machines with very few pages this may however be a loss. Say Y here to disable the pgtable cache. RISC OS personality CONFIG_ARTHUR Say Y here to include the kernel code necessary if you want to run Acorn RISC OS/Arthur binaries under Linux. This code is still very experimental; if this sounds frightening, say N and sleep in peace. You can also say M here to compile this support as a module (which will be called arthur.o). Initial kernel command line CONFIG_CMDLINE On some architectures (EBSA110 and CATS), there is currently no way for the boot loader to pass arguments to the kernel. For these architectures, you should supply some command-line options at build time by entering them here. As a minimum, you should specify the memory size and the root device (e.g., mem=64M root=/dev/nfs). Kernel-mode alignment trap handler CONFIG_ALIGNMENT_TRAP ARM processors can not fetch/store information which is not naturally aligned on the bus, i.e., a 4 byte fetch must start at an address divisible by 4. On 32-bit ARM processors, these non-aligned fetch/store instructions will be emulated in software if you say here, which has a severe performance impact. This is necessary for correct operation of some network protocols. With an IP-only configuration it is safe to say N, otherwise say Y. DC21285 serial port support CONFIG_SERIAL_21285 If you have a machine based on a 21285 (Footbridge) StrongARM(R)/ PCI bridge you can enable its onboard serial port by enabling this option. The device has major ID 4, minor 64. Console on DC21285 serial port CONFIG_SERIAL_21285_CONSOLE If you have enabled the serial port on the 21285 footbridge you can make it the console by answering Y to this option. SA1100 serial port support CONFIG_SERIAL_SA1100 * Orphaned entry retained 20 April 2001 by Russell King * * If you read this note from the configurator, please contact * * the Configure.help maintainers. * If you have a machine based on a SA1100/SA1110 StrongARM CPU you can enable its onboard serial port by enabling this option. Please read for further info. Console on SA1100 serial port CONFIG_SERIAL_SA1100_CONSOLE * Orphaned entry retained 20 April 2001 by Russell King * * If you read this note from the configurator, please contact * * the Configure.help maintainers. * If you have enabled the serial port on the SA1100/SA1110 StrongARM CPU you can make it the console by answering Y to this option. L7200 serial port support CONFIG_SERIAL_L7200 * Orphaned entry retained 20 April 2001 by Russell King * * If you read this note from the configurator, please contact * * the Configure.help maintainers. * If you have a LinkUp Systems L7200 board you can enable its two onboard serial ports by enabling this option. The device numbers are major ID 4 with minor 64 and 65 respectively. Console on L7200 serial port CONFIG_SERIAL_L7200_CONSOLE * Orphaned entry retained 20 April 2001 by Russell King * * If you read this note from the configurator, please contact * * the Configure.help maintainers. * If you have enabled the serial ports on the L7200 development board you can make the first serial port the console by answering Y to this option. L7200 SDB keyboard support CONFIG_KEYBOARD_L7200 * Orphaned entry retained 20 April 2001 by Russell King * * If you read this note from the configurator, please contact * * the Configure.help maintainers. * Enable this option if you would like to be able to use a keyboard on a LinkUp Systems L7200 board. L7200 SDB Fujitsu keyboard support CONFIG_KEYBOARD_L7200_NORM * Orphaned entry retained 20 April 2001 by Russell King * * If you read this note from the configurator, please contact * * the Configure.help maintainers. * Select the Fujitsu keyboard if you want a normal QWERTY style keyboard on the LinkUp SDB. L7200 SDB Prototype keyboard support CONFIG_KEYBOARD_L7200_DEMO * Orphaned entry retained 20 April 2001 by Russell King * * If you read this note from the configurator, please contact * * the Configure.help maintainers. * Select the prototype keyboard if you want to play with the LCD/keyboard combination on the LinkUp SDB. Footbridge Mode CONFIG_HOST_FOOTBRIDGE * Orphaned entry retained 20 April 2001 by Russell King * * If you read this note from the configurator, please contact * * the Configure.help maintainers. * The 21285 Footbridge chip can operate in either `host mode' or `add-in' mode. Say Y if your 21285 is in host mode, and therefore is the configuration master, otherwise say N. This must not be set to Y if the card is used in 'add-in' mode. MFM hard disk support CONFIG_BLK_DEV_MFM Support the MFM hard drives on the Acorn Archimedes both on-board the A4x0 motherboards and via the Acorn MFM modules. Drives up to 64MB are supported. If you haven't got one of these machines or drives just say N. Old Archimedes floppy (1772) support CONFIG_BLK_DEV_FD1772 Support the floppy drive on the Acorn Archimedes (A300, A4x0, A540, R140 and R260) series of computers; it supports only 720K floppies at the moment. If you don't have one of these machines just answer N. Autodetect hard drive geometry CONFIG_BLK_DEV_MFM_AUTODETECT If you answer Y, the MFM code will attempt to automatically detect the cylinders/heads/sectors count on your hard drive. WARNING: This sometimes doesn't work and it also does some dodgy stuff which potentially might damage your drive. NetWinder /dev/flash support CONFIG_NWFLASH If you say Y here and create a character device /dev/flash with major 10 and minor 160 you can manipulate the flash ROM containing the NetWinder firmware. Be careful as accidentally overwriting the flash contents can render your computer unbootable. On no account allow random users access to this device. :-) 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 nwflash.o. If you want to compile it as a module, say M here and read . If you're not sure, say N. SRM environment variables in procfs CONFIG_SRM_ENV If you enable this option, a subdirectory inside /proc called /proc/srm_environment will give you access to the all important SRM environment variables (those which have a name) and also to all others (by their internal number). SRM is something like a BIOS for Alpha machines. There are some other such BIOSes, like AlphaBIOS, which this driver cannot support (hey, that's not SRM!). Despite the fact that this driver doesn't work on all Alphas (but only on those which have SRM as their firmware), it's save to build it even if your particular machine doesn't know about SRM (or if you intend to compile a generic kernel). It will simply not create those subdirectory in /proc (and give you some warning, of course). This driver is also available as a module and will be called srm_env.o then. Footbridge internal watchdog CONFIG_21285_WATCHDOG The Intel Footbridge chip contains a builtin watchdog circuit. Say Y here if you wish to use this. Alternatively say M to compile the driver as a module, which will be called wdt285.o. This driver does not work on all machines. In particular, early CATS boards have hardware problems that will cause the machine to simply lock up if the watchdog fires. "If in doubt, leave it out" - say N. NetWinder WB83C977 watchdog CONFIG_977_WATCHDOG Say Y here to include support for the WB977 watchdog included in NetWinder machines. Alternatively say M to compile the driver as a module, which will be called wdt977.o. Not sure? It's safe to say N. IrDA subsystem support CONFIG_IRDA Say Y here if you want to build support for the IrDA (TM) protocols. The Infrared Data Associations (tm) specifies standards for wireless infrared communication and is supported by most laptops and PDA's. To use Linux support for the IrDA (tm) protocols, you will also need some user-space utilities like irattach. For more information, see the file . You also want to read the IR-HOWTO, available at . If you want to exchange bits of data (vCal, vCard) with a PDA, you will need to install some OBEX application, such as OpenObex : This support is also available as a module called irda.o. If you want to compile it as a module, say M here and read . Ultra (connectionless) protocol CONFIG_IRDA_ULTRA Say Y here to support the connectionless Ultra IRDA protocol. Ultra allows to exchange data over IrDA with really simple devices (watch, beacon) without the overhead of the IrDA protocol (no handshaking, no management frames, simple fixed header). Ultra is available as a special socket : socket(AF_IRDA, SOCK_DGRAM, 1); IrDA cache last LSAP CONFIG_IRDA_CACHE_LAST_LSAP Say Y here if you want IrLMP to cache the last LSAP used. This makes sense since most frames will be sent/received on the same connection. Enabling this option will save a hash-lookup per frame. If unsure, say Y. IrDA Fast RRs CONFIG_IRDA_FAST_RR Say Y here is you want IrLAP to send fast RR (Receive Ready) frames when acting as a primary station. Disabling this option will make latency over IrDA very bad. Enabling this option will make the IrDA stack send more packet than strictly necessary, thus reduce your battery life (but not that much). Fast RR will make IrLAP send out a RR frame immediately when receiving a frame if its own transmit queue is currently empty. This will give a lot of speed improvement when receiving much data since the secondary station will not have to wait the max. turn around time (usually 500ms) before it is allowed to transmit the next time. If the transmit queue of the secondary is also empty, the primary will start backing-off before sending another RR frame, waiting longer each time until the back-off reaches the max. turn around time. This back-off increase in controlled via /proc/sys/net/irda/fast_poll_increase If unsure, say Y. IrDA debugging information CONFIG_IRDA_DEBUG Say Y here if you want the IrDA subsystem to write debug information to your syslog. You can change the debug level in /proc/sys/net/irda/debug . When this option is enabled, the IrDA also perform many extra internal verifications which will usually prevent the kernel to crash in case of bugs. If unsure, say Y (since it makes it easier to find the bugs). IrLAN protocol CONFIG_IRLAN Say Y here if you want to build support for the IrLAN protocol. If you want to compile it as a module (irlan.o), say M here and read . IrLAN emulates an Ethernet and makes it possible to put up a wireless LAN using infrared beams. The IrLAN protocol can be used to talk with infrared access points like the HP NetbeamIR, or the ESI JetEye NET. You can also connect to another Linux machine running the IrLAN protocol for ad-hoc networking! IrNET protocol CONFIG_IRNET Say Y here if you want to build support for the IrNET protocol. If you want to compile it as a module (irnet.o), say M here and read . IrNET is a PPP driver, so you will also need a working PPP subsystem (driver, daemon and config)... IrNET is an alternate way to transfer TCP/IP traffic over IrDA. It uses synchronous PPP over a set of point to point IrDA sockets. You can use it between Linux machine or with W2k. IrCOMM protocol CONFIG_IRCOMM Say Y here if you want to build support for the IrCOMM protocol. If you want to compile it as a module (you will get ircomm.o and ircomm-tty.o), say M here and read . IrCOMM implements serial port emulation, and makes it possible to use all existing applications that understands TTY's with an infrared link. Thus you should be able to use application like PPP, minicom and others. Enabling this option will create two modules called ircomm and ircomm_tty. IrTTY IrDA Device Driver CONFIG_IRTTY_SIR Say Y here if you want to build support for the IrTTY line discipline. If you want to compile it as a module (irtty.o), say M here and read . IrTTY makes it possible to use Linux's own serial driver for all IrDA ports that are 16550 compatible. Most IrDA chips are 16550 compatible so you should probably say Y to this option. Using IrTTY will however limit the speed of the connection to 115200 bps (IrDA SIR mode). If unsure, say Y. IrPORT IrDA serial driver CONFIG_IRPORT_SIR Say Y here if you want to build support for the IrPORT IrDA device driver. If you want to compile it as a module (irport.o), say M here and read . IrPORT can be used instead of IrTTY and sometimes this can be better. One example is if your IrDA port does not have echo-canceling, which will work OK with IrPORT since this driver is working in half-duplex mode only. You don't need to use irattach with IrPORT, but you just insert it the same way as FIR drivers (insmod irport io=0x3e8 irq=11). Notice that IrPORT is a SIR device driver which means that speed is limited to 115200 bps. If unsure, say Y. USB IrDA FIR dongle Device Driver CONFIG_USB_IRDA Say Y here if you want to build support for the USB IrDA FIR Dongle device driver. If you want to compile it as a module (irda-usb.o), say M here and read . IrDA-USB support the various IrDA USB dongles available and most of their peculiarities. Those dongles plug in the USB port of your computer, are plug and play, and support SIR and FIR (4Mbps) speeds. On the other hand, those dongles tend to be less efficient than a FIR chipset. Please note that the driver is still experimental. And of course, you will need both USB and IrDA support in your kernel... Datafab MDCFE-B Compact Flash Reader support CONFIG_USB_STORAGE_DATAFAB This option enables a sub-driver of the USB Mass Storage driver. These sub-drivers are considered experimental, and should only be used by very brave people. System crashes and other bad things are likely to occur if you use this driver. If in doubt, select N. HP CD-Writer 82xx support CONFIG_USB_STORAGE_HP8200e This option enables a sub-driver of the USB Mass Storage driver. These sub-drivers are considered experimental, and should only be used by very brave people. System crashes and other bad things are likely to occur if you use this driver. If in doubt, select N. Lexar Jumpshot Compact Flash Reader CONFIG_USB_STORAGE_JUMPSHOT This option enables a sub-driver of the USB Mass Storage driver. These sub-drivers are considered experimental, and should only be used by very brave people. System crashes and other bad things are likely to occur if you use this driver. If in doubt, select N. Winbond W83977AF IrDA Device Driver CONFIG_WINBOND_FIR Say Y here if you want to build IrDA support for the Winbond W83977AF super-io chipset. This driver should be used for the IrDA chipset in the Corel NetWinder. The driver supports SIR, MIR and FIR (4Mbps) speeds. If you want to compile it as a module, say M here and read . The module will be called w83977af_ir.o. NSC PC87108/PC87338 IrDA Device Driver CONFIG_NSC_FIR Say Y here if you want to build support for the NSC PC87108 and PC87338 IrDA chipsets. This driver supports SIR, MIR and FIR (4Mbps) speeds. If you want to compile it as a module, say M here and read . The module will be called nsc-ircc.o. National Semiconductor DP83820 support CONFIG_NS83820 This is a driver for the National Semiconductor DP83820 series of gigabit ethernet MACs. Cards using this chipset include: SMC 9452TX SMC SMC9462TX D-Link DGE-500T PureData PDP8023Z-TG SOHO-GA2000T SOHO-GA2500T. NetGear GA621 This driver supports the use of zero copy on tx, checksum validation on rx, and 64 bit addressing. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ns83820.o. Toshiba Type-O IR Port device driver (old driver) CONFIG_TOSHIBA_OLD Say Y here if you want to build support for the Toshiba Type-O IR chipset. This chipset is used by the Toshiba Libretto 100CT, and many more laptops. This driver is obsolete, will no more be maintained and will be removed in favor of the new driver. If you want to compile it as a module, say M here and read . The module will be called toshoboe.o. Toshiba Type-O IR Port device driver CONFIG_TOSHIBA_FIR Say Y here if you want to build support for the Toshiba Type-O IR and Donau oboe chipsets. These chipsets are used by the Toshiba Libretto 100/110CT, Tecra 8100, Portege 7020 and many more laptops. If you want to compile it as a module, say M here and read . The module will be called donauboe.o. SMC IrCC CONFIG_SMC_IRCC_FIR Say Y here if you want to build support for the SMC Infrared Communications Controller. It is used in the Fujitsu Lifebook 635t and Sony PCG-505TX. If you want to compile it as a module, say M here and read . The module will be called smc-ircc.o. ALi M5123 FIR controller driver CONFIG_ALI_FIR Say Y here if you want to build support for the ALi M5123 FIR Controller. The ALi M5123 FIR Controller is embedded in ALi M1543C, M1535, M1535D, M1535+, M1535D Sourth Bridge. This driver supports SIR, MIR and FIR (4Mbps) speeds. If you want to compile it as a module, say M here and read . The module will be called ali-ircc.o. VLSI 82C147 PCI-IrDA SIR/MIR/FIR Controller driver CONFIG_VLSI_FIR Say Y here if you want to build support for the VLSI 82C147 PCI-IrDA Controller. This controller is used by the HP OmniBook 800 and 5500 notebooks. The driver provides support for SIR, MIR and FIR (4Mbps) speeds. If you want to compile it as a module, say M here and read . The module will be called vlsi_ir.o. Serial dongle support CONFIG_DONGLE Say Y here if you have an infrared device that connects to your computer's serial port. These devices are called dongles. Then say Y or M to the driver for your particular dongle below. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about serial dongles. ESI JetEye PC dongle CONFIG_ESI_DONGLE Say Y here if you want to build support for the Extended Systems JetEye PC dongle. If you want to compile it as a module, say M here and read . The ESI dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for ESI dongles you will have to start irattach like this: "irattach -d esi". If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called esi.o. ACTiSYS IR-220L and IR220L+ dongle CONFIG_ACTISYS_DONGLE Say Y here if you want to build support for the ACTiSYS IR-220L and IR220L+ dongles. If you want to compile it as a module, say M here and read . The ACTiSYS dongles attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for ACTiSYS dongles you will have to start irattach like this: "irattach -d actisys" or "irattach -d actisys+". If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called actisys.o. Tekram IrMate 210B dongle CONFIG_TEKRAM_DONGLE Say Y here if you want to build support for the Tekram IrMate 210B dongle. If you want to compile it as a module, say M here and read . The Tekram dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for Tekram dongles you will have to start irattach like this: "irattach -d tekram". If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called tekram.o. Greenwich GIrBIL dongle CONFIG_GIRBIL_DONGLE Say Y here if you want to build support for the Greenwich GIrBIL dongle. If you want to compile it as a module, say M here and read . The Greenwich dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for Greenwich dongles you will have to insert "irattach -d girbil" in the /etc/irda/drivers script. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called girbil.o. Parallax LiteLink dongle CONFIG_LITELINK_DONGLE Say Y here if you want to build support for the Parallax Litelink dongle. If you want to compile it as a module, say M here and read . The Parallax dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for Parallax dongles you will have to start irattach like this "irattach -d litelink". If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called litelink.o. Microchip MCP2120 dongle CONFIG_MCP2120_DONGLE Say Y here if you want to build support for the Microchip MCP2120 dongle. If you want to compile it as a module, say M here and read . The MCP2120 dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for MCP2120 dongles you will have to insert "irattach -d mcp2120" in the /etc/irda/drivers script. You must build this dongle yourself. For more information see: Old Belkin dongle CONFIG_OLD_BELKIN_DONGLE Say Y here if you want to build support for the Adaptec Airport 1000 and 2000 dongles. If you want to compile it as a module, say M here and read . The module will be called old_belkin.o. Some information is contained in the comments at the top of . ACTiSYS IR-200L dongle (Experimental) CONFIG_ACT200L_DONGLE Say Y here if you want to build support for the ACTiSYS IR-200L dongle. If you want to compile it as a module, say M here and read Documentation/modules.txt. The ACTiSYS IR-200L dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for ACTiSYS IR-200L dongles you will have to start irattach like this: "irattach -d act200l". Mobile Action MA600 dongle (Experimental) CONFIG_MA600_DONGLE Say Y here if you want to build support for the Mobile Action MA600 dongle. If you want to compile it as a module, say M here and read . The MA600 dongle attaches to the normal 9-pin serial port connector, and can currently only be tested on IrCOMM. To activate support for MA600 dongles you will have to insert "irattach -d ma600" in the /etc/irda/drivers script. Note: irutils 0.9.15 requires no modification. irutils 0.9.9 needs modification. For more information, download the following tar gzip file. There is a pre-compiled module on VME (Motorola and BVM) support CONFIG_VME Say Y here if you want to build a kernel for a 680x0 based VME board. Boards currently supported include Motorola boards MVME147, MVME162, MVME166, MVME167, MVME172, and MVME177. BVME4000 and BVME6000 boards from BVM Ltd are also supported. MVME147 support CONFIG_MVME147 Say Y to include support for early Motorola VME boards. This will build a kernel which can run on MVME147 single-board computers. If you select this option you will have to select the appropriate drivers for SCSI, Ethernet and serial ports later on. MVME162, 166 and 167 support CONFIG_MVME16x Say Y to include support for Motorola VME boards. This will build a kernel which can run on MVME162, MVME166, MVME167, MVME172, and MVME177 boards. If you select this option you will have to select the appropriate drivers for SCSI, Ethernet and serial ports later on. BVME4000 and BVME6000 support CONFIG_BVME6000 Say Y to include support for VME boards from BVM Ltd. This will build a kernel which can run on BVME4000 and BVME6000 boards. If you select this option you will have to select the appropriate drivers for SCSI, Ethernet and serial ports later on. Use write-through caching for 68060 supervisor accesses CONFIG_060_WRITETHROUGH The 68060 generally uses copyback caching of recently accessed data. Copyback caching means that memory writes will be held in an on-chip cache and only written back to memory some time later. Saying Y here will force supervisor (kernel) accesses to use writethrough caching. Writethrough caching means that data is written to memory straight away, so that cache and memory data always agree. Writethrough caching is less efficient, but is needed for some drivers on 68060 based systems where the 68060 bus snooping signal is hardwired on. The 53c710 SCSI driver is known to suffer from this problem. WD33C93 SCSI driver for MVME147 CONFIG_MVME147_SCSI Support for the on-board SCSI controller on the Motorola MVME147 single-board computer. SCC support for MVME147 serial ports CONFIG_MVME147_SCC This is the driver for the serial ports on the Motorola MVME147 boards. Everyone using one of these boards should say Y here. NCR53C710 SCSI driver for MVME16x CONFIG_MVME16x_SCSI The Motorola MVME162, 166, 167, 172 and 177 boards use the NCR53C710 SCSI controller chip. Almost everyone using one of these boards will want to say Y to this question. NCR53C710 SCSI driver for BVME6000 CONFIG_BVME6000_SCSI The BVME4000 and BVME6000 boards from BVM Ltd use the NCR53C710 SCSI controller chip. Almost everyone using one of these boards will want to say Y to this question. MVME147 (Lance) Ethernet support CONFIG_MVME147_NET Support for the on-board Ethernet interface on the Motorola MVME147 single-board computer. Say Y here to include the driver for this chip in your kernel. If you want to compile it as a module, say M here and read . MVME16x Ethernet support CONFIG_MVME16x_NET This is the driver for the Ethernet interface on the Motorola MVME162, 166, 167, 172 and 177 boards. Say Y here to include the driver for this chip in your kernel. If you want to compile it as a module, say M here and read . BVME6000 Ethernet support CONFIG_BVME6000_NET This is the driver for the Ethernet interface on BVME4000 and BVME6000 VME boards. Say Y here to include the driver for this chip in your kernel. If you want to compile it as a module, say M here and read . CD2401 support for MVME166/7 serial ports CONFIG_SERIAL167 This is the driver for the serial ports on the Motorola MVME166, 167, and 172 boards. Everyone using one of these boards should say Y here. SCC support for MVME162 serial ports CONFIG_MVME162_SCC This is the driver for the serial ports on the Motorola MVME162 and 172 boards. Everyone using one of these boards should say Y here. SCC support for BVME6000 serial ports CONFIG_BVME6000_SCC This is the driver for the serial ports on the BVME4000 and BVME6000 boards from BVM Ltd. Everyone using one of these boards should say Y here. 7-Segment Display support CONFIG_DISPLAY7SEG 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 . 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. # Choice: cristype Etrax-100-LX-v1 CONFIG_ETRAX100LX Support version 1 of the Etrax 100LX. Etrax-100-LX-v2 CONFIG_ETRAX100LX_V2 Support version 2 of the Etrax 100LX. Etrax-100-LX-for-xsim-simulator CONFIG_SVINTO_SIM Support the xsim ETRAX Simulator. DRAM size (dec, in MB) CONFIG_ETRAX_DRAM_SIZE Size of DRAM (decimal in MB) typically 2, 8 or 16. ETRAX Flash Memory configuration CONFIG_ETRAX_FLASH_BUSWIDTH Width in bytes of the Flash bus (1, 2 or 4). Is usually 2. # Choice: crisleds LED configuration on PA CONFIG_ETRAX_PA_LEDS The Etrax network driver is responsible for flashing LED's when packets arrive and are sent. It uses macros defined in , and those macros are defined after what YOU choose in this option. The actual bits used are configured separately. Select this if the LEDs are on port PA. Some products put the leds on PB or a memory-mapped latch (CSP0) instead. LED configuration on PB CONFIG_ETRAX_PB_LEDS The Etrax network driver is responsible for flashing LED's when packets arrive and are sent. It uses macros defined in , and those macros are defined after what YOU choose in this option. The actual bits used are configured separately. Select this if the LEDs are on port PB. Some products put the leds on PA or a memory-mapped latch (CSP0) instead. LED configuration on CSP0 CONFIG_ETRAX_CSP0_LEDS The Etrax network driver is responsible for flashing LED's when packets arrive and are sent. It uses macros defined in , and those macros are defined after what YOU choose in this option. The actual bits used are configured separately. Select this if the LEDs are on a memory-mapped latch using chip select CSP0, this is mapped at 0x90000000. Some products put the leds on PA or PB instead. No LED at all CONFIG_ETRAX_NO_LEDS Select this option if you don't have any LED at all. First green LED bit CONFIG_ETRAX_LED1G Bit to use for the first green LED. Most Axis products use bit 2 here. First red LED bit CONFIG_ETRAX_LED1R Bit to use for the first red LED. Most Axis products use bit 3 here. For products with only one controllable LED, set this to same as CONFIG_ETRAX_LED1G (normally 2). Second green LED bit CONFIG_ETRAX_LED2G Bit to use for the second green LED. The "Active" LED. Most Axis products use bit 4 here. For products with only one controllable LED, set this to same as CONFIG_ETRAX_LED1G (normally 2). Second red LED bit CONFIG_ETRAX_LED2R Bit to use for the second red LED. Most Axis products use bit 5 here. For products with only one controllable LED, set this to same as CONFIG_ETRAX_LED1G (normally 2). Third green LED bit CONFIG_ETRAX_LED3G Bit to use for the third green LED. The "Drive" LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Third red LED bit CONFIG_ETRAX_LED3R Bit to use for the third red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Fourth green LED bit CONFIG_ETRAX_LED4G Bit to use for the fourth green LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Fourth red LED bit CONFIG_ETRAX_LED4R Bit to use for the fourth red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Fifth green LED bit CONFIG_ETRAX_LED5G Bit to use for the fifth green LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Fifth red LED bit CONFIG_ETRAX_LED5R Bit to use for the fifth red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Sixth green LED bit CONFIG_ETRAX_LED6G Bit to use for the sixth green LED. The "Drive" LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Sixth red LED bit CONFIG_ETRAX_LED6R Bit to use for the sixth red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Seventh green LED bit CONFIG_ETRAX_LED7G Bit to use for the seventh green LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Seventh red LED bit CONFIG_ETRAX_LED7R Bit to use for the seventh red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Eighth yellow LED bit CONFIG_ETRAX_LED8Y Bit to use for the eighth yellow LED. The "Drive" LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Ninth yellow LED bit CONFIG_ETRAX_LED9Y Bit to use for the ninth yellow LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Tenth yellow LED bit CONFIG_ETRAX_LED10Y Bit to use for the tenth yellow LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Eleventh yellow LED bit CONFIG_ETRAX_LED11Y Bit to use for the eleventh yellow LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Twelfth red LED bit CONFIG_ETRAX_LED12R Bit to use for the twelfth red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). Flash LED off during activity CONFIG_ETRAX_LED_OFF_DURING_ACTIVITY This option allows you to decide whether the network LED (and Bluetooth LED in case you use Bluetooth) will be on or off when the network is connected, and whether it should flash off or on when there is activity. If you say y to this option the network LED will be lit when there is a connection, and will flash off when there is activity. PA button configuration CONFIG_ETRAX_PA_BUTTON_BITMASK This is a bitmask with information about what bits on PA that are used for buttons. Most products has a so called TEST button on PA1, if that's true use 02 here. Use 00 if there are no buttons on PA. If the bitmask is <> 00 a button driver will be included in the gpio driver. Etrax general I/O support must be enabled. PA changeable direction bits CONFIG_ETRAX_PA_CHANGEABLE_DIR This is a bitmask with information of what bits in PA that a user can change direction on using ioctl's. Bit set = changeable. You probably want 00 here. PA changeable data bits CONFIG_ETRAX_PA_CHANGEABLE_BITS This is a bitmask with information of what bits in PA that a user can change change the value on using ioctl's. Bit set = changeable. You probably want 00 here. PA changeable direction bits CONFIG_ETRAX_PB_CHANGEABLE_DIR This is a bitmask with information of what bits in PB that a user can change direction on using ioctl's. Bit set = changeable. You probably want 00 here. PB changeable data bits CONFIG_ETRAX_PB_CHANGEABLE_BITS This is a bitmask with information of what bits in PB that a user can change the value on using ioctl's. Bit set = changeable. You probably want 00 here. Kernel debugger (kgdb) CONFIG_ETRAX_KGDB The CRIS version of gdb can be used to remotely debug a running Linux kernel via the serial debug port. Provided you have gdb-cris installed, run gdb-cris vmlinux, then type (gdb) set remotebaud 115200 <- kgdb uses 115200 as default (gdb) target remote /dev/ttyS0 <- maybe you use another port This should connect you to your booted kernel (or boot it now if you didn't before). The kernel halts when it boots, waiting for gdb if this option is turned on! Etrax bus waitstates CONFIG_ETRAX_DEF_R_WAITSTATES Waitstates for SRAM, Flash and peripherals (not DRAM). 95f8 is a good choice for most Axis products... Etrax bus configuration CONFIG_ETRAX_DEF_R_BUS_CONFIG Assorted bits controlling write mode, DMA burst length etc. 104 is a good choice for most Axis products... Etrax SDRAM configuration CONFIG_ETRAX_SDRAM Enable this if you use SDRAM chips and configure R_SDRAM_CONFIG and R_SDRAM_TIMING as well. DRAM size (dec, in MB) CONFIG_ETRAX_DEF_R_DRAM_CONFIG The R_DRAM_CONFIG register specifies everything on how the DRAM chips in the system are connected to the Etrax CPU. This is different depending on the manufacturer, chip type and number of chips. So this value often needs to be different for each Axis product. Etrax DRAM timing CONFIG_ETRAX_DEF_R_DRAM_TIMING Different DRAM chips have different speeds. Current Axis products use 50ns DRAM chips which can use the timing: 5611. Etrax SDRAM configuration CONFIG_ETRAX_DEF_R_SDRAM_CONFIG The R_SDRAM_CONFIG register specifies everything on how the SDRAM chips in the system are connected to the Etrax CPU. This is different depending on the manufacturer, chip type and number of chips. So this value often needs to be different for each Axis product. Etrax SDRAM timing CONFIG_ETRAX_DEF_R_SDRAM_TIMING Different SDRAM chips have different timing. Etrax General port A direction CONFIG_ETRAX_DEF_R_PORT_PA_DIR Configures the direction of general port A bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. Etrax General port A data CONFIG_ETRAX_DEF_R_PORT_PA_DATA Configures the initial data for the general port A bits. Most products should use 00 here. Etrax General port B config CONFIG_ETRAX_DEF_R_PORT_PB_CONFIG Configures the type of the general port B bits. 1 is chip select, 0 is port. Most products should use 00 here. Etrax General port B direction CONFIG_ETRAX_DEF_R_PORT_PB_DIR Configures the direction of general port B bits. 1 is out, 0 is in. This is often totally different depending on the product used. Bits 0 and 1 on port PB are usually used for I2C communication, but the kernel I2C driver sets the appropriate directions itself so you don't need to take that into consideration when setting this option. If you don't know what to use, it is always safe to put all as inputs. Etrax General port B data CONFIG_ETRAX_DEF_R_PORT_PB_DATA Configures the initial data for the general port A bits. Most products should use FF here. Etrax General port device CONFIG_ETRAX_GPIO Enables the Etrax general port device (major 120, minors 0 and 1). You can use this driver to access the general port bits. It supports these ioctl's: #include fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set); ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear); val = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READBITS), NULL); Remember that you need to setup the port directions appropriately in the General configuration. Etrax parallel data support CONFIG_ETRAX_PARDATA Adds support for writing data to the parallel port par0 of the ETRAX 100. If you create a character special file with major number 126, you can write to the data bits of par0. Note: you need to disable Etrax100 parallel port support. Etrax parallel LCD (HD44780) Driver CONFIG_ETRAX_LCD_HD44780 Adds support for a HD44780 controlled LCD connected to the parallel port par0 of the Etrax. Etrax Serial port ser0 support CONFIG_ETRAX_SERIAL Enables the ETRAX 100 serial driver for ser0 (ttyS0) You probably want this enabled. /proc/serial entry CONFIG_ETRAX_SERIAL_PROC_ENTRY Enables /proc/serial entry where errors and statistics can be viewed. CONFIG_PROC_FS must also be set for this to work. Etrax Serial port fast flush of DMA using fast timer API CONFIG_ETRAX_SERIAL_FAST_TIMER Select this to have the serial DMAs flushed at a higher rate than normally, possible by using the fast timer API, the timeout is approx. 4 character times. If unsure, say N. Etrax Serial port fast flush of DMA CONFIG_ETRAX_SERIAL_FLUSH_DMA_FAST Select this to have the serial DMAs flushed at a higher rate than normally possible through a fast timer interrupt (currently at 15360 Hz). If unsure, say N. Etrax Serial port receive flush timeout CONFIG_ETRAX_SERIAL_RX_TIMEOUT_TICKS Number of timer ticks between flush of receive fifo (1 tick = 10ms). Try 0-3 for low latency applications. Approx 5 for high load applications (e.g. PPP). Maybe this should be more adaptive some day... Etrax Serial port ser0 DTR, RI, DSR and CD support on PB CONFIG_ETRAX_SER0_DTR_RI_DSR_CD_ON_PB Enables the status and control signals DTR, RI, DSR and CD on PB for ser0. Serial port 1 enabled CONFIG_ETRAX_SERIAL_PORT1 Enables the ETRAX 100 serial driver for ser1 (ttyS1). Etrax Serial port ser1 DTR, RI, DSR and CD support on PB CONFIG_ETRAX_SER1_DTR_RI_DSR_CD_ON_PB Enables the status and control signals DTR, RI, DSR and CD on PB for ser1. Serial port 2 enabled CONFIG_ETRAX_SERIAL_PORT2 Enables the ETRAX 100 serial driver for ser2 (ttyS2). Etrax Serial port ser2 DTR, RI, DSR and CD support on PA CONFIG_ETRAX_SER2_DTR_RI_DSR_CD_ON_PA Enables the status and control signals DTR, RI, DSR and CD on PA for ser2. Serial port 3 enabled CONFIG_ETRAX_SERIAL_PORT3 Enables the ETRAX 100 serial driver for ser3 (ttyS3). Etrax100 RS-485 support CONFIG_ETRAX_RS485 Enables support for RS-485 serial communication. For a primer on RS-485, see . Etrax100 RS-485 mode on PA CONFIG_ETRAX_RS485_ON_PA Control Driver Output Enable on RS485 transceiver using a pin on PA port: Axis 2400/2401 uses PA 3. Etrax100 RS-485 mode on PA bit CONFIG_ETRAX_RS485_ON_PA_BIT Control Driver Output Enable on RS485 transceiver using a this bit on PA port. Ser0 DTR on PB bit CONFIG_ETRAX_SER0_DTR_ON_PB_BIT Specify the pin of the PB port to carry the DTR signal for serial port 0. Ser0 RI on PB bit CONFIG_ETRAX_SER0_RI_ON_PB_BIT Specify the pin of the PB port to carry the RI signal for serial port 0. Ser0 DSR on PB bit CONFIG_ETRAX_SER0_DSR_ON_PB_BIT Specify the pin of the PB port to carry the DSR signal for serial port 0. Ser0 CD on PB bit CONFIG_ETRAX_SER0_CD_ON_PB_BIT Specify the pin of the PB port to carry the CD signal for serial port 0. Ser1 DTR on PB bit CONFIG_ETRAX_SER1_DTR_ON_PB_BIT Specify the pin of the PB port to carry the DTR signal for serial port 1. Ser1 RI on PB bit CONFIG_ETRAX_SER1_RI_ON_PB_BIT Specify the pin of the PB port to carry the RI signal for serial port 1. Ser1 DSR on PB bit CONFIG_ETRAX_SER1_DSR_ON_PB_BIT Specify the pin of the PB port to carry the DSR signal for serial port 1. Ser1 CD on PB bit CONFIG_ETRAX_SER1_CD_ON_PB_BIT Specify the pin of the PB port to carry the CD signal for serial port 1. Ser2 DTR on PA bit CONFIG_ETRAX_SER2_DTR_ON_PA_BIT Specify the pin of the PA port to carry the DTR signal for serial port 2. Ser2 RI on PA bit CONFIG_ETRAX_SER2_RI_ON_PA_BIT Specify the pin of the PA port to carry the RI signal for serial port 2. Ser2 DSR on PA bit CONFIG_ETRAX_SER2_DSR_ON_PA_BIT Specify the pin of the PA port to carry the DTR signal for serial port 2. Ser2 CD on PA bit CONFIG_ETRAX_SER2_CD_ON_PA_BIT Specify the pin of the PA port to carry the CD signal for serial port 2. Etrax100 RS-485 disable receiver CONFIG_ETRAX_RS485_DISABLE_RECEIVER It's necessary to disable the serial receiver to avoid serial loopback. Not all products are able to do this in software only. Axis 2400/2401 must disable receiver. Etrax100 I2C Support CONFIG_ETRAX_I2C Enables an I2C driver on PB0 and PB1 on ETRAX100. EXAMPLE usage: i2c_arg = I2C_WRITEARG(STA013_WRITE_ADDR, reg, val); ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_WRITEREG), i2c_arg); i2c_arg = I2C_READARG(STA013_READ_ADDR, reg); val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg); Etrax100 I2C configuration CONFIG_ETRAX_I2C_USES_PB_NOT_PB_I2C Select whether to use the special I2C mode in the PB I/O register or not. This option needs to be selected in order to use some drivers that access the I2C I/O pins directly instead of going through the I2C driver, like the DS1302 realtime-clock driver. If you are uncertain, choose Y here. Etrax100 I2C EEPROM (NVRAM) support CONFIG_ETRAX_I2C_EEPROM Enables I2C EEPROM (non-volatile RAM) on PB0 and PB1 using the I2C driver. Select size option: Probed, 2k, 8k, 16k. (Probing works for 2k and 8k but not that well for 16k) Etrax100 I2C EEPROM (NVRAM) size/16kB CONFIG_ETRAX_I2C_EEPROM_16KB Use a 16kB EEPROM. Etrax100 I2C EEPROM (NVRAM) size/2kB CONFIG_ETRAX_I2C_EEPROM_2KB Use a 2kB EEPROM. Etrax100 I2C EEPROM (NVRAM) size/8kB CONFIG_ETRAX_I2C_EEPROM_8KB Use a 8kB EEPROM. # Choice: etrax_eeprom Etrax100 I2C EEPROM (NVRAM) size/probe CONFIG_ETRAX_I2C_EEPROM_PROBE Specifies size or auto probe of the EEPROM size. Options: Probed, 2k, 8k, 16k. (Probing works for 2k and 8k but not that well for 16k) Etrax DS1302 Real-Time Clock driver CONFIG_ETRAX_DS1302 Enables the driver for the DS1302 Real-Time Clock battery-backed chip on some products. The kernel reads the time when booting, and the date can be set using ioctl(fd, RTC_SET_TIME, &rt) with rt a rtc_time struct (see ) on the /dev/rtc device, major 121. You can check the time with cat /proc/rtc, but normal time reading should be done using libc function time and friends. Etrax DS1302 RST on the Generic Port CONFIG_ETRAX_DS1302_RST_ON_GENERIC_PORT If your product has the RST signal line for the DS1302 RTC on the Generic Port then say Y here, otherwise leave it as N in which case the RST signal line is assumed to be connected to Port PB (just like the SCL and SDA lines). Etrax DS1302 RST bit number CONFIG_ETRAX_DS1302_RSTBIT This is the bit number for the RST signal line of the DS1302 RTC on the selected port. If you have selected the generic port then it should be bit 27, otherwise your best bet is bit 5. Etrax DS1302 SCL bit number CONFIG_ETRAX_DS1302_SCLBIT This is the bit number for the SCL signal line of the DS1302 RTC on Port PB. This is probably best left at 3. Etrax DS1302 SDA bit number CONFIG_ETRAX_DS1302_SDABIT This is the bit number for the SDA signal line of the DS1302 RTC on Port PB. This is probably best left at 2. Etrax 100 IDE Reset CONFIG_ETRAX_IDE_CSP0_8_RESET Configures the pin used to reset the IDE bus. Etrax 100 IDE Reset CONFIG_ETRAX_IDE_CSPE1_16_RESET Configures the pin used to reset the IDE bus. Delay for drives to regain consciousness CONFIG_ETRAX_IDE_DELAY Sets the time to wait for disks to regain consciousness after reset. Etrax 100 IDE Reset CONFIG_ETRAX_IDE_G27_RESET Configures the pin used to reset the IDE bus. # Choice: ide_reset IDE reset on PB Bit 7 CONFIG_ETRAX_IDE_PB7_RESET Configures the pin used to reset the IDE bus. USB 1.1 host CONFIG_ETRAX_USB_HOST This option enables the host functionality of the ETRAX 100LX built-in USB controller. In host mode the controller is designed for CTRL and BULK traffic only, INTR traffic may work as well however (depending on the requirements of timeliness). USB 1.1 host port 1 enabled CONFIG_ETRAX_USB_HOST_PORT1 This option enables port 1 of the ETRAX 100LX USB root hub (RH). USB 1.1 host port 2 enabled CONFIG_ETRAX_USB_HOST_PORT2 This option enables port 2 of the ETRAX 100LX USB root hub (RH). ETRAX 100LX 10/100Mbit Ethernet controller CONFIG_ETRAX_ETHERNET This option enables the ETRAX 100LX built-in 10/100Mbit Ethernet controller. ETRAX 100LX Synchronous serial ports CONFIG_ETRAX_SYNCHRONOUS_SERIAL This option enables support for the ETRAX 100LX built-in synchronous serial ports. These ports are used for continuous streamed data like audio. The default setting is compatible with the STA 013 MP3 decoder, but can easily be tuned to fit any other audio encoder/decoder and SPI. ETRAX 100LX Synchronous serial port 0 enabled CONFIG_ETRAX_SYNCHRONOUS_SERIAL_PORT0 Enables the ETRAX 100LX synchronous serial port 0 (syncser0). ETRAX 100LX Synchronous serial port 0 uses DMA CONFIG_ETRAX_SYNCHRONOUS_SERIAL0_DMA Makes synchronous serial port 0 use DMA. ETRAX 100LX Synchronous serial port 1 enabled CONFIG_ETRAX_SYNCHRONOUS_SERIAL_PORT1 Enables the ETRAX 100LX synchronous serial port 1 (syncser1). ETRAX 100LX Synchronous serial port 1 uses DMA CONFIG_ETRAX_SYNCHRONOUS_SERIAL1_DMA Makes synchronous serial port 1 use DMA. Delay for drives to regain consciousness CONFIG_IDE_DELAY Number of seconds to wait for IDE drives to spin up after an IDE reset. ARTPEC-1 support CONFIG_JULIETTE The ARTPEC-1 is a video-compression chip used in the AXIS 2100 network camera, which is built around an ETRAX-100 board. With this option selected, the ETRAX kernel configures a DMA channel at boot time to talk to the chip. Axis flash-map support CONFIG_ETRAX_AXISFLASHMAP This option enables MTD mapping of flash devices. Needed to use flash memories. If unsure, say Y. Byte-offset of partition table sector CONFIG_ETRAX_PTABLE_SECTOR Byte-offset of the partition table in the first flash chip. The default value is 64kB and should not be changed unless you know exactly what you are doing. The only valid reason for changing this is when the flash block size is bigger than 64kB (e.g. when using two parallel 16 bit flashes). Enable Etrax100 watchdog CONFIG_ETRAX_WATCHDOG Enable the built-in watchdog timer support on Etrax100 embedded network computers. # Choice: crisdebug Serial-0 CONFIG_ETRAX_DEBUG_PORT0 Choose a serial port for the ETRAX debug console. Default to port 0. Etrax debug port on ser1 CONFIG_ETRAX_DEBUG_PORT1 Use serial port 1 for the console. Etrax debug port on ser2 CONFIG_ETRAX_DEBUG_PORT2 Use serial port 2 for the console. Etrax debug port on ser3 CONFIG_ETRAX_DEBUG_PORT3 Use serial port 3 for the console. No Etrax debug port CONFIG_ETRAX_DEBUG_PORT_NULL Disable serial-port debugging. Parallel port support CONFIG_ETRAX_PARPORT Say Y here to enable the ETRAX on-board parallel ports. Parallel port 0 enabled CONFIG_ETRAX_PARALLEL_PORT0 Say Y here to enable parallel port 0. Parallel port 1 enabled CONFIG_ETRAX_PARALLEL_PORT1 Say Y here to enable parallel port 1. # Choice: crisrescue Select a product rescue port CONFIG_ETRAX_RESCUE_SER0 Select one of the four serial ports as a rescue port. The default is port 0. Serial-1 CONFIG_ETRAX_RESCUE_SER1 Use serial port 1 as the rescue port. Serial-2 CONFIG_ETRAX_RESCUE_SER2 Use serial port 2 as the rescue port. Serial-3 CONFIG_ETRAX_RESCUE_SER3 Use serial port 3 as the rescue port. RIO Hardware Watchdog support CONFIG_WATCHDOG_RIO 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. CP1XXX Hardware Watchdog support CONFIG_WATCHDOG_CP1XXX 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 . 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. # Choice: ia64type Itanium CONFIG_ITANIUM Select your IA64 processor type. The default is Intel Itanium. McKinley CONFIG_MCKINLEY Select this to configure for a McKinley processor. # Choice: ia64system IA-64 system type CONFIG_IA64_GENERIC This selects the system type of your hardware. A "generic" kernel will run on any supported IA-64 system. However, if you configure a kernel for your specific system, it will be faster and smaller. To find out what type of IA-64 system you have, you may want to check the IA-64 Linux web site at . As of the time of this writing, most hardware is DIG compliant, so the "DIG-compliant" option is usually the right choice. HP-simulator For the HP simulator (). HP-zx1 For HP zx1 Platforms. SN1 For SGI SN1 Platforms. SN2 For SGI SN2 Platforms. DIG-compliant For DIG ("Developer's Interface Guide") compliant systems. If you don't know what to do, choose "generic". CONFIG_IA64_HP_ZX1 Build a kernel that runs on HP zx1-based systems. This adds support for the zx1 IOMMU and makes root bus bridges appear in PCI config space (required for zx1 agpgart support). CONFIG_IA64_SGI_SN_SIM Build a kernel that runs on both the SGI simulator AND on hardware. There is a very slight performance penalty on hardware for including this option. CONFIG_IA64_SGI_SN_DEBUG This enables addition debug code that helps isolate platform/kernel bugs. There is a small but measurable performance degradation when this option is enabled. # Choice: pagesize Kernel page size CONFIG_IA64_PAGE_SIZE_4KB This lets you select the page size of the kernel. For best IA-64 performance, a page size of 8KB or 16KB is recommended. For best IA-32 compatibility, a page size of 4KB should be selected (the vast majority of IA-32 binaries work perfectly fine with a larger page size). For Itanium systems, do NOT chose a page size larger than 16KB. 4KB For best IA-32 compatibility 8KB For best IA-64 performance 16KB For best IA-64 performance 64KB Not for Itanium. If you don't know what to do, choose 8KB. Enable Itanium B-step specific code CONFIG_ITANIUM_BSTEP_SPECIFIC Select this option to build a kernel for an Itanium prototype system with a B-step CPU. Only B3 step CPUs are supported. You have a B3-step CPU if the "revision" field in /proc/cpuinfo is equal to 4. If the "revision" field shows a number bigger than 4, you do not have to turn on this option. Enable IA-64 Machine Check Abort CONFIG_IA64_MCA Say Y here to enable machine check support for IA-64. If you're unsure, answer Y. Disable IA-64 Virtual Hash Page Table CONFIG_DISABLE_VHPT The Virtual Hash Page Table (VHPT) enhances virtual address translation performance. Normally you want the VHPT active but you can select this option to disable the VHPT for debugging. If you're unsure, answer N. Turn on compare-and-exchange bug checking (slow!) CONFIG_IA64_DEBUG_CMPXCHG Selecting this option turns on bug checking for the IA64 compare-and-exchange instructions. This is slow! Itaniums from step B3 or later don't have this problem. If you're unsure, select N. IA64 IRQ bug checking CONFIG_IA64_DEBUG_IRQ Selecting this option turns on bug checking for the IA64 irq_save and restore instructions. It's useful for tracking down spinlock problems, but slow! If you're unsure, select N. Early printk support (requires VGA!) CONFIG_IA64_EARLY_PRINTK Selecting this option uses the VGA screen for printk() output before the consoles are initialised. It is useful for debugging problems early in the boot process, but only if you have a VGA screen attached. If you're unsure, select N. Print possible IA64 hazards to console CONFIG_IA64_PRINT_HAZARDS Selecting this option prints more information for Illegal Dependency Faults, that is, for Read after Write, Write after Write or Write after Read violations. If you're unsure, select Y. Performance monitor support CONFIG_PERFMON Selects whether support for the IA-64 performance monitor hardware is included in the kernel. This makes some kernel data-structures a little bigger and slows down execution a bit, but it is still usually a good idea to turn this on. If you're unsure, say N. /proc/pal support CONFIG_IA64_PALINFO If you say Y here, you are able to get PAL (Processor Abstraction Layer) information in /proc/pal. This contains useful information about the processors in your systems, such as cache and TLB sizes and the PAL firmware version in use. To use this option, you have to check that the "/proc file system support" (CONFIG_PROC_FS) is enabled, too. DSC21 serial port support CONFIG_SERIAL_DSC21 If you are using a DSC21, and want to use /dev/ttyS*, then say Y here. Also, turn off CONFIG_SERIAL. The dsc21 does not employ a 16550 compatible UART, so the standard Linux serial driver won't work. DSC21 serial console support CONFIG_SERIAL_DSC21_CONSOLE If you want to have a printk/login console over the DSC21's serial port then say Y here. Note that if you do this, you won't be able to use that port for anything else. Disable BDM signals CONFIG_BDM_DISABLE This option turns off the ColdFire debug module early in the boot process. This helps to reduce the electromagnetic emmissions from the BDM header. Since this is a software disable, it can be prevented via the BDM. Alternative kernel page allocator CONFIG_CONTIGUOUS_PAGE_ALLOC On systems with very little memory, a power of 2 allocator can rapidly reduce the amount of free memory leaving a lot of that allocated memory unused. Say you nneed to allocate 34K, you would actually allocate 64K and waste 28K doing so. This allocator allocates on 4K boundaries reducing this wastage significantly. It is perhaps a little slower and can suffer a little more from fragmentation, although in practice it is still better than uses a power of two. Contact davidm@snapgear.com with any problems usesing this allocator. Look at memory allocation CONFIG_MEM_MAP Provides and entry "/proc/mem_map" that gives you an ascii representation of the page allocations in the kernel, and what they are being used for. Reduce kernel task size CONFIG_SMALL_TASKS By default, 8K is used for a task in the m68k kernel. This option reduces it to 4K, of which approximately 3.2K is kernel stack. Be warned, this substantially reduces the kernel stack. /proc/efi/vars support CONFIG_EFI_VARS If you say Y here, you are able to get EFI (Extensible Firmware Interface) variable information in /proc/efi/vars. You may read, write, create, and destroy EFI variables through this interface. To use this option, you have to check that the "/proc file system support" (CONFIG_PROC_FS) is enabled, too. Kernel support for IA-32 emulation CONFIG_IA32_SUPPORT IA64 processors can run IA32 (that is, x86) binaries by emulating the IA32 instruction set. Say Y here to build in kernel support for this. If in doubt, say Y. Physical memory granularity (16 MB) CONFIG_IA64_GRANULE_16MB IA64 identity-mapped regions use a large page size. We'll call such large pages "granules". If you can think of a better name that's unambiguous, let us know... Unless your identity-mapped regions are very large, select a granule size of 16MB. Physical memory granularity (64 MB) CONFIG_IA64_GRANULE_64MB IA64 identity-mapped regions use a large page size. We'll call such large pages "granules". If you can think of a better name that's unambiguous, let us know... Unless your identity-mapped regions are very large, select a granule size of 16MB. (This is the "large" choice.) Enable SGI SN extra debugging code CONFIG_IA64_SGI_SN_DEBUG Turns on extra debugging code in the SGI SN (Scalable NUMA) platform for IA64. Unless you are debugging problems on an SGI SN IA64 box, say N. Enable SGI Medusa Simulator Support CONFIG_IA64_SGI_SN_SIM If you are compiling a kernel that will run under SGI's IA64 simulator (Medusa) then say Y, otherwise say N. PCIBA Support CONFIG_PCIBA IRIX PCIBA-inspired user mode PCI interface for the SGI SN (Scalable NUMA) platform for IA64. Unless you are compiling a kernel for an SGI SN IA64 box, say N. Enable protocol mode for the L1 console SERIAL_SGI_L1_PROTOCOL Uses protocol mode instead of raw mode for the level 1 console on the SGI SN (Scalable NUMA) platform for IA64. If you are compiling for an SGI SN box then Y is the recommended value, otherwise say N. Directly Connected Compact Flash support CONFIG_CF_ENABLER 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 . 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'. Kernel debugging CONFIG_DEBUG_KERNEL Say Y here if you are developing drivers or trying to debug and identify kernel problems. Debug memory allocations CONFIG_DEBUG_SLAB 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. Memory mapped I/O debugging CONFIG_DEBUG_IOVIRT Say Y here to get warned whenever an attempt is made to do I/O on obviously invalid addresses such as those generated when ioremap() calls are forgotten. Memory mapped I/O will go through an extra check to catch access to unmapped ISA addresses, an access method that can still be used by old drivers that are being ported from 2.0/2.2. Spinlock debugging CONFIG_DEBUG_SPINLOCK 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. Read-write spinlock debugging CONFIG_DEBUG_RWLOCK If you say Y here then read-write lock processing will count how many times it has tried to get the lock and issue an error message after too many attempts. If you suspect a rwlock problem or a kernel hacker asks for this option then say Y. Otherwise say N. Semaphore debugging CONFIG_DEBUG_SEMAPHORE If you say Y here then semaphore processing will issue lots of verbose debugging messages. If you suspect a semaphore problem or a kernel hacker asks for this option then say Y. Otherwise say N. Verbose BUG() reporting (adds 70K) CONFIG_DEBUG_BUGVERBOSE 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. Include kgdb kernel debugger CONFIG_KGDB Include in-kernel hooks for kgdb, the Linux kernel source level debugger. This project has a web page at . Include xmon kernel debugger CONFIG_XMON Include in-kernel hooks for the xmon kernel monitor/debugger supported by the PPC port. Include BDI2000 debugger support CONFIG_BDI_SWITCH Include in-kernel support for the Abatron BDI2000 debugger. To learn more about the Abatron BDI2000, visit the web page at . Add additional CFLAGS to the kernel build CONFIG_MORE_COMPILE_OPTIONS If you want to add additional CFLAGS to the kernel build, such as -g for KGDB, XMON or the BDI2000, enable this option and then enter what you would like to add in the next question. Include kgdb kernel debugger CONFIG_KWDB Include in-kernel hooks for kdb, the source level debugger for the PA-RISC port. IODC console CONFIG_IODC_CONSOLE IODC is HP's pre-PCI standard for device identification (a la PCI vendor, device IDs), detection, configuration, initialization and so on. It also can provide firmware function to do the actual IO, which are slow, not really defined for runtime usage and generally not desirable. See for the gory details. Say Y here to enable use of the IODC firmware functions for console I/O. This is only useful on older PA-RISC workstations. If in doubt, say Y. U2/Uturn I/O MMU CONFIG_IOMMU_CCIO 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. LBA/Elroy PCI support CONFIG_PCI_LBA 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. LASI I/O support CONFIG_GSC_LASI 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 . LASI/ASP builtin parallel-port CONFIG_PARPORT_GSC 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. Fujitsu Vendor Specific CONFIG_BLK_DEV_IDEDISK_FUJITSU Enable vendor-specific code for Fujitsu IDE disks. Unless you are the IDE maintainer, you probably do not want to mess with this. IBM Vendor Specific CONFIG_BLK_DEV_IDEDISK_IBM Enable vendor-specific code for IBM IDE disks. Unless you are the IDE maintainer, you probably do not want to mess with this. Maxtor Vendor Specific CONFIG_BLK_DEV_IDEDISK_MAXTOR Enable vendor-specific code for Maxtor IDE disks. Unless you are the IDE maintainer, you probably do not want to mess with this. Quantum Vendor Specific CONFIG_BLK_DEV_IDEDISK_QUANTUM Enable vendor-specific code for Quantum IDE disks. Unless you are the IDE maintainer, you probably do not want to mess with this. Seagate Vendor Specific CONFIG_BLK_DEV_IDEDISK_SEAGATE Enable vendor-specific code for Seagate IDE disks. Unless you are the IDE maintainer, you probably do not want to mess with this. Western Digital Vendor Specific CONFIG_BLK_DEV_IDEDISK_WD Enable vendor-specific code for Western Digital IDE disks. Unless you are the IDE maintainer, you probably do not want to mess with this. TiVo Commerial Application Specific CONFIG_BLK_DEV_TIVO Enable vendor-specific code for TiVo IDE disks. Unless you are the IDE maintainer, you probably do not want to mess with this. # Choice: superhsys Generic CONFIG_SH_GENERIC 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 command 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 evaluation board. Select Overdrive if configuring for a ST407750 Overdrive board. More information at . Select HP620 if configuring for a HP Jornada HP620. More information (hardware only) at . Select HP680 if configuring for a HP Jornada HP680. More information (hardware only) at . Select HP690 if configuring for a HP Jornada HP690. More information (hardware only) at . Select CqREEK if configuring for a CqREEK SH7708 or SH7750. More information at . Select DMIDA if configuring for a DataMyte 4000 Industrial Digital Assistant. More information at . 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 . There is a Dreamcast project is at . Select BareCPU if you know what this means, and it applies to your system. # These may have to be merged in when we go to CML2: # - "SolutionEngine7751" for Hitachi SolutionEngine (7751) # - "STB1_Harp" for STMicroelectronics HARP # - "CqREEK" for CQ Publishing CqREEK SH-4 # - "CAT68701" for CAT 68701 Evaluation Board (SH7708) # - "BigSur" for Big Sur Evaluation Board # - "SH2000" for SH2000 Evaluation Board (SH7709A) # - "ADX" for A&D ADX SolutionEngine CONFIG_SH_SOLUTION_ENGINE Select SolutionEngine if configuring for a Hitachi SH7709 or SH7750 evaluation board. 7751 SolutionEngine CONFIG_SH_7751_SOLUTION_ENGINE Select 7751 SolutionEngine if configuring for a Hitachi SH7751 evaluation board. Overdrive CONFIG_SH_OVERDRIVE Select Overdrive if configuring for a ST407750 Overdrive board. More information at . HP620 CONFIG_SH_HP620 Select HP620 if configuring for a HP jornada HP620. More information (hardware only) at . HP680 CONFIG_SH_HP680 Select HP680 if configuring for a HP Jornada HP680. More information (hardware only) at . HP690 CONFIG_SH_HP690 Select HP690 if configuring for a HP Jornada HP690. More information (hardware only) at . CqREEK CONFIG_SH_CQREEK Select CqREEK if configuring for a CqREEK SH7708 or SH7750. More information at . DMIDA CONFIG_SH_DMIDA Select DMIDA if configuring for a DataMyte 4000 Industrial Digital Assistant. More information at . EC3104 CONFIG_SH_EC3104 Select EC3104 if configuring for a system with an Eclipse International EC3104 chip, e.g. the Harris AD2000. Dreamcast CONFIG_SH_DREAMCAST Select Dreamcast if configuring for a SEGA Dreamcast. More information at . There is a Dreamcast project is at . BareCPU CONFIG_SH_UNKNOWN "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. # Choice: superhtype SH7707 CONFIG_CPU_SUBTYPE_SH7707 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 SH7708 CONFIG_CPU_SUBTYPE_SH7708 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or if you have a 100 Mhz SH-3 HD6417708R CPU. SH7709 CONFIG_CPU_SUBTYPE_SH7709 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. SH7750 CONFIG_CPU_SUBTYPE_SH7750 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. Physical memory start address CONFIG_MEMORY_START 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. Hitachi HD64461 companion chip support CONFIG_HD64461 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 . Say Y if you want support for the HD64461. Otherwise, say N. HD64461 PCMCIA enabler CONFIG_HD64461_ENABLER Say Y here if you want to enable PCMCIA support via the HD64461 companion chip. Otherwise, say N. HD64461 virtualized IRQ number CONFIG_HD64461_IRQ The default setting of the HD64461 IRQ is 36. Do not change this unless you know what you are doing. Hitachi HD64465 companion chip support CONFIG_HD64465 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 . Say Y if you want support for the HD64465. Otherwise, say N. HD64465 virtualized IRQ number CONFIG_HD64465_IRQ The default setting of the HD64465 IRQ is 5. Do not change this unless you know what you are doing. HD64465 start address CONFIG_HD64465_IOBASE The default setting of the HD64465 IO base address is 0xb0000000. Do not change this unless you know what you are doing. Early printk support CONFIG_SH_EARLY_PRINTK 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. SuperH SCI (serial) support CONFIG_SH_SCI 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". Use LinuxSH standard BIOS CONFIG_SH_STANDARD_BIOS 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. GDB Stub kernel debug CONFIG_DEBUG_KERNEL_WITH_GDB_STUB If you say Y here, it will be possible to remotely debug the SuperH kernel using gdb, if you have the gdb-sh-stub package from www.m17n.org (or any conforming standard LinuxSH BIOS) in FLASH or EPROM. This enlarges your kernel image disk size by several megabytes but allows you to load, run and debug the kernel image remotely using gdb. This is only useful for kernel hackers. If unsure, say N. Console output to GDB CONFIG_GDB_CONSOLE If you are using GDB for remote debugging over a serial port and would like kernel messages to be formatted into GDB $O packets so that GDB prints them as program output, say 'Y'. 802.1Q VLAN Support CONFIG_VLAN_8021Q Select this and you will be able to create 802.1Q VLAN interfaces on your ethernet interfaces. 802.1Q VLAN supports almost everything a regular ethernet interface does, including firewalling, bridging, and of course IP traffic. You will need the 'vconfig' tool from the VLAN project in order to effectively use VLANs. See the VLAN web page for more information: If unsure, you can safely say 'N'. ARC console support CONFIG_ARC_CONSOLE Support for the PROM-based console on MIPS machines built according to the Advanced Risc Computing specification, which is now (2001) dead. These included boxes from Deskstation, Acer, Olivetti and NEC. There is a history at . AUTCPU12 CONFIG_ARCH_AUTCPU12 Say Y if you intend to run the kernel on the autronix autcpu12 board. This board is based on a Cirrus Logic CS89712. IT8172 IDE support CONFIG_BLK_DEV_IT8172 Say Y here to support the on-board IDE controller on the Integrated Technology Express, Inc. ITE8172 SBC. Vendor page at ; picture of the board at . Support ARM926T processor CONFIG_CPU_ARM926T This is a variant of the ARM920. It has slightly different instruction sequences for cache and TLB operations. Curiously, there is no documentation on it at the ARM corporate website. Say Y if you want support for the ARM926T processor. Otherwise, say N. Support CPU clock change (EXPERIMENTAL) CONFIG_CPU_FREQ CPU clock scaling allows you to change the clock speed of the running CPU on the fly. This is a nice method to save battery power, because the lower the clock speed, the less power the CPU consumes. Note that this driver doesn't automatically change the CPU clock speed, you need some userland tools (which still have to be written) to implement the policy. If you don't understand what this is all about, it's safe to say 'N'. SiS CONFIG_DRM_SIS Choose this option if you have a SIS graphics card. AGP support is required for this driver to work. Etrax Ethernet slave support (over lp0/1) CONFIG_ETRAX_ETHERNET_LPSLAVE This option enables a slave ETRAX 100 or ETRAX 100LX, connected to a master ETRAX 100 or ETRAX 100LX through par0 and par1, to act as an Ethernet controller. Slave has its own LEDs CONFIG_ETRAX_ETHERNET_LPSLAVE_HAS_LEDS Enable if the slave has it's own LEDs. ATA/IDE support CONFIG_ETRAX_IDE Enable this to get support for ATA/IDE. You can't use parallel ports or SCSI ports at the same time. LED on when link CONFIG_ETRAX_NETWORK_LED_ON_WHEN_LINK Selecting LED_on_when_link will light the LED when there is a connection and will flash off when there is activity. Selecting LED_on_when_activity will light the LED only when there is activity. This setting will also affect the behaviour of other activity LEDs e.g. Bluetooth. Power button bit on port G CONFIG_ETRAX_POWERBUTTON_BIT Configure where power button is connected. Root device name CONFIG_ETRAX_ROOT_DEVICE Specifies the device that should be mounted as root file system when booting from flash. The axisflashmap driver adds an additional mtd partition for the appended root file system image, so this option should normally be the mtdblock device for the partition after the last partition in the partition table. Serial port 0 enabled CONFIG_ETRAX_SERIAL_PORT0 Enables the ETRAX 100 serial driver for ser0 (ttyS0) Normally you want this on, unless you use external DMA 1 that uses the same DMA channels. Shutdown bit on port CSP0 CONFIG_ETRAX_SHUTDOWN_BIT Configure what pin on CSPO-port that is used for controlling power supply. Software Shutdown Support CONFIG_ETRAX_SOFT_SHUTDOWN Enable this if Etrax is used with a power-supply that can be turned off and on with PS_ON signal. Gives the possibility to detect powerbutton and then do a power off after unmounting disks. Disable watchdog during Oops printouts CONFIG_ETRAX_WATCHDOG_NICE_DOGGY By enabling this you make sure that the watchdog does not bite while printing oopses. Recommended for development systems but not for production releases. Compaq iPAQ Handheld sleeve support CONFIG_H3600_SLEEVE Choose this option to enable support for extension packs (sleeves) for the Compaq iPAQ H3XXX series of handheld computers. This option is required for the CF, PCMCIA, Bluetooth and GSM/GPRS extension packs. AVM Fritz!Card PCI/PCIv2/PnP support (EXPERIMENTAL) CONFIG_HISAX_FRITZ_PCIPNP This enables the driver for the AVM Fritz!Card PCI, Fritz!Card PCI v2 and Fritz!Card PnP. (the latter also needs you to select "ISA Plug and Play support" from the menu "Plug and Play configuration") IBM PCI Hotplug driver CONFIG_HOTPLUG_PCI_IBM Say Y here if you have a motherboard with a IBM PCI Hotplug controller. 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 cpqphp.o. If you want to compile it as a module, say M here and read Documentation/modules.txt. When in doubt, say N. Enable autotest (llsc). Option to run cache test instead of booting CONFIG_IA64_SGI_AUTOTEST Build a kernel used for hardware validation. If you include the keyword "autotest" on the boot command line, the kernel does NOT boot. Instead, it starts all cpus and runs cache coherency tests instead. If unsure, say N. IEC61883-6 (Audio transmission) support CONFIG_IEEE1394_AMDTP This option enables the Audio & Music Data Transmission Protocol (IEC61883-6) driver, which implements audio transmission over IEEE1394. The userspace interface is documented in amdtp.h. 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 Documentation/modules.txt. The module will be called amdtp.o. IEC61883-1 Plug support CONFIG_IEEE1394_CMP This option enables the Connection Management Procedures (IEC61883-1) driver, which implements input and output plugs. 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 Documentation/modules.txt. The module will be called amdtp.o. OHCI-DV I/O support CONFIG_IEEE1394_DV1394 This driver allows you to transmit and receive DV (digital video) streams on an OHCI-1394 card using a simple frame-oriented interface. The user-space API for dv1394 is documented in dv1394.h. 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 Documentation/modules.txt. The module will be called dv1394.o. Ethernet over 1394 CONFIG_IEEE1394_ETH1394 Extremely Experimental! This driver is a Linux specific way to use your IEEE1394 Host as an Ethernet type device. This is _NOT_ IP1394. Support for older IT8172 (Rev C) CONFIG_IT8172_REVC Say Y here to support the older, Revision C version of the Integrated Technology Express, Inc. ITE8172 SBC. Vendor page at ; picture of the board at . Enable Smart Card Reader 0 Support CONFIG_IT8172_SCR0 Say Y here to support smart-card reader 0 (SCR0) on the Integrated Technology Express, Inc. ITE8172 SBC. Vendor page at ; picture of the board at . Enable Smart Card Reader 1 Support CONFIG_IT8172_SCR1 Say Y here to support smart-card reader 1 (SCR1) on the Integrated Technology Express, Inc. ITE8172 SBC. Vendor page at ; picture of the board at . IT8172 IDE Tuning support CONFIG_IT8172_TUNING Say Y here to support tuning the ITE8172's IDE interface. This makes it possible to set DMA channel or PIO opration and the transfer rate. Enable protocol mode for the L1 console CONFIG_SERIAL_SGI_L1_PROTOCOL Uses protocol mode instead of raw mode for the level 1 console on the SGI SN (Scalable NUMA) platform for IA64. If you are compiling for an SGI SN box then Y is the recommended value, otherwise say N. New bus configuration (EXPERIMENTAL) CONFIG_TULIP_MWI This configures your Tulip card specifically for the card and system cache line size type you are using. This is experimental code, not yet tested on many boards. If unsure, say N. # # A couple of things I keep forgetting: # capitalize: AppleTalk, Ethernet, DOS, DMA, FAT, FTP, Internet, # Intel, IRQ, ISDN, Linux, MSDOS, NetWare, NetWinder, # NFS, PCI, SCSI, SPARC # two words: file system, hard drive, hard disk, home page, # user space, web site # other: it's safe to save; daemon; use --, not - or ---; # use KB for 1024 bytes, not kB or K. # # # This is used by Emacs' spell checker ispell.el: # # LocalWords: CONFIG coprocessor DX Pentium SX lilo loadlin HOWTO ftp ibiblio # LocalWords: unc edu docs emu README kB BLK DEV FD Thinkpad fd MFM RLL IDE gz # LocalWords: cdrom diskless netboot nfs xzvf ATAPI MB ide pavia rubini pl pd # LocalWords: HD CD-ROMs IDECD NEC MITSUMI filesystem XT XD PCI BIOS cezar ATEN # LocalWords: ISA EISA Microchannel VESA BIOSes IPC SYSVIPC ipc Ctrl dmesg hlt # LocalWords: BINFMT Linkable http ac uk jo html GCC SPARC AVANTI CABRIOLET EB # LocalWords: netscape gcc LD CC toplevel MODVERSIONS insmod rmmod modprobe IP # LocalWords: genksyms INET loopback gatewaying Ethernet PPP ARP Arp MEMSIZE # LocalWords: howto multicasting MULTICAST MBONE firewalling ipfw ACCT resp ip # LocalWords: proc acct IPIP encapsulator decapsulator klogd RARP EXT PS # LocalWords: telnetting subnetted NAGLE rlogin NOSR ttyS TGA techinfo mbone nl # LocalWords: Mb SKB IPX Novell dosemu DDP ATALK vmalloc visar ehome # LocalWords: SD CHR scsi thingy SG CD LUNs LUN jukebox Adaptec BusLogic EATA # LocalWords: buslogic DMA DPT ATT eata dma PIO UltraStor fdomain umsdos ext # LocalWords: QLOGIC qlogic TMC seagate Trantor ultrastor FASST wd NETDEVICES # LocalWords: unix BBS linux CSLIP PLIP Kirch's LDP CSlip SL SCC IRQ csustan # LocalWords: Turbo Laplink plip NCSA port's ReQuest IRQs EQL SMC AMD PCnet NE # LocalWords: COM ELPLUS Com EtherLinkIII VLB Arcnet Cabletron DEPCA DE carlos # LocalWords: depca EtherWorks EWRK ewrk SEEQ EtherExpress EEXPRESS NI xxx dia # LocalWords: EtherExpress WaveLAN wavelan PCLAN HPLAN VG SK Ansel Xen de ZNET # LocalWords: PCMCIA cb stanford LAN TEC RealTek ATP atp DLINK NetTools VISWS # LocalWords: TR Sony CDU caddyless cdu Mitsumi MCD cd mcd XA MultiSession CDA # LocalWords: Matsushita Panasonic SBPCD Soundblaster Longshine sbpcd Aztech # LocalWords: Okano Wearnes AZTCD CDD SE aztcd sonycd Goldstar GSCD Philips fs # LocalWords: LMS OPTCD Sanyo SJCD minix faqs xiafs XIA msdos mtools Cichocki # LocalWords: std softlinks umssync NetworkFileSharing nfsd mountd CDs HPFS TI # LocalWords: hpfs SYSV SCO iBCS Wyse WordPerfect tsx mit unixes sysv NR irisa # LocalWords: SMB WfW Cyclades async mux Logitech busmouse MouseSystem aka AST # LocalWords: PSMOUSE Compaq trackballs Travelmate Inport ATIXL ATI busmice ld # LocalWords: gpm config QIC DYNCONF FTAPE Stor Ftape ftape pcsndrv manpage NT # LocalWords: readprofile diskdrives org com masq EtherTalk tcp netrom sunacm # LocalWords: misc AIC aic pio scc Portmaster eql GIS PhotoCDs MCDX Perell PG # LocalWords: mcdx gscd optcd sjcd ISP hdparm Workgroups Lan samba PARIDE PCD # LocalWords: filesystems smbfs ATA ppp PCTech RZ www powerquest txt CMD ESDI # LocalWords: chipset FB multicast MROUTE appletalk ifconfig IBMTR multiport # LocalWords: Multisession STALDRV EasyIO EC EasyConnection ISTALLION ONboard # LocalWords: Brumby pci TNC cis ohio faq usenet NETLINK dev hydra ca Tyne mem # LocalWords: carleton DECstation SUNFD JENSEN Noname XXXM SLiRP LILO's amifb # LocalWords: pppd Zilog ZS SRM bootloader ez mainmenu rarp ipfwadm paride pcd # LocalWords: RTNETLINK mknod xos MTU lwared Macs netatalk macs cs Wolff # LocalWords: dartmouth flowerpt MultiMaster FlashPoint tudelft etherexpress # LocalWords: ICL EtherTeam ETH IDESCSI TXC SmartRAID SmartCache httpd sjc dlp # LocalWords: thesphere TwoServers BOOTP DHCP ncpfs BPQETHER BPQ MG HIPPI cern # LocalWords: bsd comp SPARCstation le SunOS ie Gracilis PackeTwin PT pt LU FX # LocalWords: FX TEAC CR LCS mS ramdisk IDETAPE cmd fperllo encis tcfs unisa # LocalWords: Vertos Genoa Funai hsfs NCP NetWare tgz APM apm ioctls UltraLite # LocalWords: TravelMate CDT LCD backlight VC RPC Mips AXP barlow cdrtools pg # LocalWords: PMAX MILO Alphas Multia Tseng linuxelf endian mipsel mips drv HT # LocalWords: kerneld callouts AdvanSys advansys Admin WDT DataStor EP verden # LocalWords: wdt hdb hdc bugfix SiS vlb Acculogic CSA DTC dtc Holtek ht QDI # LocalWords: QD qd UMC umc ALI ali lena fnet fr azstarnet cdr fb MDA ps esdi # LocalWords: Avanti XL AlphaStations Jensen DECpc AXPpci UDB Cabriolet MCA RC # LocalWords: AlphaPC mca AOUT OUTput PPro sipx gwdg lo nwe FourPort Boca unm # LocalWords: Keepalive linefill RELCOM keepalive analogue CDR conf CDI INIT # LocalWords: OPTi isp irq noisp VFAT vfat NTFS losetup dmsdosfs dosfs ISDN MP # LocalWords: NOWAYOUT behaviour dialin isdn callback BTX Teles XXXX LVM lvm # LocalWords: ICN EDSS Cisco # LocalWords: ipppd syncppp RFC MPP VJ downloaded icn NICCY Creatix shmem ufr # LocalWords: ibp md ARCnet ether encap NDIS arcether ODI Amigas AmiTCP NetBSD # LocalWords: initrd tue util DES funet des OnNet BIOSP smc Travan Iomega CMS # LocalWords: FC DC dc PPA IOMEGA's ppa RNFS FMV Fujitsu ARPD arpd loran layes # LocalWords: FRAD indiana framerelay DLCI DCLIs Sangoma SDLA mrouted sync sec # LocalWords: Starmode Metricom MosquitoNet mosquitonet kbit nfsroot Digiboard # LocalWords: DIGI Xe Xeve digiboard UMISC touchscreens mtu Ethernets HBAs MEX # LocalWords: Shifflett netcom js jshiffle WIC DECchip ELCP EtherPower dst RTC # LocalWords: rtc SMP lp Digi Intl RightSwitch DGRS dgrs AFFS Amiga UFS SDL AP # LocalWords: Solaris RISCom riscom syncPPP PCBIT pcbit sparc anu au artoo MFB # LocalWords: hitchcock Crynwr cnam pktdrvr NCSA's CyDROM CyCD-ROM FreeBSD NeXT # LocalWords: NeXTstep disklabel disklabels SMD FFS tm AmigaOS diskfiles Un IQ # LocalWords: Bernd informatik rwth aachen uae affs multihosting bytecode java # LocalWords: applets applet JDK ncsa cabi SNI Alphatronix readme LANs scarab # LocalWords: winsock RNIS caltech OSPF honour Honouring Mbit LocalTalk DEFRAG # LocalWords: localtalk download Packetwin Baycom baycom interwork ASCII JNT # LocalWords: Camtec proxying indyramp defragment defragmented UDP FAS FASXX # LocalWords: FastSCSI SIO FDC qlogicfas QLogic qlogicisp setbaycom ife ee LJ # LocalWords: ethz ch Travelmates ProAudioSpectrum ProAudio SoundMan SB SBPro # LocalWords: Thunderboard SM OPL FM ADLIB TSR Gravis MPU PSS ADI SW DSP codec # LocalWords: ADSP ESC ASIC daughtercard GUSMAX MSS NX AdLib Excell Ensoniq YM # LocalWords: SoundScape Spea MediaTriX AudioTriX WSS OTI ThunderBoard VoxWare # LocalWords: Soundscape SSCAPE TRIX MediaTrix PnP Maui dsp midixx EIA getty # LocalWords: mgetty sendfax gert greenie muc lowlevel Lasermate LanManager io # LocalWords: OOPSes trackball binghamton mobileip ncr IOMAPPED settags ns ser # LocalWords: setsync NEGO MPARITY autotuning prefetch PIIX cdwrite utils rc # LocalWords: PCWATCHDOG berkprod bitgate boldt ucsb jf kyoto jp euc Tetsuyasu # LocalWords: YAMADA tetsu cauchy nslab ntt nevod perm su doc kaf kheops wsc # LocalWords: traduc Bourgin dbourgin menuconfig kfill READMEs HOWTOs Virge WA # LocalWords: IDEDISK IDEFLOPPY EIDE firewalls QMAGIC ZMAGIC LocalWords opti # LocalWords: SVGATextMode vga svga Xkernel syr jmwobus comfaqs dhcp flakey GD # LocalWords: IPv IPng interoperability ipng ipv radio's tapr pkthome PLP nano # LocalWords: Ses Mhz sethdlc SOUNDMODEM WindowsSoundSystem smdiag pcf inka ES # LocalWords: smmixer ptt circ soundmodem MKISS FDDI DEFEA DEFPA DEFXX redhat # LocalWords: HyperNews khg mconv sed lina wuftpd MicroChannel netlink irc cum # LocalWords: raudio RealAudio PPROP NETBIOS GUI IBMMCA ELMC Racal Interlan fi # LocalWords: eth shapecfg src esp PCWD PREVSTAT bootparam sig bitwizard SBC # LocalWords: downloads AFSK TCM FP Karn KA FSK RUH LinkSys cron mouseman LLC # LocalWords: SyQuest SyQuest's CCITT MicroSolutions BPCD bpcd ESPSERIAL PROM # LocalWords: SUNESP openprom OPENPROMIO quango themall al TT MC MMU LC RMW AA # LocalWords: INSNS Ataris AutoConfig ZORRO OCS AMIFB Agnus Denise ECS CDTV GB # LocalWords: AGA Cybervision CYBER GSP TMS DMI Zorro ACSI ROMs SLM BioNet GVP # LocalWords: PAMsNet TekMagic Cyberstorm MkI CYBERSTORMII MkII BLZ onboard cx # LocalWords: Village Tronic ATARILANCE RieblCard PAMCard VME MFP sangoma LAPB # LocalWords: Rhotron BioData's Multiface AMIGAMOUSE COPCON Amiga's bitplanes # LocalWords: ATARIMOUSE MFPSER SCC's MegaSTE ESCC Atari's GVPIOEXT DMASOUND # LocalWords: fdutils cisco univercd rpcg htm iface lapb LAPBETHER tpqic qic # LocalWords: SYNTH xd en binfmt aout ipip terra ipx sd sr sg wic framebuffer # LocalWords: ibmmca lapbether mkiss dlci sdla fmv eepro eexpress ni hp ne es # LocalWords: ibmtr isofs ROMFS romfs pcxx cyclades istallion psaux msbusmouse # LocalWords: atixlmouse sbin softdog pcwd USS Lite ACI miroSOUND PCM miroPCM # LocalWords: microcontroller miro Voxware downloading teles acsi slm gvp ltpc # LocalWords: atari ariadne amigamouse atarimouse builtin IPDDP maths bradford # LocalWords: AppleTalk Farallon PhoneNet Zubkoff lnz SCCB HAPN WANs vesafb nt # LocalWords: wanrouter WANPIPE multiprotocol Mbps wanpipe EtherWORKS nodma SC # LocalWords: smp HiSax SiemensChipSet Siemens AVM Elsa ITK hisax PCC MICROR # LocalWords: Mircolink EURO DSS Spellcaster BRI sc spellcast Digiboards GPIO # LocalWords: SYMBIOS COMPAT SDMS rev ASUS Tekram HX VX API ibmmcascsi ASY asy # LocalWords: loader's PCnetPCI automounter AUTOFS amd autofs VT Gallant's Pnp # LocalWords: AEDSP aedsp enskip tik Sysctl sysctl PARPORT parport pnp IDs EPP # LocalWords: Autoprobe bart patrickr HDLS READBACK AB usr DAMA DS SparQ aten # LocalWords: Symbios PCscsi tmscsim RoamAbout GHz Hinds contrib mathematik ok # LocalWords: darmstadt okir DIGIEPCA International's Xem digiepca epca bootup # LocalWords: zorro CAPI AVMB capi avmb VP SYN syncookies EM em pc Ethertalk # LocalWords: Dayna DL Daynatalk LT PhoneNET ATB Daystar queueing CMDS SCBs ls # LocalWords: SCB STATS Thinnet ThunderLAN TLAN Netelligent NetFlex tlan james # LocalWords: caldera Preload Preloading slowdowns schoebel uni NBD nbd prog # LocalWords: stuttgart rdist TRANS hostnames mango jukeboxes ESS userland PD # LocalWords: hardlinked NAMETRANS env mtab fstab umount nologin runlevel gid # LocalWords: adm Nodename hostname uname Kernelname bootp nmi DI OV StegFS # LocalWords: KERNNAME kname ktype kernelname Kerneltype KERNTYPE Alt RX mdafb # LocalWords: dataless kerneltype SYSNAME Comtrol Rocketport palmtop fbset EGS # LocalWords: nvram SYSRQ SysRq PrintScreen sysrq NVRAMs NvRAM Shortwave RTTY # LocalWords: Sitor Amtor Pactor GTOR hayes TX TMOUT JFdocs BIGMEM DAC IRQ's # LocalWords: IDEPCI IDEDMA PDC pdc TRM trm raidtools luthien nuclecu BAGET VR # LocalWords: unam mx miguel koobera uic EMUL solaris pp ieee lpsg co DMAs TOS # LocalWords: BLDCONFIG preloading jumperless BOOTINIT modutils multipath GRE # LocalWords: misconfigured autoconfiguration IPGRE ICMP tracert ipautofw PIM # LocalWords: netis rlynch autofw ipportfw monmouth ipsubs portforwarding pimd # LocalWords: portfw PIMSM netweb usc pim pf EUI aggregatable PB decapsulate # LocalWords: ipddp Decapsulation DECAP bool HAMRADIO tcpdump af CDs tx FBCON # LocalWords: ethertap multisession PPC MMIO GDT GDTH ICP gdth hamradio bpp # LocalWords: lmh weejock AIMSlab RadioTrack RTRACK HZP OptoSCC TRX rx TRXECHO # LocalWords: DMASCC paccomm dmascc addr cfg oevsv oe kib picpar FDX baudrate # LocalWords: baudrates fdx HDX hdx PSK kanren frforum QoS SCHED CBQ SCH sched # LocalWords: sch cbq CSZ Shenker Zhang csz SFQ sfq TBF tbf PFIFO fifo PRIO RW # LocalWords: prio Micom xIO dwmw rimi OMIRR omirr omirrd unicode ntfs cmu NIC # LocalWords: Braam braam Schmidt's freiburg nls codepages codepage Romanian # LocalWords: Slovak Slovenian Sorbian Nordic iso Catalan Faeroese Galician SZ # LocalWords: Valencian Slovene Esperanto Estonian Latvian Belarusian KOI mt # LocalWords: charset Inuit Greenlandic Sami Lappish koi Alexey Kuznetsov's sa # LocalWords: Specialix specialix DTR RTS RTSCTS cycladesZ Exabyte ftape's inr # LocalWords: Iomega's LBFM claus ZFTAPE VFS zftape zft William's lzrw DFLT kb # LocalWords: MTSETBLK MTIOCTOP qft setblk zftape's tar's afio's setdrvbuffer # LocalWords: Procfs Exabyte's THR FCD sysvinit init PSC pscwdt VMIDI Euro SAB # LocalWords: Mostek Fastlane PowerMac PReP PMAC PowerPC Macintoshes Starmax # LocalWords: PowerStack Starmaxes MCOMMON DEVICETREE ATY IMS IMSTT videodev # LocalWords: BT Hauppauge STB bttv Quickcam BW BWQCAM bw qcam Mediavision PMS # LocalWords: pms Avatar Freecom Imation Superdisk BPCK bpck COMM comm DSTR ru # LocalWords: dstr EPAT EPEZ epat EPIA epia FreeCom FRPW frpw KingByte KBIC HW # LocalWords: KingByte's kbic OnSpec ValuStore FASTROUTE fastroute FLOWCONTROL # LocalWords: struct APIC realtime OSs LynxOS CNC tmp cvf HFS hfs ADFS Risc os # LocalWords: adfs ncpmount namespace SUBDIR reexport NDS kcore FT SPX spx DAT # LocalWords: interserver BLKSZ NUMBUFFERS apmd Tadpole ANA roestock QuickCam # LocalWords: isapnptools Colour CQCAM colour Connectix QuickClip prive mentre # LocalWords: KMOD kmod conformant utexas kharker UnixWare Mwave cgi cl ts ibm # LocalWords: eXchange threepio oakland simtel pre ULTRAMCA EtherLink isa luik # LocalWords: EtherLink OpenBSD pts DEVPTS devpts ptmx ttyp glibc readback SA # LocalWords: mwave OLDCARD isdnloop linklevel loopctrl Eicon Diehl DIEHLDIVA # LocalWords: ASUSCOM AsusCom TELEINT semiactiv Sedlbauer Sportster TA MIC ITH # LocalWords: NETjet NetJet Niccy Neuhaus sparcs AOC AOCD AOCE Microlink SAA # LocalWords: teletext WinTV saa iproute tc Quadra Performa PowerBook tor AUN # LocalWords: setserial compsoc steve Econet econet AUNUDP psched TEQL TLE CLS # LocalWords: teql FW Ingres TwistedPair MTRR MTRRs mtrr cfs crypto TD ktti KT # LocalWords: PHd ICS ipchains adelaide rustcorp syslog Cumana steganography # LocalWords: AcornSCSI EcoSCSI EESOX EESOXSCSI Powertec POWERTECSCSI dec SF # LocalWords: RadioReveal gatekeeper aimslab aztech FMI sf fmi RTL rtl cesdis # LocalWords: Yellowfin gsfc nasa gov yellowfin pcnet Mylex LNE lne EtherH hs # LocalWords: EBSA chattr RiscOS Winmodem AGP Atomwide DUALSP pcsp robinson CT # LocalWords: SGALAXY Waverider DSPxxx TRXPRO AudioTrix OSWF MOT CFB DSY kbps # LocalWords: tuwien kkudielk LVD mega lun MAXTAGS Gbps arcnet Olicom SNA PAE # LocalWords: SysKonnect tms sna etherboot ufs NetBEUI MultiSound MSNDCLAS GX # LocalWords: MSNDINIT MSNDPERM MSNDPIN PNDSPINI PNDSPERM Ensoniq's RetinaZ SS # LocalWords: AudioPCI lspci SonicVibes sonicvibes SPARCs roadrunner CLgen UPA # LocalWords: swansea shtml Zoltrix zoltrix BINUTILS EGCS binutils VIDC DACs # LocalWords: CyberVision Cirrus PowerBooks Topcat SBUS CGsix TurboGX BWtwo SS # LocalWords: CGthree TCX unswappable vfb fbcon hicolor truecolor AFB ILBM SOC # LocalWords: IPLAN gracilis Fibre SBus SparcSTORAGE SV jnewbigin swin QNX qnx # LocalWords: PTY PTYS ptyxx ttyxx PTYs ssh sb Avance ALS pss pvv kerneli hd # LocalWords: synth WaveFront MSND NONPNP AudioExcelDSP STRAM APUS CHRP MBX Nx # LocalWords: PowerMac's BMAC radiotrack rtrack miropcm OFFBOARD HPT UDMA DVD # LocalWords: hpt fokus gmd Cyrix DXL SLC DLC NexGen MediaGX GXm IDT WinChip # LocalWords: MMX MII valkyrie mdacon vdolive VDOLive cuseeme CU hippi rrunner # LocalWords: SeeMe ipmasqadm juanjox ipmarkfw markfw TNCs Microdyne rhine lib # LocalWords: libc jsX gamepad gameport CHF FCS FPGaming MadCatz ASSASIN GrIP # LocalWords: Assasin gamepads GamePad PDPI gamecards gamecard WingMan BSP WCS # LocalWords: ThunderPad CyberMan SideWinder ThrustMaster DirectConnect NES XF # LocalWords: Millenium SNES PSX Multisystem Nintendo PlayStation Amstrad CPC # LocalWords: Sega TurboGraFX Steffen Schwenke Multiststem PDIF FIFOSIZE EPLUS # LocalWords: PowerUP RoadRunner tahallah dos functionkey setterm imladris Woz # LocalWords: PowerMacs Winbond Algorithmics ALGOR algor ECOFF IRIX SGI SGI's # LocalWords: gfx virtualized Xpmac mklinux XFree FBDev Woodhouse mvhi Seeq fp # LocalWords: SGISEEQ HIgh ADB ADBMOUSE crosscompiler CROSSCOMPILE FPE GDB gdb # LocalWords: JOYPORT rp spoofing DawiControl NOGENSUPP EEPROM HSSI Alessandro # LocalWords: singleprocessor tex MATHEMU FRIQ Maxell friq Alcor XLT AlphaBook # LocalWords: AlphaPCI DP LX Miata Mikasa Noritake RPX UX BX Takara EV PRIMO # LocalWords: TSC Matrox Productiva matroxfb matrox multihead ia linuxhq MFW # LocalWords: mfw AAA MCS Initio XXU initio imm AutoDetect IZIP CTR usec HDLC # LocalWords: COSA SRP muni cz kas cosa Alteon AceNIC acenic VTOC OSes GMT SAx # LocalWords: Inspiron localtime INTS Thinkpads Ralf Brown's Flightstick NNN # LocalWords: Xterminator Blackhawk NN mpu ioports DCA HPDCA HPLANCE DIO Corel # LocalWords: GemTek gemtek CMDLINE IrDA PDA's irmanager irattach RR AVA DN rg # LocalWords: uit dagb irda LSAP IrLMP RR's IrLAP IR alloc skb's kfree skb's # LocalWords: GZIP IrLAN NetbeamIR ESI JetEye IrOBEX IrCOMM TTY's minicom dti # LocalWords: ircomm ircomm pluto thiguchi IrTTY Linux's bps NetWinder MIR NSC # LocalWords: ACTiSYS dongle dongles esi actisys IrMate tekram BVM MVME # LocalWords: BVME BVME WRITETHROUGH copyback writethrough fwmark syncookie tu # LocalWords: alphalinux GOBIOS csn chemnitz nat ACARD AMI MegaRAID megaraid # LocalWords: QNXFS ISI isicom xterms Apollos VPN RCPCI rcpci sgi visws pcmcia # LocalWords: IrLPT UIRCC Tecra Strebel jstrebel suse Eichwalder ke INI INIA # LocalWords: FCP qlogicfc sym isapnp DTLK DoubleTalk rcsys dtlk DMAP SGIVW ar # LocalWords: dmabuf EcoRadio MUTEFREQ GIrBIL girbil tepkom vol mha diplom PQS # LocalWords: bmac Microgate SyncLink synclink hdlc excl ioaddr Tane tanep TCQ # LocalWords: PDS SMALLDOS charsets bigfoot kernelfr mcs cls fw rsvp SKnet sk # LocalWords: SKMC USB UHCI OHCI intel compaq usb ohci HCD Virt Compaq's hcd # LocalWords: VROOTHUB KBD ARRs MCRs NWBUTTON nwbutton NUM WaveArtist APNE cpu # LocalWords: apne blackhawke PlanB lu mlan planb NWFPE FPA nwfpe unbootable # LocalWords: FPEmulator ds vmlinux initialization discardable pgtable PGT mdw # LocalWords: quicklist pagetable arthur StrongARM podule podules Autodetect # LocalWords: dodgy IrPORT irport Litelink litelink SuSE rtfm internet hda CY # LocalWords: multmode DriveReady SeekComplete DriveStatusError miscompile AEC # LocalWords: mainboard's Digital's alim FastTrak aec PIIXn piix Gayle Eyetech # LocalWords: Catweasel IDEDOUBLER Powerbook Centris ICSIDE RapIDE OSM HDM IOP # LocalWords: HDM's OSM's lan FibreChannel ECP autoprobe itg lbl ipmasq cjb IC # LocalWords: bieringer Caulfield's dreamtime decnet SIOCFIGCONF SIOCGIFCONF # LocalWords: rtnetlink Endnode Aironet Arlan Telxon ylenurme arlan ACB aeschi # LocalWords: Sealevel sealevel Cyclom br wanconfig tarball conectiva cycsyn # LocalWords: devel bazar cyclomx NetGear GA IBMOL Lanstreamer uhci eu efs CYZ # LocalWords: olympic linuxtr usbcore acm EZUSB downloader EFS XFS INTR op IIC # LocalWords: heine soundcore JavaStations JavaStation GemTeks TerraTec TODO # LocalWords: ActiveRadio Standalone terratec Rolf Offermanns rolf offermanns # LocalWords: Zoran ZR Buz LML CPQ DA cpqarray PPDEV deviceid vlp ppdev atyfb # LocalWords: AcceleRAID eXtremeRAID NETFILTER Netfilter masqueraded netfilter # LocalWords: kernelnotes Cardbus PCMCIA's CardBus clgenfb Permedia YAM MMAP # LocalWords: mmapped ATM atm PVCs SVCs InARP ATMARP neighbour neighbours MPOA # LocalWords: VCs ENI FPGA Tonga MMF MF UTP printks ZeitNet ZN ZATM uPD SAR PN # LocalWords: approx NICStAR NICs ForeRunnerLE Madge Collage ATMizer Dxxxx VCI # LocalWords: ServeRAID IPS ips ipslinux gzip BSDCOMP LZW RAYCS Interphase app # LocalWords: Tachyon IPHASE Surfboard NextLevel SURFboard jacksonville Tigon # LocalWords: fventuri adelphia siglercm linuxpower AceNICs Starfire starfire # LocalWords: ISOC CPiA cpia uss ACPI UDF DirectCD udf CDRW's OSF Manx acpi DM # LocalWords: Unixware cymru Computone IntelliPort Intelliport computone SI sx # LocalWords: adbmouse DRI DRM dlabs GMX PLCs Applicom fieldbus applicom int # LocalWords: VWSND eg ESSSOLO CFU CFNR scribed eiconctrl eicon hylafax KFPU # LocalWords: EXTRAPREC fpu mainboards KHTTPD kHTTPd khttpd Xcelerator SBNI tw # LocalWords: LOGIBUSMOUSE Granch granch sbni Raylink NOHIGHMEM Athlon SIM sim # LocalWords: hpl Tourrilhes DuraLAN starfire Davicom davicom dmfe auk tms tr # LocalWords: TokenExpress Belkin Peracom eTek DVDs infradead Cxxx Adlib AV ZX # LocalWords: NeoMagic CPi CPt Celeron decapsulation Undeletion BFS bfs nVidia # LocalWords: OnStream Irongate Riva phonedev QuickNet LineJack PhoneJack IXJ # LocalWords: Quicknet PhoneJACK LineJACK ixj pnpdump Quicknet's Joandi SSID # LocalWords: aironet quickconfig adhoc btw bap NONCS cardservices Xircom lin # LocalWords: Netwave AirSurfer netwave HomePNA failover MVP iMacs ALi aktual # LocalWords: Aladin HIDBP usbkbd KEYBDEV MOUSEDEV JOYDEV EVDEV UAB WhiteHEAT # LocalWords: Handspring ov DABUSB URB URB's dabusb CRAMFS NFSv ELV IOAPIC WIP # LocalWords: NLMv SMBus ALGOBIT algo PHILIPSPAR philips elv Velleman velleman # LocalWords: ALGOPCF Elektor elektor CHARDEV dfx TDFX tdfx Extensa dof gravis # LocalWords: assasin logitech Overdrive thrustmaster DWave Aureal magellan db # LocalWords: SpaceTec SpaceOrb SpaceBall spaceorb FLX spaceball turbografx zr # LocalWords: amiga ESS's WaveWatcher Maxi belkin RW's ata glx GART MPV Baget # LocalWords: OpenGL Xserver agpgart HOTPLUG CyberPro Integraphics Netwinder # LocalWords: aty FONTWIDTH eni zatm nicstar ForeRunner OC DECstations DEC's # LocalWords: PHYsical SUNI reinsertion ChipSAR KVC PHY ClassID iphase iadbg # LocalWords: DEVS FireWire PCILynx pcilynx LOCALRAM miro's DV RAWIO GRED Mk # LocalWords: Diffserv DSMARK Ingress Qdisc TCINDEX TMSPCI tmspci Ringode JE # LocalWords: MADGEMC madgemc TokenRing SMCTR TokenCard smctr Wacom Graphire # LocalWords: mousedev ConnectTech HandSpring Xirlink IBMCAM ibmcam SN # LocalWords: DEVICEFS yyy Cymraeg Dwave SIMM JSFLASH JavaStation's multilink # LocalWords: nsc ircc DDB Vrc CMN TB PROMs Vino rivafb DDC Matroxes MGA TVO # LocalWords: MAVEN fbdev crtc maven matroxset NTSC PCA SBA AAL SKFP DAS SAS # LocalWords: skfp Intuos ADMtek's pegasus PLUSB plusb pointopoint mp rio Xeon # LocalWords: DEVFS devfs dd bs EDSS german TELESPCI FRITZPCI HFC HFCS BDS HST # LocalWords: ISURF ISAR Saphir HSTSAPHIR Telekom BKM Scitel Quadro SCT Gazel # LocalWords: SP PRI Hypercope HYSDN Hypercope's hysdn IbssJoinNetTimeout FTDI # LocalWords: ARCNet Keyspan PDA ADMtek sgalaxy sgbase opl mpuio mpuirq sbio # LocalWords: sbirq sbdma gus uart mssio mssirq mssdma sscape maui mouirq iph # LocalWords: CHDLC UPS's usbmouse wacom wmforce keybdev joydev fibre Trunking # LocalWords: Etherchannel IOC Moxa Intellio moxa SmartIO mxser Mixcom EFI ir # LocalWords: MIXCOMWD mixcomwd SENDCOMPLETE GMAC iBook gmac OAKNET oaknet PCG # LocalWords: diffserv irlan irtty toshoboe IrCC Lifebook idex AUTODMA FIP Cxx # LocalWords: Yenta Databook TCIC FMVJ fmvj NMCLAN LiveWire nmclan XIRC xirc # LocalWords: loadkeys setfont shm SuperIO soc SOCAL socal FCAL fc fcal COMX # LocalWords: MultiGate ITConsult comx CMX HiCOMX downloadable hw LoCOMX PROTO # LocalWords: locomx MixCOM mixcom proto MyriCOM MYRI Sbus myri sbus IBMLS hme # LocalWords: lanstreamer baseT HAPPYMEAL qfe sunhme SUNLANCE sunlance BigMAC # LocalWords: SUNBMAC sunbmac QuadEthernet SUNQE qe FastEthernet sunqe DSB PTI # LocalWords: DSBR dsbr procinfo QLOGICPTI qpti ptisp QLGC qlogicpti se LBA NF # LocalWords: OPENPROMFS OpenPROM openpromfs OBP OpenBoot flashable Multiboard # LocalWords: SPARCAUDIO SparcClassic Ultras DBRI Sparcbook sparcaudio SUNBPP # LocalWords: UltraDMA WDC CRC CONNTRACK IPTABLES iptables nfmark interface's # LocalWords: tdfxfb TNTx HGA hgafb VERBOSEDEBUG SunTrunking SunSoft XIRTULIP # LocalWords: ethercards PNIC Macronix MXIC ASIX xircom Mustek MDC gphoto mdc # LocalWords: CramFs Cramfs uid cramfs AVM's kernelcapi PCIV cdrdao Cdparanoia # LocalWords: DMX Domex dmx wellington ftdi sio Accton Billington Corega FEter # LocalWords: MELCO LUA PNA Linksys SNC chkdsk AWACS Webcam RAMFS Ramfs ramfs # LocalWords: ramfiles MAKEDEV pty WDTPCI APA apa # # The following sets edit modes for GNU EMACS # Local Variables: # case-fold-search:nil # fill-prefix:" " # adaptive-fill:nil # fill-column:70 # End: Cryptographic API CONFIG_CRYPTO If you answer yes to this option, the cryptographic kernel API framework will be enabled, and you'll be presented with additional questions about cryptographic algorithms and kernel components making use of the cryptographic API. See also The latest version of this component can be found at If you want to use IPsec, Say Y. Crypto Ciphers Support CONFIG_CIPHERS Ciphers basically help us scramble data so that other people don't get access to it. Useful applications for this include hiding hard drive contents or network traffic from unauthorized eyes. Compare a file encrypted with a cipher with very good safe: The document is in it, you can carry the document with you (if the safe is not too heavy), but others can steal it, too. However, they will not be able to read the document if the safe is any good. Mathematically speaking, a cipher is a parameter-dependant function E(K, ) that takes a fixed-length block M (usually 64 or 128 bits) and maps it onto another (usually equal-sized) block C=E(K,M) in such a way that, without knowledge of the "key" K, it is hard to compute 1. M, if C and the function E are given, 2. C, if M is given and the function E is known. M is called the 'plaintext' and C the 'ciphertext'. The above properties are commonly described as "All the security of the cipher lies in its key". However, there always exists the inverse function D(K, ) of E(K, ) such that D(K,E(K,M))=M for any M. The ideal cipher is one where it is impossible to compute M if you have C, but not K. In this case, the easiest way to break the cipher is to use 'brute-force', i.e. try all K in turn until you hit the right one. With most ciphers in this library, K is a 128-bit number. Here, brute-force attacks are infeasible since they require testing all 2^128 possible keys K, which would take far too long on any conceivable computer (some big multiple of the age of the universe for example). Unfortunately, the ideal cipher has not been found yet, so most ciphers in this library, or certain 'reduced-round' versions thereof, can be broken faster than brute-force. A cipher is secure, if it cannot be broken _much_ faster than brute-force and brute-force is infeasible. If you say 'Y' or 'M' here, you are able to select a variety of ciphers for the Cipher-API. Ciphers you select below can then be used by cryptographic kernel modules. If you say 'N' here, those modules will use their own implementations or even not work at all. If you want to use IPsec, Say Y. AES (aka Rijndael) cipher CONFIG_CIPHER_AES If you answer yes to this option, the Rijndael cipher will be compiled into your kernel. Rijndael was submitted to the AES(Advanced Encryption Standard) cipher competition and won, becoming the AES sta- ndard. It supports key sizes of 128, 192, and 256 bits which executes 10, 12, and 14 rounds respectively. This cipher is freely available for anyone to use. And the CryptoAPI implementation is under a BSD-style license of unrestricted, free use. See also 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 cipher-aes.o. If you want to compile it as a module, say M here and read . Twofish cipher CONFIG_CIPHER_TWOFISH If you answer yes to this option, the Twofish cipher will be compiled into your kernel. Twofish was submitted as an AES(Advanced Encryption Standard) candidate cipher by researchers at CounterPane Systems. It is a 16 round block cipher supporting key sizes of 128, 192, and 256 bits. Twofish is unpatented and is free to use. The CryptoAPI implementation is release to public domain. See also 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 cipher-twofish.o. If you want to compile it as a module, say M here and read . MARS cipher CONFIG_CIPHER_MARS If you answer yes to this option, the MARS cipher will be compiled into your kernel. MARS was submitted as an AES(Advanced Encryption Standard) candidate cipher by researchers at IBM. It is a variable key size 32 round cipher, although only 128, 192, and 256 bits are supported. The MARS algorithm is owned under patent by IBM, but they have a royal- ty free license for it. The CryptoAPI impelementation is free for use by all. See also and 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 cipher-mars.o. If you want to compile it as a module, say M here and read . # Finish description here, xpdf doesn't render this correctly RC6 cipher CONFIG_CIPHER_RC6 If you answer yes to this option, the RC6(Rivest Cipher 6) cipher will be compiled into your kernel. RC6 was submitted as an AES(Advanced Encryption Standard) candidate cipher by researchers at RSA Security. The RC6 algorithm is owned and patented by RSA Security. # find accurate licensing info See also 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 cipher-rc6.o. If you want to compile it as a module, say M here and read . Serpent cipher CONFIG_CIPHER_SERPENT If you answer yes to this option, the Serpent cipher will be compiled into your kernel. Serpent was submitted as an AES(Advanced Encryption Standard) candidate cipher ranking second to rijndael. It is a 32 rou- nd cipher with 128, 192, and 256 bit key sizes. Serpent is released under the public domain for use by anyone. The CryptoAPI implementation is released under the GPL. See also 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 cipher-serpent.o. If you want to compile it as a module, say M here and read . DFC cipher CONFIG_CIPHER_DFC If you answer yes to this option the DFC(Decorrolated Fast Cipher) will be compiled into your kernel. DFC was submitted as an AES(Advan- ced Encryption Standard) candidate cipher with 8 rounds and a key size of 128, 192, and 256 bits. DFC is currently owned under patent WO9820643 in the French National Institute for Industrial Property. The CryptoAPI implementation is released under the same restrictions as the DFC cipher is. # find more info about the license, info is hard to find :-( See also 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 cipher-dfc.o. If you want to compile it as a module, say M here and read . # find documentation finish brief CAST5 cipher CONFIG_CIPHER_CAST5 If you answer yes to this option the CAST5 cipher will be compiled into your kernel. CAST was designed by Carlisle Adams and Stafford Ta- vares, CAST5 is a version of the original CAST cipher modified for 128- bit block size. CAST5 is availiable royalty free for commercial and non-commercial use. The CryptoAPI implementation is released under the GPL. See also 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 cipher-cast5.o. If you want to compile it as a module, say M here and read . DES cipher CONFIG_CIPHER_DES If you answer yes to this option the DES(Data Encryption Standard) cipher will be compiled into your kernel. This cipher was designed by IBM and the NSA based on the Lucifer cipher designed by IBM. It supports a 56-bit key size and is a 16 round cipher. It should be noted that DES has a keylength of only 56 bits, which is insufficient to provide real security today. The DES algorithm has no restrictions on its use. The CryptoAPI impl- ementation of DES is released under the GPL. See also 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 cipher-des.o. If you want to compile it as a module, say M here and read . # find a good 3des link, or just repeat the DES rfc 3DES cipher CONFIG_CIPHER_DES_EDE3 If you answer yes to this option the 3DES cipher will be compiled into your kernel. This cipher is a modification of the DES algorithm which increases the effective keysize to 112-bits. Instead of using one 56- bit key(DES) you can use either 2 or 3 56-bit keys. If E(K) is the original DES algorithm then 3DES is: E(K1)->D(K2)->E(K3) or with 2 keys E(K1)->D(K2)->E(K1) Where K1 != K2 != K3 or K1 != K2. 3DES is 3x slower than DES. If K1 = K2 = K3 this breaks down to normal DES with 3x the runtime. The CryptoAPI implementation of 3DES is released under the GPL. See also 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 cipher-des_ede3.o. If you want to compile it as a module, say M here and read . IDEA cipher CONFIG_CIPHER_IDEA If you answer yes to this option the IDEA(International Data Encrypt- ion Algorithm) cipher will be compiled into your kernel. This cipher is unlike most other symmetric ciphers in that it does not use any type of S-box for data obscuring. It is an 8 round algorithm support- ing a 128-bit key size. IDEA is patented in Switzerland, Europe, and the United States. It is free for any non-commercial use. See also 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 cipher-idea.o. If you want to compile it as a module, say M here and read . Blowfish cipher CONFIG_CIPHER_BLOWFISH If you answer yes to this option the Blowfish cipher will be compiled into your kernel. Blowfish was designed by Bruce Schneier as a free replacement for DES and IDEA. It is a 16 round cipher supporting 128, 160, 192, 256 key sizes. The CryptoAPI implementation of Blowfish is released under the GPL. See also 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 cipher-blowfish.o. If you want to compile it as a module, say M here and read . RC5 cipher CONFIG_CIPHER_RC5 If you answer yes to this option the RC5 cipher will be compiled into your kernel. RC5 was designed Ronald Rivest as a drop in replacement for DES. It is a 16 round cipher supporting 128, 192, and 256 bit key sizes. RC5 is patented and owned by RSA Security. The CryptoAPI implementation is free for all to use. See also 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 cipher-rc5.o. If you want to compile it as a module, say M here and read . Old (mutated-endianess) Blowfish cipher CONFIG_CIPHER_BLOWFISH_OLD If you answer yes to this option the Blowfish(old) cipher will be comp- iled into your kernel. This is an older CryptoAPI implementation of Blowfish that only works on little-endian systems. It is left for bac- kward compatability and will be removed in the near future. 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 cipher-blowfish_old.o. If you want to compile it as a module, say M here and read . DUMMY cipher CONFIG_CIPHER_DUMMY If you answer yes to this option the DUMMY cipher will be compiled into your kernel. This is a template for a new cipher to be implemented. It currently does no encryption. 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 cipher-dummy.o. If you want to compile it as a module, say M here and read . NULL cipher CONFIG_CIPHER_NULL If you answer yes to this option the NULL cipher will be compiled into your kernel. This may be useful only for IPsec ESP NULL Encryption mode (IPsec ESP Authentication only). It does no encryption. 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 cipher-null.o. If you want to compile it as a module, say M here and read . #EOF# David Bryson Wed, Mar 20, 2002 # Config.help descriptions for CryptoAPI cipher functions Digest Algorithms Support CONFIG_DIGESTS A message digest (or 'one-way function' or 'hash') is a function H that maps an arbitrary-length message M onto a 128-bit or 160-bit number h=H(M) such that the following conditions are satisfied: 1. For a given M, it is easy to compute h=H(M). 2. For a given h, it is hard to find M such that h=H(M). 3. For a given M, it is hard to find another message M' such that H(M')=H(M). 4. It is hard to find M, M' such that H(M)=H(M'). This makes the name 'one-way function' plausible. Hashes are widely used by cryptographic programs. E.g. the Linux kernel uses a hash to generate random numbers. # Marc Mutz : this will be the help text, once this # functionality is in place: # If you say 'Y' here and select the SHA-1 message digest below, # then the drivers for /dev/random and /dev/urandom will use the # digest api instead of their own implementation. This will not work # if you build as modules. # If you say 'Y' or 'M' here, cryptographic modules are able to use the Digest-API if they need a hash function. If you say 'N' here, they will use their own implementations (which will probably increase the size of the compiled kernel if there are more than one such modules). If you want to use IPsec, Say Y. MD5 Digest Support CONFIG_DIGEST_MD5 If you answer yes to this option, the MD5(Message Digest 5) digest will be compiled into your kernel. MD5 is an improved version of MD4 designed by Ron Rivest, it produces a 128-bit "hash value" from an in- put of arbitrary length. There are no restrictions on the use of the MD5 algorithm. The Crypto- API implementation of MD5 is released under the GPL. See also 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 digest-md5.o. If you want to compile it as a module, say M here and read . SHA1 Digest Support CONFIG_DIGEST_SHA1 If you answer yes to this option the SHA1(Secure Hash Algorithm 1) will be compiled into your kernel. SHA1 was designed with NIST and the NSA for use with the Digital Signature Standard. It produces a 160-bit hash value from an input or arbitrary length. There are no restrictions on the use of the SHA1 algorithm. The CryptoAPI implementation of SHA1 is released under the GPL. See also 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 digest-sha1.o. If you want to compile it as a module, say M here and read . # David Bryson Thu, Mar 21, 2002 # Config.help descriptions for CryptoAPI digest functions Crypto Device Support CONFIG_CRYPTODEV With this option crypto devices are available. The devices provide crypto functions. Generic cryptogrpahic filter for loop device driver CONFIG_CRYPTOLOOP If you answer yes to this option, the loop driver will be able to use all cryptographic ciphers selected below. This loop filter will use the ciphers in CBC-mode which is more secure than ECB-mode. This module will also initialize the CBC-mode of the cipher with the block-number of the block being encrypted. Make sure you have patched your loop driver otherwise this filter won't compile. See for more information. *WARNING* Due to the broken IV metric in the 2.4.x kernel series, this filter is not compatible with the on-disc format of encrypted volumes encrypted up to version 2.4.3 of the international patch! You will have to convert your "old" encrypted volumes to the new IV metric. # Lineo Solutions, Inc. Fri, Nov 28, 2003 # Config.help descriptions for Realtime function Real-Time Hardware Abstraction Layer support CONFIG_RTHAL Enable this only when using Realtime function. MAX PTHREAD (int) CONFIG_RTH_PTHREAD_MAX Indicates maximum number of threads to be created with pthread_create. RT MEMORY SIZE (hex) CONFIG_RT_MEM_SIZE Indicates maximum memory size (mainly stack area) that Realtime thread uses. Thread cannot be created beyond this size. Real-Time Calibrate support CONFIG_RTHAL_CALIBRATION When enabled, correction value that Realtime schedule uses is automatically calibrated. TIMER INTERRUPT LATENCY (nsec) CONFIG_LATENCY_MATCH_REG Configures correction value when Real-Time Calibrate support is invalid. Start-up time is faster since it avoids automatic calibration. It is recommended to use the value measured by Real-Time Calibrate support.