summaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/00-INDEX11
-rw-r--r--Documentation/ARM-README54
-rw-r--r--Documentation/Changes104
-rw-r--r--Documentation/CodingStyle4
-rw-r--r--Documentation/Configure.help2731
-rw-r--r--Documentation/IO-APIC.txt19
-rw-r--r--Documentation/IO-mapping.txt33
-rw-r--r--Documentation/SMP.txt23
-rw-r--r--Documentation/VGA-softcursor.txt43
-rw-r--r--Documentation/cdrom/00-INDEX3
-rw-r--r--Documentation/cdrom/aztcd2
-rw-r--r--Documentation/cdrom/ide-cd78
-rw-r--r--Documentation/cdrom/sbpcd4
-rw-r--r--Documentation/cdrom/sonycd5352
-rw-r--r--Documentation/devices.tex485
-rw-r--r--Documentation/devices.txt295
-rw-r--r--Documentation/exception.txt18
-rw-r--r--Documentation/fb/00-INDEX15
-rw-r--r--Documentation/fb/framebuffer.txt (renamed from Documentation/m68k/framebuffer.txt)19
-rw-r--r--Documentation/fb/internals.txt86
-rw-r--r--Documentation/fb/vesafb.txt71
-rw-r--r--Documentation/filesystems/00-INDEX11
-rw-r--r--Documentation/filesystems/affs.txt59
-rw-r--r--Documentation/filesystems/coda.txt23
-rw-r--r--Documentation/filesystems/fat_cvf.txt16
-rw-r--r--Documentation/filesystems/hpfs.txt2
-rw-r--r--Documentation/filesystems/isofs.txt9
-rw-r--r--Documentation/filesystems/ncpfs.txt16
-rw-r--r--Documentation/filesystems/romfs.txt13
-rw-r--r--Documentation/filesystems/vfat.txt4
-rw-r--r--Documentation/filesystems/vfs.txt538
-rw-r--r--Documentation/ftape.txt2
-rw-r--r--Documentation/hayes-esp.txt47
-rw-r--r--Documentation/ide.txt8
-rw-r--r--Documentation/initrd.txt10
-rw-r--r--Documentation/isdn/README4
-rw-r--r--Documentation/joystick.txt187
-rw-r--r--Documentation/kmod.txt6
-rw-r--r--Documentation/magic-number.txt33
-rw-r--r--Documentation/mca.txt4
-rw-r--r--Documentation/networking/00-INDEX2
-rw-r--r--Documentation/networking/DLINK.txt2
-rw-r--r--Documentation/networking/PLIP.txt4
-rw-r--r--Documentation/networking/arcnet-hardware.txt22
-rw-r--r--Documentation/networking/arcnet.txt8
-rw-r--r--Documentation/networking/baycom.txt90
-rw-r--r--Documentation/networking/cs89x0.txt10
-rw-r--r--Documentation/networking/de4x5.txt2
-rw-r--r--Documentation/networking/dgrs.txt2
-rw-r--r--Documentation/networking/eql.txt2
-rw-r--r--Documentation/networking/ethertap.txt2
-rw-r--r--Documentation/networking/ewrk3.txt4
-rw-r--r--Documentation/networking/filter.txt2
-rw-r--r--Documentation/networking/framerelay.txt4
-rw-r--r--Documentation/networking/ip-sysctl.txt168
-rw-r--r--Documentation/networking/lapb-module.txt2
-rw-r--r--Documentation/networking/multicast.txt3
-rw-r--r--Documentation/networking/policy-routing.txt30
-rw-r--r--Documentation/networking/routing.txt8
-rw-r--r--Documentation/networking/sktr.txt147
-rw-r--r--Documentation/networking/soundmodem.txt6
-rw-r--r--Documentation/networking/tlan.txt140
-rw-r--r--Documentation/networking/tulip.txt4
-rw-r--r--Documentation/networking/wan-router.txt16
-rw-r--r--Documentation/networking/z8530drv.txt14
-rw-r--r--Documentation/nfsroot.txt12
-rw-r--r--Documentation/paride.txt26
-rw-r--r--Documentation/parport.txt7
-rw-r--r--Documentation/radiotrack.txt147
-rw-r--r--Documentation/ramdisk.txt97
-rw-r--r--Documentation/rtc.txt2
-rw-r--r--Documentation/smart-config.txt4
-rw-r--r--Documentation/smp.tex16
-rw-r--r--Documentation/sound/ALS00740
-rw-r--r--Documentation/sound/AWE32171
-rw-r--r--Documentation/sound/CS423246
-rw-r--r--Documentation/sound/ChangeLog.multisound137
-rw-r--r--Documentation/sound/ESS186884
-rw-r--r--Documentation/sound/MultiSound234
-rw-r--r--Documentation/sound/OPL3-SA81
-rw-r--r--Documentation/sound/Opti28
-rw-r--r--Documentation/sound/Soundblaster25
-rw-r--r--Documentation/sound/Tropez+26
-rw-r--r--Documentation/sound/Wavefront371
-rw-r--r--Documentation/sound/es137062
-rw-r--r--Documentation/sound/es137156
-rw-r--r--Documentation/sound/mwave75
-rw-r--r--Documentation/sound/sonicvibes73
-rw-r--r--Documentation/sound/ultrasound15
-rw-r--r--Documentation/spinlocks.txt2
-rw-r--r--Documentation/stallion.txt4
-rw-r--r--Documentation/svga.txt15
-rw-r--r--Documentation/sysctl/README1
-rw-r--r--Documentation/sysctl/kernel.txt15
-rw-r--r--Documentation/sysctl/vm.txt15
-rw-r--r--Documentation/sysrq.txt62
-rw-r--r--Documentation/transname.txt264
-rw-r--r--Documentation/watchdog.txt2
98 files changed, 5633 insertions, 2368 deletions
diff --git a/Documentation/00-INDEX b/Documentation/00-INDEX
index fd986e95c..ed078ac3e 100644
--- a/Documentation/00-INDEX
+++ b/Documentation/00-INDEX
@@ -1,7 +1,8 @@
This is a brief list of all the files in ./linux/Documentation and what
they contain. If you add a documentation file, please list it here in
alphabetical order as well, or risk being hunted down like a rabid dog.
-Note that subdirectories have their own index files too.
+Note that subdirectories have their own index files too. Please try and
+keep the descriptions small enough to fit on one line.
Thanks -- Paul G.
00-INDEX
@@ -56,6 +57,8 @@ java.txt
- info on the in-kernel binary support for Java(tm)
joystick.txt
- info on using joystick devices (and driver) with linux.
+kmod.txt
+ - - info on the kernel module loader/unloader (kerneld replacement)
locks.txt
- info on file locking implementations, flock() vs. fcntl(), etc.
logo.gif
@@ -63,7 +66,7 @@ logo.gif
logo.txt
- Info on creator of above logo & site to get additional images from.
m68k/
- - directory with info about Linux on Motorola 68k archtecture.
+ - directory with info about Linux on Motorola 68k architecture.
magic-number.txt
- list of magic numbers used to mark/protect kernel data structures.
mandatory.txt
@@ -76,10 +79,12 @@ memory.txt
- info on typical Linux memory problems.
modules.txt
- short guide on how to make kernel parts into loadable modules
+mtrr.txt
+ - how to use PPro Memory Type Range Registers to increase performance
nbd.txt
- info on a TCP implementation of a network block device.
networking/
- - directory with info on various linux networking aspects.
+ - directory with info on various aspects of networking with Linux.
nfsroot.txt
- short guide on setting up a diskless box with NFS root filesystem
oops-tracing.txt
diff --git a/Documentation/ARM-README b/Documentation/ARM-README
index 2ffd1113c..bf8225c49 100644
--- a/Documentation/ARM-README
+++ b/Documentation/ARM-README
@@ -1,15 +1,12 @@
- ARM Linux 2.1.78
+ ARM Linux 2.1.99
================
- ** The ARM support contained within is NOT complete - it will not build. **
- ** If you want to build it, then please obtain a full copy of the ARM **
- ** patches from ftp://ftp.arm.uk.linux.org/pub/armlinux/kernel-sources/v2.1 **
-
Since this is a development kernel, it will not be as stable as the 2.0
series, and can cause very nasty problems (eg, trashing your hard disk).
When running one of these kernels, I advise you to back up the complete
contents of all your hard disks.
+
Contributors
------------
@@ -28,26 +25,16 @@ Contributors
Mail: Philip.Blundell@pobox.com
Desc: Architecture and processor selection during make config.
+
Todo list
---------
- This is the list of changes to be done (roughly prioritorised):
+ This is the list of changes to be done (roughly prioritised):
- * fully test new A5000 & older MEMC translation code
+ * fully test new MEMC translation code
* fully test new AcornSCSI driver.
* reply to email ;)
-Bugs
-----
-
- Fixed bugs in this version 2.1.76:
-
- Modules believed to be buggy (please report your successes/failures):
-
- * AcornSCSI believed to occasionally corrupt hard drives.
- * All NCR5380-based SCSI devices [Cumana I, Oak, EcoSCSI] are slow,
- and may not allow write access.
- * A5000 and older machine kernel builds may not be as stable as they were.
Notes
=====
@@ -76,12 +63,13 @@ Compilation of kernel
to
CROSS_COMPILE=<your-path-to-your-compiler-without-gcc>
eg.
- CROSS_COMPILE=/usr/src/bin/arm/arm-linuxelf-
+ CROSS_COMPILE=/usr/bin/arm-unknown-linuxelf-
Do a 'make config', followed by 'make dep', and finally 'make all' to
build the kernel (vmlinux). A compressed image can be built by doing
a 'make zImage' instead of 'make all'.
+
Bug reports etc
---------------
@@ -96,6 +84,7 @@ Bug reports etc
For patches, please include some explanation as to what the patch does
and why (if relevant).
+
Modules
-------
@@ -108,6 +97,7 @@ Modules
as such Acorn RiscPCs and other architectures using these processors can
make good use of modularisation.
+
ADFS Image files
----------------
@@ -118,6 +108,7 @@ ADFS Image files
Please note that the PCEmulator DOS partitions have a partition table at
the start, and as such, you will have to give '-o offset' to losetup.
+
Kernel initialisation abort codes
---------------------------------
@@ -128,17 +119,19 @@ Kernel initialisation abort codes
Stripes of White,Red,Yellow,Green:
Kernel does not support the processor architecture detected.
+
Request to developers
---------------------
- When writing device drivers which include a separate assember file, please
+ When writing device drivers which include a separate assembler file, please
include it in with the C file, and not the arch/arm/lib directory. This
allows the driver to be compiled as a loadable module without requiring
- half the code to be needlessly compiled into the kernel image.
+ half the code to be compiled into the kernel image.
In general, try to avoid using assembler unless it is really necessary. It
makes drivers far less easy to port to other hardware.
+
ST506 hard drives
-----------------
@@ -167,3 +160,22 @@ ST506 hard drives
hasn't got any code for disc change detection in there at the moment which
could be a bit of a problem! Suggestions on the correct way to do this
are welcome.
+
+
+Kernel entry (head-armv.S)
+--------------------------
+ The initial entry into the kernel made via head-armv.S uses architecture
+ independent code. The architecture is selected by the value of 'r1' on
+ entry, which must be kept unique. You can register a new architecture
+ by mailing the following details to rmk@arm.uk.linux.org. Please give
+ the mail a subject of 'Register new architecture':
+
+ Name: <name of your architecture>
+ ARCHDIR: <name of include/asm-arm/arch-* directory>
+ Description:
+ <description of your architecture>
+
+ Please follow this format - it is an automated system. You should
+ receive a reply the next day.
+---
+Russell King (03/05/1998)
diff --git a/Documentation/Changes b/Documentation/Changes
index 1da1ddf7e..15afefdcf 100644
--- a/Documentation/Changes
+++ b/Documentation/Changes
@@ -33,7 +33,7 @@ http://cyberbuzz.gatech.edu/kaboom/linux/ as well.
Also, don't forget http://www.linuxhq.com/ for all your Linux kernel
needs.
-Last updated: May 5, 1998
+Last updated: May 31, 1998
Current Author: Chris Ricker (kaboom@gatech.edu).
Current Minimal Requirements
@@ -45,21 +45,21 @@ running, the suggested command should tell you.
- Kernel modules modutils-2.1.85 ; insmod -V
- Gnu C 2.7.2.3 ; gcc --version
-- Binutils 2.8.1.0.1 ; ld -v
+- Binutils 2.8.1.0.23 ; ld -v
- Linux C Library 5.4.44 ; ls -l /lib/libc.so.*
-- Dynamic Linker (ld.so) 1.9.5 ; ldd --version
+- Dynamic Linker (ld.so) 1.9.9 ; ldd --version or ldd -v
- Linux C++ Library 2.7.2.8 ; ls -l /usr/lib/libg++.so.*
-- Procps 1.2.5 ; ps --version
-- Procinfo 13 ; procinfo -v
+- Procps 1.2.7 ; ps --version
+- Procinfo 14 ; procinfo -v
- Mount 2.7l ; mount --version
-- Net-tools 1.41 ; hostname -V
+- Net-tools 1.45 ; hostname -V
- Loadlin 1.6a
- Sh-utils 1.16 ; basename --v
- Autofs 0.3.11 ; automount --version
- NFS 0.4.21 ; showmount --version
- Bash 1.14.7 ; bash -version
-- Ncpfs 2.1.1 ; ncpmount -v
-- Pcmcia-cs 3.0.0
+- Ncpfs 2.2.0 ; ncpmount -v
+- Pcmcia-cs 3.0.1
- PPP 2.3.5 ; pppd -v
Upgrade notes
@@ -71,13 +71,18 @@ General Information
<CTRL><ALT><DEL> now performs a cold reboot instead of a warm reboot
for increased hardware compatibility. If you want a warm reboot and
know it works on your hardware, add a "reboot=warm" command line option
-in Lilo. A small number of machines need "reboot=bios" to reboot via
+in LILO. A small number of machines need "reboot=bios" to reboot via
the BIOS.
Also, please remember that cua* devices are now obsolete. Switch to
the corresponding ttyS* device instead (e.g., cua0 -> ttyS0, cua1 ->
ttyS1, etc.).
+ In addition, some software still works, but needs to be compiled
+against 2.1 headers for complete functionality. Fdutils binaries
+compiled under 2.0 or earlier kernels should be replaced with ones
+compiled under 2.1, for example.
+
Libc
====
@@ -127,11 +132,13 @@ Binutils
to find out the proper way to upgrade it. No, the instruction to "rm
`which encaps`" is not a joke.
-The last public release of the binutils 2.8.x series is 2.8.1.0.23.
-Binutils 2.8.1.0.25 to 2.9.1.0.2 are all very buggy; do not use them.
-Binutils 2.9.1 (note the absence of a suffix) is all right, and binutils
-2.9.1.0.3 (and presumably later revisions) will probably work, too.
-Stick with 2.8.1.0.23 to be safe.
+ The last public release of the binutils 2.8.x series was 2.8.1.0.23.
+Binutils 2.8.1.0.25 to 2.9.1.0.2 are beta releases, and are known to be
+very buggy. Binutils 2.9.1 (note the absence of a suffix) from the FSF
+should work, and binutils 2.9.1.0.3 and later releases are also good.
+Either use binutils-2.8.1.0.23 or binutils-2.9.1.0.4 or later. Glibc2
+users should especially try to use the 2.9.1.0.x releases, as they
+resolve known issues with glibc2 and binutils-2.8.x releases.
Gnu C
=====
@@ -183,6 +190,17 @@ net-tools. This will also fix other problems. For example, the format
of /proc/net/dev changed; as a result, an older ifconfig will
incorrectly report errors.
+ As of 2.1.102, the firewalling code has been replaced with
+firewalling chains. See
+http://www.adelaide.net.au/~rustcorp/ipfwchains/ipfwchains.html for
+more information. Among other things, you'll now need to use ipchains
+instead of ipfwadm to configure your filters.
+
+ The IP firewalling code has been replaced: ipfwadm will no longer
+work. You need to obtain `ipchains', available from
+http://www.adelaide.net.au/~rustcorp/ipfwchains/ipfwchains.html
+which includes an ipfwadm wrapper.
+
Memory
======
@@ -202,8 +220,8 @@ use autofs as well as the new NFS utils.
RPM
===
- If you run RedHat Linux or any other distribution that uses RPM, you
-need to upgrade RPM to version 2.2.7 or later.
+ If you run Red Hat Linux or any other distribution that uses RPM,
+you need to upgrade RPM to version 2.2.7 or later.
DOSEMU
======
@@ -273,13 +291,24 @@ Where to get the files
Binutils
========
-The 2.8.1.0.1 release:
+The 2.8.1.0.23 release:
ftp://tsx-11.mit.edu/pub/linux/packages/GCC/binutils-2.8.1.0.23.bin.tar.gz
ftp://sunsite.unc.edu/pub/Linux/GCC/binutils-2.8.1.0.23.bin.tar.gz
Installation notes:
ftp://tsx-11.mit.edu/pub/linux/packages/GCC/release.binutils-2.8.1.0.23
ftp://sunsite.unc.edu/pub/Linux/GCC/release.binutils-2.8.1.0.23
+The 2.9.1.0.4 release:
+ftp://tsx-11.mit.edu/pub/linux/packages/GCC/binutils-2.9.1.0.4-glibc.x86.tar.gz
+ftp://tsx-11.mit.edu/pub/linux/packages/GCC/binutils-2.9.1.0.4-libc5.x86.tar.gz
+ftp://tsx-11.mit.edu/pub/linux/packages/GCC/binutils-2.9.1.0.4.tar.gz
+ftp://sunsite.unc.edu/pub/Linux/GCC/binutils-2.9.1.0.4-glibc.x86.tar.gz
+ftp://sunsite.unc.edu/pub/Linux/GCC/binutils-2.9.1.0.4-libc5.x86.tar.gz
+ftp://sunsite.unc.edu/pub/Linux/GCC/binutils-2.9.1.0.4.tar.gz
+Installation notes:
+ftp://tsx-11.mit.edu/pub/linux/packages/GCC/release.binutils-2.9.1.0.4
+ftp://sunsite.unc.edu/pub/Linux/GCC/release.binutils-2.9.1.0.4
+
Gnu C
=====
@@ -326,9 +355,9 @@ ftp://sunsite.unc.edu/pub/Linux/GCC/release.libg++-2.7.2.8
Dynamic Linker
==============
-The 1.9.5 release:
-ftp://tsx-11.mit.edu/pub/linux/packages/GCC/ld.so-1.9.5.tar.gz
-ftp://sunsite.unc.edu/pub/Linux/GCC/ld.so-1.9.5.tar.gz
+The 1.9.9 release:
+ftp://tsx-11.mit.edu/pub/linux/packages/GCC/ld.so-1.9.9.tar.gz
+ftp://sunsite.unc.edu/pub/Linux/GCC/ld.so-1.9.9.tar.gz
Modules utilities
=================
@@ -346,21 +375,21 @@ ftp://sunsite.unc.edu/pub/Linux/system/status/ps/procps-1.2.7.tgz
Procinfo utilities
==================
-The 13 release:
-ftp://ftp.cistron.nl/pub/people/svm/procinfo-13.tar.gz
+The 14 release:
+ftp://ftp.cistron.nl/pub/people/svm/procinfo-14.tar.gz
RPM utilities
=============
The 2.2.7 release for Intel:
-ftp://ftp.redhat.com/pub/redhat/redhat-4.0/updates/i386/rpm-2.2.7-1.i386.rpm
-ftp://ftp.redhat.com/pub/redhat/redhat-4.0/updates/i386/rpm-devel-2.2.7-1.i386.rpm
+ftp://ftp.redhat.com/pub/redhat/old-releases/redhat-4.0/updates/i386/rpm-2.2.7-1.i386.rpm
+ftp://ftp.redhat.com/pub/redhat/old-releases/redhat-4.0/updates/i386/rpm-devel-2.2.7-1.i386.rpm
The 2.2.7 release for Alpha:
-ftp://ftp.redhat.com/pub/redhat/redhat-4.0/updates/axp/rpm-2.2.7-1.axp.rpm
-ftp://ftp.redhat.com/pub/redhat/redhat-4.0/updates/axp/rpm-devel-2.2.7-1.axp.rpm
+ftp://ftp.redhat.com/pub/redhat/old-releases/redhat-4.0/updates/axp/rpm-2.2.7-1.axp.rpm
+ftp://ftp.redhat.com/pub/redhat/old-releases/redhat-4.0/updates/axp/rpm-devel-2.2.7-1.axp.rpm
The 2.2.7 release for SPARC:
-ftp://ftp.redhat.com/pub/redhat/redhat-4.0/updates/i386/rpm-2.2.7-1.sparc.rpm
-ftp://ftp.redhat.com/pub/redhat/redhat-4.0/updates/i386/rpm-devel-2.2.7-1.sparc.rpm
+ftp://ftp.redhat.com/pub/redhat/old-releases/redhat-4.0/updates/sparc/rpm-2.2.7-1.sparc.rpm
+ftp://ftp.redhat.com/pub/redhat/old-releases/redhat-4.0/updates/sparc/rpm-devel-2.2.7-1.sparc.rpm
DOSEMU
======
@@ -399,7 +428,7 @@ NFS
The 0.4.21 release:
ftp://ftp.mathematik.th-darmstadt.de/pub/linux/okir/linux-nfs-0.4.21.tar.gz
-ftp://linux.nrao.edu/pub/people/okir/linux-nfs-0.4.21.tar.gz
+ftp://linux.nrao.edu/mirrors/fb0429.mathematik.th-darmstadt.de/pub/linux/okir/linux-nfs-0.4.21.tar.gz
Net-tools
=========
@@ -423,14 +452,14 @@ ftp://prep.ai.mit.edu/pub/gnu/bash-1.14.7.tar.gz
Ncpfs
=====
-The 2.1.1 release:
-ftp://ftp.gwdg.de/pub/linux/misc/ncpfs/ncpfs-2.1.1.tgz
+The 2.2.0 release:
+ftp://ftp.gwdg.de/pub/linux/misc/ncpfs/ncpfs-2.2.0.tgz
Pcmcia-cs
=========
-The May 4, 1998 release:
-ftp://hyper.stanford.edu/pub/pcmcia/NEW/pcmcia-cs.04-May-98.tar.gz
+The 3.0.1 release:
+ftp://hyper.stanford.edu/pub/pcmcia/pcmcia-cs.3.0.1.tar.gz
PPP
===
@@ -438,6 +467,13 @@ PPP
The 2.3.5 release:
ftp://cs.anu.edu.au/pub/software/ppp/ppp-2.3.5.tar.gz
+IP Chains
+=========
+
+The 1.3.3 release:
+http://www.adelaide.net.au/~rustcorp/ipfwchains/ipchains-source-1.3.3.tar.gz
+http://www.adelaide.net.au/~rustcorp/ipfwchains/ipchains-source-1.3.3.tar.bz2
+
Other Info
==========
@@ -453,7 +489,7 @@ distribution), most of these are available in RPM format. Check around
your favorite Red Hat mirror site before installing the non-RPM
version. Remember, you might need to use the -force option to get the
upgrade to install. ftp://ftp.redhat.com/pub/contrib/ will have almost
-everything you need, as does RedHat 5.0.
+everything you need, as does Red Hat 5.0.
Those of you running Debian (or a different distribution that
supports .deb packages) can look in the "unstable" and
diff --git a/Documentation/CodingStyle b/Documentation/CodingStyle
index 7d72179f7..edba24699 100644
--- a/Documentation/CodingStyle
+++ b/Documentation/CodingStyle
@@ -132,7 +132,7 @@ The maximum length of a function is inversely proportional to the
complexity and indentation level of that function. So, if you have a
conceptually simple function that is just one long (but simple)
case-statement, where you have to do lots of small things for a lot of
-different cases, it's ok to have a longer function.
+different cases, it's OK to have a longer function.
However, if you have a complex function, and you suspect that a
less-than-gifted first-year high-school student might not even
@@ -169,7 +169,7 @@ it.
Chapter 6: You've made a mess of it
-That's ok, we all do. You've probably been told by your long-time unix
+That's OK, we all do. You've probably been told by your long-time Unix
user helper that "GNU emacs" automatically formats the C sources for
you, and you've noticed that yes, it does do that, but the defaults it
uses are less than desirable (in fact, they are worse than random
diff --git a/Documentation/Configure.help b/Documentation/Configure.help
index 5766188db..7f6d6fd18 100644
--- a/Documentation/Configure.help
+++ b/Documentation/Configure.help
@@ -5,15 +5,19 @@
# development kernels and need not be completely stable.
#
# Translations of this file available on the WWW:
+#
# - http://jf.gee.kyoto-u.ac.jp/JF/JF-ftp/euc/Configure.help.euc
# is a Japanese translation, maintained by Tetsuyasu YAMADA
-# (tetsu@cauchy.nslab.ntt.jp).
+# (tetsu@cauchy.nslab.ntt.co.jp).
# - http://nevod.perm.su/service/linux/doc/kernel/Configure.help
# is a Russian translation, maintained by kaf@linux.nevod.perm.su.
# - http://www.linux-kheops.com/traduc/kernels/
# has a French translation of the whole kernel, including
# Configure.help. This is maintained by David Bourgin
# (dbourgin@wsc.com).
+# - http://visar.csustan.edu/~carlos/ contains Spanish translations
+# of the 2.0 kernel documentation files, produced by Carlos Perelló
+# Marķn (fperllo@ehome.encis.es).
# - ftp://ftp-pavia1.linux.it/pub/linux/Configure.help
# is a work-in-progress effort of the Italian translation team,
# currently only for the 2.0 version of this file, maintained
@@ -24,14 +28,14 @@
#
# 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
-# via ftp (user: anonymous) from sunsite.unc.edu in the directory
+# via FTP (user: anonymous) from sunsite.unc.edu in the directory
# /pub/Linux/docs/HOWTO. 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 file
# Documentation/Changes. Make sure to read the toplevel kernel README
# file as well.
#
-# Format of this file: description<nl>variable<nl>helptext<nl><nl>. If
+# Format of this file: description<nl>variable<nl>help text<nl><nl>. If
# the question being documented is of type "choice", we list only the
# first occurring config variable. The help texts may contain empty
# lines, but every non-empty line must be indented two positions.
@@ -99,7 +103,7 @@ CONFIG_MATH_EMULATION
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. The lilo procedure is also explained in the SCSI-HOWTO,
- available via ftp (user: anonymous) in
+ available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.) 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 Linux
@@ -152,28 +156,58 @@ CONFIG_BLK_DEV_INITRD
Loop device support
CONFIG_BLK_DEV_LOOP
- Saying Y here will allow you to mount a file as a file system. This
- is useful if you want to check an ISO9660 file system before burning
- the CD, or want to use floppy images without first writing them to
- floppy. This option also allows you to mount a filesystem with
- encryption. To use these features, you need a recent version of
- mount (available via ftp (user: anonymous) from
- ftp://ftp.win.tue.nl/pub/linux/util/). Note that this loop device
- has nothing to do with the loopback device used for network
- connections from the machine to itself. Most users will answer N
- here.
+ 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, CDROM drives or floppy drives.
+
+ 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.
+
+ The loop device driver can also be used to "hide" a filesystem in a
+ disk partition, floppy, or regular file, either using encryption
+ (scrambling the data) or steganography (hiding the data in the low
+ bits of, say, a sound file). This is also safe if the file resides
+ on a remote file server. If you want to do this, you will first have
+ to acquire and install a kernel patch from
+ ftp://ftp.replay.com/pub/crypto/linux/all, and then you need to say
+ Y to this option.
+
+ Note that alternative ways use encrypted filesystems are provided by
+ the cfs package, which can be gotten via FTP (user: anonymous) from
+ ftp://ftp.replay.com/pub/crypto/disk/, and the newer tcfs package,
+ available at http://tcfs.dia.unisa.it/. These do not require any
+ kernel support and you can say N here if you want to use one of
+ them.
+
+ 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 (available via FTP (user: anonymous) from
+ ftp://ftp.win.tue.nl/pub/linux/util/).
+
+ 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 Documentation/modules.txt. The module will be
+ called loop.o.
+
+ Most users will answer N here.
Network Block Device support
CONFIG_BLK_DEV_NBD
- Saying Y here will allow your computer to serve as a client for
- network block devices - it will be able to use block devices
- exported by servers (mount filesystems 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 special file such as /dev/nd0. It 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 Documentation/nbd.txt for details.
+ Saying Y here will allow your computer to be a client for network
+ block devices - it will be able to use block devices exported by
+ servers (mount filesystems 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 special file such as /dev/nd0. It 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 Documentation/nbd.txt for more information, especially about
+ where to find the server code.
Note that this has nothing to do with the network file system NFS;
you can say N here even if you intend to use NFS.
@@ -195,7 +229,7 @@ CONFIG_BLK_DEV_IDE
Useful information about large (>540MB) IDE disks, sound card IDE
ports, module support, and other topics, is contained in
Documentation/ide.txt. For detailed information about hard drives,
- consult the Disk-HOWTO, available via ftp (user: anonymous) from
+ consult the Disk-HOWTO, available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. To fine-tune IDE
drive/interface parameters for improved performance, look for the
hdparm package at
@@ -218,7 +252,7 @@ CONFIG_BLK_DEV_HD_ONLY
for systems with only older MFM/RLL/ESDI drives. Choosing the old
driver can save 13kB 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 via ftp
+ more detailed information, read the Disk-HOWTO, available via FTP
(user: anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Use old disk-only driver on primary interface
@@ -260,9 +294,9 @@ CONFIG_BLK_DEV_IDECD
along with other IDE devices, as "hdb" or "hdc", or something
similar (check the boot messages with dmesg). If this is your only
CDROM drive, you can say N to all other CDROM options, but be sure
- to say Y to "ISO9660 cdrom filesystem support".
+ to say Y or M to "ISO 9660 CDROM filesystem support".
- Read the CDROM-HOWTO, available via ftp (user: anonymous) in
+ Read the CDROM-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO and the file
Documentation/cdrom/ide-cd. Note that older versions of lilo (the
Linux boot loader) cannot properly deal with IDE/ATAPI CDROMs, so
@@ -314,12 +348,21 @@ 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. If both this SCSI emulation and
- native ATAPI support are compiled into the kernel, the native
- support will be used. Normally, say N.
+ 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.
+
+ 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.
+
+ If unsure, say N.
CMD640 chipset bugfix/support
CONFIG_BLK_DEV_CMD640
@@ -338,7 +381,7 @@ CONFIG_BLK_DEV_CMD640
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 lilo procedure is also explained in
- the SCSI-HOWTO, available via ftp (user: anonymous) in
+ the SCSI-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.)
The CMD640 chip is also used on add-in cards by Acculogic, and on
@@ -374,10 +417,8 @@ Generic PCI bus-master DMA support
CONFIG_BLK_DEV_IDEDMA
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. With this
- option, Linux will automatically enable DMA transfers in most cases,
- noting this with "DMA" appended to the drive identification info.
- You can also use the "hdparm" utility to enable DMA for drives which
+ you will want to say Y here to reduce CPU overhead.
+ You can use the "hdparm" utility to enable DMA for drives which
were not enabled automatically. You can get the latest version of
the hdparm utility via anonymous FTP from
ftp://sunsite.unc.edu/pub/Linux/system/hardware/.
@@ -387,6 +428,18 @@ CONFIG_BLK_DEV_IDEDMA
It is safe to say Y to this question.
+Use DMA by default when available
+CONFIG_IDEDMA_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 nearly always safe to say Y to this question.
+
Other IDE chipset support
CONFIG_IDE_CHIPSETS
Say Y here if you want to include enhanced support for various IDE
@@ -451,46 +504,51 @@ NS87415 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 drivers/block/ns87415.c.
QDI QD6580 support
CONFIG_BLK_DEV_QD6580
This driver is enabled at runtime using the "ide0=qd6580" kernel
boot parameter. It permits faster I/O speeds to be set. See the
- Documentation/ide.txt and qd6580.c files for more info.
+ files Documentation/ide.txt and qd6580.c 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 Documentation/ide.txt and umc8672.c files for more info.
+ See the files Documentation/ide.txt and umc8672.c for more info.
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 Documentation/ide.txt and
- ali14xx.c files for more info.
+ I/O speeds to be set as well. See the files Documentation/ide.txt
+ and ali14xx.c for more info.
Apple Macintosh builtin IDE interface support (EXPERIMENTAL)
CONFIG_BLK_DEV_MAC_IDE
This is the IDE driver for the builtin IDE interface on some Apple
Macintosh models. It supports both the Quadra/Performa/LC 630 and
the PowerBook 190 IDE interface.
+
Say Y if you have such a Macintosh model and want to use IDE devices
(hard disks, CD-ROM drives, etc.) that are connected to the builtin
IDE interface.
XT hard disk support
CONFIG_BLK_DEV_XD
- Very old 8 bit hard disk controllers used in the IBM XT computer. To
- include a driver for these, say Y. 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
- Documentation/modules.txt. The module will be called xd.o. It's
- pretty unlikely that you have one of these: say N.
+ 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 Documentation/modules.txt. The module will be
+ called xd.o.
+
+ It's pretty unlikely that you have one of these: say N.
Parallel port IDE device support
CONFIG_PARIDE
@@ -539,8 +597,8 @@ CONFIG_PARIDE_PCD
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 to "ISO9660
- cdrom filesystem support" below, because that's the filesystem used
+ you have such a CD-ROM drive, you should also say Y or M to "ISO 9660
+ CDROM filesystem support" below, because that's the filesystem used
on CDROMs.
Parallel port ATAPI disks
@@ -566,6 +624,21 @@ CONFIG_PARIDE_PT
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 cdrecord, 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 /usr/include/linux/pg.h for details, or visit
+ http://www.torque.net/parport/cdr.html for more information and
+ the required patches to cdrecord.
+
ATEN EH-100 protocol
CONFIG_PARIDE_ATEN
This option enables support for the ATEN EH-100 parallel port IDE
@@ -626,6 +699,28 @@ CONFIG_PARIDE_EPIA
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 ktti.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 power protocol
CONFIG_PARIDE_FRPW
This option enables support for the Freecom power parallel port IDE
@@ -646,6 +741,17 @@ CONFIG_PARIDE_KBIC
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
@@ -672,10 +778,10 @@ CONFIG_BLK_DEV_MD
logical block device. This can be used to combine several redundant
hard disks to a RAID1/4/5 device so as to provide protection against
hard disk failures. More information and the necessary tools are
- available over ftp (user: anonymous) from
+ available over FTP (user: anonymous) from
ftp://sweet-smoke.ufr-info-p7.ibp.fr/pub/Linux in the md package and
the md-FAQ. Please read drivers/block/README.md and the relevant
- section of the Disk-HOWTO, available via ftp (user: anonymous) from
+ section of the Disk-HOWTO, available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. If unsure, say N.
Linear (append) mode
@@ -741,6 +847,24 @@ CONFIG_MD_MIRRORING
want to compile it as a module, say M here and read
Documentation/modules.txt. If unsure, say Y.
+IDE card support
+CONFIG_BLK_DEV_IDE_CARDS
+ On Acorn systems, say Y here if you wish to use an IDE interface
+ expansion card. If you do not or are unsure, say N.
+
+ICS IDE interface
+CONFIG_BLK_DEV_IDE_ICS
+ 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.
+
+ADFS partition support
+CONFIG_BLK_DEV_PART
+ This allows Linux on Acorn systems to determine its partitions in
+ the 'non-ADFS' partition area of the hard disk - usually located
+ after the ADFS partition. You are probably using this system, so
+ you should say Y here.
+
Boot support (linear, striped)
CONFIG_MD_BOOT
To boot with an initial linear or striped md device you have to say
@@ -825,7 +949,7 @@ CONFIG_NET_ALIAS
typically used for services that act differently based on the
address they listen on (e.g. "multihosting" or "virtual domains" or
"virtual hosting services" on the web server apache and the ftp
- server wuftpd -- read the Virtual-Services-HOWTO, available via ftp
+ server wuftpd -- read the Virtual-Services-HOWTO, available via FTP
(user: anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO)
or for connecting to different logical networks through the same
physical interface (most commonly an Ethernet networking card). See
@@ -873,11 +997,10 @@ CONFIG_FIREWALL
is talking to the firewall box -- makes the local network completely
invisible to the outside world and avoids the need to allocate
globally valid IP host addresses for the machines on the local net)
- and IP packet accounting (keeping track of what is using up all your
- network bandwidth) and IP transparent proxying (makes the computers
- on the local network think they're talking to a remote computer,
- while in reality the traffic is redirected by your Linux firewall to
- a local proxy server).
+ and IP transparent proxying (makes the computers on the local
+ network think they're talking to a remote computer, while in reality
+ the traffic is redirected by your Linux firewall to a local proxy
+ server).
Make sure to say N to "Fast switching" below if you intend to say Y
here.
@@ -901,6 +1024,11 @@ CONFIG_SYN_COOKIES
about SYN cookies, check out
ftp://koobera.math.uic.edu/pub/docs/syncookies-archive.
+ 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.
+
If you say Y here, note that SYN cookies aren't enabled by default;
you can enable them by saying Y to "/proc filesystem support" and
"Sysctl support" below and executing the command
@@ -913,16 +1041,16 @@ CONFIG_SYN_COOKIES
Sun floppy controller support
CONFIG_BLK_DEV_SUNFD
- This is support for floppy drives on Sun Sparc workstations. Say Y
+ This is support for floppy drives on Sun SPARC workstations. Say Y
if you have a floppy drive, otherwise N. Easy.
Alpha system type
CONFIG_ALPHA_AVANTI
Find out what type of Alpha motherboard you have. You will probably
- want to read the Linux/Alpha homepage on the WWW at
+ want to read the Linux/Alpha home page on the WWW at
http://www.azstarnet.com/~axplinux/ (to browse the WWW, you need to
have access to a machine on the Internet that has a program like
- lynx or netscape) and also the Alpha-HOWTO, available via ftp (user:
+ lynx or netscape) and also the Alpha-HOWTO, available via FTP (user:
anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. For this
question, it suffices to give a unique prefix of the option you want
to choose. The choices:
@@ -1000,7 +1128,7 @@ 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
- via ftp (user: anonymous) from
+ via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini), 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
@@ -1013,18 +1141,15 @@ CONFIG_SERIAL_SHARE_IRQ
serial ports on the same board to share a single IRQ. To enable
support for this in the serial driver, say Y here.
-Autodetect IRQ on standard ports (unsafe)
+Auto detect IRQ on standard ports (unsafe)
CONFIG_SERIAL_DETECT_IRQ
- Enable this option if you want the kernel to try to guess which IRQ
- is configured during the boot sequence and you're too lazy to edit
- the boot scripts to use the setserial command. This option can be
- unsafe and should not be enabled on most machines. It is far
- better to dynamically request autoconfiguration during the boot-time
- scripts using the setserial command. You can change the IRQ and/or
- request automatic IRQ configuration at any time by using the
- "setserial" program. I wouldn't include this config option at all except
- people keep bellyaching about it. I guess they are really are too lazy
- to edit their boot scripts. :-) If unsure, say No.
+ 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
@@ -1056,6 +1181,26 @@ CONFIG_HUB6
Say Y here to enable support in the dumb serial driver to support
the HUB6 card.
+Unix98 PTY support
+CONFIG_UNIX98_PTYS
+ Linux traditionally uses BSD-like /dev/ptyxx and /dev/ttyxx names
+ for pseudo-ttys (PTYs). This scheme has a number or problems. The
+ GNU C library 2.1 and later, however, supports the Unix98 naming
+ standard, using a cloning device /dev/ptmx and numbered devices in a
+ subdirectory /dev/pts/xxx. The device nodes in /dev/pts can be
+ automatically generated by the devpts virtual filesystem.
+
+ Say Y here if you are uncertain, unless you are very short on memory.
+
+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,
+ however, server machines which support incoming telnet/rlogin/ssh
+ connections may want to increase this. When not in use, each
+ additional set of 256 PTYs occupy approximately 8K of kernel memory
+ on 32-bit architectures.
+
TGA Console Support
CONFIG_TGA_CONSOLE
Many Alpha systems (e.g the Multia) are shipped with a graphics card
@@ -1070,9 +1215,10 @@ CONFIG_PCI
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
- via ftp (user: anonymous) in sunsite.unc.edu:/pub/Linux/docs/HOWTO,
- contains valuable information about which PCI hardware does work
- under Linux and which doesn't.
+ via FTP (user: anonymous) in
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO, contains valuable
+ information about which PCI hardware does work under Linux and which
+ doesn't.
If some of your PCI devices don't work and you get a warning during
boot time ("man dmesg"), please follow the instructions at the top
@@ -1102,8 +1248,9 @@ CONFIG_PCI_DIRECT
PCI quirks
CONFIG_PCI_QUIRKS
If you have a broken BIOS, it may fail to set up the PCI bus in a
- correct or optimal fashion. If your BIOS is fine you can say N here
- for a very slightly smaller kernel. If unsure, say Y.
+ correct or optimal fashion. Saying Y here will correct that problem.
+ If your BIOS is fine you can say N here for a very slightly smaller
+ kernel. If unsure, say Y.
PCI bridge optimization (experimental)
CONFIG_PCI_OPTIMIZE
@@ -1142,12 +1289,12 @@ CONFIG_SYSVIPC
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 via ftp (user: anonymous) in
+ (read the DOSEMU-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO), 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 via ftp
+ section 6.4 of the Linux Programmer's Guide, available via FTP
(user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/LDP/programmers-guide.
@@ -1236,7 +1383,7 @@ CONFIG_BINFMT_JAVA
becoming a universal executable format.
If you want to execute JAVA binaries, read the Java on Linux HOWTO,
- available via ftp (user: anonymous) at
+ available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. You will then need to
install the run time system contained in the Java Developers Kit
(JDK) as described in the HOWTO. This is completely independent of
@@ -1302,7 +1449,7 @@ CONFIG_BINFMT_MISC
Solaris binary emulation
CONFIG_SOLARIS_EMUL
This is experimental code which will enable you to run (many)
- Solaris binaries on your Sparc Linux machine.
+ 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).
@@ -1340,6 +1487,12 @@ CONFIG_M386
If you don't know what to do, choose "386".
+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. Say Y.
+
Video mode selection support
CONFIG_VIDEO_SELECT
This enables support for text mode selection on kernel startup. If
@@ -1350,11 +1503,307 @@ CONFIG_VIDEO_SELECT
"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. The lilo procedure is also
- explained in the SCSI-HOWTO, available via ftp (user: anonymous) in
+ explained in the SCSI-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Read
Documentation/svga.txt for more information about the Video mode
selection support. If unsure, say N.
+Support for frame buffer devices (EXPERIMENTAL)
+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. This works
+ across the different architectures supported by Linux and makes the
+ implementation of application programs easier and more portable; at
+ this point, an X server exists which uses the frame buffer device
+ exclusively.
+
+ The device is accessed through special device nodes, usually located
+ in the /dev directory, i.e. /dev/fb*.
+
+ Please read the file Documentation/fb/framebuffer.txt for more
+ information.
+
+ If you want to play with it, say Y here and to the driver for your
+ graphics board, below. If unsure, say N.
+
+Acorn VIDC support
+CONFIG_FB_ACORN
+ This is the frame buffer device driver for the Acorn VIDC graphics
+ chipset.
+
+Apollo frame buffer device
+CONFIG_FB_APOLLO
+ This is the frame buffer device driver for the monochrome graphics
+ hardware found in some Apollo workstations.
+
+Amiga native chipset support
+CONFIG_FB_AMIGA
+ This is the frame buffer device driver for the builtin graphics
+ chipset found in Amigas.
+
+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.
+
+Amiga CyberVision3D support (EXPERIMENTAL)
+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 (EXPERIMENTAL)
+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.
+
+Amiga CLgen driver (EXPERIMENTAL)
+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. Say N
+ unless you have such a graphics board or plan to get one before you next
+ recompile the kernel.
+
+Atari native chipset support
+CONFIG_FB_ATARI
+ This is the frame buffer device driver for the builtin graphics
+ chipset found in Ataris.
+
+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.
+
+ATI Mach64 display support
+CONFIG_FB_ATY
+ This driver supports graphics boards with the ATI Mach64 chips.
+
+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.
+
+Chips 65550 display support
+CONFIG_FB_CT65550
+ This is the frame buffer device driver for the Chips & Technologies
+ 65550 graphics chip in PowerBooks.
+
+Mac frame buffer device
+CONFIG_FB_MAC
+ This is the frame buffer device driver for the graphics hardware in
+ m68k Macintoshes.
+
+HP300 frame buffer device
+CONFIG_FB_HP300
+ This is the frame buffer device driver for the Topcat graphics
+ hardware found in HP300 workstations.
+
+VGA chipset support (text only)
+CONFIG_FB_VGA
+ This is the frame buffer device driver for generic VGA chips. This
+ driver works only in text mode; if you want graphics mode, say Y to
+ "VESA VGA graphics console" as well.
+
+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 graphic cards.
+ Please read Documentation/fb/vesafb.txt.
+
+MDA dual-headed support
+CONFIG_FB_MDA
+ Say Y here if you have an old MDA or monochrome Hercules graphics
+ adapter in your system acting as a second head ( = video card). Do
+ not enable this driver 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 mdafb.o. If you want to compile it as
+ a module, say M here and read Documentation/modules.txt.
+
+ 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.
+
+TCX (SS4/SS5 only) support
+CONFIG_FB_TCX
+ This is the frame buffer device driver for the TCX 24/8bit frame buffer.
+
+Virtual Frame Buffer support (ONLY FOR TESTING!)
+CONFIG_FB_VIRTUAL
+ This is a `virtual' frame buffer device. It operates on a chunk of
+ unswapable 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 on 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 Documentation/modules.txt.
+
+ If unsure, say N.
+
+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 do not enable this option, the needed low level drivers are
+ automatically enabled, depending on what frame buffer devices you
+ selected. This is recommended for most users.
+
+ If you enable this option, 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 Documentation/modules.txt.
+
+ 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 fontwidths
+ for low resolution screens.
+
+VGA characters/attributes support
+CONFIG_FBCON_VGA
+ This is the low level frame buffer console driver for VGA text mode, as
+ used by vgafb.
+
Parallel-port support
CONFIG_PARPORT
If you want to use devices connected to your machine's parallel port
@@ -1565,10 +2014,10 @@ IP: 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. Normally, these values are ignored, but if you say Y
- here, you will be able to specify different routes for packets with
- different TOS values.
+ (for interactive traffic), high throughput, or high reliability.
+ Normally, these values are ignored, but if you say Y here, you will
+ be able to specify different routes for packets with different TOS
+ values.
IP: verbose route monitoring
CONFIG_IP_ROUTE_VERBOSE
@@ -1611,17 +2060,20 @@ CONFIG_IP_ROUTER
IP: firewalling
CONFIG_IP_FIREWALL
If you want to configure your Linux box as a packet filter firewall
- for a local TCP/IP based network, say Y here. This will enlarge your
- kernel by about 2kB. You may need to read the FIREWALL-HOWTO,
- available via ftp (user: anonymous) in
+ for a local TCP/IP based network, say Y here. You may want to read
+ the FIREWALL-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
- Also, you will need the ipfwadm tool (available via ftp (user:
- anonymous) from ftp://ftp.xos.nl/pub/linux/ipfwadm/) to allow selective
- blocking of Internet traffic based on type, origin and destination;
- this type of firewall is called a "packet filter". The other type of
- firewall, "proxy-based" ones, is more secure but more intrusive and
- more bothersome to set up; it inspects the network traffic much more
+ Also, you will need the ipchains tool (available on the WWW at
+ http://www.adelaide.net.au/~rustcorp/) to allow selective blocking
+ of Internet traffic based on type, origin and destination.
+ Note that the Linux firewall code has changed and the old program
+ called ipfwadm won't work anymore.
+
+ The type of firewall provided by ipchains and this kernel support is
+ called a "packet filter". The other type 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
@@ -1643,11 +2095,13 @@ CONFIG_IP_FIREWALL
talking to the firewall box -- makes the local network completely
invisible to the outside world and avoids the need to allocate
globally valid IP host addresses for the machines on the local net)
- and IP packet accounting (keeping track of what is using all your
- network bandwidth) and IP transparent proxying (makes the computers
- on the local network think they're talking to a remote computer,
- while in reality the traffic is redirected by your Linux firewall to
- a local proxy server).
+ and IP packet logging and accounting (keeping track of what is using
+ all your network bandwidth) and IP transparent proxying (makes the
+ computers on the local network think they're talking to a remote
+ computer, while in reality the traffic is redirected by your Linux
+ firewall to a local proxy server).
+
+ If in doubt, say N here.
IP: firewall packet netlink device
CONFIG_IP_FIREWALL_NETLINK
@@ -1655,21 +2109,15 @@ CONFIG_IP_FIREWALL_NETLINK
blocked, the first 128 bytes of each such packet are passed on to
optional user space monitoring software that can then look for
attacks and take actions such as paging the administrator of the
- site. To use this, you need to create a character special file under
- /dev with major number 36 and minor number 3 using mknod ("man
- mknod"), and you need (to write) a program that reads from that
- device and takes appropriate action.
-
-IP: accounting
-CONFIG_IP_ACCT
- This keeps track of your IP network traffic and produces some
- statistics. Usually, you only want to say Y here if your box will be
- a router or a firewall for some local network. For the latter, you
- need to say Y to "IP firewalling". The data is accessible with "cat
- /proc/net/ip_acct", so you want to say Y to the /proc filesystem
- below, if you say Y here. To specify what exactly should be
- recorded, you need the tool ipfwadm (available via ftp (user:
- anonymous) from ftp://ftp.xos.nl/pub/linux/ipfwadm/).
+ site.
+
+ To use this, you need to create a character special file under /dev
+ with major number 36 and minor number 3 using mknod ("man mknod"),
+ and you need (to write) a program that reads from that device and
+ takes appropriate action.
+
+ With the ipchains tool you can specify which packets you want to go
+ to this device, as well as how many bytes from each packet.
IP: kernel level autoconfiguration
CONFIG_IP_PNP
@@ -1741,12 +2189,6 @@ CONFIG_NET_IPGRE_BROADCAST
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: firewall packet logging
-CONFIG_IP_FIREWALL_VERBOSE
- This gives you information about what your firewall did with
- packets it received. The information is handled by the klogd daemon
- which is responsible for kernel messages ("man klogd").
-
IP: transparent proxying
CONFIG_IP_TRANSPARENT_PROXY
This enables your Linux firewall to transparently redirect any
@@ -1774,7 +2216,7 @@ CONFIG_IP_MASQUERADE
addresses. (This last problem can also be solved by connecting the
Linux box to the Internet using SLiRP [SLiRP is a SLIP/PPP emulator
that works if you have a regular dial up shell account on some UNIX
- computer; get it via ftp (user: anonymous) from
+ computer; get it via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/system/network/serial/ ].)
The IP masquerading code will only work if IP forwarding is enabled
@@ -1787,13 +2229,15 @@ CONFIG_IP_MASQUERADE
from a boot time script after the /proc filesystem has been mounted.
Details on how to set things up are contained in the IP Masquerade
- mini-HOWTO, available via ftp (user: anonymous) from
- ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini.
+ mini-HOWTO, available via FTP (user: anonymous) from
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini; there's also some
+ information on the WWW at
+ http://www.tor.shaw.wave.ca/~ambrose/kernel21.html.
If you say Y here, you should also say Y to "IP: always defragment",
below. If you say Y here, then the modules ip_masq_ftp.o (for ftp
transfers through the firewall), ip_masq_irc.o (for irc chats
- through the firewall), and ip_masq_raudio.o (for realaudio downloads
+ through the firewall), and ip_masq_raudio.o (for RealAudio downloads
through the firewall) will automatically be compiled. Modules are
pieces of code which can be inserted in and removed from the running
kernel whenever you want; read Documentation/modules.txt for
@@ -1814,7 +2258,7 @@ CONFIG_IP_MASQUERADE_IPAUTOFW
ipautofw is a program by Richard Lynch allowing additional support
for masquerading protocols which do not (as yet) have their own
protocol helpers. Information and source for ipautofw is available
- via ftp (user: anonymous) from
+ via FTP (user: anonymous) from
ftp://ftp.netis.com/pub/members/rlynch/
The ipautofw code is still under development and so is currently
@@ -1827,13 +2271,23 @@ CONFIG_IP_MASQUERADE_IPAUTOFW
IP: ipportfw masquerade support
CONFIG_IP_MASQUERADE_IPPORTFW
- ipportfw is an addition to IP Masquerading written by Steven Clarke
- to allow some forwarding of packets from outside to inside a
- firewall on given ports. Information and source for ipportfw is
- available from
+ Port Forwarding is an addition to IP Masquerading written by Steven
+ Clarke to allow some forwarding of packets from outside to inside a
+ firewall on given ports. This could be useful if, for example, you
+ want to run a web server behind the firewall or masquerading host
+ and this web server should be visible to the outside world. An
+ external client connects to port 80 of the firewall, the firewall
+ forwards requests to this port to the web server, the web server
+ handles the request and the results are sent through the firewall to
+ the original client. The client thinks that the firewall machine
+ itself is running the web server.
+
+ Information about it is available from
http://www.monmouth.demon.co.uk/ipsubs/portforwarding.html (to
browse the WWW, you need to have access to a machine on the Internet
- that has a program like lynx or netscape).
+ that has a program like lynx or netscape). You will need the user
+ space program ipportfw which can be downloaded from
+ ftp://ftp.compsoc.net/users/steve/ipportfw/linux21/
The portfw code is still under development and so is currently
marked EXPERIMENTAL. If you want to try it, say Y.
@@ -1858,10 +2312,10 @@ CONFIG_IP_ALWAYS_DEFRAG
you might also want to say Y here, to have a more reliable firewall
(otherwise second and further fragments will always be accepted by
the firewall). When using "IP: transparent proxying", this option is
- implicit, although it is safe to say Y here. Do not say Y to this
- option except when running either a firewall that is the sole link
- to your network or a transparent proxy. Never ever say Y to this for
- a normal router or host.
+ implicit, although it is safe to say Y here. Only say Y here if
+ running either a firewall that is the sole link to your network or a
+ transparent proxy; never ever say Y here for a normal router or
+ host.
IP: aliasing support
CONFIG_IP_ALIAS
@@ -1874,7 +2328,7 @@ CONFIG_IP_ALIAS
the WWW at http://www.thesphere.com/~dlp/TwoServers/ (to browse the
WWW, you need to have access to a machine on the Internet that has a
program like lynx or netscape) and also in the
- Virtual-Hosting-HOWTO, available via ftp (user: anonymous) from
+ Virtual-Hosting-HOWTO, available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Another scenario would be
@@ -1918,7 +2372,7 @@ CONFIG_IP_PIMSM_V2
PC/TCP compatibility mode
CONFIG_INET_PCTCP
- If you have been having difficulties telneting to your Linux machine
+ If you have been having difficulties telnetting to your Linux machine
from a DOS system that uses (broken) PC/TCP networking software (all
versions up to OnNet 2.0) over your local Ethernet try saying Y
here. Everyone else says N. People having problems with NCSA telnet
@@ -1937,8 +2391,8 @@ CONFIG_INET_RARP
Y here; you'll then have to run the program rarp ("man rarp") on
your box.
- If you actually want to use a diskless Sun 3 machine as an Xterminal
- to Linux, say Y here and fetch Linux-Xkernel from
+ If you actually want to use a diskless Sun 3 machine as an X
+ terminal to Linux, say Y here and fetch Linux-Xkernel from
ftp://sunsite.unc.edu/pub/Linux/system/network/boot.net/.
Superior solutions to the problem of booting and configuring
@@ -2018,17 +2472,20 @@ CONFIG_SKB_LARGE
Unix domain sockets
CONFIG_UNIX
This includes Unix domain sockets, the standard Unix mechanism for
- establishing and accessing network connections. Unless you are
- working on an embedded system or something, you definitely want to
- say Y here.
+ 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.
The socket 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 unix.o. If you want to compile it
as a module, say M here and read Documentation/modules.txt. If you
try building this as a module and you are running kerneld, be sure
- to add 'alias net-pf-1 unix' to your /etc/conf.module file. If
- unsure, say Y.
+ to add 'alias net-pf-1 unix' to your /etc/conf.module file.
+
+ If unsure, say Y.
The IPv6 protocol
CONFIG_IPV6
@@ -2075,12 +2532,12 @@ CONFIG_IPV6_NETLINK
say Y to "Kernel/User network link driver" and to "Routing
messages" instead.
-The IPX protocol
+IPX networking
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 via ftp (user: anonymous) from
+ Novell client ncpfs (available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/system/filesystems/) or from within
the Linux DOS emulator dosemu (read the DOSEMU-HOWTO, available in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO). In order to do the
@@ -2096,6 +2553,7 @@ CONFIG_IPX
ftp://sunsite.unc.edu/pub/Linux/system/network/daemons/ or mars_nwe from
ftp://ftp.gwdg.de/pub/linux/misc/ncpfs. For more information, read the
IPX-HOWTO in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+
General information about how to connect Linux, Windows machines and
Macs is on the WWW at http://www.eats.com/linux_mac_win.html (to
browse the WWW, you need to have access to a machine on the Internet
@@ -2112,12 +2570,12 @@ IPX: 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 fileserver for different IPX
+ (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
- sunsite.unc.edu:/pub/Linux/docs/howto for details.
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO for details.
The full internal IPX network enables you to allocate sockets on
different virtual nodes of the internal network. This is done by
@@ -2146,27 +2604,27 @@ CONFIG_SPX
space programs lwared or mars_nwe for the server side).
Say Y here if you have use for SPX; read the IPX-HOWTO at
- sunsite.unc.edu:/pub/Linux/docs/howto for details.
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO 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 Documentation/modules.txt.
-Appletalk DDP
+AppleTalk DDP
CONFIG_ATALK
- Appletalk is the way Apple computers speak to each other on a
+ AppleTalk is the way Apple computers speak to each other on a
network. If your Linux box is connected to such a network and you
want to join the conversation, 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
+ server for Macs as well as access AppleTalk printers. Check out
http://threepio.hitchcock.org/cgi-bin/faq/netatalk/faq.pl on the WWW
for details (to browse the WWW, you need to have access to a machine
on the Internet that has a program like lynx or netscape). 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.
- The NET-2-HOWTO, available via ftp (user: anonymous) in
+ 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.
+ The NET-2-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO contains valuable
information as well.
@@ -2180,14 +2638,14 @@ CONFIG_ATALK
the GNU boycott of Apple is over, so even politically correct people
are allowed to say Y here.
-Appletalk-IP driver support
+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 either encapsulate IP inside Appletalk (e.g. if your
- Linux box is stuck on an Appletalk only network) or decapsulate
+ This allows IP networking for users who only have AppleTalk
+ networking available. This feature is experimental. With this
+ driver, you can either 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). You decide which one of the two
+ zoo of AppleTalk connected Macs). You decide which one of the two
you want in the following two questions; you can say Y to only one
of them. Please see Documentation/networking/ipddp.txt for more
information.
@@ -2197,23 +2655,23 @@ CONFIG_IPDDP
The module is called ipddp.o. If you want to compile it as a module,
say M here and read Documentation/modules.txt.
-IP to Appletalk-IP Encapsulation support
+IP to AppleTalk-IP Encapsulation support
CONFIG_IPDDP_ENCAP
If you say Y here, the kernel 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
+ inside AppleTalk frames; this is useful if your Linux box is stuck
+ on an AppleTalk network (which hopefully contains a decapsulator
somewhere). Please see Documentation/networking/ipddp.txt for more
- information. If you say Y here, you cannot say Y to "Appletalk-IP to
+ information. If you say Y here, you cannot say Y to "AppleTalk-IP to
IP Decapsulation support", below.
-Appletalk-IP to IP Decapsulation support
+AppleTalk-IP to IP Decapsulation support
CONFIG_IPDDP_DECAP
If you say Y here, the kernel 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
+ 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 Documentation/networking/ipddp.txt for more
information. If you say Y here, you cannot say Y to "IP to
- Appletalk-IP Encapsulation support", above.
+ AppleTalk-IP Encapsulation support", above.
Apple/Farallon LocalTalk PC card support
CONFIG_LTPC
@@ -2229,7 +2687,7 @@ 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"
+ work. This driver will only work if you choose "AppleTalk DDP"
networking support, above.
Please read the file Documentation/networking/cops.txt.
@@ -2250,7 +2708,7 @@ CONFIG_HAMRADIO
Y here. You want to read http://www.tapr.org/tapr/html/pkthome.html
(to browse the WWW, you need to have access to a machine on the
Internet that has a program like lynx or netscape) and the HAM-HOWTO
- and the AX25-HOWTO, both available via ftp (user: anonymous) from
+ and the AX25-HOWTO, both available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Note that the answer to
this question won't directly affect the kernel: saying N will just
cause this configure script to skip all the questions about amateur
@@ -2265,15 +2723,15 @@ CONFIG_AX25
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 Ottawa PI,
- the Gracilis Packetwin or the generic Z8530 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.
+ 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 via ftp (user: anonymous) in
+ contained in the AX25-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. You might also want to
check out the file Documentation/networking/ax25.txt in the kernel
source. More information about digital amateur radio in general is
@@ -2311,7 +2769,7 @@ CONFIG_NETROM
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 via ftp (user: anonymous) in
+ contained in the AX25-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. You also might want to
check out the file Documentation/networking/ax25.txt. More
information about digital amateur radio in general is on the WWW at
@@ -2332,7 +2790,7 @@ CONFIG_ROSE
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 via ftp (user: anonymous) in
+ contained in the AX25-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. You also might want to check
out the file Documentation/networking/ax25.txt. More information
about digital amateur radio in general is on the WWW at
@@ -2387,41 +2845,43 @@ CONFIG_BPQETHER
High-speed (DMA) SCC driver for AX.25
CONFIG_DMASCC
- This is a driver for high-speed SCC boards (used to connect your
- computer to your amateur radio and send Internet traffic over the
- radio), i.e. those supporting DMA on one port. Currently, only
- Ottawa PI/PI2 boards (see http://hydra.carleton.ca/info/pi2.html)
- and Gracilis PackeTwin boards (see http://www.paccomm.com/; to
- browse the WWW, you need to have access to a machine on the Internet
- that has a program like lynx or netscape) are supported and detected
- automatically.
-
- If you have one of these cards, you can say Y here and should read
- the HAM-HOWTO, available via ftp (user: anonymous) in
- ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
-
- This driver operates multiple boards simultaneously. If you compile
- this driver as a module, it will be called dmascc.o. If you don't
- give 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
+ 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
+ (http://hydra.carleton.ca/info/pi2.html) and Gracilis PackeTwin
+ (http://www.paccomm.com/) boards. They are detected automatically.
+ If you have one of these cards, say Y here and read the HAM-HOWTO,
+ available via FTP (user: anonymous) in
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/.
+
+ 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 called
- dmascc_cfg, which is part of the ax25-utils package. Alternatively,
- you may download the utility from
- http://www.oevsv.at/~oe1kib/Linux.html.
+ 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
+ http://www.nt.tuwien.ac.at/~kkudielk/Linux/. (To browse the WWW, you
+ need to have access to a machine on the Internet that has a program
+ like lynx or netscape).
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 Documentation/networking/z8530drv.txt and the
- AX.25-HOWTO, available via ftp (user: anonymous) at
+ AX.25-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Also make sure to say Y to
"Amateur Radio AX.25 Level 2" support.
@@ -2457,6 +2917,21 @@ CONFIG_BAYCOM_PAR
say M here and read Documentation/modules.txt. 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 http://www.baycom.de (to browse the WWW, you need to
+ have access to a machine on the Internet that has a program like
+ lynx or netscape) and Documentation/networking/baycom.txt.
+
+ 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 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
@@ -2498,7 +2973,7 @@ CONFIG_BAYCOM_SER_HDX
Sound card modem driver for AX.25
CONFIG_SOUNDMODEM
- This experimental driver allows a standard SoundBlaster or
+ 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.
@@ -2516,11 +2991,11 @@ CONFIG_SOUNDMODEM
say M here and read Documentation/modules.txt. This is recommended.
The module will be called soundmodem.o.
-Sound card modem support for SoundBlaster and compatible cards
+Sound card modem support for Sound Blaster and compatible cards
CONFIG_SOUNDMODEM_SBC
- This option enables the soundmodem driver to use SoundBlaster and
+ 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 SoundBlaster emulation) you should say N here and Y to
+ 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.
@@ -2598,7 +3073,7 @@ CONFIG_X25
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 (WAN's). Many
+ 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
@@ -2659,12 +3134,12 @@ CONFIG_BRIDGE
other third party bridge products.
In order to use this, you'll need the bridge configuration tools
- available via ftp (user: anonymous) from
+ available via FTP (user: anonymous) from
ftp://shadow.cabi.net/pub/Linux. 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 via ftp (user: anonymous)
+ details read the Ethernet-HOWTO, available via FTP (user: anonymous)
in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. The Bridging code is
still in test. If unsure, say N.
@@ -2713,11 +3188,14 @@ CONFIG_SCSI
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CDROM 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), 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 100MB IOMEGA ZIP drive. Please read the
- SCSI-HOWTO, available via ftp (user: anonymous) in
- ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+ 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 100MB IOMEGA ZIP drive.
+
+ Please read the SCSI-HOWTO, available via FTP (user: anonymous) in
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
@@ -2731,7 +3209,7 @@ 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 and the Disk-HOWTO, both available via ftp (user:
+ SCSI-HOWTO and the Disk-HOWTO, both available via FTP (user:
anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. This is
NOT for SCSI CDROMs.
@@ -2746,8 +3224,8 @@ CONFIG_BLK_DEV_SD
SCSI tape support
CONFIG_CHR_DEV_ST
- If you want to use a SCSI tapedrive under Linux, say Y and read the
- SCSI-HOWTO, available via ftp (user: anonymous) in
+ If you want to use a SCSI tape drive under Linux, say Y and read the
+ SCSI-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO and
drivers/scsi/README.st in the kernel source. This is NOT for SCSI
CDROMs.
@@ -2762,8 +3240,8 @@ SCSI CDROM support
CONFIG_BLK_DEV_SR
If you want to use a SCSI CDROM under Linux, say Y and read the
SCSI-HOWTO and the CDROM-HOWTO from
- sunsite.unc.edu:/pub/Linux/docs/HOWTO. Also make sure to say Y to
- "ISO9660 cdrom filesystem support" later.
+ sunsite.unc.edu:/pub/Linux/docs/HOWTO. Also make sure to say Y or M
+ to "ISO 9660 CDROM filesystem 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).
@@ -2774,7 +3252,7 @@ CONFIG_BLK_DEV_SR
Enable vendor-specific extensions (for SCSI CDROM)
CONFIG_BLK_DEV_SR_VENDOR
This enables the usage of vendor specific SCSI commands. This is
- required to support multisession CD's with old NEC/TOSHIBA cdrom
+ 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.
@@ -2785,11 +3263,11 @@ CONFIG_CHR_DEV_SG
CDROMs 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 CD-writers, you
- would need the program cdwrite, available via ftp (user: anonymous)
+ would need the program cdwrite, available via FTP (user: anonymous)
from ftp://sunsite.unc.edu/pub/Linux/utils/disk-management; for other
devices, it's possible that you'll have to write the driver software
yourself, so have a look at the SCSI-HOWTO and at the
- SCSI-Programming-HOWTO, both available via ftp (user: anonymous) in
+ SCSI-Programming-HOWTO, both available via FTP (user: anonymous) in
sunsite.unc.edu:/pub/Linux/docs/HOWTO.
If you want to compile this as a module ( = code which can be
@@ -2846,7 +3324,7 @@ Adaptec AHA152X/2825 support
CONFIG_SCSI_AHA152X
This is support for the AHA-1510, AHA-1520, AHA-1522, and AHA-2825
SCSI host adapters. It is explained in section 3.3 of the
- SCSI-HOWTO, available via ftp (user: anonymous) at
+ SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. You might also want to
read the comments at the top of drivers/scsi/aha152x.c.
@@ -2858,7 +3336,7 @@ CONFIG_SCSI_AHA152X
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 via ftp (user: anonymous) at
+ 3.4 of the SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Note that Trantor was
recently purchased by Adaptec, and some former Trantor products are
being sold under the Adaptec name. If it doesn't work out of the
@@ -2872,7 +3350,7 @@ CONFIG_SCSI_AHA1542
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 via ftp (user: anonymous) at
+ 3.5 of the SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. If it doesn't work out
of the box, you may have to change some settings in
drivers/scsi/aha1740.h.
@@ -2891,7 +3369,7 @@ CONFIG_SCSI_AIC7XXX
Information on the configuration options for this controller can be
found by checking the help file for each of the available
configuration options. You also want to read
- drivers/scsi/README.aic7xxx and the SCSI-HOWTO, available via ftp
+ drivers/scsi/README.aic7xxx and the SCSI-HOWTO, available via FTP
(user: anonymous) at ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Note
that the AHA2920 SCSI host adapter is *not* supported by this
driver; choose "Future Domain 16xx SCSI support" instead if you have
@@ -2906,7 +3384,7 @@ Override driver defaults for commands per LUN
CONFIG_OVERRIDE_CMDS
Say Y here if you want to override the default maximum number of
commands that a single device on the aic7xxx controller is allowed
- to have active at one time. This option only effects tagged queueing
+ to have active at one time. This option only affects tagged queueing
capable devices. The driver uses a "failsafe" value of 8 by default.
This is much lower than many devices can handle, but left in place
for safety's sake. If you say Y here, you can adjust the number of
@@ -2966,7 +3444,7 @@ CONFIG_AIC7XXX_RESET_DELAY
BusLogic SCSI support
CONFIG_SCSI_BUSLOGIC
This is support for BusLogic MultiMaster and FlashPoint SCSI Host
- Adapters. Consult the SCSI-HOWTO, available via anonymous ftp from
+ Adapters. Consult the SCSI-HOWTO, available via anonymous FTP from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO, and the files
README.BusLogic and README.FlashPoint in drivers/scsi for more
information. If this driver does not work correctly without
@@ -2989,7 +3467,7 @@ CONFIG_SCSI_OMIT_FLASHPOINT
DTC3180/3280 SCSI support
CONFIG_SCSI_DTC3280
This is support for DTC 3180/3280 SCSI Host Adapters. Please read
- the SCSI-HOWTO, available via ftp (user: anonymous) at
+ the SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO and the file
drivers/scsi/README.dtc3x80.
@@ -3005,7 +3483,7 @@ CONFIG_SCSI_EATA_DMA
and the DPT PM2011B and PM2012B controllers. Note that there is
also another driver for the same hardware: "EATA ISA/EISA/PCI
support". You should only say Y to one of them. Please read the
- SCSI-HOWTO, available via ftp (user: anonymous) at
+ SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module (= code which can be
@@ -3020,7 +3498,7 @@ CONFIG_SCSI_EATA_PIO
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 via ftp (user: anonymous) at
+ available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to compile this as a module ( = code which can be
@@ -3034,7 +3512,7 @@ CONFIG_SCSI_U14_34F
The source at drivers/scsi/u14-34f.c contains some information about
this hardware. If the driver doesn't work out of the box, you may
have to change some settings in drivers/scsi/u14-34f.c. Read the
- SCSI-HOWTO, available via ftp (user: anonymous) at
+ SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. 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
@@ -3064,7 +3542,7 @@ CONFIG_SCSI_FUTURE_DOMAIN
(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-2920; and at least one IBM board).
- It is explained in section 3.7 of the SCSI-HOWTO, available via ftp
+ It is explained in section 3.7 of the SCSI-HOWTO, available via FTP
(user: anonymous) at ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -3076,7 +3554,7 @@ 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 via ftp (user: anonymous)
+ section 3.8 of the SCSI-HOWTO, available via FTP (user: anonymous)
at ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. If it doesn't work
out of the box, you may have to change some settings in
drivers/scsi/g_NCR5380.h.
@@ -3105,7 +3583,7 @@ NCR53c7,8xx SCSI support
CONFIG_SCSI_NCR53C7xx
This is 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 via ftp (user: anonymous) at
+ 3.8 of the SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. If it doesn't work out
of the box, you may have to change some settings in
drivers/scsi/53c7,8xx.h.
@@ -3141,49 +3619,57 @@ CONFIG_SCSI_NCR53C7xx_DISCONNECT
NCR53C8XX SCSI support
CONFIG_SCSI_NCR53C8XX
- This is the BSD ncr driver adapted to Linux for the NCR53C8XX family
+ 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, Fast-20 data transfer up to 20 MB/s with
- narrow SCSI devices and 40 MB/s with wide SCSI devices.
+ tagged command queuing and fast synchronous data transfers up to 80
+ MB/s with wide FAST-40 LVD devices and controllers.
+
+ The NCR53C860 and NCR53C875 support FAST-20 transfers. The NCR53C895
+ supports FAST-40 transfers with Ultra2 LVD devices.
+
Please read drivers/scsi/README.ncr53c8xx for more information.
- Linux/i386, Linux/Alpha and Linux/PPC are supported by this driver.
synchronous data transfers frequency
CONFIG_SCSI_NCR53C8XX_SYNC
- SCSI-2 specifications allow SCSI devices to negotiate a synchronous
- transfer period of 25 nano-seconds or more.
-
- The transfer period value is 4 times the agreed transfer period.
- So, data can be transferred at a 10 MHz frequency, allowing 10
- MB/second throughput with 8 bits SCSI-2 devices and 20 MB/second
- with wide16 devices. This frequency can be used safely with
- differential devices but may cause problems with single-ended
- devices.
-
- Specify 0 if you want to only use asynchronous data transfers.
- Otherwise, specify a value between 5 and 10. Commercial O/Ses
- generally use 5 Mhz frequency for synchronous transfers. It is a
- reasonable default value.
-
- However, a flawless single-ended SCSI bus supports 10 MHz data
- transfers. Regardless of the value chosen in the Linux
- configuration, the synchronous period can be changed after boot-up
- through the /proc/scsi file system. The generic command is:
-
- echo "setsync #target period" >/proc/scsi/ncr53c8xx/0
-
- Use a 25 ns period for 10 Mhz synchronous data transfers.
- If you don't know what to do now, go with the default.
+ The SCSI Parallel Interface-2 Standard defines 4 classes of transfer
+ rates: FAST-5, FAST-10, FAST-20 and FAST-40. 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 40 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 40, depending on the capability of your SCSI
+ controller. The higher the number, the faster the data transfer.
+ Note that 40 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 40 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
- This option allows you to force the driver to use normal IO.
- Memory mapped IO has less latency than normal IO and works for most
- Intel-based hardware. Under Linux/Alpha and Linux/PPC only normal
- IO is currently supported by the driver and so, this option has no
- effect. On Linux/PPC MMIO and normal IO are done the same (all IO
- is memory mapped) so you lose nothing by using normal IO. The normal
- answer therefore is N. Try Y only if you have problems.
+ 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
@@ -3193,75 +3679,69 @@ CONFIG_SCSI_NCR53C8XX_NO_DISCONNECT
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.
-detect and read serial NVRAMs
-CONFIG_SCSI_NCR53C8XX_NVRAM_DETECT
- Enable support for reading the serial NVRAM data on Symbios and some
- Symbios compatible cards, and Tekram DC390W/U/F cards. Useful for
- systems with more than one Symbios compatible controller where at
- least one has a serial NVRAM, or for a system with a mixture of
- Symbios and Tekram cards. Enables setting the boot order of host
- adaptors to something other than the default order or "reverse
- probe" order. Also enables Symbios and Tekram cards to be
- distinguished so that the option "assume boards are SYMBIOS
- compatible" (CONFIG_SCSI_NCR53C8XX_SYMBIOS_COMPAT) below may be set
- in a system with a mixture of Symbios and Tekram cards so that the
- Symbios cards can make use of the full range of Symbios features,
- differential, led pin, without causing problems for the Tekram
- card(s). Also enables setting host and targets SCSI features as
- defined in the user setup for each host using a serial NVRAM. Read
- drivers/scsi/README.ncr53c8xx for more information. The default
- answer is N, the normal answer should be Y.
-
-enable tagged command queuing
-CONFIG_SCSI_NCR53C8XX_TAGGED_QUEUE
- This option allows you to enable tagged command queuing support at
- Linux start-up. Some SCSI devices do not properly support this
- feature. The suggested method is to say N here and to use the
- "settags" control command after boot-up to enable this feature:
-
- echo "settags 2 4" >/proc/scsi/ncr53c8xx/0
+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. 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).
- asks the driver to use up to 4 concurrent tagged commands for target
- 2 of controller 0.
+ The default value is 8 and should be supported by most hard disks.
+ This option has no effect for adapters 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=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.
- See the file drivers/scsi/README.ncr53c8xx for more information.
- WARNING! If you say Y here, then you have to say N to "not allow
- targets to disconnect", above.
+ 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.
- The safe answer therefore is N.
- The normal answer therefore is Y.
+ 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 a device, when tagged command queuing is
- possible. The default value is 4. Minimum is 2, maximum is 12. The
- normal answer therefore is the default one.
+ that can be queued to any device, when tagged command queuing is
+ possible. The default value is 32. Minimum is 2, maximum is 64.
+ For value less than 32, this option only saves a little memory
+ (8*7*(32-MAXTAGS) bytes), so using less than 32 isn't worth it.
+ For value greater than 32, latency on reselection will be increased
+ by 1 or 2 micro-seconds. So, the normal answer here is to go with the
+ default value 32 unless you are using very large hard disks with
+ large cache (>= 1MB) 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
+ wiring. These General Purpose Input/Output pins can be used for
vendor specific features or implementation of the standard SYMBIOS
- features. Genuine SYMBIOS boards use GPIO0 in output for controller
- LED and GPIO3 bit as a flag indicating single-ended/differential
- interface.
-
- If all the boards of your system are genuine SYMBIOS boards or use
- BIOS and drivers from SYMBIOS, you would want to enable this option.
- The driver behaves correctly on my system with this option enabled.
- (SDMS 4.0 + Promise SCSI ULTRA 875 rev 0x3 + ASUS SC200 810A rev
- 0x12). This option must be set to N if your system has at least one
- 53C8XX based SCSI board with a vendor-specific BIOS (example: Tekram
- DC-390/U/W/F).
-
- However, if all your non Symbios compatible boards have NVRAM,
- setting option "detect and read serial NVRAMs"
- (CONFIG_SCSI_NCR53C8XX_NVRAM_DETECT) above allows the driver to
- distinguish Symbios compatible boards from other ones. So, you can
- answer Y if all non Symbios compatible boards have NVRAM.
+ 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 unsure, say N.
+ 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 profiling statistics gathering
+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.
IBMMCA SCSI support
CONFIG_SCSI_IBMMCA
@@ -3278,7 +3758,7 @@ CONFIG_SCSI_IBMMCA
'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. The lilo procedure is also explained in
- the SCSI-HOWTO, available via ftp (user: anonymous) in
+ the SCSI-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to compile this driver as a module ( = code which can be
@@ -3344,7 +3824,7 @@ CONFIG_SCSI_IN2000
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 via ftp (user: anonymous) at
+ 3.10 of the SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. If it doesn't work out
of the box, you may have to change some settings in
drivers/scsi/pas16.h.
@@ -3357,7 +3837,7 @@ CONFIG_SCSI_PAS16
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 via ftp
+ SCSI host adapter. Please read the SCSI-HOWTO, available via FTP
(user: anonymous) at ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module called pci2000.o ( = code
@@ -3368,7 +3848,7 @@ CONFIG_SCSI_PCI2000
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 via ftp
+ SCSI host adapter. Please read the SCSI-HOWTO, available via FTP
(user: anonymous) at ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module called pci2220i.o ( = code
@@ -3379,7 +3859,7 @@ CONFIG_SCSI_PCI2220I
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 via ftp
+ SCSI host adapter. Please read the SCSI-HOWTO, available via FTP
(user: anonymous) at ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module called psi240i.o ( = code
@@ -3395,7 +3875,7 @@ CONFIG_SCSI_QLOGIC_FAS
does NOT support the PCI version. The PCI versions are supported by
the Qlogic ISP driver though. Information about this driver is
contained in drivers/scsi/README.qlogicfas. You should also read
- the SCSI-HOWTO, available via ftp (user: anonymous) at
+ the SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -3411,7 +3891,7 @@ CONFIG_SCSI_QLOGIC_ISP
Y here, make sure to say Y to "PCI BIOS support" as well. More
information is contained in the file
drivers/scsi/README.qlogicisp. You should also read the SCSI-HOWTO,
- available via ftp (user: anonymous) at
+ available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -3423,7 +3903,7 @@ 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 via ftp (user: anonymous) at
+ available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. If it doesn't work out
of the box, you may have to change some settings in
drivers/scsi/seagate.h.
@@ -3436,7 +3916,7 @@ CONFIG_SCSI_SEAGATE
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 via ftp (user: anonymous) at
+ 3.11 of the SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. If it doesn't work out
of the box, you may have to change some settings in
drivers/scsi/t128.h. Note that Trantor was purchased by Adaptec, and
@@ -3451,7 +3931,7 @@ 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 via ftp (user: anonymous) at
+ SCSI-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. If it doesn't work out
of the box, you may have to change some settings in
drivers/scsi/ultrastor.h.
@@ -3479,10 +3959,10 @@ CONFIG_SCSI_EATA
This driver supports all the EATA/DMA-compliant SCSI host adapters
and does not need any BIOS32 service. DPT ISA and all EISA i/o
addresses are probed looking for the "EATA" signature. If you said Y
- to "PCI bios support", the addresses of all the PCI SCSI controllers
+ to "PCI BIOS support", the addresses of all the PCI SCSI controllers
reported by BIOS32 are probed as well. You want to read
the start of drivers/scsi/eata.c and the SCSI-HOWTO, available via
- ftp (user: anonymous) at ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+ FTP (user: anonymous) at ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Note that there is also another driver for the same hardware
available: "EATA-DMA support". You should say Y to only one of them.
@@ -3498,7 +3978,7 @@ CONFIG_SCSI_EATA_TAGGED_QUEUE
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.
-
+
enable elevator sorting
CONFIG_SCSI_EATA_LINKED_COMMANDS
This is a feature of SCSI-2 which improves performance: the host
@@ -3517,7 +3997,7 @@ NCR53c406a SCSI support
CONFIG_SCSI_NCR53C406A
This is support for the NCR53c406a SCSI host adapter. For user
configurable parameters, check out drivers/scsi/NCR53c406.c in the
- kernel source. Also read the SCSI-HOWTO, available via ftp (user:
+ kernel source. Also read the SCSI-HOWTO, available via FTP (user:
anonymous) at ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to compile this driver as a module ( = code which can be
@@ -3541,7 +4021,7 @@ AM53/79C974 PCI SCSI support
CONFIG_SCSI_AM53C974
This is support for the AM53/79C974 SCSI host adapters. Please read
drivers/scsi/README.AM53C974 for details. Also, the SCSI-HOWTO,
- available via ftp (user: anonymous) at
+ available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO, is for you.
If you want to compile this driver as a module ( = code which can be
@@ -3566,7 +4046,7 @@ CONFIG_SCSI_PPA
(a 100Mb removable media device). For more information about this
driver and how to use it you should read the file
drivers/scsi/README.ppa. You should also read the SCSI-HOWTO, which
- is available via ftp (user: anonymous) from
+ is available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. 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
@@ -3607,13 +4087,86 @@ CONFIG_SCSI_DEBUG
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.
+Fibre Channel support
+CONFIG_FC4
+ This is an experimental support for storage arrays connected to
+ the system using Fibre Optic and the "X3.269-199X Fibre Channel
+ Protocol for SCSI" specification. You'll also need the generic SCSI
+ support, as well as the drivers for the storage array itself and
+ for the interface adapter such as SOC. This subsystem could even
+ serve for IP networking, with some code extensions.
+ If unsure, say N.
+
+Sun SOC
+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. Only the SBus
+ incarnation of the adapter is supported at the moment.
+
+SparcSTORAGE Array 100 and 200 series
+CONFIG_SCSI_PLUTO
+ If you never bought a disk array made by Sun, go with N.
+
+AcornSCSI 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.
+
+Acorn SCSI tagged queue support
+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.
+
+Acorn SCSI Synchronous transfers support
+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.
+
+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.
+
Network device support?
CONFIG_NETDEVICES
You can say N here if you don't intend to connect 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 via ftp (user: anonymous) in
+ UUCP-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO) or dialing up a shell
account or a BBS, even using term (term is a program which gives you
almost full Internet connectivity if you have a regular dial up
@@ -3628,7 +4181,7 @@ CONFIG_NETDEVICES
plan to use more than one network card under Linux), available from
sunsite.unc.edu:/pub/Linux/docs/HOWTO/mini) or if you want to use
SLIP (Serial Line Internet Protocol is the protocol used to send
- Internet traffic over telephone lines or nullmodem cables) or CSLIP
+ 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
@@ -3647,7 +4200,7 @@ CONFIG_DUMMY
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. Read about it
- in the Network Administrator's Guide, available via ftp (user:
+ in the Network Administrator's Guide, available via FTP (user:
anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/LDP. Since this
thing often comes in handy, the default is Y. It won't enlarge your
kernel either. What a deal.
@@ -3667,15 +4220,15 @@ CONFIG_SLIP
Slip/CSlip server for other people to dial in. SLIP (Serial Line
Internet Protocol) is a protocol used to send Internet traffic
over telephone lines or serial cables (also known as
- nullmodems); nowadays, the protocol PPP is more common than SLIP.
+ null modems); nowadays, the PPP is a more common protocol than SLIP.
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 via ftp (user: anonymous) from
+ around (available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/system/network/serial/ ) which
allows you to use SLIP over a regular dial up shell connection. If
you plan to use SLiRP, make sure to say Y to CSLIP, below. The
- NET-2-HOWTO, available via ftp (user: anonymous) in
+ NET-2-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO, explains how to
configure SLIP. Note that you don't need this option if you just
want to run term (term is a program which gives you almost full
@@ -3698,11 +4251,11 @@ CONFIG_SLIP_COMPRESSED
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 say
Y, just in case. You will still be able to use plain SLIP. If you
- plan to use SLiRP, the SLIP emulator (available via ftp (user:
+ plan to use SLiRP, the SLIP emulator (available via FTP (user:
anonymous) from
ftp://sunsite.unc.edu/pub/Linux/system/network/serial/) which allows
you to use SLIP over a regular dial up shell connection, you
- definitely want to say Y here. The NET-2-HOWTO, available via ftp
+ definitely want to say Y here. The NET-2-HOWTO, available via FTP
(user: anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO,
explains how to configure CSLIP. This won't enlarge your kernel.
@@ -3717,7 +4270,7 @@ 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
+ "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.
@@ -3729,7 +4282,7 @@ CONFIG_PPP
serial) lines. Ask your access provider if they support it, because
otherwise you can't use it (not quite true any more: the free
program SLiRP can emulate a PPP line if you just have a regular dial
- up shell account on some UNIX computer; get it via ftp (user:
+ up shell account on some UNIX computer; get it via FTP (user:
anonymous) from
ftp://sunsite.unc.edu/pub/Linux/system/network/serial/). Note that
you don't need "PPP support" if you just want to run term (term is a
@@ -3762,14 +4315,14 @@ CONFIG_PPP
Wireless LAN (non-hamradio)
CONFIG_NET_RADIO
- Support for wireless LAN's and everything having to do with radio,
+ Support for wireless LANs and everything having to do with radio,
but not with amateur radio. Note that the answer to this question
won't directly affect the kernel: saying N will just cause this
configure script to skip all the questions about radio
interfaces.
Some user-level drivers for scarab devices which don't require
- special kernel support are available via ftp (user: anonymous) from
+ special kernel support are available via FTP (user: anonymous) from
ftp://shadow.cabi.net/pub/Linux.
STRIP (Metricom Starmode radio IP)
@@ -3799,18 +4352,23 @@ CONFIG_STRIP
AT&T WaveLAN & DEC RoamAbout DS support
CONFIG_WAVELAN
- The Lucent Wavelan (formerly NCR and AT&T ; or DEC RoamAbout DS) is
+ 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 hardware is available in David Hinds's pcmcia
- package. If you want to use an ISA Wavelan card under Linux, say Y
- and read the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ This driver support the ISA version of the WaveLAN card. A separate
+ driver for the pcmcia hardware is available in David Hinds'
+ pcmcia-cs package (see the file Documentation/Changes for location).
+
+ If you want to use an ISA WaveLAN card under Linux, say Y and read
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Some more specific
- information is contained in Documentation/networking/wavelan.txt.
+ information is contained in Documentation/networking/wavelan.txt and
+ in the source code drivers/net/wavelan.p.h.
+
You will also need the wireless tools package available from
ftp://ftp.inka.de/pub/comp/Linux/networking/NetTools/contrib/.
+ 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).
@@ -3818,26 +4376,6 @@ CONFIG_WAVELAN
module, say M here and read Documentation/modules.txt as well as
Documentation/networking/net-modules.txt.
-Radio support
-CONFIG_MISC_RADIO
- If you have a radio card (which enables your computer to receive
- regular radio broadcasts), then you will want to say Y here and
- make a character device file (usually /dev/radio) with major number
- 10 and minor 152 using mknod ("man mknod"). And then, don't forget
- to pick up some useful tools to use said device (you _might_ find
- something at ftp://ftp.lmh.ox.ac.uk/users/weejock/linux/, but I haven't
- written anything too useful yet...)
-
-AIMSlab RadioTrack card
-CONFIG_RADIO_RTRACK
- Choose Y here if you have one of these, and then fill in the port
- address below.
-
-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.
-
LAPB over Ethernet driver
CONFIG_LAPBETHER
This is a driver for a pseudo device (typically called /dev/lapb0)
@@ -3871,9 +4409,9 @@ CONFIG_HFMODEM
Pactor 1 and GTOR using a standard PC sound card. If unsure,
say N.
-Shortwave radio modem driver support for SoundBlaster and compatible cards
+Shortwave radio modem driver support for Sound Blaster and compatible cards
CONFIG_HFMODEM_SBC
- This option enables the hfmodem driver to use SoundBlaster and
+ This option enables the hfmodem driver to use Sound Blaster and
compatible cards. It requires a 16bit capable card, i.e.
SB16 or better, or ESS1688 or newer.
@@ -3908,7 +4446,7 @@ CONFIG_PLIP
has a program like lynx or netscape) and winsock or NCSA's telnet.
If you want to use PLIP, say Y and read the PLIP mini-HOWTO,
- available via ftp (user: anonymous) in
+ available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini as well as the
NET-2-HOWTO in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Note that
the PLIP protocol was changed and this PLIP driver won't work
@@ -4005,6 +4543,35 @@ CONFIG_SDLA
The module will be called sdla.o. If you want to compile it as a
module, say M here and read Documentation/modules.txt.
+Acorn Econet/AUN protocols (EXPERIMENTAL)
+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 Documentation/modules.txt.
+
+AUN over UDP
+CONFIG_ECONET_AUNUDP
+ Say Y here if you want to send Econet/AUN traffic over a 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
@@ -4074,14 +4641,18 @@ CONFIG_NET_SCHED
called packet schedulers. You can attach different schedulers to
different network devices. If you want to stick to the default
scheduling algorithm, say N here. If you want to experiment with a
- couple of different algorithms, say Y.
+ couple of different algorithms, say Y. Currently, this is only
+ recommended for experts.
To administer these schedulers, you'll need the user-level utilities
from the package iproute2+tc at ftp://ftp.inr.ac.ru/ip-routing/
- The available schedulers are
- listed in the following questions; you can say Y to as many as you
- like. If unsure, say N now.
+ If you say Y here and to "/proc filesystem" below, you will be able
+ to read status information about priority 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
@@ -4090,8 +4661,8 @@ CONFIG_NET_SCH_CBQ
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) which you
- can choose below from among the "auxiliary disciplines". See the top
- of net/sched/sch_cbq.c for references about the CBQ algorithm.
+ can choose below from among the various queueing algorithms. See the
+ top of net/sched/sch_cbq.c for references about the CBQ algorithm.
This code is also available as a module called sch_cbq.o ( = code
which can be inserted in and removed from the running kernel
@@ -4113,7 +4684,18 @@ CONFIG_NET_SCH_CSZ
whenever you want). If you want to compile it as a module, say M
here and read Documentation/modules.txt.
-RED queueing discipline
+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.
+
+ 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 Documentation/modules.txt.
+
+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
@@ -4125,7 +4707,7 @@ CONFIG_NET_SCH_RED
whenever you want). If you want to compile it as a module, say M
here and read Documentation/modules.txt.
-SFQ queueing discipline
+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
@@ -4138,7 +4720,21 @@ CONFIG_NET_SCH_SFQ
whenever you want). If you want to compile it as a module, say M
here and read Documentation/modules.txt.
-auxiliary TBF queue
+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 net/sched/sch_teql.c 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 Documentation/modules.txt.
+
+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
@@ -4150,27 +4746,49 @@ CONFIG_NET_SCH_TBF
whenever you want). If you want to compile it as a module, say M
here and read Documentation/modules.txt.
-auxiliary FIFO queue
-CONFIG_NET_SCH_PFIFO
- Say Y here if you want to use a simple FIFO (first in - first out)
- packet "scheduler" for some of your network devices or as a leaf
- discipline for the CBQ scheduling algorithm.
+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 net devices.
- This code is also available as a module called sch_fifo.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 Documentation/modules.txt.
-
-auxiliary PRIO queue
-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.
-
- 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 Documentation/modules.txt.
+ Note that the answer to this question won't directly affect the
+ kernel: saying N will just cause this configure script 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 in some
+ way. If you say Y here, you will get a choice of several different
+ packet classifiers with the following questions.
+#
+# Routing tables based classifier
+# CONFIG_NET_CLS_ROUTE
+#
+# Firewall based classifier
+# CONFIG_NET_CLS_FW
+#
+# U32 classifier
+# CONFIG_NET_CLS_U32
+#
+# Special RSVP classifier
+# CONFIG_NET_CLS_RSVP
+#
+# Special RSVP classifier for IPv6
+# CONFIG_NET_CLS_RSVP6
+#
+# Ingres traffic policing
+# CONFIG_NET_CLS_POLICE
+###
+### Some expert please fill these in
+###
Network code profiler
CONFIG_NET_PROFILE
@@ -4245,16 +4863,23 @@ CONFIG_WANPIPE_PPP
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 Networks (LANs) in universities or
- companies. 10-base-2 or Thinnet (10 Mbps over coaxial cable, linking
- computers in a chain), 10-base-T (10 Mbps over twisted pair
- telephone cable, linking computers to a central hub) and
- 100-base-<whatever> (100 Mbps) are common types of Ethernet.
+ 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 card installed in your computer, say Y here and
- read the Ethernet-HOWTO, available via ftp (user: anonymous) from
- ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+ an Ethernet network interface card (NIC) installed in your computer,
+ say Y here and read the Ethernet-HOWTO, available via FTP (user:
+ anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. 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 this configure script to skip all
@@ -4263,7 +4888,7 @@ CONFIG_NET_ETHERNET
Sun LANCE Ethernet support
CONFIG_SUN_LANCE
This is support for lance Ethernet cards on Sun workstations such as
- the Sparcstation IPC (any Sparc with a network interface 'le0' under
+ the SPARCstation IPC (any SPARC with a network interface 'le0' under
SunOS basically).
This driver is also available as a module ( = code which can be
@@ -4279,7 +4904,7 @@ CONFIG_SUN_INTEL
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 via ftp (user: anonymous) in
+ and read the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Note that the answer to this question doesn't directly affect the
@@ -4290,7 +4915,7 @@ CONFIG_NET_VENDOR_SMC
WD80*3 support
CONFIG_WD80x3
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4303,7 +4928,7 @@ 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 via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4315,7 +4940,7 @@ CONFIG_ULTRAMCA
SMC Ultra support
CONFIG_ULTRA
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Important: There have been many reports that, with some motherboards
@@ -4334,7 +4959,7 @@ CONFIG_ULTRA
SMC Ultra32 EISA support
CONFIG_ULTRA32
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4348,9 +4973,9 @@ 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 the file
+ into the kernel, and read the file
Documentation/networking/smc9.txt and the Ethernet-HOWTO, available
- via ftp (user: anonymous) in
+ via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4359,11 +4984,24 @@ CONFIG_SMC9194
it as a module, say M here and read Documentation/modules.txt as
well as Documentation/networking/net-modules.txt.
+PCI NE2000 support
+CONFIG_NE2K_PCI
+ This driver is for NE2000 compatible PCI cards. It will not work
+ with ISA NE2000 cards. If you have a PCI NE2000 network (Ethernet)
+ card, say Y and read the Ethernet-HOWTO, available via FTP (user:
+ anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+
+ This driver is also available as a module ( = code which can be
+ inserted in and removed from the running kernel whenever you want).
+ The module will be called ne2k-pci.o. If you want to compile it as a
+ module, say M here and read Documentation/modules.txt as well as
+ Documentation/networking/net-modules.txt.
+
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 via ftp (user: anonymous) in
+ available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Note that the answer to this question doesn't directly affect the
@@ -4374,7 +5012,7 @@ CONFIG_NET_VENDOR_RACAL
NI5010 support
CONFIG_NI5010
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Note that this is still
experimental code.
@@ -4387,7 +5025,7 @@ CONFIG_NI5010
NI5210 support
CONFIG_NI52
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4399,7 +5037,7 @@ CONFIG_NI52
NI6510 support
CONFIG_NI65
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4408,17 +5046,43 @@ CONFIG_NI65
module, say M here and read Documentation/modules.txt as well as
Documentation/networking/net-modules.txt.
+RealTek 8129/8139 (not 8019/8029!) support
+CONFIG_RTL8139
+ This is a driver for the Fast Ethernet PCI network cards based on
+ the RTL8129 and RTL8139 chips. If you have one of those, say Y and
+ read the Ethernet-HOWTO, available via FTP (user: anonymous) in
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+
+ 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 rtl8139.o.
+
+Packet Engines Yellowfin Gigabit-NIC support
+CONFIG_YELLOWFIN
+ Say Y here if you have a Packet Engines G-NIC PCI Gigabit Ethernet
+ adapter. This adapter is used by the Beowulf Linux cluster project.
+ See http://cesdis.gsfc.nasa.gov/linux/drivers/yellowfin.html for
+ more information about this driver in particular and Beowulf in
+ general (to browse the WWW, you need to have access to a machine on
+ the Internet that has a program like lynx or netscape).
+
+ 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 yellowfin.o.
+
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 via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Some LinkSys cards are
of this type.
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 via ftp (user: anonymous) in
+ and read the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Note that the answer to this question doesn't directly affect the
@@ -4429,7 +5093,7 @@ CONFIG_NET_VENDOR_3COM
3c501 support
CONFIG_EL1
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. 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
@@ -4444,7 +5108,7 @@ CONFIG_EL1
3c503 support
CONFIG_EL2
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4457,7 +5121,7 @@ CONFIG_EL2
CONFIG_ELPLUS
Information about this network (Ethernet) card can be found in
Documentation/networking/3c505.txt. If you have a card of this type,
- say Y and read the Ethernet-HOWTO, available via ftp (user:
+ say Y and read the Ethernet-HOWTO, available via FTP (user:
anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to compile this as a module ( = code which can be
@@ -4469,7 +5133,7 @@ CONFIG_ELPLUS
3c507 support
CONFIG_EL16
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4481,7 +5145,7 @@ CONFIG_EL16
3c523 support
CONFIG_ELMC
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4494,7 +5158,7 @@ CONFIG_ELMC
CONFIG_EL3
If you have a network (Ethernet) card belonging to the 3Com
EtherLinkIII series, say Y and read the Ethernet-HOWTO, available
- via ftp (user: anonymous) in
+ via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If your card is not working you may need to use the DOS
@@ -4509,10 +5173,10 @@ CONFIG_EL3
3c590 series (592/595/597) "Vortex" support
CONFIG_VORTEX
- If you have a 3Com "Vortex" or "Boomerang" series network (Ethernet)
- card (Fast EtherLink 3c590/3c592/3c595/3c597 or the EtherLink XL
- 3c900 or 3c905), say Y and read the Ethernet-HOWTO, available via
- ftp (user: anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+ If you have a 3Com "Vortex" (Fast EtherLink 3c590/3c592/3c595/3c597)
+ or "Boomerang" series (EtherLink XL 3c900 or 3c905) network
+ (Ethernet) card, say Y and read the Ethernet-HOWTO, available via FTP
+ (user: anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
More specific information is in Documentation/networking/vortex.txt
and in the comments at the beginning of drivers/net/3c59x.c.
@@ -4524,11 +5188,11 @@ CONFIG_VORTEX
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 components of the card talk to each
- other) 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 via
- ftp (user: anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
- If unsure, say Y.
+ 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 via FTP (user: anonymous) in
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. If unsure, say Y.
Note that the answer to this question doesn't directly affect the
kernel: saying N will just cause this configure script to skip all
@@ -4546,7 +5210,7 @@ CONFIG_ARCNET
below.
You might also want to have a look at the Ethernet-HOWTO, available
- via ftp (user: anonymous) in
+ via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO (even though ARCnet is
not really Ethernet).
@@ -4584,7 +5248,7 @@ CONFIG_ARCNET_1051
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
+ 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
@@ -4634,7 +5298,7 @@ CONFIG_ARCNET_COM20020
Cabletron E21xx support
CONFIG_E2100
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4647,7 +5311,7 @@ CS89x0 support
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 via ftp (user: anonymous) in
+ Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO as well as
Documentation/networking/cs89x0.txt.
@@ -4660,7 +5324,7 @@ CONFIG_CS89x0
DEPCA support
CONFIG_DEPCA
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO as well as
drivers/net/depca.c.
@@ -4675,7 +5339,7 @@ CONFIG_EWRK3
This driver supports the DE203, DE204 and DE205 network (Ethernet)
cards. If this is for you, say Y and read
Documentation/networking/ewrk3.txt in the kernel source as well as
- the Ethernet-HOWTO, available via ftp (user: anonymous) from
+ the Ethernet-HOWTO, available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to compile this as a module ( = code which can be
@@ -4687,13 +5351,13 @@ CONFIG_EWRK3
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 via ftp (user:
+ is for you, read the Ethernet-HOWTO, available via FTP (user:
anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
AT1700 support
CONFIG_AT1700
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4706,7 +5370,7 @@ CONFIG_AT1700
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 via ftp (user:
+ say Y and read the Ethernet-HOWTO, available via FTP (user:
anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you use an FMV-183 or FMV-184 and it is not working, you may need
@@ -4718,11 +5382,11 @@ CONFIG_FMV18X
module, say M here and read Documentation/modules.txt as well as
Documentation/networking/net-modules.txt.
-EtherExpressPro support
+EtherExpress PRO support
CONFIG_EEXPRESS_PRO
If you have a network (Ethernet) card of this type, say Y. Note
- however that the EtherExpressPro 100 Ethernet card has its own
- separate driver. Please read the Ethernet-HOWTO, available via ftp
+ however that the EtherExpress PRO/100 Ethernet card has its own
+ separate driver. Please read the Ethernet-HOWTO, available via FTP
(user: anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4734,7 +5398,7 @@ CONFIG_EEXPRESS_PRO
EtherExpress support
CONFIG_EEXPRESS
If you have an EtherExpress16 network (Ethernet) card, say Y and
- read the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ read the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. 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
@@ -4749,7 +5413,7 @@ CONFIG_EEXPRESS
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 via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4761,7 +5425,7 @@ CONFIG_HPLAN_PLUS
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 via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4773,7 +5437,7 @@ CONFIG_HPLAN
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 via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to compile this as a module ( = code which can be
@@ -4785,7 +5449,7 @@ CONFIG_HP100
NE2000/NE1000 support
CONFIG_NE2000
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Many Ethernet cards
without a specific driver are compatible with NE2000.
@@ -4798,14 +5462,14 @@ CONFIG_NE2000
SK_G16 support
CONFIG_SK_G16
If you have a network (Ethernet) card of this type, say Y and read
- the Ethernet-HOWTO, available via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
EISA, VLB, PCI and on board controllers
CONFIG_NET_EISA
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 via ftp (user: anonymous) from
+ available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Note that the answer to this question doesn't directly affect the
@@ -4817,13 +5481,19 @@ CONFIG_NET_EISA
AMD PCnet32 (VLB and PCI) support
CONFIG_PCNET32
If you have a PCnet32 or PCnetPCI based network (Ethernet) card, say
- Y here and read the Ethernet-HOWTO, available via ftp (user:
+ Y here and read the Ethernet-HOWTO, available via FTP (user:
anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+ This driver is also available as a module ( = code which can be
+ inserted in and removed from the running kernel whenever you want).
+ The module will be called pcnet32.o. If you want to compile it as a
+ module, say M here and read Documentation/modules.txt as well as
+ Documentation/networking/net-modules.txt.
+
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 via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4835,7 +5505,7 @@ CONFIG_AC3200
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 via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4844,10 +5514,22 @@ CONFIG_ES3210
module, say M here and read Documentation/modules.txt as well as
Documentation/networking/net-modules.txt.
+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 via FTP (user: anonymous) in
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+
+ This driver is also available as a module ( = code which can be
+ inserted in and removed from the running kernel whenever you want).
+ The module will be called lne390.o. If you want to compile it as a
+ module, say M here and read Documentation/modules.txt as well as
+ Documentation/networking/net-modules.txt.
+
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 via ftp (user: anonymous) in
+ read the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to compile this as a module ( = code which can be
@@ -4861,7 +5543,7 @@ 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 via ftp (user: anonymous) in
+ Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. More specific
information is contained in Documentation/networking/de4x5.txt.
@@ -4879,7 +5561,7 @@ CONFIG_DEC_ELCP
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 via ftp
+ will say Y here.) Do read the Ethernet-HOWTO, available via FTP
(user: anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
More specific information is contained in
Documentation/networking/tulip.txt.
@@ -4895,7 +5577,7 @@ 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 via ftp (user: anonymous) in
+ Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. More specific
information is contained in Documentation/networking/dgrs.txt.
@@ -4905,10 +5587,10 @@ CONFIG_DGRS
module, say M here and read Documentation/modules.txt as well as
Documentation/networking/net-modules.txt.
-EtherExpressPro/100 support
+EtherExpress PRO/100 support
CONFIG_EEXPRESS_PRO100
- If you have an Intel EtherExpressPro 100 PCI network (Ethernet)
- card, say Y and read the Ethernet-HOWTO, available via ftp (user:
+ If you have an Intel EtherExpress PRO/100 PCI network (Ethernet)
+ card, say Y and read the Ethernet-HOWTO, available via FTP (user:
anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4920,7 +5602,7 @@ CONFIG_EEXPRESS_PRO100
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 via ftp (user: anonymous) in
+ the Ethernet-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4931,11 +5613,14 @@ CONFIG_ETH16I
TI ThunderLAN support (EXPERIMENTAL)
CONFIG_TLAN
- If you have a TLAN based network card which is supported by this
- driver, say Y and read the Ethernet-HOWTO, available via ftp (user:
- anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Devices
- currently supported are the Compaq Netelligent 10, Netelligent
- 10/100, and Internal NetFlex 3.
+ 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 via FTP (user: anonymous) in
+ ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+
+ Devices currently supported by this driver are Compaq Netelligent,
+ Compaq NetFlex and Olicom cards. Please read the file
+ Documentation/tlan.txt for details.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
@@ -4947,9 +5632,9 @@ CONFIG_TLAN
SMC EtherPower II (EXPERIMENTAL)
CONFIG_EPIC100
- If you have an SMC EtherPower II 9432 PCI ethernet network card
+ If you have an SMC EtherPower II 9432 PCI Ethernet network card
which is based on the SMC83c170, say Y and read the Ethernet-HOWTO,
- available via ftp (user: anonymous) in
+ available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
This driver is also available as a module ( = code which can be
@@ -4963,23 +5648,23 @@ 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 via ftp (user:
+ by this driver. Read the Ethernet-HOWTO, available via FTP (user:
anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
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 via ftp
+ one of those, say Y and read the Ethernet-HOWTO, available via FTP
(user: anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to plug a network card into the PCMCIA slot of your
laptop instead (PCMCIA is the standard for credit card size
- extension cards used by all modern laptops), look on the ftp site
+ extension cards used by all modern laptops), look on the FTP site
(user: anonymous) ftp://cb-iris.stanford.edu/pub/pcmcia and say N
here.
- Laptop user want to read the Linux Laptop homepage at
+ Laptop users should read the Linux Laptop home page at
http://www.cs.utexas.edu/users/kharker/linux-laptop/ (to browse the
WWW, you need to have access to a machine on the Internet that has a
program like lynx or netscape).
@@ -4993,7 +5678,7 @@ AT-LAN-TEC/RealTek pocket adapter support
CONFIG_ATP
This is a network (Ethernet) device which attaches to your parallel
port. Read drivers/net/atp.c as well as the Ethernet-HOWTO,
- available via ftp (user: anonymous) from
+ available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO 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
@@ -5003,7 +5688,7 @@ D-Link DE600 pocket adapter support
CONFIG_DE600
This is a network (Ethernet) device which attaches to your parallel
port. Read Documentation/networking/DLINK.txt as well as the
- Ethernet-HOWTO, available via ftp (user: anonymous) from
+ Ethernet-HOWTO, available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO 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.
@@ -5017,7 +5702,7 @@ D-Link DE620 pocket adapter support
CONFIG_DE620
This is a network (Ethernet) device which attaches to your parallel
port. Read Documentation/networking/DLINK.txt as well as the
- Ethernet-HOWTO, available via ftp (user: anonymous) from
+ Ethernet-HOWTO, available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO 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.
@@ -5035,7 +5720,7 @@ CONFIG_TR
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
- via ftp (user:anonymous) from
+ via FTP (user:anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. Most people can say N
here.
@@ -5043,7 +5728,7 @@ 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 via ftp (user:anonymous) from
+ available via FTP (user:anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Warning: this driver will almost definitely fail if more than one
@@ -5054,13 +5739,27 @@ CONFIG_IBMTR
The module will be called ibmtr.o. If you want to compile it as a
module, say M here and read Documentation/modules.txt.
+SysKonnect adapter support
+CONFIG_SKTR
+ This is support for all SysKonnect Token Ring cards, specifically
+ SysKonnect TR4/16(+) ISA (SK-4190), SysKonnect TR4/16(+) PCI
+ (SK-4590), SysKonnect TR4/16 PCI (SK-4591) 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 via FTP (user: anonymous)
+ from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
+
+ Also read the file linux/Documentation/networking/sktr.txt or check
+ the Linux-SNA WWW site for the latest information at
+ http://samba.anu.edu.au/linux-sna/documents/drivers/SysKonnect/
+
Traffic Shaper (EXPERIMENTAL)
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. See Documentation/networking/shaper.txt for more
information. To set up and configure shaper devices, you need the
- shapecfg program, available via ftp (user: anonymous) from
+ shapecfg program, available via FTP (user: anonymous) from
ftp://shadow.cabi.net/pub/Linux in the shaper package.
This driver is also available as a module ( = code which can be
@@ -5087,10 +5786,30 @@ SGI Seeq ethernet controller support
This is a driver for the Seeq based Ethernet adapters used in many
Silicon Graphics machines.
+Acorn Ether1 card
+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 card
+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 card
+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
+CONFIG_AM79C961A
+ If you wish to compile a kernel for the EBSA-110, then you should
+ always answer Y to this.
+
Support CDROM drives that are not SCSI or IDE/ATAPI
CONFIG_CD_NO_IDESCSI
If you have a CDROM drive that is neither SCSI nor IDE/ATAPI, say Y
- here, otherwise N. Read the CDROM-HOWTO, available via ftp (user:
+ here, otherwise N. Read the CDROM-HOWTO, available via FTP (user:
anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
Note that the answer to this question doesn't directly affect the
@@ -5111,8 +5830,9 @@ CONFIG_CD_NO_IDESCSI
read Documentation/modules.txt.
If you want to use any of these CDROM drivers, you also have to say
- Y to "ISO9660 cdrom filesystem support" below (this answer will get
- "defaulted" for you if you enable any of the Linux CDROM drivers).
+ Y or M to "ISO 9660 CDROM filesystem support" below (this answer will
+ get "defaulted" for you if you enable any of the Linux CDROM
+ drivers).
Sony CDU31A/CDU33A CDROM support
CONFIG_CDU31A
@@ -5126,7 +5846,7 @@ CONFIG_CDU31A
how to pass options to the kernel. The lilo procedure is also
explained in the SCSI-HOWTO.
- If you say Y here, you should also say Y to "ISO9660 cdrom
+ If you say Y here, you should also say Y or M to "ISO 9660 CDROM
filesystem support" below, because that's the filesystem used on
CDROMs.
@@ -5151,7 +5871,7 @@ CONFIG_MCD
If the driver doesn't work out of the box, you might want to have a
look at drivers/cdrom/mcd.h.
- If you say Y here, you should also say Y to "ISO9660 cdrom
+ If you say Y here, you should also say Y or M to "ISO 9660 CDROM
filesystem support" below, because that's the filesystem used on
CDROMs.
@@ -5169,7 +5889,7 @@ CONFIG_MCDX
able to support more than one drive, but each drive needs a separate
interface card. Please read the file Documentation/cdrom/mcdx.
- If you say Y here, you should also say Y to "ISO9660 cdrom
+ If you say Y here, you should also say Y or M to "ISO 9660 CDROM
filesystem support" below, because that's the filesystem used on
CDROMs.
@@ -5181,11 +5901,11 @@ CONFIG_MCDX
Matsushita/Panasonic/Creative, Longshine, TEAC CDROM support
CONFIG_SBPCD
This driver supports most of the drives which use the Panasonic or
- SoundBlaster interface. Please read the file
+ Sound Blaster interface. Please read the file
Documentation/cdrom/sbpcd.
The Matsushita CR-521, CR-522, CR-523, CR-562, CR-563 drives
- (sometimes labeled "Creative"), the CreativeLabs CD200, the
+ (sometimes labeled "Creative"), the Creative Labs CD200, the
Longshine LCS-7260, the "IBM External ISA CDROM" (in fact a CR-56x
model), the TEAC CD-55A fall under this category. Some other
"electrically compatible" drives (Vertos, Genoa, some Funai models)
@@ -5207,7 +5927,7 @@ CONFIG_SBPCD
module, only one controller card (but with up to four drives) is
usable.
- If you say Y here, you should also say Y to "ISO9660 cdrom
+ If you say Y here, you should also say Y or M to "ISO 9660 CDROM
filesystem support" below, because that's the filesystem used on
CDROMs.
@@ -5232,7 +5952,7 @@ CONFIG_AZTCD
- is NOT for CDROM drives with IDE/ATAPI interfaces, such as Aztech
CDA269-031SE. Please read the file Documentation/cdrom/aztcd.
- If you say Y here, you should also say Y to "ISO9660 cdrom
+ If you say Y here, you should also say Y or M to "ISO 9660 CDROM
filesystem support" below, because that's the filesystem used on
CDROMs.
@@ -5246,7 +5966,7 @@ CONFIG_CDU535
This is the driver for the older Sony CDU-535 and CDU-531 CDROM
drives. Please read the file Documentation/cdrom/sonycd535.
- If you say Y here, you should also say Y to "ISO9660 cdrom
+ If you say Y here, you should also say Y or M to "ISO 9660 CDROM
filesystem support" below, because that's the filesystem used on
CDROMs.
@@ -5262,7 +5982,7 @@ CONFIG_GSCD
in the file linux/drivers/cdrom/gscd.h before compiling the
kernel. Please read the file Documentation/cdrom/gscd.
- If you say Y here, you should also say Y to "ISO9660 cdrom
+ If you say Y here, you should also say Y or M to "ISO 9660 CDROM
filesystem support" below, because that's the filesystem used on
CDROMs.
@@ -5277,7 +5997,7 @@ CONFIG_CM206
cm260 host adapter card, say Y here. Please also read the file
Documentation/cdrom/cm206.
- If you say Y here, you should also say Y to "ISO9660 cdrom
+ If you say Y here, you should also say Y or M to "ISO 9660 CDROM
filesystem support" below, because that's the filesystem used on
CDROMs.
@@ -5294,7 +6014,7 @@ CONFIG_OPTCD
Optics Storage 8001 drive; use the IDE-ATAPI CDROM driver for that
one. Please read the file Documentation/cdrom/optcd.
- If you say Y here, you should also say Y to "ISO9660 cdrom
+ If you say Y here, you should also say Y or M to "ISO 9660 CDROM
filesystem support" below, because that's the filesystem used on
CDROMs.
@@ -5306,9 +6026,9 @@ CONFIG_OPTCD
Sanyo CDR-H94A CDROM support
CONFIG_SJCD
If this is your CDROM drive, say Y here and read the file
- Documentation/cdrom/sjcd. You should then also say Y to "ISO9660
- cdrom filesystem support" below, because that's the filesystem used
- on CDROMs.
+ Documentation/cdrom/sjcd. You should then also say Y or M to
+ "ISO 9660 CDROM filesystem support" below, because that's the
+ filesystem used on CDROMs.
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
@@ -5339,195 +6059,16 @@ CONFIG_ISP16_CDI
The module will be called isp16.o. If you want to compile it as a
module, say M here and read Documentation/modules.txt.
-Preload dcache
-CONFIG_DCACHE_PRELOAD
- Preloading will create dcache entries when a directory is scanned
- (e.g. because the ls command was used) for the *first* time. This
- should speed up successive lookups of information about files in
- that directory, but can also consume large amounts of memory.
-
- Please report speedups (or slowdowns due to the memory usage if they
- occur) to schoebel@informatik.uni-stuttgart.de .
-
- If unsure, say N.
-
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 filesystem. You need additional software in order to use quota
- support; for details, read the Quota mini-HOWTO, available via ftp
+ support; for details, read the Quota mini-HOWTO, available via FTP
(user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini. Probably the quota
support is only useful for multi user systems. If unsure, say N.
-Online mirror support
-CONFIG_OMIRR
- omirr is a package for _symmetric_ mirroring of files over the
- Internet. In contrast to rdist, the online mirror daemon (omirrd) is
- running all the time and transfers any changes on the file system as
- soon as possible to all other servers. Symmetric means that all
- servers have equal rights in changing a file: the last changer of a
- file will win. This is the same behaviour as multiple processes
- operating on a global file system. In effect, omirr can do the same
- as NFS mounts, but will have better performance since the data is
- stored on local disks. In contrast to a cache filesystem which has a
- dedicated master copy, broken connections and/or servers are no
- problem for continuing work on the remaining ones, because there is
- no master copy. Every computer that wants to participate in the
- mirroring needs to run the daemon omirrd, contained in the omirr
- package which is available via ftp (user: anonymous) from
- ftp://ftp.isa.de/pub/home/luik. You must say Y if you want to use
- in.omirrd, but you should (but need not) say N if you don't (for
- performance reasons).
-
- Note that this is experimental code; use at your own risk.
-
-Filename translation support
-CONFIG_TRANS_NAMES
- This is a useful feature if you have a pool of diskless Linux
- clients which mount their root filesystems from a central
- server. Depending on their hostnames, the clients can then see
- different versions of certain files, which keeps maintenance at a
- minimum when used for configuration files. The kernel running on the
- clients should have this option enabled. If you don't administer a
- pool of Linux clients, say N here, otherwise read on:
-
- When you say Y here, filenames, directory names etc become
- context-sensitive. If you have a file named
- "/etc/config#host=banana#", it will appear (by default) as
- hardlinked to "/etc/config" on host "banana", while on host "mango"
- another file "/etc/config#host=mango#" will appear as having been
- hardlinked to "/etc/config".
- This default behaviour can be changed by setting the _first_
- environment variable NAMETRANS to a colon-separated list of suffixes
- which are tried in the specified order. For example, in
-
- 'env - NAMETRANS=#host=mango#:#ktype=diskless# "`env`" command ...'
-
- the command will see the same files as if it had been executed on
- host "mango" with a diskless kernel.
-
- Using NAMETRANS supersedes _all_ default translations. Thus
- translations can be completely switched off with an empty list,
- e.g.
-
- 'env - NAMETRANS= "`env`" command ...'
-
- Note that some system utilities like tar, dump, restore should be
- used with translation switched off, in order to avoid doubled space
- in archive files and when extracting from them. Also, make sure that
- nfsd, mountd (and similar ones like samba daemons) run without
- translation, in order to avoid doubled (or even wrong) translation
- at the server and at the client.
-
- You can automatically force the creation of context-dependent
- filenames if there exists a template filename like
- "/etc/mtab#host=CREATE#". As soon as a process running on "mango"
- tries to create a file "/etc/mtab", the version
- "/etc/mtab#host=mango#" is created instead (which appears in turn as
- hardlinked to "/etc/mtab"). Note that if you want to make
- "/etc/fstab" context-dependent, you should execute "touch
- /etc/mtab#host=CREATE#" and "touch /etc/mtab.tmp#host=CREATE#",
- because mount, umount and others running on different hosts would
- otherwise try to create one shared /etc/mtab which would result in a
- clash. Also one should execute "touch /etc/nologin#host=CREATE#" to
- prevent global side effects from shutdown resp. runlevel.
-
- Please read Documentation/transname.txt if you intend to say Y here.
-
-Restrict translation to gid
-CONFIG_TRANS_RESTRICT
- If you say Y here, default filename translations are carried out
- only if the parent directory of the context-sensitive file belongs
- to a specific group id (gid). Trying to translate names everywhere
- will decrease performance of file openings. Normally translations
- are used only in system configuration files but not in ordinary user
- filespace. So you should change the gid of directories containing
- context-dependent files to some special group like "adm" (group id
- 4) and enable this option. As a result, users will not notice any
- performance degradation resulting from filename translation.
-
- Note that translations resulting from the first environment variable
- "NAMETRANS=..." are always carried out regardless of the gid of
- directories.
-
- Beware: before turning on this option make sure that all directories
- containing context-dependent files belong to the special group, or
- system initialization may fail. If unsure, select N.
-
-Group id (gid) for translation restriction
-CONFIG_TRANS_GID
- Default name translations will be carried out only inside directories
- belonging to the group id (gid) that you specify here.
- Default is 4 (group "adm").
-
-Nodename (hostname) translation
-CONFIG_TR_NODENAME
- Enables translation of name suffixes like in
- "/etc/config#host=banana#". The syntax is
- <filename>#host=<hostname>#. The hostname can be queried with the
- command "uname -n". Normally this option is used heavily when
- translation is enabled. If unsure, say Y.
-
-Kernelname translation
-CONFIG_TR_KERNNAME
- Enables translation of name suffixes like in
- "/etc/config#kname=default#". The string is hard compiled into the
- kernel by the following option. Useful if your kernel does not know
- the hostname at boot time, and there is no way to tell the hostname
- by lilo or bootp. Please avoid using this option and prefer
- "Nodename (hostname) translation" (CONFIG_TR_NODENAME) wherever
- possible. When mounting the root over NFS, the own hostname must be
- known at boot time anyway; this option is just for special use.
- Note that the default translations are tried in the order as
- occurring in the configuration, that is 1) host 2) kname 3) ktype 4)
- machine 5) system. If unsure, say Y.
-
-String for kernelname translation
-CONFIG_KERNNAME
- Enter the string you want to compile into the kernel. The string
- will be used as context in context-dependent files like
- "/etc/config#kname=<string>#".
-
-Kerneltype translation
-CONFIG_TR_KERNTYPE
- Enables translation of name suffixes like in
- "/etc/config#ktype=default#". The syntax is
- <filename>#ktype=<string>#. The string is hard compiled in the
- kernel by the following option. Use if you want to create different
- kernels with different behaviour. For example, use the string
- "default" on your server, and use "diskless" on all your diskless
- clients (and perhaps "dataless" on dataless clients). This way you
- can avoid dozens of "config#host=<something># with same contents and
- you have no effort when new machines are added. If unsure, say Y.
-
-String for kerneltype translation
-CONFIG_KERNTYPE
- Enter the string you want to compile into the kernel. The string
- will be used as context in context-dependent files like
- "/etc/config#ktype=default#". If your kernel is to be used on a
- server, you probably can use "default" here. If your kernel is
- intended for a diskless client, you probably should enter "diskless"
- here.
-
-Machine type translation
-CONFIG_TR_MACHINE
- Enables translation of name suffixes like in
- "/etc/config#machine=i486#". The syntax is
- <filename>#machine=<id>#. The machine types can be queried with the
- command "uname -m". Normally used only on multi-architecture
- installations. If unsure, say Y.
-
-System name translation
-CONFIG_TR_SYSNAME
- Enables translation of name suffixes like in
- "/etc/config#system=Linux#". The syntax is
- <filename>#system=<id>#. The system name can be queried with the
- command "uname -s". Currently only supported by Linux, but hopefully
- other operating systems will pick up the idea of context-dependent
- translations. If unsure, say Y.
-
Minix fs support
CONFIG_MINIX_FS
Minix is a simple operating system used in many classes about
@@ -5549,28 +6090,35 @@ CONFIG_MINIX_FS
Second extended fs support
CONFIG_EXT2_FS
This is the de facto standard Linux filesystem (= method to organize
- files on a storage device) for hard disks. You want to say Y, unless
- you intend to use Linux exclusively from inside a DOS partition
- using the umsdos filesystem. 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 filesystem support" below). Saying Y here will
- enlarge your kernel by about 41 kB.
-
- The Ext2fs-Undeletion mini-HOWTO, available via ftp (user:
+ 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 filesystem. 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
+ filesystem support" below). Saying Y here will enlarge your kernel
+ by about 41 kB.
+
+ The Ext2fs-Undeletion mini-HOWTO, available via FTP (user:
anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini,
gives information about how to retrieve deleted files on ext2fs
filesystems.
- To change the behavior of ext2fs filesystems, you can use the
- tune2fs utility ("man tune2fs").
+ To change the behavior of ext2 filesystems, you can use the tune2fs
+ utility ("man tune2fs"). To modify attributes of files and
+ directories on ext2 filesystems, use chattr ("man chattr").
+
+ Ext2fs partitions can be read from within DOS using the ext2tool
+ package available via FTP (user: anonymous) from
+ ftp://sunsite.unc.edu/pub/Linux/system/filesystems/ext2.
If you want to compile this filesystem as a module ( = code which
can be inserted in and removed from the running kernel whenever you
@@ -5579,7 +6127,7 @@ CONFIG_EXT2_FS
root partition cannot be compiled as a module, and so this could be
dangerous. Most everyone wants to say Y here.
-ISO9660 cdrom filesystem support
+ISO 9660 CDROM filesystem support
CONFIG_ISO9660_FS
This is the standard filesystem used on CDROMs. It was previously
known as "High Sierra Filesystem" and is called "hsfs" on other Unix
@@ -5588,7 +6136,7 @@ CONFIG_ISO9660_FS
If you have a CDROM drive and want to do more with it than just
listen to audio CDs and watch its LEDs, say Y (and read
Documentation/filesystems/isofs.txt and the CDROM-HOWTO, available
- via ftp (user: anonymous) from
+ via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO), thereby enlarging your
kernel by about 27 kB; otherwise say N.
@@ -5599,7 +6147,7 @@ CONFIG_ISO9660_FS
Microsoft Joliet cdrom extensions
CONFIG_JOLIET
- Joliet is a Microsoft extension for the ISO9660 CDROM filesystem
+ Joliet is a Microsoft extension for the ISO 9660 CDROM filesystem
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
@@ -5633,7 +6181,7 @@ 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 via ftp (user: anonymous) at
+ DOSEMU-HOWTO, available via FTP (user: anonymous) at
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO, or try dmsdosfs in
ftp://sunsite.unc.edu/pub/Linux/system/filesystems/dosfs. If you
intend to use dosemu with a non-compressed MSDOS partition, say Y
@@ -5686,7 +6234,7 @@ CONFIG_UMSDOS_FS
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 softlinks and owner/permissions of files on
+ also allows Unix-style softlinks and owner/permissions of files on
MSDOS floppies. You will need a program called umssync in order to
make use of umsdos; read Documentation/filesystems/umsdos.txt.
@@ -5730,9 +6278,12 @@ CONFIG_NFS_FS
client's hard disk. For this to work, the server must run the
programs nfsd and mountd (but does not need to have NFS filesystem
support enabled in its kernel). NFS is explained in the Network
- Administrator's Guide, available via ftp (user: anonymous) in
+ Administrator's Guide, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/LDP, on its man page: "man
nfs", and in the NFS-HOWTO.
+
+ An alternative to NFS is provided by the Coda filesystem; see "Coda
+ filesystem 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.
@@ -5743,12 +6294,12 @@ CONFIG_NFS_FS
say M here and read Documentation/modules.txt.
If you are configuring a diskless machine which will mount its root
- filesystem over NFS (in order to do that, check out the netboot
- package, available via ftp (user: anonymous) from
- ftp://sunsite.unc.edu/pub/Linux/system/boot/ethernet/, extract with
- "tar xzvf filename", and say Y to "Root file system on NFS" and to
- "IP: kernel level autoconfiguration"), then you cannot compile this
- driver as a module.
+ filesystem over NFS at boot time, say Y here and to "Root file
+ system on NFS" and to "IP: kernel level autoconfiguration". You
+ cannot compile this driver as a module in this case. There are two
+ packages designed for booting diskless machines over the net:
+ netboot and etherboot, both available via FTP (user: anonymous) from
+ ftp://sunsite.unc.edu/pub/Linux/system/boot/ethernet/ .
If you don't know what all this is about, say N.
@@ -5774,7 +6325,7 @@ CONFIG_NFSD
is that it is faster; it might not be completely stable yet, though.
You will need the support software from the linux-nfs package
available at ftp://ftp.mathematik.th-darmstadt.de/pub/linux/okir/.
- Please read the NFS-HOWTO, available via ftp (user: anonymous) from
+ Please read the NFS-HOWTO, available via FTP (user: anonymous) from
sunsite.unc.edu:/pub/Linux/docs/HOWTO.
The NFS server is also available as a module ( = code which can be
@@ -5812,10 +6363,12 @@ CONFIG_NTFS_FS
NTFS read-write support (experimental)
CONFIG_NTFS_RW
If you say Y here, you will (hopefully) be able to write to NTFS
- file systems as well as to read from them. The read-write support
+ file systems as well as read from them. The read-write support
in NTFS is far from being complete and is not well tested. If you
- enable this, be prepared to recover the NTFS volume from tape. If
- unsure, say N.
+ enable this, back up your NTFS volume first since it may get
+ damaged.
+
+ If unsure, say N.
System V and Coherent filesystem support
CONFIG_SYSV_FS
@@ -5829,7 +6382,7 @@ CONFIG_SYSV_FS
Binary Compatibility Standard] is a kernel module which lets you run
SCO, Xenix, Wyse, UnixWare, Dell Unix and System V programs under
Linux and is often needed to run commercial software that's only
- available for those systems. It's available via ftp (user:
+ available for those systems. It's available via FTP (user:
anonymous) from ftp://tsx-11.mit.edu/pub/linux/BETA).
If you only intend to mount files from some other Unix over the
@@ -5852,12 +6405,7 @@ CONFIG_SYSV_FS
Amiga FFS filesystem support
CONFIG_AFFS_FS
The Fast File System (FFS) is the common filesystem used on hard
- disks by Amiga(tm) Systems since AmigaOS Version 1.3 (34.20). With
- this driver you can also mount diskfiles used by Bernd Schmidt's
- Un*X Amiga Emulator (http://www.freiburg.linux.de/~uae/; to browse
- the WWW, you need to have access to a machine on the Internet that
- has a program like lynx or netscape). If you want to do the latter,
- you will also need to say Y to "Loop device support", above. Say Y
+ 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
@@ -5865,6 +6413,13 @@ CONFIG_AFFS_FS
PCs and workstations. Read Documentation/filesystems/affs.txt and
fs/affs/Changes.
+ With this driver you can also mount disk files used by Bernd
+ Schmidt's Un*X Amiga Emulator (http://www.freiburg.linux.de/~uae/;
+ to browse the WWW, you need to have access to a machine on the
+ Internet that has a program like lynx or netscape). If you want to
+ do this, you will also need to say Y or M to "Loop device support",
+ above.
+
This filesystem 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,
@@ -5902,7 +6457,7 @@ CONFIG_AUTOFS_FS
The automounter is a tool to automatically mount remote filesystems
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 only in user space.
+ automounter (amd), which is a pure user space daemon.
To use the automounter you need the user-space tools from
ftp://ftp.kernel.org/pub/linux/daemons/autofs; you also want to say Y to
@@ -5916,7 +6471,7 @@ CONFIG_AUTOFS_FS
If you are not a part of a fairly large, distributed network, you
probably do not need an automounter, and can say N here.
-BSD UFS filesystem support (read only)
+UFS filesystem support (read only)
CONFIG_UFS_FS
BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
OpenBSD and NeXTstep) use a filesystem called UFS. Some System V
@@ -5950,7 +6505,7 @@ CONFIG_BSD_DISKLABEL
first sector a new partition table in disklabel format. Saying Y
here allows you to read these disklabels and further mount FreeBSD
partitions read-only from within Linux if you have also said Y to
- "BSD ufs filesystem support", above. If you don't know what all this
+ "UFS filesystem support", above. If you don't know what all this
is about, say N.
SMD disklabel (Sun partition tables) support
@@ -5958,8 +6513,8 @@ CONFIG_SMD_DISKLABEL
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 disks read-only
- from within Linux if you have also said Y to "BSD ufs filesystem
- support", above. This is mainly used to carry data from a Sparc
+ from within Linux if you have also said Y to "UFS filesystem
+ 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
@@ -5972,26 +6527,32 @@ 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 disks
- read-only from within Linux if you have also said Y to "BSD ufs
+ read-only from within Linux if you have also said Y to "UFS
filesystem support", above.
ADFS filesystem support (read only) (EXPERIMENTAL)
CONFIG_ADFS_FS
- Acorn Disc Filing System is the standard filesystem of the Risc OS
- operating system which runs on Acorn's ARM based Risc PC computers.
- If you say Y here, Linux will be able to read from ADFS partitions
- on hard drives and from ADFS-formatted floppy disks.
+ The Acorn Disc Filing System is the standard filesystem 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.
+
+ The ADFS partition should be the first partition (i.e.,
+ /dev/[hs]d?1) on each of your drives.
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
Documentation/modules.txt.
+ If unsure, say N.
+
/dev/pts filesystem (experimental)
CONFIG_DEVPTS_FS
If you say Y here, you'll get a virtual filesystem 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
+ 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
@@ -6000,10 +6561,7 @@ CONFIG_DEVPTS_FS
/dev/pts/2, for example. The GNU C library glibc 2.1 contains the
requisite support for this mode of operation.
- This code is also available as a module called devpts.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 Documentation/modules.txt.
+ Say Y here if you have enabled support for Unix98 PTYs.
Macintosh partition map support
CONFIG_MAC_PARTITION
@@ -6017,17 +6575,17 @@ CONFIG_SMB_FS
(WfW), Windows 95, Windows NT and Lan Manager use to share files and
printers over local networks. Saying Y here allows you to mount
their filesystems (often called "shares" in this context) and access
- them just like any other unix directory. Currently, this works only
+ 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
+ protocol, and not NetBEUI. For details, read
Documentation/filesystems/smbfs.txt and the SMB-HOWTO, available via
- ftp (user: anonymous) from
+ FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
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 via ftp (user: anonymous) in
+ the program samba (available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/system/network/samba) for that.
General information about how to connect Linux, Windows machines and
@@ -6145,7 +6703,7 @@ CONFIG_NCPFS_NDS_DOMAINS
nls: Native language codepages and Unicode support
CONFIG_NLS
- This is required by the FAT and NTFS filesystems and by the ISO9660
+ This is required by the FAT and NTFS filesystems and by the ISO 9660
filesystem when it is compiled with Joliet support. Joliet is a
Microsoft extension for CDROMs that supports Unicode. This allows
translation between different character sets.
@@ -6360,7 +6918,7 @@ CONFIG_NLS_ISO8859_2
If you want to display filenames with native language characters
from the Microsoft fat filesystem family or from JOLIET CDROMs
correctly on the screen, you need to include the appropriate
- input/output character sets. Say Y here for the the Latin 2 character
+ 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.
@@ -6446,17 +7004,20 @@ CONFIG_NLS_KOI8_R
Virtual terminal
CONFIG_VT
- This includes support for a terminal device with display and
- keyboard devices. Only people using embedded systems want to say N
- here; most everybody else says Y. If unsure, say Y, or else you
- won't be able to do much with your new shiny Linux system :-)
+ If you say Y here, you will get support for a terminal device with
+ display and keyboard devices. These are called "virtual" because you
+ can run several virtual terminals on one physical terminal; however,
+ you need at least one virtual terminal device in order to make use
+ of a physical terminal. Only people using embedded systems want to
+ say N here; most everybody else says Y. 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
If you say Y here, by default all kernel messages will be sent to
- the device /dev/tty0 which corresponds to the virtual terminal you
- have visible on your display. You should say Y here unless you only
- want to have the kernel messages output on a serial port (in which
+ the device /dev/tty0 which corresponds to the virtual terminal that
+ is visible on your display. You should say Y here unless you only
+ want to have the kernel messages output to a serial port (in which
case you probably want to say Y to "Console on serial port", below).
Software generated cursor
@@ -6471,7 +7032,7 @@ Standard/generic 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
+ 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
@@ -6484,8 +7045,12 @@ CONFIG_SERIAL
be lost when kerneld automatically unloads the driver. This
limitation may be lifted in the future.]
- BTW: If you have a mouseman serial mouse which is not recognized by
+ 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 connect a so-called Winmodem to your
+ machine's serial port, forget it. These modems 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.
@@ -6498,7 +7063,7 @@ CONFIG_SERIAL_CONSOLE
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. The lilo procedure
- is also explained in the SCSI-HOWTO, available via ftp (user:
+ is also explained in the SCSI-HOWTO, available via FTP (user:
anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.) If you
don't have a VGA card installed and you say Y here, the kernel will
automatically use /dev/ttyS0 as system console.
@@ -6554,7 +7119,7 @@ CONFIG_RISCOM8
Specialix IO8+ card support
CONFIG_SPECIALIX
- This is a driver for the Specialix IO8+ multiport card, that give
+ This is a driver for the Specialix IO8+ 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 BBS.
@@ -6566,9 +7131,9 @@ CONFIG_SPECIALIX
Specialix DTR/RTS pin is RTS
CONFIG_SPECIALIX_RTSCTS
- The Specialix card can only support either RTS or DTR. When you say
+ The Specialix 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. When you say Y here or hardware handshake
+ software handshake mode. If you say Y here or hardware handshake
is on, it will always be RTS. Read the file
Documentation/specialix.txt for more information.
@@ -6623,8 +7188,8 @@ CONFIG_ISTALLION
Hayes ESP serial port support
CONFIG_ESPSERIAL
- This is a driver which supports Hayes ESP serial ports. It uses DMA
- to transfer data to and from the host. Make sure to read
+ This is a driver which supports Hayes ESP serial ports. Both single
+ port cards and multiport cards are supported. Make sure to read
Documentation/hayes-esp.txt.
To compile this driver as a module ( = code which can be inserted in
@@ -6632,54 +7197,12 @@ CONFIG_ESPSERIAL
and read Documentation/modules.txt. The module will be called esp.o.
If unsure, say N.
-Hayes ESP serial port DMA channel
-CONFIG_ESPSERIAL_DMA_CHANNEL
- This is the DMA channel to be used to transfer data to and from the
- host. One DMA channel is shared between all the ESP ports. Valid
- values are 1 and 3.
-
-Hayes ESP serial port receive trigger level
-CONFIG_ESPSERIAL_RX_TRIGGER
- This is the trigger level (in bytes) of the receive FIFO. Larger
- values may result in fewer interrupts and hence better performance;
- however, a value too high could result in data loss. Valid values
- are 1 through 1023.
-
-Hayes ESP serial port transmit trigger level
-CONFIG_ESPSERIAL_TX_TRIGGER
- This is the trigger level (in bytes) of the transmit FIFO. Larger
- values may result in fewer interrupts and hence better performance;
- however, a value too high could result in degraded transmit
- performance. Valid values are 1 through 1023.
-
-Hayes ESP serial port flow off level
-CONFIG_ESPSERIAL_FLOW_OFF
- This is the level (in bytes) at which the ESP port will "flow off"
- the remote transmitter (i.e. tell him to stop stop sending more
- bytes). Valid values are 1 through 1023. This value should be
- greater than the receive trigger level and the flow on level.
-
-Hayes ESP serial port flow on level
-CONFIG_ESPSERIAL_FLOW_ON
- This is the level (in bytes) at which the ESP port will "flow on"
- the remote transmitter (i.e. tell him to resume sending bytes) after
- having flowed it off. Valid values are 1 through 1023. This value
- should be less than the flow off level, but greater than the receive
- trigger level.
-
-Hayes ESP serial port receiver timeout
-CONFIG_ESPSERIAL_RX_TMOUT
- This is the amount of time that the ESP port will wait after
- receiving the final character before signaling an interrupt. Valid
- values are 0 through 255. A value too high will increase latency,
- and a value too low will cause unnecessary interrupts.
-
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 via ftp (user: anonymous) in
+ read the Printing-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
It is possible to share one parallel port among several devices
@@ -6694,7 +7217,7 @@ CONFIG_PRINTER
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 lilo procedure is also explained in the
- SCSI-HOWTO, available via ftp (user: anonymous) in
+ SCSI-HOWTO, available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.) The standard base
addresses as well as the syntax of the "lp" command line option can
be found in drivers/char/lp.c.
@@ -6714,7 +7237,7 @@ CONFIG_MOUSE
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 something else, read the Busmouse-HOWTO, available via ftp
+ have something else, read the Busmouse-HOWTO, available via FTP
(user: anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO and
say Y here.
@@ -6732,7 +7255,7 @@ CONFIG_BUSMOUSE
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 via ftp (user: anonymous) in
+ available via FTP (user: anonymous) in
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to compile this as a module ( = code which can be
@@ -6751,7 +7274,7 @@ CONFIG_PSMOUSE
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 via ftp (user: anonymous)
+ in detail in the Busmouse-HOWTO, available via FTP (user: anonymous)
in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. When using a PS/2
mouse, you can get problems if you want to use the mouse both on the
Linux console and under X. Using the "-R" option of the Linux mouse
@@ -6769,7 +7292,7 @@ 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 via ftp (user:
+ doesn't work. Read the Busmouse-HOWTO, available via FTP (user:
anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
PC110 digitizer pad support
@@ -6789,7 +7312,7 @@ 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 via ftp
+ you have, say Y and read the Busmouse-HOWTO, available via FTP
(user: anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you are unsure, say N and read the HOWTO nevertheless: it will
@@ -6806,7 +7329,7 @@ ATIXL busmouse support
CONFIG_ATIXL_BUSMOUSE
This is a rare type of busmouse that is connected to the back of an
ATI video card. Note that most ATI mice are actually Microsoft
- busmice. Read the Busmouse-HOWTO, available via ftp (user:
+ busmice. Read the Busmouse-HOWTO, available via FTP (user:
anonymous) in ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO.
If you want to compile this as a module ( = code which can be
@@ -6820,10 +7343,10 @@ CONFIG_ATIXL_BUSMOUSE
Support for user miscellaneous modules
CONFIG_UMISC
This option forces generic miscellaneous minor device support in the
- kernel, and allows later loading of user miscellaneous device
- modules, such as drivers for optic pens and touchscreens. Unless you
- need such specific modules, or are willing to write/test one, just
- say N.
+ kernel, and allows later loading of user miscellaneous character
+ device modules, such as drivers for optic pens and touchscreens.
+ Unless you need such specific modules, or are willing to write/test
+ one, just say N.
QIC-02 tape support
CONFIG_QIC02_TAPE
@@ -6837,7 +7360,7 @@ 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 (include/linux/tpqic02.h), in which case you should
- say N, or you can fetch a program via anonymous ftp which is able
+ 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.
@@ -7136,7 +7659,7 @@ CONFIG_FT_FDC_MAX_RATE
MTRR control and configuration
CONFIG_MTRR
- On Intel Pentium Pro/Pentium II systems the Memory Type Range
+ On Intel Pentium Pro and Pentium II systems the Memory Type Range
Registers (MTRRs) may be used to control processor access to memory
ranges. This is most useful when you have a video (VGA) card on a
PCI or AGP bus. Enabling write-combining allows bus write transfers
@@ -7147,12 +7670,16 @@ CONFIG_MTRR
your MTRRs. Typically the X server should use this. This should have
a reasonably generic interface so that similar control registers on
other processors can be easily supported.
- This option also fixes a problem with buggy SMP BIOSes which only
+
+ Saying Y here also fixes a problem with buggy SMP BIOSes which only
set the MTRRs for the boot CPU and not the secondary CPUs. This can
lead to all sorts of problems.
- Compiling this as a module is not available because the BIOS fix
- needs to be done early in the boot sequence, otherwise your machine
- could lock up.
+
+ In general you should compile this into the kernel, rather than as a
+ loadable module, because the BIOS fix needs to be done early in the
+ boot sequence. If you compile this as a module, the BIOS fix will be
+ delayed until when you load the module. You do this at your own risk.
+
See Documentation/mtrr.txt for more information.
Main CPU frequency, only for DEC alpha machine
@@ -7176,7 +7703,7 @@ CONFIG_APM
receive notification of APM "events" (e.g., battery status change).
Supporting software is available; for more information, read the
- Battery Powered Linux mini-HOWTO, available via ftp (user:
+ Battery Powered Linux mini-HOWTO, available via FTP (user:
anonymous) from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini.
This driver does not spin down disk drives (see the hdparm(8)
@@ -7191,7 +7718,7 @@ CONFIG_APM
for the Linux kernel).
If you are running Linux on a laptop, you may also want to read the
- Linux Laptop homepage on the WWW at
+ Linux Laptop home page on the WWW at
http://www.cs.utexas.edu/users/kharker/linux-laptop/ (to browse the
WWW, you need to have access to a machine on the Internet that has a
program like lynx or netscape).
@@ -7210,11 +7737,12 @@ CONFIG_APM
3) passing the "floppy=nodma" option to the kernel
4) passing the "mem=4M" option to the kernel (thereby disabling
all but the first 4M of RAM)
- 5) reading the sig11 FAQ at http://www.bitwizard.nl/sig11/
- 6) disabling the cache from your BIOS settings
- 7) installing a better fan
- 8) exchanging RAM chips
- 9) exchanging the motherboard.
+ 5) making sure that the CPU is not over clocked.
+ 6) reading the sig11 FAQ at http://www.bitwizard.nl/sig11/
+ 7) disabling the cache from your BIOS settings
+ 8) installing a better fan
+ 9) exchanging RAM chips
+ 10) exchanging the motherboard.
Ignore USER SUSPEND
CONFIG_APM_IGNORE_USER_SUSPEND
@@ -7295,7 +7823,7 @@ CONFIG_WATCHDOG
kernel source.
The watchdog is usually used together with the watchdog daemon which
- is available via ftp (user: anonymous) from
+ is available via FTP (user: anonymous) from
ftp://tsx-11.mit.edu/pub/linux/sources/sbin/. This daemon can also
monitor NFS connections and can reboot the machine when the process
table is full.
@@ -7440,13 +7968,24 @@ CONFIG_JOYSTICK
The module will be called joystick.o. If you want to compile it as a
module, say M here and read Documentation/modules.txt.
+Atomwide Serial 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
+
+The Serial Port Dual Serial Port
+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
+
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 via ftp (user: anonymous)
+ want to read the Sound-HOWTO, available via FTP (user: anonymous)
from ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO. There is also some
information in various README files in drivers/sound, esp. in
Readme.cards which you should read first to find out whether your
@@ -7466,24 +8005,31 @@ CONFIG_SOUND
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 programs to do that are in the pcsndrv package on
- sunsite.unc.edu:/pub/Linux/kernel/patches/console/.
+ ftp://sunsite.unc.edu/pub/Linux/kernel/patches/console/ and in the
+ pcsp patch at ftp://dwmw2.robinson.cam.ac.uk/pub/kernel/ .
+
+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.
ProAudioSpectrum 16 support
-CONFIG_PAS
+CONFIG_SOUND_PAS
Answer Y only if you have a Pro Audio Spectrum 16, ProAudio Studio
16 or Logitech SoundMan 16 sound card. Don't answer Y if you have
some other card made by Media Vision or Logitech since they are not
PAS16 compatible.
100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support
-CONFIG_SB
- Answer Y if you have an original SoundBlaster card made by
+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). If your card was in the list of supported
cards look at the card specific instructions in the
drivers/sound/Readme.cards file before answering this question. For
an unknown card you may answer Y if the card claims to be
- SoundBlaster compatible.
+ Sound Blaster-compatible.
Please read Documentation/sound/Soundblaster.
@@ -7491,16 +8037,8 @@ CONFIG_SB
Y here and to "Additional lowlevel drivers" and to "SB32/AWE
support" below.
-Are you using the IBM Mwave "emulation" of SB ?
-CONFIG_SB_MWAVE
- The IBM Mwave can do what's loosely describable as emulation of an
- 8bit SoundBlaster card if you load the right firmware from DOS warm
- boot and pray and your machine happens to like you. Say Y if you are
- doing this as the IRQ test normally fails on the Mwave emulation.
- Please read Documentation/sound/mwave.
-
Generic OPL2/OPL3 FM synthesizer support
-CONFIG_ADLIB
+CONFIG_SOUND_ADLIB
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
@@ -7508,19 +8046,19 @@ CONFIG_ADLIB
cards, however). If unsure, say Y.
#Loopback MIDI device support
-#CONFIG_VMIDI
+#CONFIG_SOUND_VMIDI
###
### somebody please fill this in.
###
#
Gravis Ultrasound support
-CONFIG_GUS
+CONFIG_SOUND_GUS
Say Y here for any type of Gravis Ultrasound card, including
- the GUS or GUS MAX. Please read Documentation/sound/ultrasound for
- more information.
+ the GUS or GUS MAX. See also Documentation/sound/ultrasound for
+ more information on configuring this card with modules.
MPU-401 support (NOT for SB16)
-CONFIG_MPU401
+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
@@ -7531,13 +8069,13 @@ CONFIG_MPU401
answer Y if you have a true MPU401 MIDI interface card.
6850 UART Midi support
-CONFIG_UART6850
+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.
PSS (AD1848, ADSP-2115, ESC614) support
-CONFIG_PSS
+CONFIG_SOUND_PSS
Answer Y only if you have Orchid SW32, Cardinal DSP16 or some other
card based on the PSS chipset (AD1848 codec + ADSP-2115 DSP chip +
Echo ESC614 ASIC CHIP).
@@ -7548,18 +8086,27 @@ CONFIG_PSS
### Don't know what this is
###
#
+Have DSPxxx.LD firmware file
+CONFIG_PSS_HAVE_BOOT
+ If you want to emulate the Sound Blaster card and you have a DSPxxx.LD
+ file, then answer Y here to include this file.
+
+Full pathname of DSPxxx.LD firmware file
+CONFIG_PSS_BOOT_FILE
+ Enter the full pathname of your DSPxxx.LD file, starting from /.
+
16 bit sampling option of GUS (_NOT_ GUS MAX)
-CONFIG_GUS16
+CONFIG_SOUND_GUS16
Answer Y if you have installed the 16 bit sampling daughtercard on
your GUS. Answer N if you have a GUS MAX, since saying Y here
disables GUS MAX support.
GUS MAX support
-CONFIG_GUSMAX
+CONFIG_SOUND_GUSMAX
Answer Y only if you have a Gravis Ultrasound MAX.
Microsoft Sound System support
-CONFIG_MSS
+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
@@ -7585,60 +8132,123 @@ CONFIG_MSS
conflict.
Ensoniq Soundscape support
-CONFIG_SSCAPE
+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).
MediaTriX AudioTriX Pro support
-CONFIG_TRIX
+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_MAD16
+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. Please read
- Documentation/sound/MAD16. Please read Documentation/sound/Opti. For
- the 82C931, additional information is in drivers/sound/README.C931.
- These chips are currently 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).
+ 82C928 or 82C929 or 82C931) audio interface chip. For the 82C931,
+ please read drivers/sound/README.C931. These chips are currently
+ 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). See also Documentation/sound/Opti for
+ more information on setting these cards up as modules.
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 SoundBlaster.
+ 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_CS4232
+CONFIG_SOUND_CS4232
Say Y here if you have a card based on the Crystal CS4232 chip set,
- which use the Plug and Play protocol. Please read
- Documentation/sound/CS4232 for more info.
+ which uses its own Plug and Play protocol. See
+ Documentation/sound/CS4232 for more information on configuring this
+ card.
Support for Turtle Beach Wave Front (Maui, Tropez) synthesizers
-CONFIG_MAUI
+CONFIG_SOUND_MAUI
Say Y here if you have a Turtle Beach Wave Front, Maui, or
Tropez sound card.
+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
+ Documentation/sound/MultiSound for important information about this
+ driver.
+
+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 Documentation/sound/MultiSound 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 Documentation/sound/MultiSound 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 Documentation/sound/MultiSound for important information about
+ this driver.
+
+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 Documentation/sound/MultiSound 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 Documentation/sound/MultiSound for
+ information on how to obtain this.
+
/dev/dsp and /dev/audio support
-CONFIG_AUDIO
+CONFIG_SOUND_AUDIO
Answering N disables /dev/dsp and /dev/audio, the A/D and D/A
converter devices. Answer N only if you know you will not need
the option. They are usually required. Answer Y.
MIDI interface support
-CONFIG_MIDI
+CONFIG_SOUND_MIDI
Answering N disables /dev/midixx devices and access to any MIDI
ports using /dev/sequencer and /dev/music. This option also affects
any MPU401 and/or General MIDI compatible devices. Answer Y.
FM synthesizer (YM3812/OPL-3) support
-CONFIG_YM3812
- Answer Y here, unless you know you will not need the option. For
- OPL-3 cards, you may want to read Documentation/sound/OPL3.
+CONFIG_SOUND_YM3812
+ Answer Y here, unless you know you will not need the option.
Sun Audio support
CONFIG_SUN_AUDIO
@@ -7665,24 +8275,24 @@ CONFIG_ACI_MIXER
SB32/AWE support
CONFIG_AWE32_SYNTH
- Say Y here if you have a SoundBlaster SB32, AWE32-PnP, SB AWE64 or
+ Say Y here if you have a Sound Blaster SB32, AWE32-PnP, SB AWE64 or
similar sound card. See drivers/sound/lowlevel/README.awe,
Documentation/sound/AWE32 and the Soundblaster-AWE mini-HOWTO,
- available via ftp (user: anonymous) from
+ available via FTP (user: anonymous) from
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini for more info.
Gallant's Audio Excel DSP 16 support (SC-6000 and SC-6600)
CONFIG_AEDSP16
Answer Y if you have a Gallant's Audio Excel DSP 16 card. This card
can emulate either an SBPro or a Microsoft Sound System card, so you
- should have said Y to either "SoundBlaster (SB, SBPro, SB16, clones)
+ should have said Y to either "Sound Blaster (SB, SBPro, SB16, clones)
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 drivers/sound/lowlevel/README.aedsp16 file and
the head of drivers/sound/lowlevel/aedsp16.c to get more information
about this driver and its configuration. This driver supports Audio
- Excel DSP 16 but not the III nor Pnp versions of this card. Read
+ Excel DSP 16 but not the III nor PnP versions of this card. Read
drivers/sound/lowlevel/README.aedsp16 if you want to know something
more on how to use the III version with this sound driver.
@@ -7701,28 +8311,38 @@ CONFIG_AEDSP16_MSS
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 "SoundBlaster (SB, SBPro, SB16, clones)
+ You should then say Y to "Sound Blaster (SB, SBPro, SB16, clones)
support" and N to "Audio Excel DSP 16 (MSS emulation)".
-Kernel profiling support
-CONFIG_PROFILE
- This is for kernel hackers who want to know how much time the kernel
- spends in the various procedures. The information is stored in
- /proc/profile (say Y to "/proc filesystem support"!) and in order to
- read it, you need the readprofile package from
- sunsite.unc.edu:/pub/Linux/kernel. Its manpage gives information
- regarding the format of profiling data. To become a kernel hacker,
- you can start with the Kernel Hacker's Guide at
- http://www.redhat.com:8080/HyperNews/get/khg.html (to browse the
- WWW, you need to have access to a machine on the Internet that has a
- program like lynx or netscape). Mere mortals say N.
-
-Profile shift count
-CONFIG_PROFILE_SHIFT
- This is used to adjust the granularity with which the addresses of
- executed instructions get recorded in /proc/profile. But since you
- said Y to "Kernel profiling support", you must be a kernel hacker and
- hence you know what this is about :-)
+Ensoniq 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
+ Documentation/sound/es1370.
+
+Ensoniq ES1371 based PCI 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 Documentation/sound/es1371.
+
+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
+ Documentation/sound/sonicvibes.
Magic System Request Key support
CONFIG_MAGIC_SYSRQ
@@ -7948,7 +8568,7 @@ CONFIG_HISAX_NICCY
HiSax Support for Am7930 (EXPERIMENTAL)
CONFIG_HISAX_AMD7930
- This enables HiSax support for the AMD7930 chips on some sparcs.
+ This enables HiSax support for the AMD7930 chips on some SPARCs.
This code is not finished yet.
HiSax Support for EURO/DSS1
@@ -8049,20 +8669,26 @@ CONFIG_ISDN_DRV_ACT2000
Support for AP1000 multicomputer
CONFIG_AP1000
- This enables support for a sparc based parallel multi-computer
+ This enables support for a SPARC based parallel multi-computer
called AP1000+. For details on our efforts to port Linux to this
machine see http://cap.anu.edu.au/cap/projects/linux (to browse the
WWW, you need to have access to a machine on the Internet that has a
program like lynx or netscape) or mail to hackers@cafe.anu.edu.au
-Sparc ESP SCSI support
+Support for Sun4 architecture
+CONFIG_SUN4
+ Use this option if, and only if, your machine is sun4. Note that
+ kernel compiled with this option will run on sun4 only.
+ (And in current version, it will probably work on sun4/330, only.)
+
+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-based computers.
-Sparc /dev/openprom compatibility driver
+SPARC /dev/openprom compatibility driver
CONFIG_SUN_OPENPROMIO
- This driver provides user programs with an interface to the Sparc
+ 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.
@@ -8095,11 +8721,19 @@ CONFIG_ATARI
this kernel on an Atari, say Y here and browse the material
available in Documentation/m68k; 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. ;)
+ 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.
+ ;)
# CONFIG_APOLLO, etc. coming soon (?)
@@ -8231,6 +8865,18 @@ CONFIG_AMIGA_Z2RAM
compile it as a module, say M here and read
Documentation/modules.txt.
+Atari ST-RAM swap support
+CONFIG_STRAM_SWAP
+ This enables support for using (parts of) ST-RAM as swap space,
+ instead of as normal system memory. This can first enhance system
+ performace 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.
+
Atari ACSI support
CONFIG_ATARI_ACSI
This enables support for the Atari ACSI interface. The driver
@@ -8343,6 +8989,14 @@ CONFIG_ATARI_SCSI_TOSHIBA_DELAY
use a Toshiba CD-ROM drive; otherwise, the option is not needed and
would impact performance a bit, so say N.
+Hades SCSI DMA emulator (EXPERIMENTAL)
+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. Note that this code is experimental and
+ has only been tested on a Hades with a 68060 processor. Before you
+ use this, make backups of your entire hard disk.
+
Ariadne support
CONFIG_ARIADNE
If you have a VillageTronics Ariadne Ethernet adapter, say Y.
@@ -8525,27 +9179,23 @@ CONFIG_MSDOS_PARTITION
Say Y if you need this feature; users who are only using their
system-native partitioning scheme can say N here.
-Build PowerMac Kernel (not PReP)
+Board Type
CONFIG_PMAC
- There are currently two different kinds of PowerPC-based machines
+ There are currently several different kinds of PowerPC-based machines
available: Apple Power Macintoshes and clones (such as the Motorola
- Starmax series, and PReP (PowerPC Reference Platform) machines such
- as the Motorola PowerStack range. Currently, a single kernel binary
- only supports one type or the other. Say Y here to compile a kernel
- which will run on Power Macintoshes and clones.
-
-Build PReP Kernel (not PowerMac)
-CONFIG_PREP
- Say Y here to compile a kernel which will run on PReP (PowerPC
- Reference Platform) machines such as the Motorola PowerStack range.
- For Power Macintosh clones, including the Motorola Starmaxes, you
- should say N (and Y to the previous question).
-
-Processor type
-CONFIG_MCOMMON
- If you are compiling a kernel to run on a specific machine, you can
- indicate which type of PowerPC processor it has. Currently this
- option does very little.
+ Starmax series, PReP (PowerPC Reference Platform) machines such
+ as the Motorola PowerStack, Amiga Power-Up systems (APUS), CHRP and the
+ embedded MBX boards from Motorola. Currently, a single kernel binary
+ only supports one type or the other. However, there is very early work
+ on support CHRP, PReP and PowerMac's from a single binary.
+
+
+Processor Type
+CONFIG_6xx
+ There are two types of PowerPC chips supported. The more common
+ types (601,603,604,740,750) and the embedded versions (821 and 860).
+ Unless you are building a kernel for one of the embedded boards using
+ the 821 or 860 choose 6xx.
Support for Open Firmware device tree in /proc
CONFIG_PROC_DEVICETREE
@@ -8605,15 +9255,103 @@ CONFIG_MACE
Video For Linux
CONFIG_VIDEO_DEV
- Support for audio/video capture and overlay devices. The exact
- capabilities of each device vary. User tools for this are available
- from ftp://ftp.uk.linux.org/pub/linux/video4linux.
+ Support for audio/video capture and overlay devices and FM radio
+ cards. The exact capabilities of each device vary. User tools for
+ this are available from
+ ftp://ftp.uk.linux.org/pub/linux/video4linux.
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 Documentation/modules.txt.
+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.
+
+ 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
+ http://roadrunner.swansea.uk.linux.org/v4l.shtml; to browse the WWW,
+ you need to have access to a machine on the Internet that has a
+ program like lynx or netscape.
+
+ 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 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.
+
+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
+ http://roadrunner.swansea.uk.linux.org/v4l.shtml; to browse the WWW,
+ you need to have access to a machine on the Internet that has a
+ program like lynx or netscape.
+
+ 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 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.
+
+SF16FMI Radio
+CONFIG_RADIO_SF16FMI
+ 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
+ http://roadrunner.swansea.uk.linux.org/v4l.shtml; to browse the WWW,
+ you need to have access to a machine on the Internet that has a
+ program like lynx or netscape.
+
+ 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 radio-sf16fmi.o
+
+SF16FMI I/O port (0x284 or 0x384)
+CONFIG_RADIO_SF16FMI_PORT
+ Enter the I/O port of your SF16FMI radio card.
+
+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
+ http://roadrunner.swansea.uk.linux.org/v4l.shtml; to browse the WWW,
+ you need to have access to a machine on the Internet that has a
+ program like lynx or netscape.
+
+ 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 radio-zoltrix.o
+
+ZOLTRIX I/O port (0x20c or 0x30c)
+CONFIG_RADIO_ZOLTRIX_PORT
+ Enter the I/O port of your Zoltrix radio card.
+
BT848 Video For Linux
CONFIG_VIDEO_BT848
Support for BT848 based frame grabber/overlay boards. This includes
@@ -8659,33 +9397,65 @@ CONFIG_VIDEO_PMS
from the running kernel whenever you want). If you want to compile
it as a module, say M here and read Documentation/modules.txt.
+CPU Optimization
+CONFIG_CPU_ARM2
+ This selects the processor type of your CPU. This is only used to
+ determine C compiler optimization options, and can affect the
+ compatibility of the kernel on other processors. If you specify
+ ARM6, the kernel should work on all 32-bit processors. If you
+ specify ARM2, ARM250 or ARM3, it should work on all 26-bit
+ processors. If you're not sure, set it to "None".
+
+ARM System type
+CONFIG_ARCH_ARC
+ 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.
+
+Build Tools Selection
+CONFIG_BINUTILS_NEW
+ Say Y here if you're using GCC 2.8.1/EGCS with a binutils
+ version >= 2.8.1 to compile the kernel. Otherwise, say N.
+
+Compile kernel with frame pointer
+CONFIG_FRAME_POINTER
+ In order to give useful debugging/error results, say Y here, otherwise
+ say N.
+
+VIDC Sound
+CONFIG_VIDC_SOUND
+ Say 'Y' here for ARM systems with the VIDC video controller and 16-bit
+ Linear sound DACs. If unsure, say N.
+
#
# A couple of things I keep forgetting:
-# capitalize: DMA, Internet, Intel, IRQ, Linux, NetWare, NFS, PCI, SCSI
-# two words: hard drive, hard disk, sound card
-# other: it's safe to save; daemon
+# capitalize: AppleTalk, Ethernet, DMA, FTP, Internet, Intel, IRQ,
+# Linux, NetWare, NFS, PCI, SCSI, SPARC
+# two words: hard drive, hard disk, sound card, home page
+# other: it's safe to save; daemon
#
# This is used by Emacs' spell checker ispell.el:
#
# LocalWords: CONFIG coprocessor DX Pentium SX lilo loadlin HOWTO ftp sunsite
# 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 CDROMs IDECD NEC MITSUMI filesystem XT XD PCI bios cezar ATEN
+# LocalWords: HD CDROMs 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: 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 PCTCP RARP EXT PS
-# LocalWords: telneting subnetted NAGLE rlogin NOSR ttyS TGA techinfo mbone nl
-# LocalWords: Mb SKB IPX Novell dosemu Appletalk DDP ATALK tapedrive vmalloc
+# LocalWords: telnetting subnetted NAGLE rlogin NOSR ttyS TGA techinfo mbone nl
+# LocalWords: Mb SKB IPX Novell dosemu Appletalk 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 nullmodem CSLIP PLIP Kirch's LDP CSlip SL SCC IRQ
+# 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 arcnet Cabletron DEPCA DE
-# LocalWords: depca EtherWorks EWRK ewrk SEEQ EtherExpressPro EEXPRESS NI xxx
+# 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 pcmcia LAN TEC RealTek ATP atp DLINK NetTools
# LocalWords: TR Sony CDU caddyless cdu Mitsumi MCD cd mcd XA MultiSession CDA
@@ -8698,7 +9468,7 @@ CONFIG_VIDEO_PMS
# 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 nullmodems scc Portmaster eql GIS PhotoCDs MCDX
+# 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
@@ -8710,14 +9480,14 @@ CONFIG_VIDEO_PMS
# 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 chipsets MG
-# LocalWords: bsd comp Sparcstation le SunOS ie Gracilis PackeTwin PT pt LU FX
-# LocalWords: FX TEAC SoundBlaster CR CreativeLabs LCS mS ramdisk IDETAPE cmd
+# 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 DECStation AXP barlow
+# LocalWords: TravelMate CDT LCD backlight VC RPC Mips AXP barlow cdrecord pg
# LocalWords: PMAX MILO Alphas Multia Tseng linuxelf endian mipsel mips drv HT
# LocalWords: KERNELD kerneld callouts AdvanSys advansys Admin WDT DataStor EP
# LocalWords: wdt hdb hdc bugfix SiS vlb Acculogic CSA DTC dtc Holtek ht QDI
-# LocalWords: QD qd UMC umc ALI ali lena fnet fr homepage azstarnet axplinux
+# LocalWords: QD qd UMC umc ALI ali lena fnet fr azstarnet axplinux cdr fb MDA
# 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
@@ -8732,13 +9502,13 @@ CONFIG_VIDEO_PMS
# 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 ufs
+# LocalWords: Solaris RISCom riscom syncPPP PCBIT pcbit sparc anu au artoo MFB
# LocalWords: hitchcock Crynwr cnam pktdrvr NCSA's CyDROM CyCDROM 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: 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
@@ -8751,14 +9521,14 @@ CONFIG_VIDEO_PMS
# 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 helptext menuconfig kfill READMEs HOWTOs
+# LocalWords: traduc Bourgin dbourgin menuconfig kfill READMEs HOWTOs Virge WA
# LocalWords: IDEDISK IDEFLOPPY EIDE firewalls QMAGIC ZMAGIC LocalWords opti
# LocalWords: SVGATextMode vga svga Xterminal Xkernel syr jmwobus comfaqs dhcp
# 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: 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
@@ -8770,13 +9540,13 @@ CONFIG_VIDEO_PMS
# 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 fileserver sd sr sg wic
+# 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: LocalTalk AppleTalk Farallon PhoneNet Zubkoff lnz SCCB HAPN WANs
+# 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
@@ -8784,7 +9554,7 @@ CONFIG_VIDEO_PMS
# 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's contrib mathematik
+# 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
@@ -8793,8 +9563,8 @@ CONFIG_VIDEO_PMS
# LocalWords: stuttgart rdist TRANS hostnames mango jukeboxes ESS userland PD
# LocalWords: hardlinked NAMETRANS env mtab fstab umount nologin runlevel gid
# LocalWords: transname filespace adm Nodename hostname uname Kernelname bootp
-# LocalWords: KERNNAME kname ktype kernelname Kerneltype KERNTYPE Alt SCB's RX
-# LocalWords: dataless kerneltype SYSNAME Netbeui Comtrol Rocketport palmtop
+# LocalWords: KERNNAME kname ktype kernelname Kerneltype KERNTYPE Alt RX mdafb
+# LocalWords: dataless kerneltype SYSNAME Comtrol Rocketport palmtop
# LocalWords: nvram SYSRQ SysRq PrintScreen sysrq NVRAMs NvRAM Shortwave RTTY
# LocalWords: HFMODEM shortwave Sitor Amtor Pactor GTOR hfmodem hayes TX TMOUT
# LocalWords: IDEPCI IDEDMA idedma PDC pdc TRM trm raidtools luthien nuclecu
@@ -8803,8 +9573,8 @@ CONFIG_VIDEO_PMS
# 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 WAN's tcpdump af CD's tx
-# LocalWords: ethertap multisession PPC MMIO GDT GDTH ICP gdth hamradio LAN's
+# 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
@@ -8834,4 +9604,17 @@ CONFIG_VIDEO_PMS
# 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
+# 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
+# LocalWords: SGALAXY Waverider DSPxxx TRXPRO AudioTrix OSWF MOT CFB DSY kbps
+# LocalWords: tuwien kkudielk LVD mega lun MAXTAGS Gbps arcnet Olicom SKTR SNA
+# LocalWords: SysKonnect sktr sna etherboot ufs NetBEUI MultiSound MSNDCLAS
+# LocalWords: MSNDINIT MSNDPERM MSNDPIN PNDSPINI PNDSPERM Ensoniq's
+# LocalWords: AudioPCI lspci SonicVibes sonicvibes SPARCs roadrunner
+# LocalWords: swansea shtml Zoltrix zoltrix BINUTILS EGCS binutils VIDC DACs
diff --git a/Documentation/IO-APIC.txt b/Documentation/IO-APIC.txt
index 13565b69c..76b939e8a 100644
--- a/Documentation/IO-APIC.txt
+++ b/Documentation/IO-APIC.txt
@@ -1,5 +1,4 @@
-
-most (all) Intel SMP boards have the so-called 'IO-APIC', which is
+Most (all) Intel SMP boards have the so-called 'IO-APIC', which is
an enhanced interrupt controller, able to route hardware interrupts
to multiple CPUs, or to CPU groups.
@@ -11,10 +10,10 @@ The Linux policy thus is to enable the IO-APIC only if it's 100% safe, ie.:
or - the board does not have PCI pins connected to the IO-APIC
- or - the user has overriden blacklisted settings with the
+ or - the user has overridden blacklisted settings with the
pirq= boot option line.
-Kernel messages tell you wether the board is 'safe'. If your box
+Kernel messages tell you whether the board is 'safe'. If your box
boots with enabled IO-APIC IRQs, then you have nothing else to do. Your
/proc/interrupts will look like this one:
@@ -42,7 +41,7 @@ running:
A) if your board is unlisted, then mail to linux-smp to get
it into either the white or the blacklist
- B) if your board is blacklisted, then figure out the apropriate
+ B) if your board is blacklisted, then figure out the appropriate
pirq= option to get your system to boot
@@ -52,7 +51,7 @@ pirq= lines look like the following in /etc/lilo.conf:
the actual numbers depend on your system, on your PCI cards and on their
PCI slot position. Usually PCI slots are 'daisy chained' before they are
-connected to the PCI chipset irq routing facility (the incoming PIRQ1-4
+connected to the PCI chipset IRQ routing facility (the incoming PIRQ1-4
lines):
,-. ,-. ,-. ,-. ,-.
@@ -80,11 +79,11 @@ every PCI card emits a PCI IRQ, which can be INTA,INTB,INTC,INTD:
These INTA-D PCI IRQs are always 'local to the card', their real meaning
depends on which slot they are in. If you look at the daisy chaining diagram,
a card in slot4, issuing INTA IRQ, it will end up as a signal on PIRQ2 of
-the PCI chipset. Most cards issue INTA, this creates optimal distibution
+the PCI chipset. Most cards issue INTA, this creates optimal distribution
between the PIRQ lines. (distributing IRQ sources properly is not a
necessity, PCI IRQs can be shared at will, but it's a good for performance
to have non shared interrupts). Slot5 should be used for videocards, they
-dont use interrupts normally, thus they are not daisy chained either.
+do not use interrupts normally, thus they are not daisy chained either.
so if you have your SCSI card (IRQ11) in Slot1, Tulip card (IRQ9) in
Slot2, then you'll have to specify this pirq= line:
@@ -98,7 +97,7 @@ your PCI configuration:
note that this script wont work if you have skipped a few slots or if your
board does not do default daisy-chaining. (or the IO-APIC has the PIRQ pins
-connected in some strange way). Eg. if in the above case you have your SCSI
+connected in some strange way). E.g. if in the above case you have your SCSI
card (IRQ11) in Slot3, and have Slot1 empty:
append="pirq=0,9,11"
@@ -130,7 +129,7 @@ the following pirq line can be used to force a board into the whitelist:
to the official whitelist, contact us]
good luck and mail to linux-smp@vger.rutgers.edu or
-linux-kernel@vger.rutger.edu if you have any problems that are not covered
+linux-kernel@vger.rutgers.edu if you have any problems that are not covered
by this document.
-- mingo
diff --git a/Documentation/IO-mapping.txt b/Documentation/IO-mapping.txt
index ceac953e4..b18355ba7 100644
--- a/Documentation/IO-mapping.txt
+++ b/Documentation/IO-mapping.txt
@@ -1,8 +1,7 @@
-
-[ This is a mail-message in response to a query on IO mapping, thus the
+[ This is a mail message in response to a query on IO mapping, thus the
strange format for a "document" ]
-The aha1542 is a bus-master device, and your patch makes the driver give the
+The AHA-1542 is a bus-master device, and your patch makes the driver give the
controller the physical address of the buffers, which is correct on x86
(because all bus master devices see the physical memory mappings directly).
@@ -11,9 +10,9 @@ at memory addresses, and in this case we actually want the third, the
so-called "bus address".
Essentially, the three ways of addressing memory are (this is "real memory",
-ie normal RAM, see later about other details):
+that is, normal RAM--see later about other details):
- - CPU untranslated. This is the "physical" address, ie physical address
+ - CPU untranslated. This is the "physical" address. Physical address
0 is what the CPU sees when it drives zeroes on the memory bus.
- CPU translated address. This is the "virtual" address, and is
@@ -27,7 +26,7 @@ ie normal RAM, see later about other details):
things any more complex than necessary, so you can assume that all
external hardware sees the memory the same way.
-Now, on normal PC's the bus address is exactly the same as the physical
+Now, on normal PCs the bus address is exactly the same as the physical
address, and things are very simple indeed. However, they are that simple
because the memory and the devices share the same address space, and that is
not generally necessarily true on other PCI/ISA setups.
@@ -35,13 +34,13 @@ not generally necessarily true on other PCI/ISA setups.
Now, just as an example, on the PReP (PowerPC Reference Platform), the
CPU sees a memory map something like this (this is from memory):
- 0-2GB "real memory"
- 2GB-3GB "system IO" (ie inb/out type accesses on x86)
- 3GB-4GB "IO memory" (ie shared memory over the IO bus)
+ 0-2 GB "real memory"
+ 2 GB-3 GB "system IO" (inb/out and similar accesses on x86)
+ 3 GB-4 GB "IO memory" (shared memory over the IO bus)
Now, that looks simple enough. However, when you look at the same thing from
the viewpoint of the devices, you have the reverse, and the physical memory
-address 0 actually shows up as address 2GB for any IO master.
+address 0 actually shows up as address 2 GB for any IO master.
So when the CPU wants any bus master to write to physical memory 0, it
has to give the master address 0x80000000 as the memory address.
@@ -53,16 +52,16 @@ PPC, you can end up with a setup like this:
virtual address: 0xC0000000
bus address: 0x80000000
-where all the addresses actually point to the same thing, it's just seen
+where all the addresses actually point to the same thing. It's just seen
through different translations..
-Similarly, on the alpha, the normal translation is
+Similarly, on the Alpha, the normal translation is
physical address: 0
virtual address: 0xfffffc0000000000
bus address: 0x40000000
-(but there are also alpha's where the physical address and the bus address
+(but there are also Alphas where the physical address and the bus address
are the same).
Anyway, the way to look up all these translations, you do
@@ -119,7 +118,7 @@ be remapped (the memory management layer doesn't know about devices outside
the CPU, so it shouldn't need to know about "bus addresses" etc).
NOTE NOTE NOTE! The above is only one part of the whole equation. The above
-only talks about "real memory", ie CPU memory, ie RAM.
+only talks about "real memory", that is, CPU memory (RAM).
There is a completely different type of memory too, and that's the "shared
memory" on the PCI or ISA bus. That's generally not RAM (although in the case
@@ -160,16 +159,16 @@ For such memory, you can do things like
iounmap(baseptr);
- copying and clearing:
- /* get the 6-byte ethernet address at ISA address E000:0040 */
+ /* get the 6-byte Ethernet address at ISA address E000:0040 */
memcpy_fromio(kernel_buffer, 0xE0040, 6);
/* write a packet to the driver */
memcpy_toio(0xE1000, skb->data, skb->len);
/* clear the frame buffer */
memset_io(0xA0000, 0, 0x10000);
-Ok, that just about covers the basics of accessing IO portably. Questions?
+OK, that just about covers the basics of accessing IO portably. Questions?
Comments? You may think that all the above is overly complex, but one day you
-might find yourself with a 500MHz alpha in front of you, and then you'll be
+might find yourself with a 500 MHz Alpha in front of you, and then you'll be
happy that your driver works ;)
Note that kernel versions 2.0.x (and earlier) mistakenly called the
diff --git a/Documentation/SMP.txt b/Documentation/SMP.txt
index 2295187b9..deac933c8 100644
--- a/Documentation/SMP.txt
+++ b/Documentation/SMP.txt
@@ -1,25 +1,20 @@
+SMP on x86/Linux is now an official feature and is not experimental.
+Experimental SMP support for other architectures is underway.
+
+Please view linux/Documentation/smp for more information about enabling SMP.
+
SMP support for Linux with up to 16 processors using the Intel MP
specification.
-WARNING:
- This is experimental. Back up your disks first. Experience is that
-it is basically stable in its current (inefficient form).
-
To fix:
-o Fix sys_idle to exit/enter kernel state and do hlt's.
-o Fix scheduler decisions to reschedule. Per cpu reschedule ?
-o Clean up message pass.
-o Test for B stepping processors.
o Clean up processor specific/independent split.
o Document it all. [PARTLY DONE]
-o Halt other CPU's on reset/panic doesn't always work.
-o Don't waste page at 4K - don't need it now.(watch the GDT code).
+o Halting other CPUs on reset or panic doesn't always work.
+o Don't waste page at 4 K--don't need it now (watch the GDT code).
o Dump bootup pages once booted somehow.
o Clean up warnings/volatiles.
-o Fix load_TR() for non contiguous processor ids
-o Iterate over the slave timer requests if one is lost (keep a count per cpu)
-o Distribute irq's (locking present just needs the 82489 to be asked
- nicely).
o 486 startup code.
o How to handle mixed FPU/non FPU processors.
+o Test IO-APIC on various hardware.
+o Separate IO-APIC from SMP.
diff --git a/Documentation/VGA-softcursor.txt b/Documentation/VGA-softcursor.txt
index 17d39fefe..70acfbf39 100644
--- a/Documentation/VGA-softcursor.txt
+++ b/Documentation/VGA-softcursor.txt
@@ -1,34 +1,39 @@
Software cursor for VGA by Pavel Machek <pavel@atrey.karlin.mff.cuni.cz>
-======================= & Martin Mares <mj@atrey.karlin.mff.cuni.cz>
+======================= and Martin Mares <mj@atrey.karlin.mff.cuni.cz>
Linux now has some ability to manipulate cursor appearance. Normally, you
-can set the size of hardware cursor (and also work-around some ugly bugs in
-those miserable Trident cards -- see #define TRIDENT_GLITCH in drivers/char/
-vga.c). In case you enable "Software generated cursor" in the system
-configuration, you can play few new tricks: you can make your cursor look
-like a non-blinking red block, make it inverse background of the character
-it's over or to highlight that character and still choose whether the
-original hardware cursor should remain visible or not. And maybe other
-things I have never thought of.
+can set the size of hardware cursor (and also work around some ugly bugs in
+those miserable Trident cards--see #define TRIDENT_GLITCH in drivers/video/
+vgacon.c). You can now play a few new tricks: you can make your cursor look
+like a non-blinking red block, make it inverse background of the character it's
+over or to highlight that character and still choose whether the original
+hardware cursor should remain visible or not. There may be other things I have
+never thought of.
The cursor appearance is controlled by a "<ESC>[?1;2;3c" escape sequence
where 1, 2 and 3 are parameters described below. If you omit any of them,
they will default to zeroes.
- Parameter #1 specifies cursor size (0=default, 1=invisible, 2=underline, ...,
+ Parameter 1 specifies cursor size (0=default, 1=invisible, 2=underline, ...,
8=full block) + 16 if you want the software cursor to be applied + 32 if you
-want to always change the background color + 64 if you dislike background same
-as foreground. (Highlights are ignored for the last two flags.)
+want to always change the background color + 64 if you dislike having the
+background the same as the foreground. Highlights are ignored for the last two
+flags.
The second parameter selects character attribute bits you want to change
-(by simple XOR'ing them with the value of this parameter). On standard VGA,
-the high 4 bits specify background and the low 4 the foreground. In both
-groups, low 3 bits set color (as in normal color codes used by the console)
-and the most significant one turns on highlight (or sometimes blinking -- it
+(by simply XORing them with the value of this parameter). On standard VGA,
+the high four bits specify background and the low four the foreground. In both
+groups, low three bits set color (as in normal color codes used by the console)
+and the most significant one turns on highlight (or sometimes blinking--it
depends on the configuration of your VGA).
- And the third parameter consists of character attribute bits you want
-to set. Bit setting takes place before bit toggling, so you can simply
-clear a bit by including it in both the set mask and the toggle mask.
+ The third parameter consists of character attribute bits you want to set.
+Bit setting takes place before bit toggling, so you can simply clear a bit by
+including it in both the set mask and the toggle mask.
+Examples:
+=========
+To get normal blinking underline, use: echo -e '\033[?2c'
+To get blinking block, use: echo -e '\033[?6c'
+To get red non-blinking block, use: echo -e '\033[?17;0;64c'
diff --git a/Documentation/cdrom/00-INDEX b/Documentation/cdrom/00-INDEX
index c8b428bf1..eae689667 100644
--- a/Documentation/cdrom/00-INDEX
+++ b/Documentation/cdrom/00-INDEX
@@ -1,8 +1,9 @@
00-INDEX
- this file (info on CD-ROMs and Linux)
+Makefile
+ - only used to generate TeX output from the documentation.
aztcd
- info on Aztech/Orchid/Okano/Wearnes/Conrad/CyCDROM driver.
-
cdrom-standard.tex
- LaTeX document on standardizing the CD-ROM programming interface.
cdu31a
diff --git a/Documentation/cdrom/aztcd b/Documentation/cdrom/aztcd
index fa3081cfb..7f9f4d31d 100644
--- a/Documentation/cdrom/aztcd
+++ b/Documentation/cdrom/aztcd
@@ -173,7 +173,7 @@ and remove it via rmmod aztcd.
If you did not set the correct base address in aztcd.h, you can also supply the
base address when loading the driver via
insmod /lib/modules/X.X.X/misc/aztcd.o aztcd=<base address>
-Again specifing aztcd=-1 will cause autoprobing.
+Again specifying aztcd=-1 will cause autoprobing.
If you do not have the iso9660-filesystem in your boot kernel, you also have
to load it before you can mount the CDROM:
insmod /lib/modules/X.X.X/fs/isofs.o
diff --git a/Documentation/cdrom/ide-cd b/Documentation/cdrom/ide-cd
index 744a81407..ee12e856d 100644
--- a/Documentation/cdrom/ide-cd
+++ b/Documentation/cdrom/ide-cd
@@ -6,11 +6,11 @@ Carrying on the torch is: Erik Andersen <andersee@debian.org>
---------------
The ide-cd driver should work with all ATAPI ver 1.2 to ATAPI 2.6 compliant
-cdrom drives which attach to an IDE interface. Note that some cdrom vendors
+CDROM drives which attach to an IDE interface. Note that some CDROM vendors
(including Mitsumi, Sony, Creative, Aztech, and Goldstar) have made
both ATAPI-compliant drives and drives which use a proprietary
interface. If your drive uses one of those proprietary interfaces,
-this driver will not work with it (but one of the other cdrom drivers
+this driver will not work with it (but one of the other CDROM drivers
probably will). This driver will not work with `ATAPI' drives which
attach to the parallel port. In addition, there is at least one drive
(CyCDROM CR520ie) which attaches to the IDE port but is not ATAPI;
@@ -19,9 +19,9 @@ aztcd driver).
This driver provides the following features:
- - Reading from data tracks, and mounting iso9660 filesystems.
+ - Reading from data tracks, and mounting ISO 9660 filesystems.
- - Playing audio tracks. Most of the cdrom player programs floating
+ - Playing audio tracks. Most of the CDROM player programs floating
around should work; I usually use Workman.
- Multisession support.
@@ -30,7 +30,7 @@ This driver provides the following features:
from audio tracks. The program cdda2wav can be used for this.
Note, however, that only some drives actually support this.
- - There is now support for cdrom changers which comply with the
+ - There is now support for CDROM changers which comply with the
ATAPI 2.6 draft standard (such as the NEC CDR-251). This additional
functionality includes a function call to query which slot is the
currently selected slot, a function call to query which slots contain
@@ -67,15 +67,15 @@ This driver provides the following features:
2. You should also ensure that the iso9660 filesystem is either
compiled into the kernel or available as a loadable module. You
- can see if a filesystem is known to the kernel by cat'ing the file
+ can see if a filesystem is known to the kernel by catting
/proc/filesystems.
-3. The cdrom drive should be connected to the host on an IDE
+3. The CDROM drive should be connected to the host on an IDE
interface. Each interface on a system is defined by an I/O port
address and an IRQ number, the standard assignments being
0x170 and 14 for the primary interface and 0x1f0 and 15 for the
secondary interface. Each interface can control up to two devices,
- where each device can be a hard drive, a cdrom drive, a floppy drive,
+ where each device can be a hard drive, a CDROM drive, a floppy drive,
or a tape drive. The two devices on an interface are called `master'
and `slave'; this is usually selectable via a jumper on the drive.
@@ -85,10 +85,10 @@ This driver provides the following features:
`hdc' and `hdd'. (Interfaces at other locations get other letters
in the third position; see Documentation/ide.txt.)
- If you want your cdrom drive to be found automatically by the
+ If you want your CDROM drive to be found automatically by the
driver, you should make sure your IDE interface uses either the
primary or secondary addresses mentioned above. In addition, if
- the cdrom drive is the only device on the IDE interface, it should
+ the CDROM drive is the only device on the IDE interface, it should
be jumpered as `master'. (If for some reason you cannot configure
your system in this manner, you can probably still use the driver.
You may have to pass extra configuration information to the kernel
@@ -117,33 +117,33 @@ This driver provides the following features:
3. Basic usage
--------------
-An iso9660 format cdrom can be mounted by putting the disc in the
-drive and typing (as root)
+An ISO 9660 CDROM can be mounted by putting the disc in the drive and
+typing (as root)
mount -t iso9660 /dev/cdrom /mnt/cdrom
where it is assumed that /dev/cdrom is a link pointing to the actual
device (as described in step 5 of the last section) and /mnt/cdrom is
an empty directory. You should now be able to see the contents of the
-cdrom under the /mnt/cdrom directory. If you want to eject the cdrom,
+CDROM under the /mnt/cdrom directory. If you want to eject the CDROM,
you must first dismount it with a command like
umount /mnt/cdrom
-Note that audio cds cannot be mounted.
+Note that audio CDs cannot be mounted.
-Some distributions set up /etc/fstab to always try to mount a cdrom
-filesystem on bootup. It is not required to mount the cdrom in this
-manner, though, and it may be a nuisance if you change cdroms often.
+Some distributions set up /etc/fstab to always try to mount a CDROM
+filesystem on bootup. It is not required to mount the CDROM in this
+manner, though, and it may be a nuisance if you change CDROMs often.
You should feel free to remove the cdrom line from /etc/fstab and
-mount cdroms manually if that suits you better.
+mount CDROMs manually if that suits you better.
Multisession and photocd discs should work with no special handling.
The hpcdtoppm package (ftp.gwdg.de:/pub/linux/hpcdtoppm/) may be
useful for reading photocds.
-To play an audio cd, you should first unmount and remove any data
-cdrom. Any of the cdrom player programs should then work (workman,
+To play an audio CD, you should first unmount and remove any data
+CDROM. Any of the CDROM player programs should then work (workman,
workbone, cdplayer, etc.). Lacking anything else, you could use the
cdtester program in Documentation/cdrom/sbpcd.
@@ -155,7 +155,7 @@ use this function on a drive which does not support it.
For supported changers, you can use the `cdchange' program (appended to
the end of this file) to switch between changer slots. Note that the
drive should be unmounted before attempting this. The program takes
-two arguments: the cdrom device, and the slot number to which you wish
+two arguments: the CDROM device, and the slot number to which you wish
to change. If the slot number is -1, the drive is unloaded.
@@ -263,7 +263,7 @@ b. Timeout/IRQ errors.
means that the system did not see an interrupt from the drive when
it was expecting one (on any feasible IRQ). If <n> is negative,
that means the system saw interrupts on multiple IRQ lines, when
- it was expecting to receive just one from the cdrom drive.
+ it was expecting to receive just one from the CDROM drive.
- Double-check your hardware configuration to make sure that the IRQ
number of your IDE interface matches what the driver expects.
@@ -275,23 +275,23 @@ b. Timeout/IRQ errors.
had one report of a system which was shipped with IRQ 15 disabled
by default.
- - Note that many MS-DOS cdrom drivers will still function even if
+ - Note that many MS-DOS CDROM drivers will still function even if
there are hardware problems with the interrupt setup; they
apparently don't use interrupts.
- If you own a Pioneer DR-A24X, you _will_ get nasty error messages
on boot such as "irq timeout: status=0x50 { DriveReady SeekComplete }"
- The Pioneer DR-A24X cdrom drives are fairly popular these days.
+ The Pioneer DR-A24X CDROM drives are fairly popular these days.
Unfortunately, these drives seem to become very confused when we perform
the standard Linux ATA disk drive probe. If you own one of these drives,
- you can bypass the ATA probing which confuses these cdrom drives, by
+ you can bypass the ATA probing which confuses these CDROM drives, by
adding `append="hdX=noprobe hdX=cdrom"' to your lilo.conf file and runing
lilo (again where X is the drive letter corresponding to where your drive
is installed.)
c. System hangups.
- - If the system locks up when you try to access the cdrom, the most
+ - If the system locks up when you try to access the CDROM, the most
likely cause is that you have a buggy IDE adapter which doesn't
properly handle simultaneous transactions on multiple interfaces.
The most notorious of these is the CMD640B chip. This problem can
@@ -301,27 +301,27 @@ c. System hangups.
foolproof. See Documentation/ide.txt for more information
about the `serialize' option and the CMD640B.
- - Note that many MS-DOS cdrom drivers will work with such buggy
- hardware, apparently because they never attempt to overlap cdrom
+ - Note that many MS-DOS CDROM drivers will work with such buggy
+ hardware, apparently because they never attempt to overlap CDROM
operations with other disk activity.
-d. Can't mount a cdrom.
+d. Can't mount a CDROM.
- If you get errors from mount, it may help to check `dmesg' to see
if there are any more specific errors from the driver or from the
filesystem.
- - Make sure there's a cdrom loaded in the drive, and that's it's an
- iso9660 format disc. You can't mount an audio cd.
+ - Make sure there's a CDROM loaded in the drive, and that's it's an
+ ISO 9660 disc. You can't mount an audio CD.
- - With the cdrom in the drive and unmounted, try something like
+ - With the CDROM in the drive and unmounted, try something like
cat /dev/cdrom | od | more
If you see a dump, then the drive and driver are probably working
- ok, and the problem is at the filesystem level (i.e., the cdrom is
- not iso9660 format or has errors in the filesystem structure).
+ OK, and the problem is at the filesystem level (i.e., the CDROM is
+ not ISO 9660 or has errors in the filesystem structure).
- If you see `not a block device' errors, check that the definitions
of the device special files are correct. They should be as
@@ -357,7 +357,7 @@ e. Directory listings are unpredictably truncated, and `dmesg' shows
which could cause this. It was fixed in 1.3.0. If you can't
upgrade, you can probably work around the problem by specifying a
blocksize of 2048 when mounting. (Note that you won't be able to
- directly execute binaries off the cdrom in that case.)
+ directly execute binaries off the CDROM in that case.)
If you see this in kernels later than 1.3.0, please report it as a
bug.
@@ -366,7 +366,7 @@ e. Directory listings are unpredictably truncated, and `dmesg' shows
f. Data corruption.
- Random data corruption was occasionally observed with the Hitachi
- CDR-7730 cdrom. If you experience data corruption, using "hdx=slow"
+ CDR-7730 CDROM. If you experience data corruption, using "hdx=slow"
as a command line parameter may work around the problem, at the
expense of low system performance.
@@ -377,7 +377,7 @@ f. Data corruption.
/*
* cdchange.c [-v] <device> [<slot>]
*
- * This loads a cdrom from a specified slot in a changer, and displays
+ * This loads a CDROM from a specified slot in a changer, and displays
* information about the changer status. The drive should be unmounted before
* using this program.
*
@@ -385,8 +385,8 @@ f. Data corruption.
* or no slot was specified.
*
* Based on code originally from Gerhard Zuber <zuber@berlin.snafu.de>.
- * Changer status information, and rewrite for the new common cdrom driver
- * interface by Erik Andersen <andersee@et.byu.edu>.
+ * Changer status information, and rewrite for the new Uniform CDROM driver
+ * interface by Erik Andersen <andersee@debian.org>.
*/
#include <stdio.h>
diff --git a/Documentation/cdrom/sbpcd b/Documentation/cdrom/sbpcd
index 3dc3a249d..911adbc8d 100644
--- a/Documentation/cdrom/sbpcd
+++ b/Documentation/cdrom/sbpcd
@@ -304,8 +304,8 @@ The driver uses the "variable BLOCK_SIZE" feature. To use it, you have to
specify "block=2048" as a mount option. Doing this will disable the direct
execution of a binary from the CD; you have to copy it to a device with the
standard BLOCK_SIZE (1024) first. So, do not use this if your system is
-directly "running from the CDROM" (like some of YGGDRASIL's installation
-variants). There are CDs on the market (like the german "unifix" Linux
+directly "running from the CDROM" (like some of Yggdrasil's installation
+variants). There are CDs on the market (like the German "unifix" Linux
distribution) which MUST get handled with a block_size of 1024. Generally,
one can say all the CDs which hold files of the name YMTRANS.TBL are defective;
do not use block=2048 with those.
diff --git a/Documentation/cdrom/sonycd535 b/Documentation/cdrom/sonycd535
index a931d5093..b505a48db 100644
--- a/Documentation/cdrom/sonycd535
+++ b/Documentation/cdrom/sonycd535
@@ -1,7 +1,7 @@
README FOR LINUX SONY CDU-535/531 DRIVER
========================================
-This is the the Sony CDU-535 (and 531) driver version 0.7 for Linux.
+This is the Sony CDU-535 (and 531) driver version 0.7 for Linux.
I do not think I have the documentation to add features like DMA support
so if anyone else wants to pursue it or help me with it, please do.
(I need to see what was done for the CDU-31A driver -- perhaps I can
diff --git a/Documentation/devices.tex b/Documentation/devices.tex
index baa9e81ef..84c0e4875 100644
--- a/Documentation/devices.tex
+++ b/Documentation/devices.tex
@@ -1,11 +1,9 @@
\documentstyle{article}
-%
+% $Id: devices.tex,v 1.14 1998/08/10 22:39:24 hpa Exp $
+% ---------------------------------------------------------------------------
% Adopt somewhat reasonable margins, so it doesn't take a million
% pages to print... :-) If you're actually putting this in print, you
% may wish to change these.
-%
-% $Id: devices.tex,v 1.7 1998/02/18 04:07:45 hpa Exp $
-%
\oddsidemargin=0in
\textwidth=6.5in
\topmargin=0in
@@ -32,7 +30,7 @@
\newcommand{\minordots}{\> \> \> \dots \\}
\newenvironment{devicelist}%
{\begin{tabbing}%
-000--000 \= blockxxx \= 000 \= {\file /dev/crambamboli} \= foo \kill}%
+000--000 \= blockxxx \= 000 \= {\file /dev/input/keyboardxxx} \= foo \kill}%
{\end{tabbing}}
\newcommand{\link}[4]{{\file #1} \> {\file #2} \> #3 \> #4 \\}
\newcommand{\vlink}[4]{{\file #1} \> {\em #2 \/} \> #3 \> #4 \\}
@@ -50,7 +48,7 @@ foo \kill}%
%
\title{{\bf Linux Allocated Devices}}
\author{Maintained by H. Peter Anvin $<$hpa@zytor.com$>$}
-\date{Last revised: February 17, 1998}
+\date{Last revised: August 10, 1998}
\maketitle
%
\noindent
@@ -115,13 +113,13 @@ Your cooperation is appreciated.
\major{ 2}{}{char }{Pseudo-TTY masters}
\major{ }{}{block}{Floppy disks}
\major{ 3}{}{char }{Pseudo-TTY slaves}
-\major{ }{}{block}{First MFM, RLL and IDE hard disk/CD-ROM interface}
+\major{ }{}{block}{First MFM, RLL or IDE hard disk/CD-ROM interface}
\major{ 4}{}{char }{TTY devices}
\major{ 5}{}{char }{Alternate TTY devices}
\major{ 6}{}{char }{Parallel printer devices}
\major{ 7}{}{char }{Virtual console access devices}
\major{ }{}{block}{Loopback devices}
-\major{ 8}{}{block}{SCSI disk devices}
+\major{ 8}{}{block}{SCSI disk devices (0-15)}
\major{ 9}{}{char }{SCSI tape devices}
\major{ }{}{block}{Metadisk (RAID) devices}
\major{10}{}{char }{Non-serial mice, misc features}
@@ -142,10 +140,11 @@ Your cooperation is appreciated.
\major{18}{}{char }{Chase serial card -- alternate devices}
\major{ }{}{block}{Sanyo CD-ROM}
\major{19}{}{char }{Cyclades serial card}
-\major{ }{}{block}{Double compressed disk}
+\major{ }{}{block}{``Double'' compressed disk}
\major{20}{}{char }{Cyclades serial card -- alternate devices}
\major{ }{}{block}{Hitachi CD-ROM}
\major{21}{}{char }{Generic SCSI access}
+\major{ }{}{block }{Acorn MFM hard drive interface}
\major{22}{}{char }{Digiboard serial card}
\major{ }{}{block}{Second IDE hard disk/CD-ROM interface}
\major{23}{}{char }{Digiboard serial card -- alternate devices}
@@ -161,20 +160,21 @@ Your cooperation is appreciated.
\major{28}{}{char }{Stallion serial card -- card programming}
\major{ }{}{char }{Atari SLM ACSI laser printer (68k/Atari)}
\major{ }{}{block}{Fourth Matsushita (Panasonic/SoundBlaster) CD-ROM}
-\major{ }{}{block}{ACSI disk (68k/Atari)}
+\major{ }{}{block}{ACSI disk/CD-ROM (68k/Atari)}
\major{29}{}{char }{Universal frame buffer}
\major{ }{}{block}{Aztech/Orchid/Okano/Wearnes CD-ROM}
-\major{30}{}{char }{iBCS-2}
-\major{ }{}{block}{Philips LMS-205 CD-ROM}
+\major{30}{}{char }{iBCS-2 compatibility devices}
+\major{ }{}{block}{Philips LMS CM-205 CD-ROM}
\major{31}{}{char }{MPU-401 MIDI}
\major{ }{}{block}{ROM/flash memory card}
\major{32}{}{char }{Specialix serial card}
-\major{ }{}{block}{Philips LMS-206 CD-ROM}
+\major{ }{}{block}{Philips LMS CM-206 CD-ROM}
\major{33}{}{char }{Specialix serial card -- alternate devices}
\major{ }{}{block}{Third IDE hard disk/CD-ROM interface}
\major{34}{}{char }{Z8530 HDLC driver}
\major{ }{}{block}{Fourth IDE hard disk/CD-ROM interface}
\major{35}{}{char }{tclmidi MIDI driver}
+\major{ }{}{block}{Slow memory ramdisk}
\major{36}{}{char }{Netlink support}
\major{ }{}{block}{MCA ESDI hard disk}
\major{37}{}{char }{IDE tape}
@@ -193,33 +193,50 @@ Your cooperation is appreciated.
\major{44}{}{char }{isdn4linux virtual modem -- alternate devices}
\major{ }{}{block}{Flash Translation Layer (FTL) filesystems}
\major{45}{}{char }{isdn4linux ISDN BRI driver}
-\major{ }{}{block}{Reserved for parallel port IDE disk}
+\major{ }{}{block}{Parallel port IDE disk devices}
\major{46}{}{char }{Comtrol Rocketport serial card}
-\major{ }{}{block}{Reserved for parallel port ATAPI CD-ROM}
+\major{ }{}{block}{Parallel port ATAPI CD-ROM devices}
\major{47}{}{char }{Comtrol Rocketport serial card -- alternate devices}
-\major{ }{}{block}{Reserved for parallel port ATAPI disk}
+\major{ }{}{block}{Parallel port ATAPI disk devices}
\major{48}{}{char }{SDL RISCom serial card}
-\major{48}{--55}{block}{Reserved for Mylex DAC960 PCI RAID Controller}
+\major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller}
\major{49}{}{char }{SDL RISCom serial card -- alternate devices}
-\major{50}{}{char }{Reserved for GLINT}
+\major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller}
+\major{50}{}{char}{Reserved for GLINT}
+\major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller}
\major{51}{}{char }{Baycom radio modem}
+\major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller}
\major{52}{}{char }{Spellcaster DataComm/BRI ISDN card}
+\major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller}
\major{53}{}{char }{BDM interface for remote debugging MC683xx microcontrollers}
+\major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller}
\major{54}{}{char }{Electrocardiognosis Holter serial card}
+\major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller}
\major{55}{}{char }{DSP56001 digital signal processor}
+\major{ }{}{block}{Reserved for Mylex DAC960 PCI RAID Controller}
\major{56}{}{char }{Apple Desktop Bus}
+\major{ }{}{block}{Fifth IDE hard disk/CD-ROM interface}
\major{57}{}{char }{Hayes ESP serial card}
+\major{ }{}{block}{Sixth IDE hard disk/CD-ROM interface}
\major{58}{}{char }{Hayes ESP serial card -- alternate devices}
+\major{ }{}{block}{Reserved for logical volume manager}
\major{59}{}{char }{sf firewall package}
\major{60}{--63}{}{Local/experimental use}
\major{64}{}{char }{ENskip kernel encryption package}
\major{65}{}{char }{Sundance ``plink'' Transputer boards}
+\major{ }{}{block}{SCSI disk devices (16-31)}
\major{66}{}{char }{YARC PowerPC PCI coprocessor card}
+\major{ }{}{block}{SCSI disk devices (32-47)}
\major{67}{}{char }{Coda network filesystem}
+\major{ }{}{block}{SCSI disk devices (48-63)}
\major{68}{}{char }{CAPI 2.0 interface}
+\major{ }{}{block}{SCSI disk devices (64-79)}
\major{69}{}{char }{MA16 numeric accelerator card}
+\major{ }{}{block}{SCSI disk devices (80-95)}
\major{70}{}{char }{SpellCaster Protocol Services Interface}
+\major{ }{}{block}{SCSI disk devices (96-111)}
\major{71}{}{char }{Computone IntelliPort II serial card}
+\major{ }{}{block}{SCSI disk devices (112-127)}
\major{72}{}{char }{Computone IntelliPort II serial card -- alternate devices}
\major{73}{}{char }{Computone IntelliPort II serial card -- control devices}
\major{74}{}{char }{SCI bridge}
@@ -229,7 +246,7 @@ Your cooperation is appreciated.
\major{78}{}{char }{PAM Software's multimodem boards}
\major{79}{}{char }{PAM Software's multimodem boards -- alternate devices}
\major{80}{}{char }{Photometrics AT200 CCD camera}
-\major{81}{}{char }{Brooktree Bt848 frame grabbers}
+\major{81}{}{char }{video4linux}
\major{82}{}{char }{WiNRADiO communications receiver card}
\major{83}{}{char }{Teletext/videotext interfaces}
\major{84}{}{char }{Ikon 1011[57] Versatec Greensheet Interface}
@@ -239,17 +256,31 @@ Your cooperation is appreciated.
\major{88}{}{char }{COMX synchronous serial card}
\major{89}{}{char }{I$^2$C bus interface}
\major{90}{}{char }{Memory Technology Device (RAM, ROM, Flash)}
-\major{91}{}{char }{CAN-Bus devices}
+\major{91}{}{char }{CAN-Bus controller}
\major{92}{}{char }{Reserved for ith Kommunikationstechnik MIC ISDN card}
\major{93}{}{char }{IBM Smart Capture Card frame grabber}
\major{94}{}{char }{miroVIDEO DC10/30 capture/playback device}
-\major{95}{}{char }{IP Filter}
-\major{96}{}{char }{Parallel port ATAPI tape}
+\major{95}{}{char }{IP filter}
+\major{96}{}{char }{Parallel port ATAPI tape devices}
\major{97}{}{char }{Parallel port generic ATAPI interface}
-\major{98}{}{char }{Control and Measurement Device (comedi)}
-\major{99}{--119}{}{Unallocated}
+\major{98}{}{char }{Control and Mesurement Device (comedi)}
+\major{99}{}{char }{Raw parallel ports}
+\major{100}{}{char }{POTS (analogue telephone) A/B port}
+\major{101}{}{char }{Motorola DSP 56xxx board}
+\major{102}{}{char }{Philips SAA5249 Teletext signal decoder}
+\major{103}{}{char }{Arla network file system}
+\major{104}{}{char }{Flash BIOS support}
+\major{105}{}{char }{Comtrol VS-1000 serial card}
+\major{106}{}{char }{Comtrol VS-1000 serial card -- alternate devices}
+\major{107}{}{char }{3Dfx Voodoo Graphics device}
+\major{108}{}{char }{Device independent PPP interface}
+\major{109}{}{char }{Reserved for logical volume manager}
+\major{110}{}{char }{miroMEDIA Surround board}
+\major{111}{--119}{}{Unallocated}
\major{120}{--127}{}{Local/experimental use}
-\major{128}{--239}{}{Unallocated}
+\major{128}{--135}{char }{Unix98 PTY masters}
+\major{136}{--143}{char }{Unix98 PTY slaves}
+\major{144}{--239}{}{Unallocated}
\major{240}{--254}{}{Local/experimental use}
\major{255}{}{}{Reserved}
\end{devicelist}
@@ -257,12 +288,12 @@ Your cooperation is appreciated.
\section{Minor numbers}
\begin{devicelist}
-\major{0}{}{}{Unnamed devices (e.g. non-device mounts)}
+\major{ 0}{}{}{Unnamed devices (e.g. non-device mounts)}
\minor{0}{}{reserved as null device number}
\end{devicelist}
\begin{devicelist}
-\major{1}{}{char}{Memory devices}
+\major{ 1}{}{char}{Memory devices}
\minor{1}{/dev/mem}{Physical memory access}
\minor{2}{/dev/kmem}{Kernel virtual memory access}
\minor{3}{/dev/null}{Null device}
@@ -285,7 +316,7 @@ Earlier kernels had {\file /dev/ramdisk} (1, 1) here. {\file /dev/initrd}
refers to a RAM disk which was preloaded by the boot loader.
\begin{devicelist}
-\major{2}{}{char}{Pseudo-TTY masters}
+\major{ 2}{}{char}{Pseudo-TTY masters}
\minor{0}{/dev/ptyp0}{First PTY master}
\minor{1}{/dev/ptyp1}{Second PTY master}
\minordots
@@ -303,9 +334,9 @@ the position within the series.
\end{itemize}
\noindent
-In the future, it is likely that the PTY master multiplex ({\file
-/dev/ptmx}) device will be used to acquire a PTY on demand. If so,
-the actual PTY masters will be unnamed devices.
+These are the old-style (BSD) PTY devices; Unix98 devices are on major
+128 and above and use the PTY master multiplex ({\file /dev/ptmx}) to
+acquire a PTY on demand.
\begin{devicelist}
\major{}{}{block}{Floppy disks}
@@ -369,7 +400,7 @@ models have been deprecated, since the drive type is insignificant for
these devices.
\begin{devicelist}
-\major{3}{}{char}{Pseudo-TTY slaves}
+\major{ 3}{}{char}{Pseudo-TTY slaves}
\minor{0}{/dev/ttyp0}{First PTY slave}
\minor{1}{/dev/ttyp1}{Second PTY slave}
\minordots
@@ -377,8 +408,8 @@ these devices.
\end{devicelist}
\noindent
-In the future, Linux may adopt the Unix98 naming scheme {\file
-/dev/pts/0}, {\file /dev/pts/1}, ...
+These are the old-style (BSD) PTY devices; Unix98 devices are on major
+136 and above.
\begin{devicelist}
\major{}{}{block}{First MFM, RLL and IDE hard disk/CD-ROM interface}
@@ -394,10 +425,10 @@ In the future, Linux may adopt the Unix98 naming scheme {\file
\end{devicelist}
\noindent
-For MS-DOS style partition tables (typically used by Linux/i386),
-partitions 1-4 are the primary partitions, partitions 5 and up are
-logical partitions. For other partitioning schemes, the meaning of
-the numbers vary.
+For MS-DOS style partition tables (typically used by Linux/i386 and
+sometimes on Linux/Alpha), partitions 1-4 are the primary partitions,
+partitions 5 and up are logical partitions. For other partitioning
+schemes, the meaning of the numbers vary.
\begin{devicelist}
\major{ 4}{}{char }{TTY devices}
@@ -408,19 +439,18 @@ the numbers vary.
\minor{64}{/dev/ttyS0}{First serial port}
\minordots
\minor{127}{/dev/ttyS63}{64th serial port}
- \minor{128}{/dev/ptyp0}{First old pseudo-tty master}
+ \minor{128}{/dev/ptyp0}{OBSOLETE}
\minordots
- \minor{191}{/dev/ptysf}{64th old pseudo-tty master}
- \minor{192}{/dev/ttyp0}{First old pseudo-tty slave}
+ \minor{191}{/dev/ptysf}{OBSOLETE}
+ \minor{192}{/dev/ttyp0}{OBSOLETE}
\minordots
- \minor{255}{/dev/ttysf}{64th old pseudo-tty slave}
+ \minor{255}{/dev/ttysf}{OBSOLETE}
\end{devicelist}
\noindent
-For compatibility with previous versions of Linux, the first 64 PTYs
-are replicated under this device number. This use is deprecated with
-the release of Linux 2.0 and may be removed in a future version of
-Linux. To ensure proper operation, do not mix old and new PTY devices.
+Older versions of the Linux kernel used this major number for BSD PTY
+devices. As of Linux 2.1.115, this is no longer supported. Use major
+numbers 2 and 3.
\begin{devicelist}
\major{ 5}{}{char }{Alternate TTY devices}
@@ -475,7 +505,7 @@ block devices. The binding to the loopback devices is handled by
{\bf mount}(8) or {\bf losetup}(8).
\begin{devicelist}
-\major{ 8}{}{block}{SCSI disk devices}
+\major{ 8}{}{block}{SCSI disk devices (0-15)}
\minor{0}{/dev/sda}{First SCSI disk whole disk}
\minor{16}{/dev/sdb}{Second SCSI disk whole disk}
\minor{32}{/dev/sdc}{Third SCSI disk whole disk}
@@ -553,9 +583,6 @@ physical disks.
\minor{133}{/dev/exttrp}{External device trap}
\minor{134}{/dev/apm\_bios}{Advanced Power Management BIOS}
\minor{135}{/dev/rtc}{Real Time Clock}
- \minor{136}{/dev/qcam0}{QuickCam on {\file lp0}}
- \minor{137}{/dev/qcam1}{QuickCam on {\file lp1}}
- \minor{138}{/dev/qcam2}{QuickCam on {\file lp2}}
\minor{139}{/dev/openprom}{SPARC OpenBoot PROM}
\minor{140}{/dev/relay8}{Berkshire Products Octal relay card}
\minor{141}{/dev/relay16}{Berkshire Products ISO-16 relay card}
@@ -569,7 +596,8 @@ physical disks.
\minor{149}{/dev/input/mouse}{Linux/SGI Irix emulation mouse}
\minor{150}{/dev/input/keyboard}{Linux/SGI Irix emulation keyboard}
\minor{151}{/dev/led}{Front panel LEDs}
- \minor{152}{/dev/radio}{Radio card (type?)}
+ \minor{153}{/dev/mergemem}{Memory merge device}
+ \minor{154}{/dev/pmu}{Macintosh PowerBook power manager}
\end{devicelist}
\begin{devicelist}
@@ -741,10 +769,21 @@ This sets an unneccesary limit of 26 SCSI devices in the system, and
is counter to standard Linux device-naming practice.
\begin{devicelist}
+\major{ }{}{block }{Acorn MFM hard drive interface}
+ \minor{0}{/dev/mfma}{First MFM drive whole disk}
+ \minor{64}{/dev/mfmb}{Second MFM drive whole disk}
+\end{devicelist}
+
+\noindent
+This device is used on the ARM-based Acorn RiscPC. Partitions are
+handled the same way as for IDE disks (see major number 3).
+
+\begin{devicelist}
\major{22}{}{char }{Digiboard serial card}
\minor{0}{/dev/ttyD0}{First Digiboard port}
\minor{1}{/dev/ttyD1}{Second Digiboard port}
\minordots
+\\
\major{ }{}{block}{Second IDE hard disk/CD-ROM interface}
\minor{0}{/dev/hdc}{Master: whole disk (or CD-ROM)}
\minor{64}{/dev/hdd}{Slave: whole disk (or CD-ROM)}
@@ -883,29 +922,14 @@ disk (same as SCSI.)
\begin{devicelist}
\major{29}{}{char }{Universal frame buffer}
\minor{0}{/dev/fb0}{First frame buffer}
- \minor{1}{/dev/fb0autodetect}{}
- \minor{24}{/dev/fb0user0}{}
- \minordots
- \minor{31}{/dev/fb0user7}{}
\minor{32}{/dev/fb1}{Second frame buffer}
- \minor{33}{/dev/fb1autodetect}{}
- \minor{56}{/dev/fb1user0}{}
- \minordots
- \minor{63}{/dev/fb1user7}{}
+ \minor{64}{/dev/fb2}{Third frame buffer}
\minordots
+ \minor{224}{/dev/fb7}{Eighth frame buffer}
\end{devicelist}
\noindent
-The universal frame buffer device is currently supported only on
-Linux/68k and Linux/SPARC. The plain device accesses the frame
-buffer at current resolution (Linux/68k calls this file {\file
-current}, e.g. {\file /dev/fb0current}); the {\file autodetect} one at
-bootup (default) resolution. Minor numbers 2--23 within each frame
-buffer assignment are used for specific device-dependent resolutions.
-There appears to be no standard naming for these devices. Finally,
-24--31 within each device are reserved for user-selected modes,
-usually entered at boot time. Currently only Linux/68k uses the
-mode-specific devices.
+All additional minor device numbers are reserved.
\begin{devicelist}
\major{ }{}{block}{Aztech/Orchid/Okano/Wearnes CD-ROM}
@@ -924,8 +948,8 @@ mode-specific devices.
\end{devicelist}
\noindent
-iBCS-2 requires {\file /dev/nfsd} to be a link to {\file /dev/socksys}
-and {\file /dev/X0R} to be a link to {\file /dev/null}.
+Additionally, iBCS-2 requires {\file /dev/nfsd} to be a link to {\file
+/dev/socksys} and {\file /dev/X0R} to be a link to {\file /dev/null}.
\begin{devicelist}
\major{ }{}{block}{Philips LMS CM-205 CD-ROM}
@@ -1023,6 +1047,9 @@ major number 3).
\minor{129}{/dev/smpte1}{Second MIDI port, SMPTE timed}
\minor{130}{/dev/smpte2}{Third MIDI port, SMPTE timed}
\minor{131}{/dev/smpte3}{Fourth MIDI port, SMPTE timed}
+\\
+\major{ }{}{block}{Slow memory ramdisk}
+ \minor{0}{/dev/slram}{Slow memory ramdisk}
\end{devicelist}
\begin{devicelist}
@@ -1148,11 +1175,11 @@ MAJOR NUMBER 42 IS NONCOMPLIANT.
\end{devicelist}
\noindent
-Network Block Device is somewhat similar to the loopback device: if you
-read from it, it sends packets across the network asking a server for
-data. If you write to it, it sends packets telling the server to write. It
-could be used for mounting filesystems over the net, swapping over the
-net, implementing block devices in userland etc.
+Network Block Device is somehow similar to loopback devices: If you
+read from it, it sends packet accross network asking server for
+data. If you write to it, it sends packet telling server to write. It
+could be used to mounting filesystems over the net, swapping over the
+net, implementing block device in userland etc.
\begin{devicelist}
\major{44}{}{char }{isdn4linux virtual modem -- alternate devices}
@@ -1272,8 +1299,7 @@ does not support partitioning.
\end{devicelist}
\begin{devicelist}
-\major{53}{}{char }{BDM interface for remote debugging MC683xx
-microcontrollers}
+\major{53}{}{char }{BDM interface for remote debugging MC683xx microcontrollers}
\minor{0}{/dev/pd\_bdm0}{PD BDM interface on {\file lp0}}
\minor{1}{/dev/pd\_bdm1}{PD BDM interface on {\file lp1}}
\minor{2}{/dev/pd\_bdm2}{PD BDM interface on {\file lp2}}
@@ -1283,7 +1309,7 @@ microcontrollers}
\end{devicelist}
\noindent
-This device is used for interfacing to the MC683xx
+This device is used for the interfacing to the MC683xx
microcontrollers via Background Debug Mode by use of a Parallel Port
interface. PD is the Motorola Public Domain Interface and ICD is the
commercial interface by P\&E.
@@ -1325,17 +1351,37 @@ Additional devices will be added to this number, all starting with
{\file /dev/adb}.
\begin{devicelist}
+\major{ }{}{block}{Fifth IDE hard disk/CD-ROM interface}
+ \minor{0}{/dev/hdi}{Master: whole disk (or CD-ROM)}
+ \minor{64}{/dev/hdj}{Slave: whole disk (or CD-ROM)}
+\end{devicelist}
+
+\noindent
+Partitions are handled the same way as for the first interface (see
+major number 3).
+
+\begin{devicelist}
\major{57}{}{char }{Hayes ESP serial card}
\minor{0}{/dev/ttyP0}{First ESP port}
\minor{1}{/dev/ttyP1}{Second ESP port}
\minordots
+\\
+\major{ }{}{block}{Sixth IDE hard disk/CD-ROM interface}
+ \minor{0}{/dev/hdk}{Master: whole disk (or CD-ROM)}
+ \minor{64}{/dev/hdl}{Slave: whole disk (or CD-ROM)}
\end{devicelist}
+\noindent
+Partitions are handled the same way as for the first interface (see
+major number 3).
+
\begin{devicelist}
\major{58}{}{char }{Hayes ESP serial card -- alternate devices}
\minor{0}{/dev/cup0}{Callout device corresponding to {\file ttyP0}}
\minor{1}{/dev/cup1}{Callout device corresponding to {\file ttyP1}}
\minordots
+\\
+\major{ }{}{block}{Reserved for logical volume manager}
\end{devicelist}
\begin{devicelist}
@@ -1382,6 +1428,20 @@ This is a commercial driver; contact James Howes
$<$jth@prosig.demon.co.uk$>$ for information.
\begin{devicelist}
+\major{ }{}{block}{SCSI disk devices (16-31)}
+ \minor{0}{/dev/sdq}{17th SCSI disk whole disk}
+ \minor{16}{/dev/sdr}{18th SCSI disk whole disk}
+ \minor{32}{/dev/sds}{19th SCSI disk whole disk}
+ \minordots
+ \minor{240}{/dev/sdaf}{32nd SCSI disk whole disk}
+\end{devicelist}
+
+\noindent
+Partitions are handled in the same way as for IDE disks (see major
+number 3) except that the partition limit is 15 rather than 63 per
+disk.
+
+\begin{devicelist}
\major{66}{}{char }{YARC PowerPC PCI coprocessor card}
\minor{0}{/dev/yppcpci0}{First YARC card}
\minor{1}{/dev/yppcpci1}{Second YARC card}
@@ -1389,6 +1449,20 @@ $<$jth@prosig.demon.co.uk$>$ for information.
\end{devicelist}
\begin{devicelist}
+\major{ }{}{block}{SCSI disk devices (32-47)}
+ \minor{0}{/dev/sdag}{33rd SCSI disk whole disk}
+ \minor{16}{/dev/sdah}{34th SCSI disk whole disk}
+ \minor{32}{/dev/sdai}{35th SCSI disk whole disk}
+ \minordots
+ \minor{240}{/dev/sdav}{48th SCSI disk whole disk}
+\end{devicelist}
+
+\noindent
+Partitions are handled in the same way as for IDE disks (see major
+number 3) except that the partition limit is 15 rather than 63 per
+disk.
+
+\begin{devicelist}
\major{67}{}{char }{Coda network filesystem}
\minor{0}{/dev/cfs0}{Coda cache manager}
\end{devicelist}
@@ -1397,6 +1471,20 @@ $<$jth@prosig.demon.co.uk$>$ for information.
See {\url http://www.coda.cs.cmu.edu\/} for information about Coda.
\begin{devicelist}
+\major{ }{}{block}{SCSI disk devices (48-63)}
+ \minor{0}{/dev/sdaw}{49th SCSI disk whole disk}
+ \minor{16}{/dev/sdax}{50th SCSI disk whole disk}
+ \minor{32}{/dev/sday}{51st SCSI disk whole disk}
+ \minordots
+ \minor{240}{/dev/sdbl}{64th SCSI disk whole disk}
+\end{devicelist}
+
+\noindent
+Partitions are handled in the same way as for IDE disks (see major
+number 3) except that the partition limit is 15 rather than 63 per
+disk.
+
+\begin{devicelist}
\major{68}{}{char }{CAPI 2.0 interface}
\minor{0}{/dev/capi20}{Control device}
\minor{1}{/dev/capi20.00}{First CAPI 2.0 application}
@@ -1410,11 +1498,39 @@ ISDN CAPI 2.0 driver for use with CAPI 2.0 applications; currently
supports the AVM B1 card.
\begin{devicelist}
+\major{ }{}{block}{SCSI disk devices (64-79)}
+ \minor{0}{/dev/sdbm}{65th SCSI disk whole disk}
+ \minor{16}{/dev/sdbn}{66th SCSI disk whole disk}
+ \minor{32}{/dev/sdbo}{67th SCSI disk whole disk}
+ \minordots
+ \minor{240}{/dev/sdcb}{80th SCSI disk whole disk}
+\end{devicelist}
+
+\noindent
+Partitions are handled in the same way as for IDE disks (see major
+number 3) except that the partition limit is 15 rather than 63 per
+disk.
+
+\begin{devicelist}
\major{69}{}{char }{MA16 numeric accelerator card}
\minor{0}{/dev/ma16}{Board memory access}
\end{devicelist}
\begin{devicelist}
+\major{ }{}{block}{SCSI disk devices (80-95)}
+ \minor{0}{/dev/sdcc}{81st SCSI disk whole disk}
+ \minor{16}{/dev/sdcd}{82nd SCSI disk whole disk}
+ \minor{32}{/dev/sdce}{83th SCSI disk whole disk}
+ \minordots
+ \minor{240}{/dev/sdcr}{96th SCSI disk whole disk}
+\end{devicelist}
+
+\noindent
+Partitions are handled in the same way as for IDE disks (see major
+number 3) except that the partition limit is 15 rather than 63 per
+disk.
+
+\begin{devicelist}
\major{70}{}{char }{SpellCaster Protocol Services Interface}
\minor{0}{/dev/apscfg}{Configuration interface}
\minor{1}{/dev/apsauth}{Authentication interface}
@@ -1426,6 +1542,20 @@ supports the AVM B1 card.
\end{devicelist}
\begin{devicelist}
+\major{ }{}{block}{SCSI disk devices (96-111)}
+ \minor{0}{/dev/sdcs}{97th SCSI disk whole disk}
+ \minor{16}{/dev/sdct}{98th SCSI disk whole disk}
+ \minor{32}{/dev/sdcu}{99th SCSI disk whole disk}
+ \minordots
+ \minor{240}{/dev/sddh}{112th SCSI disk whole disk}
+\end{devicelist}
+
+\noindent
+Partitions are handled in the same way as for IDE disks (see major
+number 3) except that the partition limit is 15 rather than 63 per
+disk.
+
+\begin{devicelist}
\major{71}{}{char }{Computone IntelliPort II serial card}
\minor{0}{/dev/ttyF0}{IntelliPort II board 0, port 0}
\minor{1}{/dev/ttyF1}{IntelliPort II board 0, port 1}
@@ -1446,6 +1576,20 @@ supports the AVM B1 card.
\end{devicelist}
\begin{devicelist}
+\major{ }{}{block}{SCSI disk devices (112-127)}
+ \minor{0}{/dev/sddi}{113th SCSI disk whole disk}
+ \minor{16}{/dev/sddj}{114th SCSI disk whole disk}
+ \minor{32}{/dev/sddk}{115th SCSI disk whole disk}
+ \minordots
+ \minor{240}{/dev/sddx}{128th SCSI disk whole disk}
+\end{devicelist}
+
+\noindent
+Partitions are handled in the same way as for IDE disks (see major
+number 3) except that the partition limit is 15 rather than 63 per
+disk.
+
+\begin{devicelist}
\major{72}{}{char }{Computone IntelliPort II serial card -- alternate devices}
\minor{0}{/dev/cuf0}{Callout device corresponding to {\file ttyF0}}
\minor{1}{/dev/cuf1}{Callout device corresponding to {\file ttyF1}}
@@ -1530,16 +1674,19 @@ Currently for Dolphin Interconnect Solutions' PCI-SCI bridge.
\end{devicelist}
\begin{devicelist}
-\major{81}{}{char }{Brooktree Bt848 frame grabbers}
- \minor{0}{/dev/bttv0}{First Bt848 card}
- \minor{0}{/dev/bttv1}{Second Bt848 card}
- \minordots
- \minor{16}{/dev/bttvc0}{Control for first Bt848 card}
- \minor{17}{/dev/bttvc1}{Control for second Bt848 card}
- \minordots
- \minor{32}{/dev/bttv-vbi0}{VBI data of first Bt848 card}
- \minor{33}{/dev/bttv-vbi1}{VBI data of second Bt848 card}
- \minordots
+\major{81}{}{char }{video4linux}
+ \minor{0}{/dev/video0}{Video capture/overlay device}
+ \minordots
+ \minor{63}{/dev/video63}{Video capture/overlay device}
+ \minor{64}{/dev/radio0}{Radio device}
+ \minordots
+ \minor{127}{/dev/radio63}{Radio device}
+ \minor{192}{/dev/vtx0}{Teletext device}
+ \minordots
+ \minor{223}{/dev/vtx31}{Teletext device}
+ \minor{224}{/dev/vbi0}{Vertical blank interupt}
+ \minordots
+ \minor{255}{/dev/vbi31}{Vertical blank interupt}
\end{devicelist}
\begin{devicelist}
@@ -1685,7 +1832,92 @@ See {\url http://stm.lbl.gov/comedi/} or {\url
http://www.llp.fu-berlin.de/}.
\begin{devicelist}
-\major{99}{--119}{}{Unallocated}
+\major{99}{}{char }{Raw parallel ports}
+ \minor{0}{/dev/parport0}{First parallel port}
+ \minor{1}{/dev/parport1}{Second parallel port}
+ \minordots
+\end{devicelist}
+
+\noindent
+These devices can be used to drive parallel port devices from
+user-space while interacting with the parport sharing code.
+
+\begin{devicelist}
+\major{100}{}{char }{POTS (analogue telephone) A/B port}
+ \minor{0}{/dev/phone0}{First telephone port}
+ \minor{1}{/dev/phone1}{Second telephone port}
+ \minordots
+\end{devicelist}
+
+\begin{devicelist}
+\major{101}{}{char }{Motorola DSP 56xxx board}
+ \minor{0}{/dev/mdspstat}{Status information}
+ \minor{1}{/dev/mdsp1}{First DSP board I/O and controls}
+ \minordots
+ \minor{16}{/dev/mdsp16}{16th DSP board I/O and controls}
+\end{devicelist}
+
+\begin{devicelist}
+\major{102}{}{char }{Philips SAA5249 Teletext signal decoder}
+ \minor{0}{/dev/tlk0}{First Teletext decoder}
+ \minor{1}{/dev/tlk1}{Second Teletext decoder}
+ \minor{2}{/dev/tlk2}{Third Teletext decoder}
+ \minor{3}{/dev/tlk3}{Fourth Teletext decoder}
+\end{devicelist}
+
+\begin{devicelist}
+\major{103}{}{char }{Arla network file system}
+ \minor{0}{/dev/xfs0}{Arla XFS}
+\end{devicelist}
+
+\noindent
+Arla is a free clone of the Andrew File System, AFS. Any resemblance
+with the Swedish milk producer is coincidental. For more information
+about the project, write to $<$arla-drinkers@stacken.kth.se$>$ or
+subscribe to the arla-announce mailing list by sending a mail to
+$<$arla-announce-request@stacken.kth.se$>$.
+
+\begin{devicelist}
+\major{104}{}{char }{Flash BIOS support}
+\end{devicelist}
+
+\begin{devicelist}
+\major{105}{}{char }{Comtrol VS-1000 serial card}
+ \minor{0}{/dev/ttyV0}{First VS-1000 port}
+ \minor{1}{/dev/ttyV1}{Second VS-1000 port}
+ \minordots
+\end{devicelist}
+
+\begin{devicelist}
+\major{106}{}{char }{Comtrol VS-1000 serial card -- alternate devices}
+ \minor{0}{/dev/cuv0}{Callout device corresponding to {\file ttyV0}}
+ \minor{1}{/dev/cuv1}{Callout device corresponding to {\file ttyV1}}
+ \minordots
+\end{devicelist}
+
+\begin{devicelist}
+\major{107}{}{char }{3Dfx Voodoo Graphics device}
+ \minor{0}{/dev/3dfx}{Primary 3Dfx graphics device}
+\end{devicelist}
+
+\begin{devicelist}
+\major{108}{}{char }{Device independent PPP interface}
+ \minor{0}{/dev/ppp}{Device independent PPP interface}
+\end{devicelist}
+
+\begin{devicelist}
+\major{109}{}{char }{Reserved for logical volume manager}
+\end{devicelist}
+
+\begin{devicelist}
+\major{110}{}{char }{miroMEDIA Surround board}
+ \minor{0}{/dev/srnd0}{First miroMEDIA Surround board}
+ \minor{1}{/dev/srnd1}{First miroMEDIA Surround board}
+ \minordots
+\end{devicelist}
+
+\begin{devicelist}
+\major{111}{--119}{}{Unallocated}
\end{devicelist}
\begin{devicelist}
@@ -1693,7 +1925,28 @@ http://www.llp.fu-berlin.de/}.
\end{devicelist}
\begin{devicelist}
-\major{128}{--239}{}{Unallocated}
+\major{128}{--135}{char }{Unix98 PTY masters}
+\end{devicelist}
+
+\noindent
+These devices should not have corresponding device nodes; instead they
+should be accessed through the {\file /dev/ptmx} cloning device.
+
+\begin{devicelist}
+\major{136}{--143}{char }{Unix98 PTY slaves}
+ \minor{0}{/dev/pts/0}{First Unix98 pseudo-TTY}
+ \minor{1}{/dev/pts/1}{Second Unix98 pseudo-TTY}
+ \minordots
+\end{devicelist}
+
+\noindent
+These device nodes are automatically generated with the proper
+permissions and modes by mounting the {\file devpts} filesystem onto
+{\file /dev/pts} with the appropriate mount options (distribution
+dependent.)
+
+\begin{devicelist}
+\major{144}{--239}{}{Unallocated}
\end{devicelist}
\begin{devicelist}
@@ -1704,6 +1957,11 @@ http://www.llp.fu-berlin.de/}.
\major{255}{}{}{Reserved}
\end{devicelist}
+\noindent
+This major is reserved to assist the expansion to a larger number
+space. No device nodes with this major should ever be created on any
+filesystem.
+
\section{Additional /dev directory entries}
This section details additional entries that should or may exist in the
@@ -1738,10 +1996,9 @@ It is recommended that these links exist on all systems:
\link{/dev/core}{/proc/kcore}{symbolic}{Backward compatibility}
\link{/dev/ramdisk}{ram0}{symbolic}{Backward compatibility}
\link{/dev/ftape}{qft0}{symbolic}{Backward compatibility}
+\link{/dev/bttv0}{video0}{symbolic}{Backward compatibility}
+\link{/dev/radio}{radio0}{symbolic}{Backward compatibility}
\link{/dev/scd?}{sr?}{hard}{Alternate name for CD-ROMs}
-\link{/dev/fd?D*}{fd?u*}{hard}{Backward compatibility}
-\link{/dev/fd?H*}{fd?u*}{hard}{Backward compatibility}
-\link{/dev/fd?E*}{fd?u*}{hard}{Backward compatibility}
\end{nodelist}
\subsection{Locally defined links}
@@ -1766,7 +2023,8 @@ exist, they should have the following uses.
{\file /dev/modem} should not be used for a modem which supports
dialin as well as dialout, as it tends to cause lock file problems.
If it exists, {\file /dev/modem} should point to the appropriate
-dialout (alternate) device.
+primary TTY device (the use of the alternate callout devices is
+deprecated.)
For SCSI devices, {\file /dev/tape} and {\file /dev/cdrom} should
point to the ``cooked'' devices ({\file /dev/st*} and {\file
@@ -1806,8 +2064,8 @@ conventions include several historical warts; some of these are
Linux-specific, some were inherited from other systems, and some
reflect Linux outgrowing a borrowed convention.
-A hash mark ($\#$) in a device name is used here to indicate a decimal
-number without leading zeroes.
+A hash mark ($\#$) in a device name is in all cases used here to
+indicate a decimal number without leading zeroes.
\subsection{Virtual consoles and the console device}
@@ -1816,9 +2074,8 @@ monitor. Virtual consoles are named {\file /dev/tty$\#$}, with
numbering starting at {\file /dev/tty1}; {\file /dev/tty0} is the
current virtual console. {\file /dev/tty0} is the device that should
be used to access the system video card on those architectures for
-which the frame buffer devices ({\file /dev/fb*}) do not exist
-(including the x86). Do not use {\file /dev/console} for this
-purpose.
+which the frame buffer devices ({\file /dev/fb*}) are not applicable.
+Do not use {\file /dev/console} for this purpose.
The {\em console device\/}, {\file /dev/console}, is the device to
which system messages should be sent, and on which logins should be
@@ -1826,13 +2083,14 @@ permitted in single-user mode. Starting with Linux 2.1.71, {\file
/dev/console} is managed by the kernel; for previous versions it
should be a symbolic link to either {\file /dev/tty0}, a specific
virtual console such as {\file /dev/tty1}, or to a serial port primary
-({\file tty}) device, depending on the configuration of the system.
+({\file tty*}, not {\file cu*}) device, depending on the configuration
+of the system.
\subsection{Serial ports}
Serial ports are RS-232 serial ports and any device which simulates
one, either in hardware (such as internal modems) or in software (such
-as the ISDN driver.) Under Linux, each serial port has two device
+as the ISDN driver.) Under Linux, each serial ports has two device
names, the primary or callin device and the alternate or callout one.
Each kind of device is indicated by a different letter. For any
letter $X$, the names of the devices are {\file /dev/tty${X\#}$} and
@@ -1840,8 +2098,10 @@ letter $X$, the names of the devices are {\file /dev/tty${X\#}$} and
/dev/ttyS$\#$} and {\file /dev/ttyC$\#$} correspond to {\file
/dev/cua$\#$} and {\file /dev/cub$\#$}. In the future, it should be
expected that multiple letters will be used; all letters will be upper
-case for the {\file tty} device and lower case for the {\file cu}
-device.
+case for the {\file tty} device (e.g. {\file /dev/ttyDP$\#$} and lower
+case for the {\file cu} device (e.g. {\file /dev/cudp$\#$}.
+
+The use of the callout devices is deprecated.
The names {\file /dev/ttyQ$\#$} and {\file /dev/cuq$\#$} are reserved
for local use.
@@ -1849,8 +2109,8 @@ for local use.
The alternate devices provide for kernel-based exclusion and somewhat
different defaults than the primary devices. Their main purpose is to
allow the use of serial ports with programs with no inherent or broken
-support for serial ports. For programs with proper knowledge of
-serial port operation, their use should probably be avoided.
+support for serial ports. Their use is deprecated, and they may be
+removed from a future version of Linux.
Arbitration of serial ports is provided by the use of lock files with
the names {\file /var/lock/LCK..tty${X\#}$}. The contents of the lock
@@ -1892,9 +2152,14 @@ can be used in the same manner as any TTY device. The master and
slave devices are connected by the kernel, generating the equivalent
of a bidirectional pipe with TTY capabilities.
-The entire namespace {\file /dev/[pt]ty[p-za-o][0-9a-z]\/} should be
-considered reserved for the future use of PTYs. Should more than 936
-PTYs ever become a necessity, we will likely adopt a System V-like
-scheme by which PTYs use a subdirectory of {\file /dev}.
+Recent versions of the Linux kernels and GNU libc contain support for
+the System V/Unix98 naming scheme for PTYs, which assigns a common
+device {\file /dev/ptmx\/} to all the masters (opening it will
+automatically give you a previously unassigned PTY) and a subdirectory
+{\file /dev/pts\/} for the slaves; the slaves are named with decimal
+integers ({\file /dev/pts/$\#$\/} in our notation). This removes the
+problem of exhausting the namespace and enables the kernel to
+automatically create the device nodes for the slaves on demand using
+the {\file devpts\/} filesystem.
\end{document}
diff --git a/Documentation/devices.txt b/Documentation/devices.txt
index 2242044f6..d91a44323 100644
--- a/Documentation/devices.txt
+++ b/Documentation/devices.txt
@@ -1,7 +1,7 @@
LINUX ALLOCATED DEVICES
Maintained by H. Peter Anvin <hpa@zytor.com>
- Last revised: February 17, 1998
+ Last revised: August 10, 1998
This list is the Linux Device List, the official registry of allocated
device numbers and /dev directory nodes for the Linux operating
@@ -92,10 +92,10 @@ Your cooperation is appreciated.
* the fifth letter is one of 0123456789abcdef indicating
the position within the series.
- In the future, it is likely that the PTY master
- multiplex (/dev/ptmx) device will be used to acquire a
- PTY on demand. If so, the actual PTY masters will be
- unnamed devices.
+ These are the old-style (BSD) PTY devices; Unix98
+ devices are on major 128 and above and use the PTY
+ master multiplex (/dev/ptmx) to acquire a PTY on
+ demand.
block Floppy disks
0 = /dev/fd0 First floppy disk autodetect
@@ -156,8 +156,8 @@ Your cooperation is appreciated.
...
255 = /dev/ttyef 256th PTY slave
- In the future, Linux may adopt the Unix98 naming
- scheme (/dev/pts/0, /dev/pts/1, ...)
+ These are the old-style (BSD) PTY devices; Unix98
+ devices are on major 136 and above.
block First MFM, RLL and IDE hard disk/CD-ROM interface
0 = /dev/hda Master: whole disk (or CD-ROM)
@@ -184,19 +184,16 @@ Your cooperation is appreciated.
64 = /dev/ttyS0 First serial port
...
127 = /dev/ttyS63 64th serial port
- 128 = /dev/ptyp0 First old pseudo-tty master
+ 128 = /dev/ptyp0 OBSOLETE
...
- 191 = /dev/ptysf 64th old pseudo-tty master
- 192 = /dev/ttyp0 First old pseudo-tty slave
+ 191 = /dev/ptysf OBSOLETE
+ 192 = /dev/ttyp0 OBSOLETE
...
- 255 = /dev/ttysf 64th old pseudo-tty slave
+ 255 = /dev/ttysf OBSOLETE
- For compatibility with previous versions of Linux, the
- first 64 PTYs are replicated under this device number.
- This use is deprecated with the release of Linux 2.0
- and may be removed in a future version of Linux. To
- ensure proper operation, do not mix old and new PTY
- devices.
+ Older versions of the Linux kernel used this major
+ number for BSD PTY devices. As of Linux 2.1.115, this
+ is no longer supported. Use major numbers 2 and 3.
5 char Alternate TTY devices
0 = /dev/tty Current TTY device
@@ -240,7 +237,7 @@ Your cooperation is appreciated.
associated with block devices. The binding to the
loopback devices is handled by mount(8) or losetup(8).
- 8 block SCSI disk devices
+ 8 block SCSI disk devices (0-15)
0 = /dev/sda First SCSI disk whole disk
16 = /dev/sdb Second SCSI disk whole disk
32 = /dev/sdc Third SCSI disk whole disk
@@ -310,9 +307,6 @@ Your cooperation is appreciated.
133 = /dev/exttrp External device trap
134 = /dev/apm_bios Advanced Power Management BIOS
135 = /dev/rtc Real Time Clock
- 136 = /dev/qcam0 QuickCam on lp0
- 137 = /dev/qcam1 QuickCam on lp1
- 138 = /dev/qcam2 QuickCam on lp2
139 = /dev/openprom SPARC OpenBoot PROM
140 = /dev/relay8 Berkshire Products Octal relay card
141 = /dev/relay16 Berkshire Products ISO-16 relay card
@@ -326,7 +320,8 @@ Your cooperation is appreciated.
149 = /dev/input/mouse Linux/SGI Irix emulation mouse
150 = /dev/input/keyboard Linux/SGI Irix emulation keyboard
151 = /dev/led Front panel LEDs
- 152 = /dev/radio Radio card (type?)
+ 153 = /dev/mergemem Memory merge device
+ 154 = /dev/pmu Macintosh PowerBook power manager
11 char Raw keyboard device
0 = /dev/kbd Raw keyboard device
@@ -457,6 +452,14 @@ Your cooperation is appreciated.
the system and is counter to standard Linux
device-naming practice.
+ block Acorn MFM hard drive interface
+ 0 = /dev/mfma First MFM drive whole disk
+ 64 = /dev/mfmb Second MFM drive whole disk
+
+ This device is used on the ARM-based Acorn RiscPC.
+ Partitions are handled the same way as for IDE disks
+ (see major number 3).
+
22 char Digiboard serial card
0 = /dev/ttyD0 First Digiboard port
1 = /dev/ttyD1 Second Digiboard port
@@ -576,28 +579,11 @@ Your cooperation is appreciated.
29 char Universal frame buffer
0 = /dev/fb0 First frame buffer
- 1 = /dev/fb0autodetect
- 24 = /dev/fb0user0
- ...
- 31 = /dev/fb0user7
32 = /dev/fb1 Second frame buffer
- 33 = /dev/fb1autodetect
- 56 = /dev/fb1user0
- ...
- 63 = /dev/fb1user7
-
- The universal frame buffer device is currently only
- supported on Linux/68k and Linux/SPARC. The plain
- device accesses the frame buffer at current resolution
- (Linux/68k calls this device "current",
- e.g. /dev/fb0current); the "autodetect" one at bootup
- (default) resolution. Minor numbers 2-23 within each
- frame buffer assignment are used for specific
- device-dependent resolutions. There appears to be no
- standard naming for these devices. Finally, 2-31
- within each device are reserved for user-selected
- modes, usually entered at boot time. Currently only
- Linux/68k uses the mode-specific devices.
+ ...
+ 240 = /dev/fb7 Eighth frame buffer
+
+ All additional minor numbers are reserved.
block Aztech/Orchid/Okano/Wearnes CD-ROM
0 = /dev/aztcd Aztech CD-ROM
@@ -611,8 +597,9 @@ Your cooperation is appreciated.
2 = /dev/inet/udp Network access
2 = /dev/inet/tcp Network access
- iBCS-2 requires /dev/nfsd to be a link to
- /dev/socksys, and /dev/X0R to be a link to /dev/null.
+ Additionally, iBCS-2 requires /dev/nfsd to be a link
+ to /dev/socksys, and /dev/X0R to be a link to
+ /dev/null.
block Philips LMS CM-205 CD-ROM
0 = /dev/cm205cd Philips LMS CM-205 CD-ROM
@@ -691,6 +678,8 @@ Your cooperation is appreciated.
129 = /dev/smpte1 Second MIDI port, SMPTE timed
130 = /dev/smpte2 Third MIDI port, SMPTE timed
131 = /dev/smpte3 Fourth MIDI port, SMPTE timed
+ block Slow memory ramdisk
+ 0 = /dev/slram Slow memory ramdisk
36 char Netlink support
0 = /dev/route Routing, device updates, kernel to user
@@ -918,15 +907,30 @@ Your cooperation is appreciated.
Additional devices will be added to this number, all
starting with /dev/adb.
+ block Fifth IDE hard disk/CD-ROM interface
+ 0 = /dev/hdi Master: whole disk (or CD-ROM)
+ 64 = /dev/hdj Slave: whole disk (or CD-ROM)
+
+ Partitions are handled the same way as for the first
+ interface (see major number 3).
+
57 char Hayes ESP serial card
0 = /dev/ttyP0 First ESP port
1 = /dev/ttyP1 Second ESP port
...
+ block Sixth IDE hard disk/CD-ROM interface
+ 0 = /dev/hdk Master: whole disk (or CD-ROM)
+ 64 = /dev/hdl Slave: whole disk (or CD-ROM)
+
+ Partitions are handled the same way as for the first
+ interface (see major number 3).
+
58 char Hayes ESP serial card - alternate devices
0 = /dev/cup0 Callout device corresponding to ttyP0
1 = /dev/cup1 Callout device corresponding to ttyP1
...
+ block Reserved for logical volume manager
59 char sf firewall package
0 = /dev/firewall Communication with sf kernel module
@@ -960,16 +964,49 @@ Your cooperation is appreciated.
This is a commercial driver; contact James Howes
<jth@prosig.demon.co.uk> for information.
+ block SCSI disk devices (16-31)
+ 0 = /dev/sdq 16th SCSI disk whole disk
+ 16 = /dev/sdr 17th SCSI disk whole disk
+ 32 = /dev/sds 18th SCSI disk whole disk
+ ...
+ 240 = /dev/sdaf 32nd SCSI disk whole disk
+
+ Partitions are handled in the same way as for IDE
+ disks (see major number 3) except that the limit on
+ partitions is 15.
+
66 char YARC PowerPC PCI coprocessor card
0 = /dev/yppcpci0 First YARC card
1 = /dev/yppcpci1 Second YARC card
...
+ block SCSI disk devices (32-47)
+ 0 = /dev/sdag 33th SCSI disk whole disk
+ 16 = /dev/sdah 34th SCSI disk whole disk
+ 32 = /dev/sdai 35th SCSI disk whole disk
+ ...
+ 240 = /dev/sdav 48nd SCSI disk whole disk
+
+ Partitions are handled in the same way as for IDE
+ disks (see major number 3) except that the limit on
+ partitions is 15.
+
67 char Coda network file system
0 = /dev/cfs0 Coda cache manager
See http://www.coda.cs.cmu.edu for information about Coda.
+ block SCSI disk devices (48-63)
+ 0 = /dev/sdaw 49th SCSI disk whole disk
+ 16 = /dev/sdax 50th SCSI disk whole disk
+ 32 = /dev/sday 51st SCSI disk whole disk
+ ...
+ 240 = /dev/sdbl 64th SCSI disk whole disk
+
+ Partitions are handled in the same way as for IDE
+ disks (see major number 3) except that the limit on
+ partitions is 15.
+
68 char CAPI 2.0 interface
0 = /dev/capi20 Control device
1 = /dev/capi20.00 First CAPI 2.0 application
@@ -980,9 +1017,31 @@ Your cooperation is appreciated.
ISDN CAPI 2.0 driver for use with CAPI 2.0
applications; currently supports the AVM B1 card.
+ block SCSI disk devices (64-79)
+ 0 = /dev/sdbm 64th SCSI disk whole disk
+ 16 = /dev/sdbn 65th SCSI disk whole disk
+ 32 = /dev/sdbo 66th SCSI disk whole disk
+ ...
+ 240 = /dev/sdcb 80th SCSI disk whole disk
+
+ Partitions are handled in the same way as for IDE
+ disks (see major number 3) except that the limit on
+ partitions is 15.
+
69 char MA16 numeric accelerator card
0 = /dev/ma16 Board memory access
+ block SCSI disk devices (80-95)
+ 0 = /dev/sdcc 81st SCSI disk whole disk
+ 16 = /dev/sdcd 82nd SCSI disk whole disk
+ 32 = /dev/sdce 83th SCSI disk whole disk
+ ...
+ 240 = /dev/sdcr 96th SCSI disk whole disk
+
+ Partitions are handled in the same way as for IDE
+ disks (see major number 3) except that the limit on
+ partitions is 15.
+
70 char SpellCaster Protocol Services Interface
0 = /dev/apscfg Configuration interface
1 = /dev/apsauth Authentication interface
@@ -992,6 +1051,17 @@ Your cooperation is appreciated.
65 = /dev/apsasync Async command interface
128 = /dev/apsmon Monitor interface
+ block SCSI disk devices (96-111)
+ 0 = /dev/sdcs 97th SCSI disk whole disk
+ 16 = /dev/sdct 98th SCSI disk whole disk
+ 32 = /dev/sdcu 99th SCSI disk whole disk
+ ...
+ 240 = /dev/sddh 112nd SCSI disk whole disk
+
+ Partitions are handled in the same way as for IDE
+ disks (see major number 3) except that the limit on
+ partitions is 15.
+
71 char Computone IntelliPort II serial card
0 = /dev/ttyF0 IntelliPort II board 0, port 0
1 = /dev/ttyF1 IntelliPort II board 0, port 1
@@ -1010,6 +1080,17 @@ Your cooperation is appreciated.
...
255 = /dev/ttyF255 IntelliPort II board 3, port 63
+ block SCSI disk devices (112-127)
+ 0 = /dev/sddi 113th SCSI disk whole disk
+ 16 = /dev/sddj 114th SCSI disk whole disk
+ 32 = /dev/sddk 115th SCSI disk whole disk
+ ...
+ 240 = /dev/sddx 128th SCSI disk whole disk
+
+ Partitions are handled in the same way as for IDE
+ disks (see major number 3) except that the limit on
+ partitions is 15.
+
72 char Computone IntelliPort II serial card - alternate devices
0 = /dev/cuf0 Callout device corresponding to ttyF0
1 = /dev/cuf1 Callout device corresponding to ttyF1
@@ -1076,16 +1157,19 @@ Your cooperation is appreciated.
80 char Photometrics AT200 CCD camera
0 = /dev/at200 Photometrics AT200 CCD camera
- 81 char Brooktree Bt848 frame grabbers
- 0 = /dev/bttv0 First Bt848 card
- 1 = /dev/bttv1 Second Bt848 card
+ 81 char video4linux
+ 0 = /dev/video0 Video capture/overlay device
...
- 16 = /dev/bttvc0 Control for first Bt848 card
- 17 = /dev/bttvc1 Control for second Bt848 card
+ 63 = /dev/video63 Video capture/overlay device
+ 64 = /dev/radio0 Radio device
...
- 32 = /dev/bttv-vbi0 VBI data of first Bt848 card
- 33 = /dev/bttv-vbi1 VBI data of second Bt848 card
+ 127 = /dev/radio63 Radio device
+ 192 = /dev/vtx0 Teletext device
...
+ 223 = /dev/vtx31 Teletext device
+ 224 = /dev/vbi0 Vertical blank interrupt
+ ...
+ 255 = /dev/vbi31 Vertical blank interrupt
82 char WiNRADiO communications receiver card
0 = /dev/winradio0 First WiNRADiO card
@@ -1191,16 +1275,91 @@ Your cooperation is appreciated.
See http://stm.lbl.gov/comedi or http://www.llp.fu-berlin.de/.
- 99-119 UNALLOCATED
+ 99 char Raw parallel ports
+ 0 = /dev/parport0 First parallel port
+ 1 = /dev/parport1 Second parallel port
+ ...
+
+100 char POTS (analogue telephone) A/B port
+ 0 = /dev/phone0 First telephone port
+ 1 = /dev/phone1 Second telephone port
+ ...
+
+101 char Motorola DSP 56xxx board
+ 0 = /dev/mdspstat Status information
+ 1 = /dev/mdsp1 First DSP board I/O controls
+ ...
+ 16 = /dev/mdsp16 16th DSP board I/O controls
+
+102 char Philips SAA5249 Teletext signal decoder
+ 0 = /dev/tlk0 First Teletext decoder
+ 1 = /dev/tlk1 Second Teletext decoder
+ 2 = /dev/tlk2 Third Teletext decoder
+ 3 = /dev/tlk3 Fourth Teletext decoder
+
+103 char Arla network file system
+ 0 = /dev/xfs0 Arla XFS
+
+ Arla is a free clone of the Andrew File System, AFS.
+ Any resemblance with the Swedish milk producer is
+ coincidental. For more information about the project,
+ write to <arla-drinkers@stacken.kth.se> or subscribe
+ to the arla announce mailing list by sending a mail to
+ <arla-announce-request@stacken.kth.se>.
+
+104 char Flash BIOS support
+
+105 char Comtrol VS-1000 serial controller
+ 0 = /dev/ttyV0 First VS-1000 port
+ 1 = /dev/ttyV1 Second VS-1000 port
+ ...
+
+106 char Comtrol VS-1000 serial controller - alternate devices
+ 0 = /dev/cuv0 First VS-1000 port
+ 1 = /dev/cuv1 Second VS-1000 port
+ ...
+
+107 char 3Dfx Voodoo Graphics device
+ 0 = /dev/3dfx Primary 3Dfx graphics device
+
+108 char Device independent PPP interface
+ 0 = /dev/ppp Device independent PPP interface
+
+109 char Reserved for logical volume manager
+
+110 char miroMEDIA Surround board
+ 0 = /dev/srnd0 First miroMEDIA Surround board
+ 1 = /dev/srnd1 Second miroMEDIA Surround board
+ ...
+
+111-119 UNALLOCATED
120-127 LOCAL/EXPERIMENTAL USE
-128-239 UNALLOCATED
+128-135 char Unix98 PTY masters
+
+ These devices should not have corresponding device
+ nodes; instead they should be accessed through the
+ /dev/ptmx cloning interface.
+
+136-143 char Unix98 PTY slaves
+ 0 = /dev/pts/0 First Unix98 pseudo-TTY
+ 1 = /dev/pts/1 Second Unix98 pesudo-TTY
+
+ These device nodes are automatically generated with
+ the proper permissions and modes by mounting the
+ devpts filesystem onto /dev/pts with the appropriate
+ mount options (distribution dependent).
+
+144-239 UNALLOCATED
240-254 LOCAL/EXPERIMENTAL USE
255 RESERVED
+ This major is reserved to assist the expansion to a
+ larger number space. No device nodes with this major
+ should ever be created on the filesystem.
**** ADDITIONAL /dev DIRECTORY ENTRIES
@@ -1231,9 +1390,10 @@ It is recommended that these links exist on all systems:
/dev/core /proc/kcore symbolic Backward compatibility
/dev/ramdisk ram0 symbolic Backward compatibility
/dev/ftape qft0 symbolic Backward compatibility
+/dev/bttv0 video0 symbolic Backward compatibility
+/dev/radio radio0 symbolic Backward compatibility
/dev/scd? sr? hard Alternate SCSI CD-ROM name
-
Locally defined links
The following links may be established locally to conform to the
@@ -1252,8 +1412,8 @@ exist, they should have the following uses.
/dev/modem should not be used for a modem which supports dialin as
well as dialout, as it tends to cause lock file problems. If it
-exists, /dev/modem should point to the appropriate dialout (alternate)
-device.
+exists, /dev/modem should point to the appropriate primary TTY device
+(the use of the alternate callout devices is deprecated).
For SCSI devices, /dev/tape and /dev/cdrom should point to the
``cooked'' devices (/dev/st* and /dev/sr*, respectively), whereas
@@ -1299,7 +1459,7 @@ monitor. Virtual consoles are named /dev/tty#, with numbering
starting at /dev/tty1; /dev/tty0 is the current virtual console.
/dev/tty0 is the device that should be used to access the system video
card on those architectures for which the frame buffer devices
-(/dev/fb*) do not exist (including the x86). Do not use /dev/console
+(/dev/fb*) are not applicable. Do not use /dev/console
for this purpose.
The console device, /dev/console, is the device to which system
@@ -1321,15 +1481,16 @@ letter X, the names of the devices are /dev/ttyX# and /dev/cux#,
respectively; for historical reasons, /dev/ttyS# and /dev/ttyC#
correspond to /dev/cua# and /dev/cub#. In the future, it should be
expected that multiple letters will be used; all letters will be upper
-case for the "tty" device and lower case for the "cu" device.
+case for the "tty" device (e.g. /dev/ttyDP#) and lower case for the
+"cu" device (e.g. /dev/cudp#).
The names /dev/ttyQ# and /dev/cuq# are reserved for local use.
The alternate devices provide for kernel-based exclusion and somewhat
different defaults than the primary devices. Their main purpose is to
allow the use of serial ports with programs with no inherent or broken
-support for serial ports. For programs with proper knowledge of
-serial port operation, their use should probably be avoided.
+support for serial ports. Their use is deprecated, and they may be
+removed from a future version of Linux.
Arbitration of serial ports is provided by the use of lock files with
the names /var/lock/LCK..ttyX#. The contents of the lock file should
@@ -1370,7 +1531,11 @@ can be used in the same manner as any TTY device. The master and
slave devices are connected by the kernel, generating the equivalent
of a bidirectional pipe with TTY capabilities.
-The entire namespace /dev/[pt]ty[p-za-o][0-9a-z] should be considered
-reserved for the future use of PTYs. Should more than 936 PTYs ever
-become a necessity, we will likely adopt a System V-like scheme by
-which PTYs use a subdirectory of /dev.
+Recent versions of the Linux kernels and GNU libc contain support for
+the System V/Unix98 naming scheme for PTYs, which assigns a common
+device, /dev/ptmx, to all the masters (opening it will automatically
+give you a previously unassigned PTY) and a subdirectory, /dev/pts,
+for the slaves; the slaves are named with decimal integers (/dev/pts/#
+in our notation). This removes the problem of exhausting the
+namespace and enables the kernel to automatically create the device
+nodes for the slaves on demand using the "devpts" filesystem.
diff --git a/Documentation/exception.txt b/Documentation/exception.txt
index 0102bb615..ec8727e1b 100644
--- a/Documentation/exception.txt
+++ b/Documentation/exception.txt
@@ -14,12 +14,12 @@ addr and of size size was accessible for the operation specified
in type (read or write). To do this, verify_read had to look up the
virtual memory area (vma) that contained the address addr. In the
normal case (correctly working program), this test was successful.
-It only failed for the (hopefully) rare, buggy program. In some kernel
-profiling tests, this normally unneeded verification used up a
-considerable amount of time.
+It only failed for a few buggy programs. In some kernel profiling
+tests, this normally unneeded verification used up a considerable
+amount of time.
To overcome this situation, Linus decided to let the virtual memory
-hardware present in every Linux capable CPU handle this test.
+hardware present in every Linux-capable CPU handle this test.
How does this work?
@@ -36,23 +36,23 @@ contains a reason code for the exception.
do_page_fault first obtains the unaccessible address from the CPU
control register CR2. If the address is within the virtual address
-space of the process, the fault probably occured, because the page
-was not swapped in, write protected or something similiar. However,
+space of the process, the fault probably occurred, because the page
+was not swapped in, write protected or something similar. However,
we are interested in the other case: the address is not valid, there
is no vma that contains this address. In this case, the kernel jumps
to the bad_area label.
There it uses the address of the instruction that caused the exception
-(i.e. regs->eip) to find an address where the excecution can continue
+(i.e. regs->eip) to find an address where the execution can continue
(fixup). If this search is successful, the fault handler modifies the
return address (again regs->eip) and returns. The execution will
continue at the address in fixup.
Where does fixup point to?
-Since we jump to the the contents of fixup, fixup obviously points
+Since we jump to the contents of fixup, fixup obviously points
to executable code. This code is hidden inside the user access macros.
-I have picked the get_user macro defined in include/asm/uacess.h as an
+I have picked the get_user macro defined in include/asm/uaccess.h as an
example. The definition is somewhat hard to follow, so let's peek at
the code generated by the preprocessor and the compiler. I selected
the get_user call in drivers/char/console.c for a detailed examination.
diff --git a/Documentation/fb/00-INDEX b/Documentation/fb/00-INDEX
new file mode 100644
index 000000000..4140afb88
--- /dev/null
+++ b/Documentation/fb/00-INDEX
@@ -0,0 +1,15 @@
+Index of files in Documentation/fb. If you think something about frame
+buffer devices needs an entry here, needs correction or you've written one
+please mail me.
+ Geert Uytterhoeven
+ <Geert.Uytterhoeven@cs.kuleuven.ac.be>
+
+00-INDEX
+ - this file
+framebuffer.txt
+ - introduction to frame buffer devices
+internals.txt
+ - quick overview of frame buffer device internals
+vesafb.txt
+ - info on the VESA frame buffer device
+
diff --git a/Documentation/m68k/framebuffer.txt b/Documentation/fb/framebuffer.txt
index c5b77d077..7d9075012 100644
--- a/Documentation/m68k/framebuffer.txt
+++ b/Documentation/fb/framebuffer.txt
@@ -1,9 +1,8 @@
-
- The Linux/m68k Frame Buffer Device
- ----------------------------------
+ The Frame Buffer Device
+ -----------------------
Maintained by Geert Uytterhoeven (Geert.Uytterhoeven@cs.kuleuven.ac.be)
-Last revised: January 24, 1998
+Last revised: June 10, 1998
0. Introduction
@@ -153,18 +152,14 @@ buffer device. The current X server is part of the XFree86/XFree68 release
To tune a video mode, you can use fbset or xvidtune. Note that xvidtune doesn't
work 100% with XF68_FBDev: the reported clock values are always incorrect.
-There exists also an accelerated X server for the Cybervision 64 graphics
-board, but that's not discussed here.
-
5. Video Mode Timings
---------------------
A monitor draws an image on the screen by using an electron beam (3 electron
-beams for most color models, 1 electron beam for Trinitron color monitors and
-monochrone monitors). The front of the screen is covered by a pattern of
-colored phospors (pixels). If a phospor is hit by an electron, it emits a
-photon and thus becomes visible.
+beams for color models, 1 electron beam for monochrome monitors). The front of
+the screen is covered by a pattern of colored phosphors (pixels). If a phosphor
+is hit by an electron, it emits a photon and thus becomes visible.
The electron beam draws horizontal lines (scanlines) from left to right, and
from the top to the bottom of the screen. By modifying the intensity of the
@@ -278,7 +273,7 @@ The frame buffer device uses the following fields:
1) Pixelclock:
xfree: in MHz
- fb: In Picoseconds (ps)
+ fb: in picoseconds (ps)
pixclock = 1000000 / DCF
diff --git a/Documentation/fb/internals.txt b/Documentation/fb/internals.txt
new file mode 100644
index 000000000..6a77a7437
--- /dev/null
+++ b/Documentation/fb/internals.txt
@@ -0,0 +1,86 @@
+
+This is a first start for some documentation about frame buffer device
+internals.
+
+Geert Uytterhoeven <Geert.Uytterhoeven@cs.kuleuven.ac.be>, 10 June 1998
+
+--------------------------------------------------------------------------------
+
+ *** STRUCTURES USED BY THE FRAME BUFFER DEVICE API ***
+
+The following structures play a role in the game of frame buffer devices. They
+are defined in <linux/fb.h>.
+
+1. Outside the kernel (user space)
+
+ - struct fb_fix_screeninfo
+
+ Device independent unchangeable information about a frame buffer device and
+ a specific video mode. This can be obtained using the FBIOGET_FSCREENINFO
+ ioctl.
+
+ - struct fb_var_screeninfo
+
+ Device independent changeable information about a frame buffer device and a
+ specific video mode. This can be obtained using the FBIOGET_VSCREENINFO
+ ioctl, and updated with the FBIOPUT_VSCREENINFO ioctl. If you want to pan
+ the screen only, you can use the FBIOPAN_DISPLAY ioctl.
+
+ - struct fb_cmap
+
+ Device independent colormap information. You can get and set the colormap
+ using the FBIOGETCMAP and FBIOPUTCMAP ioctls.
+
+
+2. Inside the kernel
+
+ - struct fb_info
+
+ Generic information, API and low level information about a specific frame
+ buffer device instance (slot number, board address, ...).
+
+ - struct `par'
+
+ Device dependent information that uniquely defines the video mode for this
+ particular piece of hardware.
+
+ - struct display
+
+ Interface between the frame buffer device and the console driver.
+
+
+--------------------------------------------------------------------------------
+
+ *** VISUALS USED BY THE FRAME BUFFER DEVICE API ***
+
+
+Monochrome (FB_VISUAL_MONO01 and FB_VISUAL_MONO10)
+-------------------------------------------------
+Each pixel is either black or white.
+
+
+Pseudo color (FB_VISUAL_PSEUDOCOLOR and FB_VISUAL_STATIC_PSEUDOCOLOR)
+---------------------------------------------------------------------
+The whole pixel value is fed through a programmable lookup table that has one
+color (including red, green, and blue intensities) for each possible pixel
+value, and that color is displayed.
+
+
+True color (FB_VISUAL_TRUECOLOR)
+--------------------------------
+The pixel value is broken up into red, green, and blue fields, each of which
+are looked up in separate red, green, and blue lookup tables.
+
+
+Direct color (FB_VISUAL_DIRECTCOLOR)
+------------------------------------
+The pixel value is broken up into red, green, and blue fields. This is what
+most people mean when then say `true color'.
+
+
+Grayscale displays
+------------------
+Grayscale and static grayscale are special variants of pseudo color and static
+pseudo color, where the red, green and blue components are always equal to
+each other.
+
diff --git a/Documentation/fb/vesafb.txt b/Documentation/fb/vesafb.txt
new file mode 100644
index 000000000..ed58f7241
--- /dev/null
+++ b/Documentation/fb/vesafb.txt
@@ -0,0 +1,71 @@
+
+what is vesafb?
+===============
+
+This is a generic driver for a graphic framebuffer on intel boxes.
+
+Idea is simple: Turn on graphics mode at boot time with the help of
+the BIOS, and use this as framebuffer device /dev/fb0, like the m68k
+(and other) ports do.
+
+This means we decide at boot time whenever we want to run in text or
+graphics mode. Switching mode later on (in protected mode) is
+impossible, BIOS calls work in real mode only. VESA BIOS Extentions
+Version 2.0 are required, becauce we need a linear frame buffer.
+
+Advantages:
+
+ * It provides a nice large console (128 cols + 48 lines with 1024x768)
+ without using tiny, unreadable fonts.
+ * You can run XF68_FBDev on top of /dev/fb0 (=> non-accelerated X11
+ support for every VBE 2.0 compliant graphics board).
+ * Most important: boot logo :-)
+
+Disadvantages:
+
+ * graphic mode is slower than text mode...
+
+
+How to use it?
+==============
+
+Switching modes is done using the vga=... boot parameter. Read
+Documentation/svga.txt for details. With vesafb both text and
+graphics modes work. Text modes are handled by vgafb, graphic modes
+by the new vesafb.c.
+
+The graphic modes are not in the list which you get if you boot with
+vga=ask and hit return. Here are some mode numbers:
+
+ | 640x480 800x600 1024x768
+----+---------------------------
+256 | 0x101 0x103 0x105
+32k | 0x110 0x113 0x116
+64k | 0x111 0x114 0x117
+16M | 0x112 0x115 0x118
+
+Note 1: this are the VESA mode numbers. The video mode select code
+ expects 0x200 + VESA mode number.
+Note 2: lilo can't handle hex, for booting with "vga=??" you have to
+ transform the numbers to decimal.
+
+
+Speed it up!
+============
+
+Check /usr/src/linux/Documentation/mtrr.txt, enabling write-combining
+for the framebuffer memory gives a performance boost.
+
+There are two ways to do console scrolling: redraw the screen
+completely, or by copying around the video memory. You can select one
+of them using the kernel command line: video=vesa:redraw or
+video=vesa:memmove. redraw is the default, becauce this one works
+faster on my box.
+
+
+Have fun!
+
+ Gerd
+
+--
+Gerd Knorr <kraxel@cs.tu-berlin.de>
diff --git a/Documentation/filesystems/00-INDEX b/Documentation/filesystems/00-INDEX
index 679904d0b..f6b5cbad5 100644
--- a/Documentation/filesystems/00-INDEX
+++ b/Documentation/filesystems/00-INDEX
@@ -5,25 +5,24 @@ affs.txt
coda.txt
- description of the CODA filesystem.
fat_cvf.txt
- - Description of the Compressed Volume Files extension to the FAT
- filesystem
+ - info on the Compressed Volume Files extension to the FAT filesystem
hpfs.txt
- info and mount options for the OS/2 HPFS.
isofs.txt
- - info and mount options for the ISO9660 (CDROM) filesystem.
+ - info and mount options for the ISO 9660 (CDROM) filesystem.
ncpfs.txt
- info on Novell Netware(tm) filesystem using NCP protocol.
ntfs.txt
- - info and mount options for the NTFS filesystem (Win NT).
+ - info and mount options for the NTFS filesystem (Windows NT).
romfs.txt
- Description of the ROMFS filesystem.
smbfs.txt
- - info on using filesystems with the SMB protocol (Win 3.11, Win NT)
+ - info on using filesystems with the SMB protocol (Windows 3.11 and NT)
sysv-fs.txt
- info on the SystemV/Coherent filesystem.
umsdos.txt
- info on the umsdos extensions to the msdos filesystem.
vfat.txt
- - info on using the VFAT filesystem used in Win NT and Win 95
+ - info on using the VFAT filesystem used in Windows NT and Windows 95
vfs.txt
- Overview of the Virtual File System
diff --git a/Documentation/filesystems/affs.txt b/Documentation/filesystems/affs.txt
index 85d5a58b1..f63a6e3aa 100644
--- a/Documentation/filesystems/affs.txt
+++ b/Documentation/filesystems/affs.txt
@@ -1,8 +1,8 @@
-Amiga filesystems Overview
-==========================
+Overview of Amiga Filesystems
+=============================
Not all varieties of the Amiga filesystems are supported for reading and
-writing. The Amiga currently knows 6 different filesystems:
+writing. The Amiga currently knows six different filesystems:
DOS\0 The old or original filesystem, not really suited for
hard disks and normally not used on them, either.
@@ -26,7 +26,7 @@ DOS\5 The Fast File System with directory cache. Supported read only.
All of the above filesystems allow block sizes from 512 to 32K bytes.
Supported block sizes are: 512, 1024, 2048 and 4096 bytes. Larger blocks
-speed up almost everything with the expense of wasted disk space. The speed
+speed up almost everything at the expense of wasted disk space. The speed
gain above 4K seems not really worth the price, so you don't lose too
much here, either.
@@ -45,12 +45,13 @@ setgid[=gid] Same as above, but for gid.
mode=mode Sets the mode flags to the given (octal) value, regardless
of the original permissions. Directories will get an x
- permission, if the corresponding r bit is set.
+ permission if the corresponding r bit is set.
This is useful since most of the plain AmigaOS files
will map to 600.
reserved=num Sets the number of reserved blocks at the start of the
- partition to num. Default is 2.
+ partition to num. You should never need this option.
+ Default is 2.
root=block Sets the block number of the root block. This should never
be necessary.
@@ -66,16 +67,18 @@ verbose The volume name, file system type and block size will
be written to the syslog when the filesystem is mounted.
mufs The filesystem is really a muFS, also it doesn't
- identify itself as one. This option is neccessary if
+ identify itself as one. This option is necessary if
the filesystem wasn't formatted as muFS, but is used
as one.
prefix=path Path will be prefixed to every absolute path name of
- symbolic links on an AFFS partition. Default = /
+ symbolic links on an AFFS partition. Default = "/".
+ (See below.)
volume=name When symbolic links with an absolute path are created
- on an AFFS partition, volume will be prepended as the
+ on an AFFS partition, name will be prepended as the
volume name. Default = "" (empty string).
+ (See below.)
Handling of the Users/Groups and protection flags
=================================================
@@ -92,11 +95,13 @@ The Amiga protection flags RWEDRWEDHSPARWED are handled as follows:
- H and P are always retained and ignored under Linux.
- - A is always reset when written.
+ - A is always reset when a file is written to.
User id and group id will be used unless set[gu]id are given as mount
options. Since most of the Amiga file systems are single user systems
-they will be owned by root.
+they will be owned by root. The root directory (the mount point) of the
+Amiga filesystem will be owned by the user who actually mounts the
+filesystem (the root directory doesn't have uid/gid fields).
Linux -> Amiga:
@@ -111,7 +116,7 @@ The Linux rwxrwxrwx file mode is handled as follows:
- All other flags (suid, sgid, ...) are ignored and will
not be retained.
-Newly created files and directories will get the user and group id
+Newly created files and directories will get the user and group ID
of the current user and a mode according to the umask.
Symbolic links
@@ -121,7 +126,7 @@ Although the Amiga and Linux file systems resemble each other, there
are some, not always subtle, differences. One of them becomes apparent
with symbolic links. While Linux has a file system with exactly one
root directory, the Amiga has a separate root directory for each
-file system (e.g. partition, floppy disk, ...). With the Amiga,
+file system (for example, partition, floppy disk, ...). With the Amiga,
these entities are called "volumes". They have symbolic names which
can be used to access them. Thus, symbolic links can point to a
different volume. AFFS turns the volume name into a directory name
@@ -139,12 +144,12 @@ might be "User", "WB" and "Graphics", the mount points /amiga/User,
Examples
========
-Command line
- mount Archive/Amiga/Workbench3.1.adf /mnt -t affs -o loop,reserved=4
+Command line:
+ mount Archive/Amiga/Workbench3.1.adf /mnt -t affs -o loop,verbose
mount /dev/sda3 /Amiga -t affs
-/etc/fstab example
- /dev/sdb5 /d/f affs ro
+/etc/fstab entry:
+ /dev/sdb5 /amiga/Workbench affs noauto,user,exec,verbose 0 0
Bugs, Restrictions, Caveats
===========================
@@ -159,10 +164,10 @@ can be changed by setting the compile-time option AFFS_NO_TRUNCATE
in include/linux/amigaffs.h).
Case is ignored by the affs in filename matching, but Linux shells
-do care about the case. Example (with /mnt being an affs mounted fs):
- rm /mnt/WRONGCASE
+do care about the case. Example (with /wb being an affs mounted fs):
+ rm /wb/WRONGCASE
will remove /mnt/wrongcase, but
- rm /mnt/WR*
+ rm /wb/WR*
will not since the names are matched by the shell.
The block allocation is designed for hard disk partitions. If more
@@ -170,14 +175,20 @@ than 1 process writes to a (small) diskette, the blocks are allocated
in an ugly way (but the real AFFS doesn't do much better). This
is also true when space gets tight.
+You cannot execute programs on an OFS (Old File System), since the
+program files cannot be memory mapped due to the 488 byte blocks.
+For the same reason you cannot mount an image on such a filesystem
+via the loopback device.
+
The bitmap valid flag in the root block may not be accurate when the
system crashes while an affs partition is mounted. There's currently
-no way to fix this without an Amiga (disk validator) or manually
-(who would do this?). Maybe later.
+no way to fix a garbled filesystem without an Amiga (disk validator)
+or manually (who would do this?). Maybe later.
A fsck.affs and mkfs.affs will probably be available in the future.
-Until then, you should do
- ln -s /bin/true /etc/fs/mkfs.affs
+If you mount them on system startup, you may want to tell fsck
+that the fs should not be checked (place a '0' in the sixth field
+of /etc/fstab).
It's not possible to read floppy disks with a normal PC or workstation
due to an incompatibility with the Amiga floppy controller.
diff --git a/Documentation/filesystems/coda.txt b/Documentation/filesystems/coda.txt
index 0c88ce6dc..b198ba4e5 100644
--- a/Documentation/filesystems/coda.txt
+++ b/Documentation/filesystems/coda.txt
@@ -1,4 +1,3 @@
-
NOTE:
This is one of the technical documents describing a component of
Coda -- this document describes the client kernel-Venus interface.
@@ -9,7 +8,7 @@ For user level software needed to run Coda:
ftp://ftp.coda.cs.cmu.edu
To run Coda you need to get a user level cache manager for the client,
-named Venus, as well as tools to manipulate ACL's, to log in etc. The
+named Venus, as well as tools to manipulate ACLs, to log in, etc. The
client needs to have the Coda filesystem selected in the kernel
configuration.
@@ -27,7 +26,7 @@ kernel support.
v1.0, Nov 9, 1997
This document describes the communication between Venus and kernel
- level file system code needed for the operation of the Coda filesys-
+ level filesystem code needed for the operation of the Coda file sys-
tem. This document version is meant to describe the current interface
(version 1.0) as well as improvements we envisage.
______________________________________________________________________
@@ -177,7 +176,7 @@ kernel support.
The interface between the kernel and Venus is very similar to the BSD
VFS interface. Similar functionality is provided, and the format of
the parameters and returned data is very similar to the BSD VFS. This
- leads to an almost natural environment for implementing a kernel level
+ leads to an almost natural environment for implementing a kernel-level
filesystem driver for Coda in a BSD system. However, other operating
systems such as Linux and Windows 95 and NT have virtual filesystem
with different interfaces.
@@ -359,7 +358,7 @@ kernel support.
33..11.. IImmpplleemmeennttaattiioonn ddeettaaiillss
The Unix implementation of this mechanism has been through the
- implemenation of a character device associated with Coda. Venus
+ implementation of a character device associated with Coda. Venus
retrieves messages by doing a read on the device, replies are sent
with a write and notification is through the select system call on the
file descriptor for the device. The process P is kept waiting on an
@@ -369,7 +368,7 @@ kernel support.
call is used. The DeviceIoControl call is designed to copy buffers
from user memory to kernel memory with OPCODES. The sendmsg_to_kernel
is issued as a synchronous call, while the getmsg_from_kernel call is
- asynchrounous. Windows EventObjects are used for notification of
+ asynchronous. Windows EventObjects are used for notification of
message arrival. The process P is kept waiting on a KernelEvent
object in NT and a semaphore in Windows 95.
@@ -429,7 +428,7 @@ kernel support.
for the Windows environment when these mature.
struct CodaCred {
- vuid_t cr_uid, cr_euid, cr_suid, cr_fsuid; /* Real, efftve, set, fs uid*/
+ vuid_t cr_uid, cr_euid, cr_suid, cr_fsuid; /* Real, effective, set, fs uid*/
vgid_t cr_gid, cr_egid, cr_sgid, cr_fsgid; /* same for groups */
vgid_t cr_groups[NGROUPS]; /* Group membership for caller */
};
@@ -514,7 +513,7 @@ kernel support.
Coda specific requests can be made by application through the pioctl
interface. The pioctl is implemented as an ordinary ioctl on a
- ficticious file /coda/.CONTROL. The pioctl call opens this file, gets
+ fictitious file /coda/.CONTROL. The pioctl call opens this file, gets
a file handle and makes the ioctl call. Finally it closes the file.
The kernel involvement in this is limited to providing the facility to
@@ -721,7 +720,7 @@ kernel support.
access will be granted. It is important to remember that Coda uses
ACLs to enforce protection and that ultimately the servers, not the
clients enforce the security of the system. The result of this call
- will depend on wether a _t_o_k_e_n is held by the user.
+ will depend on whether a _t_o_k_e_n is held by the user.
EErrrroorrss The object may not exist, or the ACL describing the protection
may not be accessible.
@@ -765,7 +764,7 @@ kernel support.
are set by converting the CodaCred to a uid using a macro CRTOUID
(this macro is platform dependent). Upon success the VFid and
attributes of the file are returned. The Coda FS Driver will normally
- instantiate a vnode, inode or filehandle at kernel level for the new
+ instantiate a vnode, inode or file handle at kernel level for the new
object.
@@ -780,7 +779,7 @@ kernel support.
to return a file descriptor. The trunctate and exclusive options,
together with the mode, could simply be part of the mode as it is
under Unix. There should be no flags argument; this is used in open
- (2) to return a filedescriptor for READ or WRITE mode.
+ (2) to return a file descriptor for READ or WRITE mode.
The attributes of the directory should be returned too, since the size
and mtime changed.
@@ -1221,7 +1220,7 @@ kernel support.
DDeessccrriippttiioonn Ask Venus to update RVM attributes of object VFid. This
should be called as part of kernel level fsync type calls. The
- result indicates if the synching was successful.
+ result indicates if the syncing was successful.
EErrrroorrss
diff --git a/Documentation/filesystems/fat_cvf.txt b/Documentation/filesystems/fat_cvf.txt
index ef598932c..7eef569b6 100644
--- a/Documentation/filesystems/fat_cvf.txt
+++ b/Documentation/filesystems/fat_cvf.txt
@@ -20,7 +20,7 @@ Compressed Volume Files in FAT partitions. Popular CVF software, for
example, are Microsoft's Doublespace/Drivespace and Stac's Stacker.
Using the CVF-FAT interface, it is possible to load a module that handles
all the low-level disk access that has to do with on-the-fly compression
-and decompression. All other part of FAT filesystem access is still handled
+and decompression. Any other part of FAT filesystem access is still handled
by the FAT, MSDOS or VFAT or even UMSDOS driver.
CVF access works by redirecting certain low-level routines from the FAT
@@ -46,16 +46,16 @@ like compression and decompression silently.
might be persuaded to implement it :). CVF-FAT is already prepared
for using readpage.
-- DOSEMU users attention
+- attention, DOSEmu users
- You may have to unmount all CVF partitions before running DOSEMU depending
- on your configuration. If DOSEMU is configured to use wholedisk or
- partition access (this is often the case to let DOSEMU access
+ You may have to unmount all CVF partitions before running DOSEmu depending
+ on your configuration. If DOSEmu is configured to use wholedisk or
+ partition access (this is often the case to let DOSEmu access
compressed partitions) there's a risk of destroying your compressed
partitions or crashing your system because of confused drivers.
Note that it is always safe to redirect the compressed partitions with
- lredir or emufs.sys. Refer to the DOSEMU documentation for details.
+ lredir or emufs.sys. Refer to the DOSEmu documentation for details.
3. Mount options
@@ -88,7 +88,7 @@ driver's standard options:
------------------------------------------------------------------------------
Assuming you want to write your own CVF module, you need to write a lot of
-interface funtions. Most of them are covered in the kernel documentation
+interface functions. Most of them are covered in the kernel documentation
you can find on the net, and thus won't be described here. They have been
marked with "[...]" :-) Take a look at include/linux/fat_cvf.h.
@@ -169,7 +169,7 @@ int register_cvf_format(struct cvf_format*cvf_format);
call this function to introduce your CVF format to the FAT/CVF-FAT
driver. This is usually done in init_module. Be sure to check the
return value. Zero means success, everything else causes a kernel
- message printed in the syslog describing the error that occured.
+ message printed in the syslog describing the error that occurred.
Typical errors are:
- a module with the same version id is already registered or
- too many CVF formats. Hack fs/fat/cvf.c if you need more.
diff --git a/Documentation/filesystems/hpfs.txt b/Documentation/filesystems/hpfs.txt
index 03e0481bb..a14e81341 100644
--- a/Documentation/filesystems/hpfs.txt
+++ b/Documentation/filesystems/hpfs.txt
@@ -5,7 +5,7 @@ Mount options are the same as for msdos partitions.
uid=nnn All files in the partition will be owned by user id nnn.
gid=nnn All files in the partition will be in group nnn.
umask=nnn The permission mask (see umask(1)) for the partition.
- conv=binary Data is returned exactly as is, with CRLF's. [default]
+ conv=binary Data is returned exactly as is, with CRLFs. [default]
conv=text (Carriage return, line feed) is replaced with newline.
conv=auto Chooses, file by file, conv=binary or conv=text (by guessing)
diff --git a/Documentation/filesystems/isofs.txt b/Documentation/filesystems/isofs.txt
index 2f0a4249e..c186c4050 100644
--- a/Documentation/filesystems/isofs.txt
+++ b/Documentation/filesystems/isofs.txt
@@ -13,16 +13,17 @@ when using discs encoded using Microsoft's Joliet extensions.
utf8 option.
utf8 Encode Unicode names in UTF8 format. Default is no.
-Mount options that are unique to the isofs filesystem.
+Mount options unique to the isofs filesystem.
block=512 Set the block size for the disk to 512 bytes
block=1024 Set the block size for the disk to 1024 bytes
block=2048 Set the block size for the disk to 2048 bytes
check=relaxed Matches filenames with different cases
check=strict Matches only filenames with the exact same case
cruft Try to handle badly formatted CDs.
- map=off Do not map non-rockridge filenames to lowercase
- map=normal Map rockridge filenames to lowercase
+ map=off Do not map non-Rock Ridge filenames to lower case
+ map=normal Map non-Rock Ridge filenames to lower case
+ map=acorn As map=normal but also apply Acorn extensions if present
mode=xxx Sets the permissions on files to xxx
nojoliet Ignore Joliet extensions if they are present.
- norock Ignore rockridge extensions if they are present.
+ norock Ignore Rock Ridge extensions if they are present.
unhide Show hidden files.
diff --git a/Documentation/filesystems/ncpfs.txt b/Documentation/filesystems/ncpfs.txt
index 8698dba3f..f12c30c93 100644
--- a/Documentation/filesystems/ncpfs.txt
+++ b/Documentation/filesystems/ncpfs.txt
@@ -1,12 +1,12 @@
-ncpfs is a filesystem which understands the NCP protocol, designed by the
-Novell Corporation for their NetWare(tm) product. NCP is functionally
-similar to the NFS used in the tcp/ip community.
-To mount a Netware-Filesystem, you need a special mount program, which
-can be found in ncpfs package. Homesite for ncpfs is
+The ncpfs filesystem understands the NCP protocol, designed by the
+Novell Corporation for their NetWare(tm) product. NCP is functionally
+similar to the NFS used in the TCP/IP community.
+To mount a NetWare filesystem, you need a special mount program, which
+can be found in the ncpfs package. The home site for ncpfs is
ftp.gwdg.de/pub/linux/misc/ncpfs, but sunsite and its many mirrors
will have it as well.
Related products are linware and mars_nwe, which will give Linux partial
-NetWare Server functionality.
-Linware's home site is: klokan.sh.cvut.cz/pub/linux/linware,
-Mars_nwe can be found on ftp.gwdg.de/pub/linux/misc/ncpfs.
+NetWare server functionality. Linware's home site is
+klokan.sh.cvut.cz/pub/linux/linware; mars_nwe can be found on
+ftp.gwdg.de/pub/linux/misc/ncpfs.
diff --git a/Documentation/filesystems/romfs.txt b/Documentation/filesystems/romfs.txt
index 7df713201..2d2a7b2a1 100644
--- a/Documentation/filesystems/romfs.txt
+++ b/Documentation/filesystems/romfs.txt
@@ -1,7 +1,6 @@
-
ROMFS - ROM FILE SYSTEM
-This is a quite dumb, read only filesystem, mainly for initial ram
+This is a quite dumb, read only filesystem, mainly for initial RAM
disks of installation disks. It has grown up by the need of having
modules linked at boot time. Using this filesystem, you get a very
similar feature, and even the possibility of a small kernel, with a
@@ -29,13 +28,13 @@ However, the main purpose of romfs is to have a very small kernel,
which has only this filesystem linked in, and then can load any module
later, with the current module utilities. It can also be used to run
some program to decide if you need SCSI devices, and even IDE or
-floppy drives can be loaded later if you use the "initrd" -- initial
-ram disk -- feature of the kernel. This would not be really news
+floppy drives can be loaded later if you use the "initrd"--initial
+RAM disk--feature of the kernel. This would not be really news
flash, but with romfs, you can even spare off your ext2 or minix or
maybe even affs filesystem until you really know that you need it.
For example, a distribution boot disk can contain only the cd disk
-drivers (and possibly the SCSI drivers), and the ISO filesystem
+drivers (and possibly the SCSI drivers), and the ISO 9660 filesystem
module. The kernel can be small enough, since it doesn't have other
filesystems, like the quite large ext2fs module, which can then be
loaded off the CD at a later stage of the installation. Another use
@@ -148,7 +147,7 @@ please contact me. However, think twice before wanting me to add
features and code, because the primary and most important advantage of
this file system is the small code. On the other hand, don't be
alarmed, I'm not getting that much romfs related mail. Now I can
-understand why Avery wrote poems in the arcnet docs to get some more
+understand why Avery wrote poems in the ARCnet docs to get some more
feedback. :)
romfs has also a mailing list, and to date, it hasn't received any
@@ -167,7 +166,7 @@ I have never found this limiting, but others might.
one would want to write _anything_ to a file system, he still needs
a writable file system, thus negating the size advantages. Possible
solutions: implement write access as a compile-time option, or a new,
-similarly small writable filesystem for ram disks.
+similarly small writable filesystem for RAM disks.
- Since the files are only required to have alignment on a 16 byte
boundary, it is currently possibly suboptimal to read or execute files
diff --git a/Documentation/filesystems/vfat.txt b/Documentation/filesystems/vfat.txt
index 1a0da9d40..b475d510a 100644
--- a/Documentation/filesystems/vfat.txt
+++ b/Documentation/filesystems/vfat.txt
@@ -34,7 +34,7 @@ uni_xlate=<bool> -- Translate unhandled Unicode characters to special
posix=<bool> -- Allow names of same letters, different case such as
'LongFileName' and 'longfilename' to coexist. This has some
problems currently because 8.3 conflicts are not handled
- correctly for Posix filesystem compliance.
+ correctly for POSIX filesystem compliance.
nonumtail=<bool> -- When creating 8.3 aliases, normally the alias will
end in '~1' or tilde followed by some number. If this
option is set, then if the filename is
@@ -61,7 +61,7 @@ TODO
a get next directory entry approach. The only thing left that uses
raw scanning is the directory renaming code.
-* Fix the Posix filesystem support to work in 8.3 space. This involves
+* Fix the POSIX filesystem support to work in 8.3 space. This involves
renaming aliases if a conflict occurs between a new filename and
an old alias. This is quite a mess.
diff --git a/Documentation/filesystems/vfs.txt b/Documentation/filesystems/vfs.txt
index 9dfe8dc27..7e4f3d04e 100644
--- a/Documentation/filesystems/vfs.txt
+++ b/Documentation/filesystems/vfs.txt
@@ -1,174 +1,448 @@
-A Brief Overview of the Virtual File System
-===========================================
- by Benjamin LaHaise (blah@dot.superaje.com)
+/* -*- auto-fill -*- */
-Noone else seems to be writing this, so here's a quick description of what
-I've learned while writing lofs...
+ Overview of the Virtual File System
-The VFS is relatively simple, but it is nice not to have to browse through
-pages of code to determine what is expected when writing a filesystem.
-Hopefully this helps anyone attempting such a feat, as well as clearing up
-a few important points/dependencies.
+ Richard Gooch <rgooch@atnf.csiro.au>
-register_filesystem (struct file_system_type *fstype)
-=====================================================
+ 27-JUN-1998
-All filesystems are created equal... or at least they start out that way.
-A filesystem, be it in module form, or linked into the kernel, needs to add
-itself to the table of filesystems by calling register_filesystem with an
-initialized file_system_type structure. Any further functions of the
-filesystem are accessed through the following function tables...
+Conventions used in this document <section>
+=================================
-struct file_system_type
-=======================
+Each section in this document will have the string "<section>" at the
+right-hand side of the section title. Each subsection will have
+"<subsection>" at the right-hand side. These strings are meant to make
+it easier to search through the document.
- struct super_block *(*read_super) (struct super_block *sb, void *options, int silent);
+NOTE that the master copy of this document is available online at:
+http://www.atnf.csiro.au/~rgooch/linux/docs/vfs.txt
- This is the entry point of all filesystems. If the filesystem succeeds
- in mounting itself, sb should be returned, otherwise NULL. options is
- a pointer to a maximum of PAGE_SIZE-1 bytes of options, typically a zero
- terminated string passed from mount. This page is freed after read_super
- returns, so do not use any pointers into it.
- This routine _must_ set the s_op member of sb to point to a valid
- super_operations structure.
+What is it? <section>
+===========
- const char *name;
+The Virtual File System (otherwise known as the Virtual Filesystem
+Switch) is the software layer in the kernel that provides the
+filesystem interface to userspace programmes. It also provides an
+abstraction within the kernel which allows different filesystem
+implementations to co-exist.
- Name points to a string that the system will know the filesystem by.
- int requires_dev;
+A Quick Look At How It Works <section>
+============================
- Set this flag to 1 if the filesystem requires a block device to be mounted
- on.
+In this section I'll briefly describe how things work, before
+launching into the details. I'll start with describing what happens
+when user programmes open and manipulate files, and then look from the
+other view which is how a filesystem is supported and subsequently
+mounted.
- struct file_system_type * next;
+Opening a File <subsection>
+--------------
+
+The VFS implements the open(2) system call. The pathname argument is
+used by the VFS to search through the directory entry cache (dentry
+cache or "dcache"). This provides a very fast lookup mechanism to
+translate a pathname (filename) into a specific dentry.
+
+An individual dentry usually has a pointer to an inode. Inodes are the
+things that live on disc drives, and can be regular files (you know:
+those things that you write data into), directories, FIFOs and other
+beasts. Dentries live in RAM and are never saved to disc: they exist
+only for performance. Inodes live on disc and are copied into memory
+when required. Later any changes are written back to disc. The inode
+that lives in RAM is a VFS inode, and it is this which the dentry
+points to.
+
+The dcache is meant to be a view into your entire filespace. Unlike
+Linus, most of us losers can't fit enough dentries into RAM to cover
+all of our filespace, so the dcache has bits missing. In order to
+resolve your pathname into a dentry, the VFS may have to resort to
+creating dentries along the way, and then loading the inode. This is
+done by looking up the inode.
+
+To lookup an inode (usually read from disc) requires that the VFS
+calls the lookup() method of the parent directory inode. This method
+is installed by the specific filesystem implementation that the inode
+lives in. There will be more on this later.
+
+Once the VFS has the required dentry (and hence the inode), we can do
+all those boring things like open(2) the file, or stat(2) it to peek
+at the inode data. The stat(2) operation is fairly simple: once the
+VFS has the dentry, it peeks at the inode data and passes some of it
+back to userspace.
+
+Opening a file requires another operation: allocation of a file
+structure (this is the kernel-side implementation of file
+descriptors). The freshly allocated file structure is initialised with
+a pointer to the dentry and a set of file operation member
+functions. These are taken from the inode data. The open() file method
+is then called so the specific filesystem implementation can do it's
+work. You can see that this is another switch performed by the VFS.
+
+The file structure is placed into the file descriptor table for the
+process.
- This field points to the next file_system_type that is present in the system,
- and should be initialized to NULL.
+Reading, writing and closing files (and other assorted VFS operations)
+is done by using the userspace file descriptor to grab the appropriate
+file structure, and then calling the required file structure method
+function to do whatever is required.
-struct super_operations
+For as long as the file is open, it keeps the dentry "open" (in use),
+which in turn means that the VFS inode is still in use.
+
+Registering and Mounting a Filesystem <subsection>
+-------------------------------------
+
+If you want to support a new kind of filesystem in the kernel, all you
+need to do is call register_filesystem(). You pass a structure
+describing the filesystem implementation (struct file_system_type)
+which is then added to an internal table of supported filesystems. You
+can do:
+
+% cat /proc/filesystems
+
+to see what filesystems are currently available on your system.
+
+When a request is made to mount a block device onto a directory in
+your filespace the VFS will call the appropriate method for the
+specific filesystem. The dentry for the mount point will then be
+updated to point to the root inode for the new filesystem.
+
+It's now time to look at things in more detail.
+
+
+struct file_system_type <section>
=======================
-The super_operations structure is found through the s_op member of the
-super_block structure.
+This describes the filesystem. As of kernel 2.1.99, the following
+members are defined:
+
+struct file_system_type {
+ const char *name;
+ int fs_flags;
+ struct super_block *(*read_super) (struct super_block *, void *, int);
+ struct file_system_type * next;
+};
- void (*read_inode) (struct inode *inode);
- [optional - doesn't quite make sense]
- read_inode is called by the VFS when iget is called requesting an inode
- not already present in the inode table. i_ino is set to the number of the
- inode requested.
+ name: the name of the filesystem type, such as "ext2", "iso9660",
+ "msdos" and so on
- The i_op member of inode should be set to a valid inode_operations
- structure. Typically filesystems have separate inode_operations for
- directories, files and symlinks. i_op can be NULL.
+ fs_flags: various flags (i.e. if it is a read-only FS)
- int (*notify_change) (struct inode *, struct iattr *);
- [optional]
- void (*write_inode) (struct inode *);
- [optional]
+ read_super: the method to call when a new instance of this
+ filesystem should be mounted
+
+ next: for internal VFS use: you should initialise this to NULL
+
+The read_super() method has the following arguments:
+
+ struct super_block *sb: the superblock structure. This is partially
+ initialised by the VFS and the rest must be initialised by the
+ read_super() method
+
+ void *data: arbitrary mount options, usually comes as an ASCII
+ string
+
+ int silent: whether or not to be silent on error
+
+The read_super() method must determine if the block device specified
+in the superblock contains a filesystem of the type the method
+supports. On success the method returns the superblock pointer, on
+failure it returns NULL.
+
+The most interesting member of the superblock structure that the
+read_super() method fills in is the "s_op" field. This is a pointer to
+a "struct super_operations" which describes the next level of the
+filesystem implementation.
- int (*put_inode) (struct inode *inode);
- [optional]
- put_inode is called by the VFS when the last instance of inode is released
- with a call to iput. The only special consideration that should be made
- is that iget may reuse inode without calling read_inode unless clear_inode
- is called. put_inode MUST return 1 if it called clear_inode on the inode,
- otherwise zero.
+struct super_operations <section>
+=======================
+
+This describes how the VFS can manipulate the superblock of your
+filesystem. As of kernel 2.1.99, the following members are defined:
+
+struct super_operations {
+ void (*read_inode) (struct inode *);
+ void (*write_inode) (struct inode *);
+ void (*put_inode) (struct inode *);
+ void (*delete_inode) (struct inode *);
+ int (*notify_change) (struct dentry *, struct iattr *);
void (*put_super) (struct super_block *);
- [optional]
void (*write_super) (struct super_block *);
- [optional]
- void (*statfs) (struct super_block *, struct statfs *, int);
- [optional]
+ int (*statfs) (struct super_block *, struct statfs *, int);
int (*remount_fs) (struct super_block *, int *, char *);
- [optional]
+ void (*clear_inode) (struct inode *);
+};
+
+All methods are called without any locks being held, unless otherwise
+noted. This means that most methods can block safely. All methods are
+only called from a process context (i.e. not from an interrupt handler
+or bottom half).
+
+ read_inode: this method is called to read a specific inode from the
+ mounted filesystem. The "i_ino" member in the "struct inode"
+ will be initialised by the VFS to indicate which inode to
+ read. Other members are filled in by this method
+
+ write_inode: this method is called when the VFS needs to write an
+ inode to disc
+
+ put_inode: called when the VFS inode is removed from the inode
+ cache. This method is optional
+
+ delete_inode: called when the VFS wants to delete an inode
+ notify_change: called when VFS inode attributes are changed. If this
+ is NULL the VFS falls back to the write_inode() method. This
+ is called with the kernel lock held
-struct inode_operations
+ put_super: called when the VFS wishes to free the superblock
+ (i.e. unmount). This is called with the superblock lock held
+
+ write_super: called when the VFS superblock needs to be written to
+ disc. This method is optional
+
+ statfs: called when the VFS needs to get filesystem statistics. This
+ is called with the kernel lock held
+
+ remount_fs: called when the filesystem is remounted. This is called
+ with the kernel lock held
+
+ clear_inode: called then the VFS clears the inode. Optional
+
+The read_inode() method is responsible for filling in the "i_op"
+field. This is a pointer to a "struct inode_operations" which
+describes the methods that can be performed on individual inodes.
+
+
+struct inode_operations <section>
=======================
- struct file_operations * default_file_ops;
- [mandatory]
- All inode_operations structures must have default_file_ops pointing to
- a valid file_operations structure.
-
- int (*create) (struct inode *,const char *,int,int,struct inode **);
- [optional]
-
- int (*lookup) (struct inode *dir, const char *name, int len, struct inode **result);
- [optional]
- lookup is called when the VFS wishes to have the filesystem resolve a name
- into an inode. Dir is a directory on the filesystem that [hopefully] contains
- the zero terminated string name (length len). A return value of zero indicates
- that there is a valid inode stored in *result.
-
-*** Note: lofs assumes that any filesystem returns an inode within the filesystem
- for all directory inodes. Therefore, __iget(sb,ino,0) should be used to fetch
- the inode in a filesystem's lookup routine.
-
- int (*link) (struct inode *,struct inode *,const char *,int);
- [optional]
- int (*unlink) (struct inode *,const char *,int);
- [optional]
- int (*symlink) (struct inode *,const char *,int,const char *);
- [optional]
- int (*mkdir) (struct inode *,const char *,int,int);
- [optional]
- int (*rmdir) (struct inode *,const char *,int);
- [optional]
- int (*mknod) (struct inode *,const char *,int,int,int);
- [optional]
- int (*rename) (struct inode *,const char *,int,struct inode *,const char *,int, int);
- [optional]
-
- int (*readlink) (struct inode *inode, char *buf, int len);
- [optional]
- readlink is called by the VFS to read the contents of a symbolic link.
- inode is an inode that meets the S_ISLNK test, and buf points to a buffer
- of len bytes.
-
- int (*follow_link) (struct inode *,struct inode *,int,int,struct inode **);
- [optional]
- follow_link must be implemented if readlink is implemented.
- Note that follow_link can return a different inode than a
- lookup_dentry() on the result of readlink() would return.
- The proc filesystem, in particular, uses this feature heavily.
- For most user filesystems, however, follow_link() and readlink()
- should return consistent results.
-
- int (*readpage) (struct inode *, struct page *); [optional]
- int (*writepage) (struct inode *, struct page *); [mandatory with readpage]
-
- In order for files to be mmap'd, readpage and writepage are required.
- A filesystem can use generic_readpage/writepage if it supports the bmap
- function. Otherwise, a custom version must be written.
+This describes how the VFS can manipulate an inode in your
+filesystem. As of kernel 2.1.99, the following members are defined:
+struct inode_operations {
+ struct file_operations * default_file_ops;
+ int (*create) (struct inode *,struct dentry *,int);
+ int (*lookup) (struct inode *,struct dentry *);
+ int (*link) (struct dentry *,struct inode *,struct dentry *);
+ int (*unlink) (struct inode *,struct dentry *);
+ int (*symlink) (struct inode *,struct dentry *,const char *);
+ int (*mkdir) (struct inode *,struct dentry *,int);
+ int (*rmdir) (struct inode *,struct dentry *);
+ int (*mknod) (struct inode *,struct dentry *,int,int);
+ int (*rename) (struct inode *, struct dentry *,
+ struct inode *, struct dentry *);
+ int (*readlink) (struct dentry *, char *,int);
+ struct dentry * (*follow_link) (struct dentry *, struct dentry *);
+ int (*readpage) (struct file *, struct page *);
+ int (*writepage) (struct file *, struct page *);
int (*bmap) (struct inode *,int);
- [optional]
void (*truncate) (struct inode *);
- [optional]
int (*permission) (struct inode *, int);
- [optional]
int (*smap) (struct inode *,int);
- [optional]
-
-struct file_operations
+ int (*updatepage) (struct file *, struct page *, const char *,
+ unsigned long, unsigned int, int);
+ int (*revalidate) (struct dentry *);
+};
+
+ default_file_ops: this is a pointer to a "struct file_operations"
+ which describes how to manipulate open files
+
+ create: called by the open(2) and creat(2) system calls. Only
+ required if you want to support regular files. The dentry you
+ get should not have an inode (i.e. it should be a negative
+ dentry). Here you will probably call d_instantiate() with the
+ dentry and the newly created inode
+
+ lookup: called when the VFS needs to lookup an inode in a parent
+ directory. The name to look for is found in the dentry. This
+ method must call d_add() to insert the found inode into the
+ dentry. The "i_count" field in the inode structure should be
+ incremented. If the named inode does not exist a NULL inode
+ should be inserted into the dentry (this is called a negative
+ dentry). Returning an error code from this routine must only
+ be done on a real error, otherwise creating inodes with system
+ calls like create(2), mknod(2), mkdir(2) and so on will fail.
+ If you wish to overload the dentry methods then you should
+ initialise the "d_dop" field in the dentry; this is a pointer
+ to a struct "dentry_operations".
+ This method is called with the directory semaphore held
+
+ link: called by the link(2) system call. Only required if you want
+ to support hard links. You will probably need to call
+ d_instantiate() just as you would in the create() method
+
+ unlink: called by the unlink(2) system call. Only required if you
+ want to support deleting inodes
+
+ symlink: called by the symlink(2) system call. Only required if you
+ want to support symlinks. You will probably need to call
+ d_instantiate() just as you would in the create() method
+
+ mkdir: called by the mkdir(2) system call. Only required if you want
+ to support creating subdirectories. You will probably need to
+ call d_instantiate() just as you would in the create() method
+
+ rmdir: called by the rmdir(2) system call. Only required if you want
+ to support deleting subdirectories
+
+ mknod: called by the mknod(2) system call to create a device (char,
+ block) inode or a named pipe (FIFO) or socket. Only required
+ if you want to support creating these types of inodes. You
+ will probably need to call d_instantiate() just as you would
+ in the create() method
+
+ readlink: called by the readlink(2) system call. Only required if
+ you want to support reading symbolic links
+
+ follow_link: called by the VFS to follow a symbolic link to the
+ inode it points to. Only required if you want to support
+ symbolic links
+
+
+struct file_operations <section>
======================
- int (*lseek) (struct inode *, struct file *, off_t, int);
- int (*read) (struct inode *, struct file *, char *, int);
- int (*write) (struct inode *, struct file *, const char *, int);
- int (*readdir) (struct inode *, struct file *, void *, filldir_t);
- unsigned int (*poll) (struct file *, poll_table *);
+This describes how the VFS can manipulate an open file. As of kernel
+2.1.99, the following members are defined:
+
+struct file_operations {
+ loff_t (*llseek) (struct file *, loff_t, int);
+ ssize_t (*read) (struct file *, char *, size_t, loff_t *);
+ ssize_t (*write) (struct file *, const char *, size_t, loff_t *);
+ int (*readdir) (struct file *, void *, filldir_t);
+ unsigned int (*poll) (struct file *, struct poll_table_struct *);
int (*ioctl) (struct inode *, struct file *, unsigned int, unsigned long);
- int (*mmap) (struct inode *, struct file *, struct vm_area_struct *);
+ int (*mmap) (struct file *, struct vm_area_struct *);
int (*open) (struct inode *, struct file *);
- void (*release) (struct inode *, struct file *);
- int (*fsync) (struct inode *, struct file *);
- int (*fasync) (struct inode *, struct file *, int);
+ int (*release) (struct inode *, struct file *);
+ int (*fsync) (struct file *, struct dentry *);
+ int (*fasync) (struct file *, int);
int (*check_media_change) (kdev_t dev);
int (*revalidate) (kdev_t dev);
+ int (*lock) (struct file *, int, struct file_lock *);
+};
+
+ llseek: called when the VFS needs to move the file position index
+
+ read: called by the read(2) system call
+
+ write: called by the write(2) system call
+
+ readdir: called when the VFS needs to read the directory contents
+
+ poll: called by the VFS when a process wants to check if there is
+ activity on this file and (optionally) go to sleep until there
+ is activity
+
+ ioctl: called by the ioctl(2) system call
+
+ mmap: called by the mmap(2) system call
+
+ open: called by the VFS when an inode should be opened. When the VFS
+ opens a file, it creates a new "struct file" and initialises
+ the "f_op" file operations member with the "default_file_ops"
+ field in the inode structure. It then calls the open method
+ for the newly allocated file structure. You might think that
+ the open method really belongs in "struct inode_operations",
+ and you may be right. I think it's done the way it is because
+ it makes filesystems simpler to implement. The open() method
+ is a good place to initialise the "private_data" member in the
+ file structure if you want to point to a device structure
+
+ release: called when the last reference to an open file is closed
+
+ fsync: called by the fsync(2) system call
+
+ fasync: called by the fcntl(2) system call when asynchronous
+ (non-blocking) mode is enabled for a file
+
+Note that the file operations are implemented by the specific
+filesystem in which the inode resides. When opening a device node
+(character or block special) most filesystems will call special
+support routines in the VFS which will locate the required device
+driver information. These support routines replace the filesystem file
+operations with those for the device driver, and then proceed to call
+the new open() method for the file. This is how opening a device file
+in the filesystem eventually ends up calling the device driver open()
+method. Note the devfs (the Device FileSystem) has a more direct path
+from device node to device driver (this is an unofficial kernel
+patch).
+
+
+struct dentry_operations <section>
+========================
+
+This describes how a filesystem can overload the standard dentry
+operations. Dentries and the dcache are the domain of the VFS and the
+individual filesystem implementations. Device drivers have no business
+here. As of kernel 2.1.99, the following members are defined:
+
+struct dentry_operations {
+ int (*d_revalidate)(struct dentry *);
+ int (*d_hash) (struct dentry *, struct qstr *);
+ int (*d_compare) (struct dentry *, struct qstr *, struct qstr *);
+ void (*d_delete)(struct dentry *);
+ void (*d_release)(struct dentry *);
+ void (*d_iput)(struct dentry *, struct inode *);
+};
+
+ d_revalidate: called when the VFS needs to revalidate a dentry
+
+ d_hash: called when the VFS adds a dentry to the hash table
+
+ d_compare: called when a dentry should be compared with another
+
+ d_delete: called when the last reference to a dentry is
+ deleted. This means no-one is using the dentry, however it is
+ still valid and in the dcache
+
+ d_release: called when a dentry is deallocated
+
+ d_iput: called when a dentry looses its inode (just prior to its
+ being deallocated). The default when this is NULL is that the
+ VFS calls iput(). If you define this method, you must call
+ iput() yourself
+
+Each dentry has a pointer to its parent dentry, as well as a hash list
+of child dentries. Child dentries are basically like files in a
+directory.
+
+There are a number of functions defined which permit a filesystem to
+manipulate dentries:
+
+ dget: open a new handle for an existing dentry (this just increments
+ the usage count)
+
+ dput: close a handle for a dentry (decrements the usage count). If
+ the usage count drops to 0, the "d_delete" method is called
+ and the dentry is placed on the unused list if the dentry is
+ still in its parents hash list. Putting the dentry on the
+ unused list just means that if the system needs some RAM, it
+ goes through the unused list of dentries and deallocates them.
+ If the dentry has already been unhashed and the usage count
+ drops to 0, in this case the dentry is deallocated after the
+ "d_delete" method is called
+ d_drop: this unhashes a dentry from its parents hash list. A
+ subsequent call to dput() will dellocate the dentry if its
+ usage count drops to 0
+
+ d_delete: delete a dentry. If there are no other open references to
+ the dentry then the dentry is turned into a negative dentry
+ (the d_iput() method is called). If there are other
+ references, then d_drop() is called instead
+
+ d_add: add a dentry to its parents hash list and then calls
+ d_instantiate()
+
+ d_instantiate: add a dentry to the alias hash list for the inode and
+ updates the "d_inode" member. The "i_count" member in the
+ inode structure should be set/incremented. If the inode
+ pointer is NULL, the dentry is called a "negative
+ dentry". This function is commonly called when an inode is
+ created for an existing negative dentry
diff --git a/Documentation/ftape.txt b/Documentation/ftape.txt
index db53cd828..b68de79b1 100644
--- a/Documentation/ftape.txt
+++ b/Documentation/ftape.txt
@@ -118,7 +118,7 @@ A. Changes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ftape-2.x didn't handle the MTBSF tape operation correctly. A MTBSF
call (i.e. "mt -f /dev/nqft0 bsf #COUNT") should space over #COUNT
- file marks and then position at the EOT tape side of the the file
+ file marks and then position at the EOT tape side of the file
mark. This has to be taken literally, i.e. "mt -f /dev/nqft0 bsf 1"
should simply position at the start of the current volume.
diff --git a/Documentation/hayes-esp.txt b/Documentation/hayes-esp.txt
index 3cd744c21..e0a570185 100644
--- a/Documentation/hayes-esp.txt
+++ b/Documentation/hayes-esp.txt
@@ -1,4 +1,4 @@
-HAYES ESP DRIVER VERSION 2.0
+HAYES ESP DRIVER VERSION 2.1
A big thanks to the people at Hayes, especially Alan Adamson. Their support
has enabled me to provide enhancements to the driver.
@@ -6,20 +6,26 @@ has enabled me to provide enhancements to the driver.
Please report your experiences with this driver to me (arobinso@nyx.net). I
am looking for both positive and negative feedback.
-*** IMPORTANT CHANGES FOR 2.0 ***
+*** IMPORTANT CHANGES FOR 2.1 ***
Support for PIO mode. Five situations will cause PIO mode to be used:
1) A multiport card is detected. PIO mode will always be used. (8 port cards
do not support DMA).
2) The DMA channel is set to an invalid value (anything other than 1 or 3).
3) The DMA buffer/channel could not be allocated. The port will revert to PIO
mode until it is reopened.
-4) Less than 33 bytes need to be transferred to/from the FIFOs. PIO mode will
-be used for that transfer only.
+4) Less than a specified number of bytes need to be transferred to/from the
+FIFOs. PIO mode will be used for that transfer only.
5) A port needs to do a DMA transfer and another port is already using the
DMA channel. PIO mode will be used for that transfer only.
-A patch for setserial (2.12) is included to allow the ESP enhanced mode
-configuration to be viewed and changed.
+Since the Hayes ESP seems to conflict with other cards (notably sound cards)
+when using DMA, DMA is turned off by default. To use DMA, it must be turned
+on explicitly, either with the "dma=" option described below or with
+setserial. A multiport card can be forced into DMA mode by using setserial;
+however, most multiport cards don't support DMA.
+
+The latest version of setserial allows the enhanced configuration of the ESP
+card to be viewed and modified.
***
This package contains the files needed to compile a module to support the Hayes
@@ -28,25 +34,14 @@ ESP card. The drivers are basically a modified version of the serial drivers.
Features:
- Uses the enhanced mode of the ESP card, allowing a wider range of
- interrupts and features than compatibilty mode
+ interrupts and features than compatibility mode
- Uses DMA and 16 bit PIO mode to transfer data to and from the ESP's FIFOs,
reducing CPU load
- Supports primary and secondary ports
-To compile/install:
-
-Examine the first section of esp.h to verify that the definitions are
-acceptable. If they are not, change them.
-DMA_CHANNEL must be either 1 or 3.
-ESP_BH should be set to a value not in use by the system. If the system
-is not configured with RISCOM8 support, the default should be fine.
-
-Examine the Makefile, and make any appropriate changes.
-Type 'make' to compile the module. The module will be called 'esp.o'. Typing
-'make install' will install the module in /lib/modules/misc. The module can
-be inserted and removed as usual (insmod, rmmod, etc.). The IRQs to use can
-be specified by using the irq= option. The format is:
+If the driver is compiled as a module, the IRQs to use can be specified by
+using the irq= option. The format is:
irq=[0x100],[0x140],[0x180],[0x200],[0x240],[0x280],[0x300],[0x380]
@@ -71,12 +66,12 @@ insmod esp divisor=0,0,0,0,0,0,0x84,0
The dma= option can be used to set the DMA channel. The channel can be either
1 or 3. Specifying any other value will force the driver to use PIO mode.
-For example, to set the dma channel to 3, the insmod command would be:
+For example, to set the DMA channel to 3, the insmod command would be:
insmod esp dma=3
The rx_trigger= and tx_trigger= options can be used to set the FIFO trigger
-levels. They specifie when the ESP card should send an interrupt. Larger
+levels. They specify when the ESP card should send an interrupt. Larger
values will decrease the number of interrupts; however, a value too high may
result in data loss. Valid values are 1 through 1023, with 768 being the
default. For example, to set the receive trigger level to 512 bytes and the
@@ -102,6 +97,12 @@ receive timeout to 255, the insmod command would be:
insmod esp rx_timeout=255
+The pio_threshold= option sets the threshold (in number of characters) for
+using PIO mode instead of DMA mode. For example, if this value is 32,
+transfers of 32 bytes or less will always use PIO mode.
+
+insmod esp pio_threshold=32
+
Multiple options can be listed on the insmod command line by separating each
option with a space. For example:
@@ -143,7 +144,7 @@ chmod 666 /dev/cup*
The ESP module and the serial module should not conflict (they can be used at
the same time). After the ESP module has been loaded the ports on the ESP card
-will no longer be accessable by the serial driver.
+will no longer be accessible by the serial driver.
If I/O errors are experienced when accessing the port, check for IRQ and DMA
conflicts ('cat /proc/interrupts' and 'cat /proc/dma' for a list of IRQs and
diff --git a/Documentation/ide.txt b/Documentation/ide.txt
index 7ee08c752..bd7c02389 100644
--- a/Documentation/ide.txt
+++ b/Documentation/ide.txt
@@ -136,7 +136,7 @@ The standard port, and irq values are these:
Note that the first parameter reserves 8 contiguous ioports, whereas the
second value denotes a single ioport. If in doubt, do a 'cat /proc/ioports'.
-In all probability the device uses these ports and irqs if it is attached
+In all probability the device uses these ports and IRQs if it is attached
to the appropriate ide channel. Pass the parameter for the correct ide
channel to the kernel, as explained above.
@@ -181,7 +181,7 @@ when the drive is jumpered correctly.
Courtesy of Scott Snyder, the driver supports ATAPI cdrom drives
such as the NEC-260 and the new MITSUMI triple/quad speed drives.
-Such drives will be identified at boot time, just like a harddisk.
+Such drives will be identified at boot time, just like a hard disk.
If for some reason your cdrom drive is *not* found at boot time, you can force
the probe to look harder by supplying a kernel command line parameter
@@ -191,7 +191,7 @@ via LILO, such as:
or
hdd=cdrom /* hdd = "slave" on second interface */
-For example, a GW2000 system might have a harddrive on the primary
+For example, a GW2000 system might have a hard drive on the primary
interface (/dev/hda) and an IDE cdrom drive on the secondary interface
(/dev/hdc). To mount a CD in the cdrom drive, one would use something like:
@@ -450,7 +450,7 @@ To ensure that LILO can boot linux, the boot files (kernel and /boot/*)
must reside within the first 1024 cylinders of the drive. If your linux
root partition is *not* completely within the first 1024 cyls (quite common),
then you can use LILO to boot linux from files on your DOS partition
-by doing the following after installing slackware (or whatever):
+by doing the following after installing Slackware (or whatever):
0. Boot from the "boot floppy" created during the installation
1. Mount your DOS partition as /dos (and stick it in /etc/fstab)
diff --git a/Documentation/initrd.txt b/Documentation/initrd.txt
index 220fcb150..acc2315a4 100644
--- a/Documentation/initrd.txt
+++ b/Documentation/initrd.txt
@@ -84,7 +84,7 @@ initrd adds the following new options:
the intermediate step of going via initrd adds a little speed
advantage and it allows the use of a compressed file system.
Also, together with LOADLIN you may load the RAM disk directly from
- CDrom or disk, hence having a floppyless boot from CD,
+ CDROM or disk, hence having a floppyless boot from CD,
e.g.: E:\loadlin E:\bzImage root=/dev/ram initrd=E:\rdimage
@@ -93,7 +93,7 @@ Installation
First, the "normal" root file system has to be prepared as follows:
-# mknod /dev/initrd b 0 250
+# mknod /dev/initrd b 1 250
# chmod 400 /dev/initrd
# mkdir /initrd
@@ -256,9 +256,9 @@ boot time, but the system loaded from initrd can use a user-friendly
dialog and it can also perform some sanity checks (or even some form of
auto-detection).
-Last not least, CDrom distributors may use it for better installation from CD,
-either using a LILO boot floppy and bootstrapping a bigger ramdisk via
-initrd from CD, or using LOADLIN to directly load the ramdisk from CD
+Last not least, CDROM distributors may use it for better installation from CD,
+either using a LILO boot floppy and bootstrapping a bigger RAM disk via
+initrd from CD, or using LOADLIN to directly load the RAM disk from CD
without need of floppies.
Since initrd is a fairly generic mechanism, it is likely that additional
diff --git a/Documentation/isdn/README b/Documentation/isdn/README
index cfe4beae4..1b226ada6 100644
--- a/Documentation/isdn/README
+++ b/Documentation/isdn/README
@@ -387,7 +387,7 @@ README for the ISDN-subsystem
command "isdnctrl addphone <InterfaceName> in <caller-id>"
Euro-ISDN does not transmit the leading '0' of the caller-id for an
incoming call, therefore you should configure it accordingly.
- If the real number for the dialout e.g. is "09311234567" the the number
+ If the real number for the dialout e.g. is "09311234567" the number
to configure here is "9311234567". The pattern-match function
works similar to the shell mechanism.
@@ -408,7 +408,7 @@ README for the ISDN-subsystem
Returns the EAZ of an interface.
"isdnctrl delphone <InterfaceName> in|out <number>"
- Deletes a number from one of the the access-lists of the interface.
+ Deletes a number from one of the access-lists of the interface.
"isdnctrl delif <InterfaceName>"
Removes the interface (and possible slaves) from the kernel.
diff --git a/Documentation/joystick.txt b/Documentation/joystick.txt
index eada60d0d..672d0ecfa 100644
--- a/Documentation/joystick.txt
+++ b/Documentation/joystick.txt
@@ -1,5 +1,5 @@
- PC Joystick driver v1.0.6 beta
- (c) 1997 Vojtech Pavlik <vojtech@atrey.karlin.mff.cuni.cz>
+ PC Joystick driver v1.0.9
+ (c) 1997 Vojtech Pavlik <vojtech@atrey.karlin.mff.cuni.cz>
----------------------------------------------------------------------------
1. Intro
@@ -8,20 +8,22 @@
resistor based) and digital (switch based) joysticks connected via the PC
game port. It can support up to 2 joysticks.
- Because the joystick driver is still in its beta stage I'm very interested
-in any problems you encounter while using it. Bug reports and success
-stories are also welcome.
+ Should you encounter any problems while using the driver, or joysticks
+this driver can't make complete use of, I'm very interested in hearing about
+them. Bug reports and success stories are also welcome.
2. Usage
~~~~~~~~
If you enable the joystick driver in the kernel configuration, all
-connected joysticks should be found automatically. If that doesn't work, you
-can pass the joystick driver the following kernel command line arguments:
+connected joysticks should be found automatically. The driver can detect
+standard two-axis two-button, and three-axis four-button joysticks only. If
+that isn't your case, you can pass the joystick driver the following kernel
+command line arguments:
js=0xXX,0xYY
Where XX and YY are bit masks for the two joysticks, with the bits
-representing:
+representing which buttons and axes of the joystick are present:
Bit | Explanation
-----------------
@@ -34,9 +36,6 @@ Bit | Explanation
6 | Button 2
7 | Button 3
- These bitmasks are ANDed with what's found by the driver and the result is
-used.
-
Another method of using the driver is loading it as a module. For that,
select `M' for this driver in the kernel configuration and insert the
module:
@@ -53,23 +52,19 @@ options joystick js=0xXX,0xYY
create the device files using mknod (man mknod for more info):
mknod /dev/js0 c 15 0
-mknod /dev/js1 c 15 1
+mknod /dev/js1 c 15 1
3. Calibration
~~~~~~~~~~~~~~
As of version 1.0 the calibration routines used in the joystick driver are
worth using. The idea of calibration is that you have to calibrate the
joystick only once, and then set the calibration at boot-time, thus removing
-the need of re-calibrating it in each program that uses it.
+the need of re-calibrating it in each program that uses it.
For calibration, use the jscal program, contained in the joystick package
which is available at:
-ftp://atrey.karlin.mff.cuni.cz/pub/local/vojtech/joystick/joystick-1.0.6.tar.gz
-
-And soon also at:
-
-ftp://sunsite.unc.edu/pub/Linux/kernel/patches/console/joystick-1.0.6.tar.gz
+ftp://atrey.karlin.mff.cuni.cz/pub/linux/joystick/joystick-1.0.9.tar.gz
4. Programming Interface
~~~~~~~~~~~~~~~~~~~~~~~~
@@ -88,65 +83,65 @@ be dropped in the future.
Thanks to the following authors that contributed to the joystick driver
development:
- 0.1-0.5 Arthur C. Smith <asmith@cbnewsd.att.com>
- 0.5 Eyal Lebedinsky <eyal@eyal.emu.id.au>
- 0.6 Jeff Tranter <tranter@software.mitel.com>
- 0.7 Carlos Puchol <cpg@cs.utexas.edu>
- 0.7.1-0.8 Matt Rhoten <mrhoten@oz.net>
- 0.7.3 Dan Fandrich <dan@fch.wimsey.bc.ca>
- 0.7.3 Sverker Wilberg <sverkerw@manila.docs.uu.se>
- 0.8 Hal Maney <maney@norden.com>
- 0.8 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
- 0.9 Alan Cox <alan@cymru.net>
- 0.9.0-1.0.6 Vojtech Pavlik <vojtech@atrey.karlin.mff.cuni.cz>
+ 0.1-0.5 Arthur C. Smith <asmith@cbnewsd.att.com>
+ 0.5 Eyal Lebedinsky <eyal@eyal.emu.id.au>
+ 0.6 Jeff Tranter <tranter@software.mitel.com>
+ 0.7 Carlos Puchol <cpg@cs.utexas.edu>
+ 0.7.1-0.8 Matt Rhoten <mrhoten@oz.net>
+ 0.7.3 Dan Fandrich <dan@fch.wimsey.bc.ca>
+ 0.7.3 Sverker Wilberg <sverkerw@manila.docs.uu.se>
+ 0.8 Hal Maney <maney@norden.com>
+ 0.8 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
+ 0.9 Alan Cox <alan@lxorguk.ukuu.org.uk>
+ 0.9.0-1.0.9 Vojtech Pavlik <vojtech@atrey.karlin.mff.cuni.cz>
6. Change Log
~~~~~~~~~~~~~
The current (1.0.x) version was originally based on the 0.7.3 version of
the joystick driver, which caused some inconsistencies in version numbering.
-The following log documents all changes done to the driver by various
+The following log documents all changes done to the driver by the above
contributors:
-Version 0.1 Original version
+Version 0.1 Original version
Works but lacks multi-joystick support
Version 0.2 Added multi-joystick support (minor 0 and 1)
- Added delay between measuring joystick axis
- Added scaling ioctl
+ Added delay between measuring joystick axis
+ Added scaling ioctl
Version 0.3 Modified scaling to use ints to prevent kernel
- panics 8-)
+ panics 8-)
Version 0.4 Linux 0.99.6 and fixed race condition in js_read.
- After looking at a schematic of a joystick card
- it became apparent that any write to the joystick
- port started ALL the joystick one shots. If the
- one that we are reading is short enough and the
- first one to be read, the second one will return
- bad data if its one shot has not expired when
- the joystick port is written for the second time.
- Thus solves the mystery delay problem in 0.2!
+ After looking at a schematic of a joystick card
+ it became apparent that any write to the joystick
+ port started ALL the joystick one shots. If the
+ one that we are reading is short enough and the
+ first one to be read, the second one will return
+ bad data if its one shot has not expired when
+ the joystick port is written for the second time.
+ Thus solves the mystery delay problem in 0.2!
Version 0.5 Upgraded the driver to the 0.99.9 kernel, added
- joystick support to the make config options,
- updated the driver to return the buttons as
- positive logic, and read both axis at once
- and added some new ioctls.
+ joystick support to the make config options,
+ updated the driver to return the buttons as
+ positive logic, and read both axis at once
+ and added some new ioctls.
Version 0.6 Made necessary changes to work with 0.99.15
- kernel (and hopefully 1.0). Also did some
- cleanup: indented code, fixed some typos, wrote
- man page, etc ...
-Version 0.7 Support for modules
+ kernel (and hopefully 1.0). Also did some
+ cleanup: indented code, fixed some typos, wrote
+ man page, etc ...
+Version 0.7 Support for modules
Version 0.7.1 Fix bug in reading button state of js1
- Add include so module compiles under recent kernels
+ Add include so module compiles under recent kernels
Version 0.7.3 Include directives changed for joystick.h
- Separated out joystick detection/counting, cleanup
- Fix for detection of 3-axis joysticks
- Better detection announcement
- Added I/O port registration, cleaned up code
+ Separated out joystick detection/counting, cleanup
+ Fix for detection of 3-axis joysticks
+ Better detection announcement
+ Added I/O port registration, cleaned up code
Version 0.8 New read loop
- Cleaned up #includes to allow #include of joystick.h with
- gcc -Wall and from g++
- Made js_init fail if it finds zero joysticks
- General source/comment cleanup
- Use of MOD_(INC|DEC)_USE_COUNT
- Changes to compile correctly under 1.3 in kernel or as module
+ Cleaned up #includes to allow #include of joystick.h with
+ gcc -Wall and from g++
+ Made js_init fail if it finds zero joysticks
+ General source/comment cleanup
+ Use of MOD_(INC|DEC)_USE_COUNT
+ Changes to compile correctly under 1.3 in kernel or as module
Version 0.9 Ported to 2.1.x
Reformatted to resemble Linux coding standard
Removed semaphore bug (we can dump the lot I think)
@@ -156,51 +151,63 @@ Version 0.9 Ported to 2.1.x
Removed 'save_busy'. Just set busy to 1.
Version 0.9.0 Based on 0.7.3
New read function that allows two axes to have the same value
- New joystick calibration code
- Real support for 3-axis joysticks
- CPU speed independent timeouts
- Reads may happen even for unwhole record size => cat /dev/js0 works
- Correct error for lseek
- /dev/js? can be read simultaneously by several processes
+ New joystick calibration code
+ Real support for 3-axis joysticks
+ CPU speed independent timeouts
+ Reads may happen even for unwhole record size => cat /dev/js0 works
+ Correct error for lseek
+ /dev/js? can be read simultaneously by several processes
Version 0.9.1 IOCTLs now obey general Linux IOCTL rules ('j' letter assigned)
- Use of verify_area result codes
+ Use of verify_area result codes
Fuzz correction added
- Semaphore and many cli()'s removed
- Fix for TurboFire joysticks - read buttons always
- Fix for broken joysticks - return with -ENODEV only if joystick
- completely disconnected
- Fix in read function to allow zero results
- Broken line correction added for broken joysticks (eg. JB-500)
- Timeouts back separated for easier setting
- Some fixes and cleanups in read function
+ Semaphore and many cli()'s removed
+ Fix for TurboFire joysticks - read buttons always
+ Fix for broken joysticks - return with -ENODEV only if joystick
+ completely disconnected
+ Fix in read function to allow zero results
+ Broken line correction added for broken joysticks (eg. JB-500)
+ Timeouts back separated for easier setting
+ Some fixes and cleanups in read function
Version 0.9.2 Fixed a typo causing nothing to be working
Version 1.0.0 Event approach started
Version 1.0.1 Complete rewrite
Compiles but doesn't work
Version 1.0.2 Works, many bugs fixed, more yet to come
Version 1.0.3 Tail cutting logic changes & fixes
- Fix in js_do_bh - no more zero values for axes
- Lost event changes & fixes
+ Fix in js_do_bh - no more zero values for axes
+ Lost event changes & fixes
Version 1.0.4 Kernel command line & module configuration support
- Better cli()/sti() handling
- Linux 2.1.25 select => poll changes
+ Better cli()/sti() handling
+ Linux 2.1.25 select => poll changes
Version 1.0.5 Fixes in calibration routines
Better jscal
Version 1.0.6 Backward compatibility with old js driver added
- Init value after recalibration bug fixed
+ Init value after recalibration bug fixed
Using KERN_* printk() codes
- Finally leaving ALPHA and going beta
- Cosmetic changes
+ Finally leaving ALPHA and going beta
+ Cosmetic changes
+Version 1.0.7 Readme update
+ Linux 2.1.89 poll update
+ Compatibility mode fix - refresh data after open
+ Cosmetic changes & cleanup
+Version 1.0.8 Changing the __u16 data to __s16 in event packet
+ The range is now -32727..0..32767
+ Broken line correction needs 2 coefs less
+ Fix to report number of buttons correctly
+ Removed various trailing spaces
+Version 1.0.9 Fix for compatibility mode - don't do correction
+ Fix max number of module parameters
7. To do
~~~~~~~~
Sooner or later I'll get to these:
- Backport & create patches for 2.0
- Try using Pentium timers for better precision
- Create patches for most common programs using joystick
- Support for cards with hw calibration (Gravis Ultrasound, QuickShot)
- Support for multiport cards (QuickShot 4-joy board)
- Support for multiaxis, multibutton joysticks (Gravis Firebird)
- Support for MS digital joystick
+ Make an optional read routine using Pentium timers for better precision (*)
+ Support for hats and more buttons ala CH Flightstick (*)
+ Support for hats ala TM FCS (*)
+ Include support for MS SideWinder digital mode (*)
+ Create patches for most common programs using joystick
+ Support for cards with HW speed compensation
+ Support for more than one joystick port
+ (*) - Already in the development 1.1 version.
diff --git a/Documentation/kmod.txt b/Documentation/kmod.txt
index 87a03429f..759a300b1 100644
--- a/Documentation/kmod.txt
+++ b/Documentation/kmod.txt
@@ -34,8 +34,8 @@ myself).
If kerneld worked, why replace it?
-- kerneld used sysv ipc, which can now be made into a module. Besides,
- sysv ipc is ugly and should therefore be avoided (well, certainly for
+- kerneld used SysV IPC, which can now be made into a module. Besides,
+ SysV IPC is ugly and should therefore be avoided (well, certainly for
kernel level stuff)
- both kmod and kerneld end up doing the same thing (calling modprobe),
@@ -44,4 +44,4 @@ If kerneld worked, why replace it?
- removing kerneld related stuff from ipc/msg.c made it 40% smaller
- kmod reports errors through the normal kernel mechanisms, which avoids
- the chicken and egg problem of kerneld and modular unix domain sockets
+ the chicken and egg problem of kerneld and modular Unix domain sockets
diff --git a/Documentation/magic-number.txt b/Documentation/magic-number.txt
index ca5c3e20c..4449732ab 100644
--- a/Documentation/magic-number.txt
+++ b/Documentation/magic-number.txt
@@ -26,7 +26,7 @@ structures following the array have been overwritten. Using this
discipline, these cases get detected quickly and safely.
Theodore Ts'o
- 31-Mar-94
+ 31 Mar 94
The magic table is current to Linux 2.1.55.
@@ -34,42 +34,65 @@ The magic table is current to Linux 2.1.55.
<mailto:mec@shout.net>
22 Sep 1997
+Now it should be up to date with Linux 2.1.112. Because
+we are in feature freeze time it is very unlikely that
+something will change before 2.2.x. The entries are
+sorted by number field.
+ Krzysztof G. Baranowski
+ <mailto: kgb@knm.org.pl>
+ 29 Jul 1998
-Magic Name Number Structure File
+Magic Name Number Structure File
===========================================================================
-
+PG_MAGIC 'P' pg_{read,write}_hdr include/linux/pg.h
MKISS_DRIVER_MAGIC 0x04bf mkiss_channel drivers/net/mkiss.h
RISCOM8_MAGIC 0x0907 riscom_port drivers/char/riscom8.h
APM_BIOS_MAGIC 0x4101 apm_bios_struct include/linux/apm_bios.h
CYCLADES_MAGIC 0x4359 cyclades_port include/linux/cyclades.h
FASYNC_MAGIC 0x4601 fasync_struct include/linux/fs.h
+PTY_MAGIC 0x5001 (none at the moment)
+ drivers/char/pty.c
PPP_MAGIC 0x5002 ppp include/linux/if_ppp.h
SERIAL_MAGIC 0x5301 async_struct include/linux/serial.h
SSTATE_MAGIC 0x5302 serial_state include/linux/serial.h
SLIP_MAGIC 0x5302 slip drivers/net/slip.h
STRIP_MAGIC 0x5303 strip drivers/net/strip.c
X25_ASY_MAGIC 0x5303 x25_asy drivers/net/x25_asy.h
+SIXPACK_MAGIC 0x5304 sixpack drivers/net/hamradio/6pack.h
AX25_MAGIC 0x5316 ax_disp drivers/net/mkiss.h
ESP_MAGIC 0x53ee esp_struct drivers/char/esp.h
TTY_MAGIC 0x5401 tty_struct include/linux/tty.h
TTY_DRIVER_MAGIC 0x5402 tty_driver include/linux/tty_driver.h
TTY_LDISC_MAGIC 0x5403 tty_ldisc include/linux/tty_ldisc.h
SCC_MAGIC 0x8530 scc_channel include/linux/scc.h
+SPECIALIX_MAGIC 0x0907 specialix_port drivers/char/specialix_io8.h
+CG_MAGIC 0x090255 ufs_cylinder_group include/linux/ufs_fs.h
RPORT_MAGIC 0x525001 r_port drivers/char/rocket_int.h
-SLAB_C_MAGIC 0x4f17a36d kmem_cache_s mm/slab.c
+GDTIOCTL_MAGIC 0x06030f07 gdth_iowr_str drivers/scsi/gdth_ioctl.h
+NBD_REQUEST_MAGIC 0x12560953 nbd_request include/linux/nbd.h
SLAB_RED_MAGIC2 0x170fc2a5 (any) mm/slab.c
+BAYCOM_MAGIC 0x19730510 baycom_state drivers/net/baycom_epp.c
+ISDN_X25IFACE_MAGIC 0x1e75a2b9 isdn_x25iface_proto_data
+ drivers/isdn/isdn_x25iface.h
ECP_MAGIC 0x21504345 cdkecpsig include/linux/cdk.h
+LSMAGIC 0x2a3b4d2a ls drivers/fc4/fc.c
+LSOMAGIC 0x2a3c4e3c lso drivers/fc4/fc.c
+WANPIPE_MAGIC 0x414C4453 sdla_{dump,exec} include/linux/wanpipe.h
+CODA_CNODE_MAGIC 0x47114711 coda_inode_info include/linux/coda_fs_i.h
ISDN_ASYNC_MAGIC 0x49344C01 modem_info include/linux/isdn.h
ISDN_NET_MAGIC 0x49344C02 isdn_net_local_s include/linux/isdn.h
STLI_BOARDMAGIC 0x4bc6c825 stlibrd include/linux/istallion.h
+SLAB_C_MAGIC 0x4f17a36d kmem_cache_s mm/slab.c
ROUTER_MAGIC 0x524d4157 wan_device include/linux/wanrouter.h
SLAB_RED_MAGIC1 0x5a2cf071 (any) mm/slab.c
STL_PORTMAGIC 0x5a7182c9 stlport include/linux/stallion.h
HDLCDRV_MAGIC 0x5ac6e778 hdlcdrv_state include/linux/hdlcdrv.h
-EPCA_MAGIC 0x5c6df104 channel include/linux/epca.h
+EPCA_MAGIC 0x5c6df104 channel include/linux/epca.h
PCXX_MAGIC 0x5c6df104 channel drivers/char/pcxx.h
+LO_MAGIC 0x68797548 nbd_device include/linux/nbd.h
STL_PANELMAGIC 0x7ef621a1 stlpanel include/linux/stallion.h
+NBD_REPLY_MAGIC 0x96744668 nbd_reply include/linux/nbd.h
STL_BOARDMAGIC 0xa2267f52 stlbrd include/linux/stallion.h
SLAB_MAGIC_ALLOC 0xa5c32f2b kmem_slab_s mm/slab.c
SLAB_MAGIC_DESTROYED 0xb2f23c5a kmem_slab_s mm/slab.c
diff --git a/Documentation/mca.txt b/Documentation/mca.txt
index 23df12b57..75facdf98 100644
--- a/Documentation/mca.txt
+++ b/Documentation/mca.txt
@@ -159,12 +159,12 @@ Currently, there are a number of MCA-specific device drivers.
3) 3c523
drivers/net/3c523.c
drivers/net/3c523.h
- 3Com 3c523 Etherlink/MC ethernet driver.
+ 3Com 3c523 Etherlink/MC Ethernet driver.
4) SMC Ultra/MCA
drivers/net/smc-mca.c
drivers/net/smc-mca.h
- Elite/A (8013EP/A) and Elite10T/A (8013WP/A) ethernet driver
+ Elite/A (8013EP/A) and Elite10T/A (8013WP/A) Ethernet driver
As well, drivers/char/psaux.c was modified to support IRQ sharing (it's
#ifdef CONFIG_MCA'ed, for your convenience, although PCI users might be
diff --git a/Documentation/networking/00-INDEX b/Documentation/networking/00-INDEX
index aa3c596fc..e3981efff 100644
--- a/Documentation/networking/00-INDEX
+++ b/Documentation/networking/00-INDEX
@@ -73,7 +73,7 @@ soundmodem.txt
tcp.txt
- short blurb on how TCP output takes place.
tulip.txt
- - info on using DEC 21040/21041/21140 based PCI ethernet cards.
+ - info on using DEC 21040/21041/21140 based PCI Ethernet cards.
vortex.txt
- info on using 3Com Vortex (3c590, 3c592, 3c595, 3c597) e'net cards.
wan-router.txt
diff --git a/Documentation/networking/DLINK.txt b/Documentation/networking/DLINK.txt
index 6caabdf4b..9dafab262 100644
--- a/Documentation/networking/DLINK.txt
+++ b/Documentation/networking/DLINK.txt
@@ -72,7 +72,7 @@ Released 1994-06-13
o Get the latest net binaries, according to current net.wisdom.
- o Read the NET-2 and Ethernet HOWTO's and modify your setup.
+ o Read the NET-2 and Ethernet HOWTOs and modify your setup.
o If your parallel port has a strange address or irq,
modify "linux/drivers/net/CONFIG" accordingly, or adjust
diff --git a/Documentation/networking/PLIP.txt b/Documentation/networking/PLIP.txt
index c2bb44fdb..b3539f5f9 100644
--- a/Documentation/networking/PLIP.txt
+++ b/Documentation/networking/PLIP.txt
@@ -45,13 +45,13 @@ Disadvantages of PLIP
Doesn't work over a modem, like SLIP and PPP. Limited range, 15 m.
Can only be used to connect three (?) Linux boxes. Doesn't connect to
-an existing ethernet. Isn't standard (not even de facto standard, like
+an existing Ethernet. Isn't standard (not even de facto standard, like
SLIP).
Performance
==========
-PLIP easily outperforms ethernet cards....(ups, I was dreaming, but
+PLIP easily outperforms Ethernet cards....(ups, I was dreaming, but
it *is* getting late. EOB)
PLIP hardware interconnection
diff --git a/Documentation/networking/arcnet-hardware.txt b/Documentation/networking/arcnet-hardware.txt
index 55c2576c1..ce623ed5c 100644
--- a/Documentation/networking/arcnet-hardware.txt
+++ b/Documentation/networking/arcnet-hardware.txt
@@ -17,11 +17,11 @@ other information you have!
INTRODUCTION TO ARCNET
----------------------
-ARCnet is a network type which works in a way similar to popular "ethernet"
+ARCnet is a network type which works in a way similar to popular Ethernet
networks but which is also different in some very important ways.
First of all, you can get ARCnet cards in at least two speeds: 2.5Mbps
-(slower than ethernet) and 100Mbps (faster than normal ethernet). In fact,
+(slower than Ethernet) and 100Mbps (faster than normal Ethernet). In fact,
there are others as well, but these are less common. The different hardware
types, as far as I'm aware, are not compatible and so you cannot wire a
100Mbps card to a 2.5Mbps card, and so on. From what I hear, my driver does
@@ -29,7 +29,7 @@ work with 100Mbps cards, but I haven't been able to verify this myself,
since I only have the 2.5Mbps variety. It is probably not going to saturate
your 100Mbps card. Stop complaining :)
-You also cannot connect an ARCnet card to any kind of ethernet card and
+You also cannot connect an ARCnet card to any kind of Ethernet card and
expect it to work.
There are two "types" of ARCnet - STAR topology and BUS topology. This
@@ -41,7 +41,7 @@ true; see below under "Cabling."
Once you get past these little stumbling blocks, ARCnet is actually quite a
well-designed standard. It uses something called "modified token passing"
which makes it completely incompatible with so-called "Token Ring" cards,
-but which makes transfers much more reliable than ethernet does. In fact,
+but which makes transfers much more reliable than Ethernet does. In fact,
ARCnet will guarantee that a packet arrives safely at the destination, and
even if it can't possibly be delivered properly (ie. because of a cable
break, or because the destination computer does not exist) it will at least
@@ -53,9 +53,9 @@ useful for realtime networks.
In addition, all known ARCnet cards have an (almost) identical programming
interface. This means that with one "arcnet" driver you can support any
-card; whereas, with ethernet, each manufacturer uses what is sometimes a
+card; whereas, with Ethernet, each manufacturer uses what is sometimes a
completely different programming interface, leading to a lot of different,
-sometimes very similar, ethernet drivers. Of course, always using the same
+sometimes very similar, Ethernet drivers. Of course, always using the same
programming interface also means that when high-performance hardware
facilities like PCI busmastering DMA appear, it's hard to take advantage of
them. Let's not go into that.
@@ -63,10 +63,10 @@ them. Let's not go into that.
One thing that makes ARCnet cards difficult to program for, however, is the
limit on their packet sizes; standard ARCnet can only send packets that are
up to 508 bytes in length. This is smaller than the internet "bare minimum"
-of 576 bytes, let alone the ethernet MTU of 1500. To compensate, an extra
+of 576 bytes, let alone the Ethernet MTU of 1500. To compensate, an extra
level of encapsulation is defined by RFC1201, which I call "packet
splitting," that allows "virtual packets" to grow as large as 64K each,
-although they are generally kept down to the ethernet-style 1500 bytes.
+although they are generally kept down to the Ethernet-style 1500 bytes.
For more information on the advantages and disadvantages (mostly the
advantages) of ARCnet networks, you might try the "ARCnet Trade Association"
@@ -319,7 +319,7 @@ All ARCnet cards should have a total of four or five different settings:
- Avery's favourite: 0xD0000
- the station address: Every ARCnet card has its own "unique" network
- address from 0 to 255. Unlike ethernet, you can set this address
+ address from 0 to 255. Unlike Ethernet, you can set this address
yourself with a jumper or switch (or on some cards, with special
software). Since it's only 8 bits, you can only have 254 ARCnet cards
on a network. DON'T use 0 or 255, since these are reserved (although
@@ -1169,7 +1169,7 @@ Carl de Billy <CARL@carainfo.com> explains J3 and J4:
DIP Switches:
- The dipswitches accessible on the accessible end of the card while
+ The DIP switches accessible on the accessible end of the card while
it is installed, is used to set the arcnet address. There are 8
switches. Use an address from 1 to 254.
@@ -1184,7 +1184,7 @@ DIP Switches:
11111110 1
11111111 0 (Don't use this!)
- There is another dipswitch array of 8 switches at the top of the
+ There is another array of eight DIP switches at the top of the
card. There are five labelled MS0-MS4 which seem to control the
memory address, and another three labelled IO0-IO2 which seem to
control the base I/O address of the card.
diff --git a/Documentation/networking/arcnet.txt b/Documentation/networking/arcnet.txt
index eb687ea07..17f40fb53 100644
--- a/Documentation/networking/arcnet.txt
+++ b/Documentation/networking/arcnet.txt
@@ -216,10 +216,10 @@ on the kernel command line, as detailed above.
Go read the NET-2-HOWTO and ETHERNET-HOWTO for Linux; they should be
available where you picked up this driver. Think of your ARCnet as a
-souped-up (or down, as the case may be) ethernet card.
+souped-up (or down, as the case may be) Ethernet card.
By the way, be sure to change all references from "eth0" to "arc0" in the
-HOWTOs. Remember that ARCnet isn't a "true" ethernet, and the device name
+HOWTOs. Remember that ARCnet isn't a "true" Ethernet, and the device name
is DIFFERENT.
@@ -245,7 +245,7 @@ The ARCnet drivers will now sort out their names automatically.
How do I get it to work with...?
--------------------------------
-NFS: Should be fine linux->linux, just pretend you're using ethernet cards.
+NFS: Should be fine linux->linux, just pretend you're using Ethernet cards.
oak.oakland.edu:/simtel/msdos/nfs has some nice DOS clients. There
is also a DOS-based NFS server called SOSS. It doesn't multitask
quite the way Linux does (actually, it doesn't multitask AT ALL) but
@@ -271,7 +271,7 @@ Windows: See DOS :) Trumpet Winsock works fine with either the Novell or
LAN Manager and Windows for Workgroups: These programs use protocols that
are incompatible with the internet standard. They try to pretend
- the cards are ethernet, and confuse everyone else on the network.
+ the cards are Ethernet, and confuse everyone else on the network.
However, v2.00 and higher of the Linux ARCnet driver supports this
protocol via the 'arc0e' device. See the section on "Multiprotocol
diff --git a/Documentation/networking/baycom.txt b/Documentation/networking/baycom.txt
index 8d7547688..8d5bc3566 100644
--- a/Documentation/networking/baycom.txt
+++ b/Documentation/networking/baycom.txt
@@ -1,9 +1,41 @@
- LINUX DRIVER FOR BAYCOM MODEMS
+ LINUX DRIVERS FOR BAYCOM MODEMS
Thomas M. Sailer, HB9JNX/AE4WA, <sailer@ife.ee.ethz.ch>
-This document describes the Linux Kernel Driver for simple Baycom style
-amateur radio modems. The driver supports the following modems:
+!!NEW!! (04/98) The drivers for the baycom modems have been split into
+separate drivers as they did not share any code, and the driver
+and device names have changed.
+
+This document describes the Linux Kernel Drivers for simple Baycom style
+amateur radio modems.
+
+The following drivers are available:
+
+baycom_ser_fdx:
+ This driver supports the SER12 modems either full or half duplex.
+ Its baud rate may be changed via the `baud' module parameter,
+ therefore it supports just about every bit bang modem on a
+ serial port. Its devices are called bcsf0 through bcsf3.
+ This is the recommended driver for SER12 type modems,
+ however if you have a broken UART clone that does not have working
+ delta status bits, you may try baycom_ser_hdx.
+
+baycom_ser_hdx:
+ This is an alternative driver for SER12 type modems.
+ It only supports half duplex, and only 1200 baud. Its devices
+ are called bcsh0 through bcsh3. Use this driver only if baycom_ser_fdx
+ does not work with your UART.
+
+baycom_par:
+ This driver supports the par96 and picpar modems.
+ Its devices are called bcp0 through bcp3.
+
+baycom_epp:
+ This driver supports the epp modem.
+ Its devices are called bce0 through bce3.
+ This driver is work-in-progress.
+
+The following modems are supported:
ser12: This is a very simple 1200 baud AFSK modem. The modem consists only
of a modulator/demodulator chip, usually a TI TCM3105. The computer
@@ -28,6 +60,13 @@ picpar: This is a redesign of the par96 modem by Henning Rech, DF9IC. The modem
an additional power supply. Furthermore, it incorporates a carrier
detect circuitry.
+epp: This is a high speed modem adaptor that connects to an enhanced parallel port.
+ Its target audience is users working over a high speed hub (76.8kbit/s).
+
+eppfpga: This is a redesign of the epp adaptor.
+
+
+
All of the above modems only support half duplex communications. However,
the driver supports the KISS (see below) fullduplex command. It then simply
starts to send as soon as there's a packet to transmit and does not care
@@ -36,11 +75,11 @@ This command is required by some implementations of the DAMA channel
access protocol.
-The Interface of the driver
+The Interface of the drivers
-Unlike previous drivers, the driver is no longer a character device,
-but it is now a true kernel network interface. Installation is therefore
-simple. Once installed, four interfaces named bc[0-3] are available.
+Unlike previous drivers, these drivers are no longer character devices,
+but they are now true kernel network interfaces. Installation is therefore
+simple. Once installed, four interfaces named bc{sf,sh,p,e}[0-3] are available.
sethdlc from the ax25 utilities may be used to set driver states etc.
Users of userland AX.25 stacks may use the net2kiss utility (also available
in the ax25 utilities package) to convert packets of a network interface
@@ -50,27 +89,27 @@ me for WAMPES which allows attaching a kernel network interface directly.
Configuring the driver
-Every time the driver is inserted into the kernel, it has to know which
+Every time a driver is inserted into the kernel, it has to know which
modems it should access at which ports. This can be done with the setbaycom
utility. If you are only using one modem, you can also configure the
driver from the insmod command line (or by means of an option line in
/etc/conf.modules).
Examples:
- insmod baycom modem=1 iobase=0x3f8 irq=4 options=1
- sethdlc -i bc0 -p type ser12 io 0x3f8 irq 4 options 1
+ insmod baycom_ser_fdx mode="ser12*" iobase=0x3f8 irq=4
+ sethdlc -i bcsf0 -p mode "ser12*" io 0x3f8 irq 4
Both lines configure the first port to drive a ser12 modem at the first
-serial port (COM1 under DOS). options=1 instructs the driver to use
+serial port (COM1 under DOS). The * in the mode parameter instructs the driver to use
the software DCD algorithm (see below).
- insmod baycom modem=2 iobase=0x378 irq=7 options=1
- sethdlc -i bc0 -p type par96 io 0x378 irq 7 options 1
+ insmod baycom_par mode="picpar" iobase=0x378
+ sethdlc -i bcp0 -p mode "picpar" io 0x378
+
+Both lines configure the first port to drive a picpar modem at the
+first parallel port (LPT1 under DOS). (Note: picpar implies
+hardware DCD, par96 implies software DCD).
-Both lines configure the first port to drive a par96 or par97 modem at the
-first parallel port (LPT1 under DOS). options=1 instructs the driver to use
-the software DCD algorithm (see below).
-
The channel access parameters can be set with sethdlc -a or kissparms.
Note that both utilities interpret the values slightly differently.
@@ -93,25 +132,26 @@ par96: the software DCD algorithm for this type of modem is rather poor.
feeds the DCD input of the PAR96 modem, the use of the hardware
DCD circuitry is recommended.
-picpar: the picpar modem features builtin DCD hardware, which is highly
+picpar: the picpar modem features a builtin DCD hardware, which is highly
recommended.
Compatibility with the rest of the Linux kernel
-The serial driver, the line printer (lp) driver and the baycom driver compete
+The serial driver and the baycom serial drivers compete
for the same hardware resources. Of course only one driver can access a given
interface at a time. The serial driver grabs all interfaces it can find at
-startup time. Therefore the baycom driver subsequently won't be able to
+startup time. Therefore the baycom drivers subsequently won't be able to
access a serial port. You might therefore find it necessary to release
a port owned by the serial driver with 'setserial /dev/ttyS# uart none', where
-# is the number of the interface. The baycom driver does not reserve any
-port at startup, unless one is specified on the 'insmod' command line. Another
-method to solve the problem is to compile all three drivers as modules and
-leave it to kerneld to load the correct driver depending on the application.
-
+# is the number of the interface. The baycom drivers do not reserve any
+ports at startup, unless one is specified on the 'insmod' command line. Another
+method to solve the problem is to compile all drivers as modules and
+leave it to kmod to load the correct driver depending on the application.
+The parallel port drivers (baycom_par, baycom_epp) now use the parport subsystem
+to arbitrate the ports between different client drivers.
vy 73s de
Tom Sailer, sailer@ife.ee.ethz.ch
diff --git a/Documentation/networking/cs89x0.txt b/Documentation/networking/cs89x0.txt
index 895df60df..78561b9f4 100644
--- a/Documentation/networking/cs89x0.txt
+++ b/Documentation/networking/cs89x0.txt
@@ -72,7 +72,7 @@ loaded at run-time as a device driver module.
1.2.2 Files in the Driver Archive:
readme.txt - this file
- release.txt - known defects and modifcation log
+ release.txt - known defects and modification log
cs89x0.c - driver C code
cs89x0.h - driver header file
cs89x0.o - pre-compiled module (for v2.0 kernel)
@@ -196,7 +196,7 @@ Example:
insmod cs89x0.o io=0x200 irq=0xA media=aui
-This exmaple loads the module and configures the adapter to use an IO port base
+This example loads the module and configures the adapter to use an IO port base
address of 200h, interrupt 10, and use the AUI media connection. The following
configuration options are available on the command line:
@@ -235,7 +235,7 @@ is:
* irq
* media type (no autodetect)
-The following addtional parameters are CS89XX defaults (values used with no
+The following additional parameters are CS89XX defaults (values used with no
EEPROM or command-line argument).
* DMA Burst = enabled
@@ -545,8 +545,8 @@ I/O Address Device IRQ Device
12 Mouse (PS/2)
Memory Address Device 13 Math Coprocessor
-------------- --------------------- 14 Hard Disk controller
-A000-BFFF EGA Graphics Adpater
-A000-C7FF VGA Graphics Adpater
+A000-BFFF EGA Graphics Adapter
+A000-C7FF VGA Graphics Adapter
B000-BFFF Mono Graphics Adapter
B800-BFFF Color Graphics Adapter
E000-FFFF AT BIOS
diff --git a/Documentation/networking/de4x5.txt b/Documentation/networking/de4x5.txt
index d82b19c74..88378de77 100644
--- a/Documentation/networking/de4x5.txt
+++ b/Documentation/networking/de4x5.txt
@@ -1,5 +1,5 @@
Originally, this driver was written for the Digital Equipment
- Corporation series of EtherWORKS ethernet cards:
+ Corporation series of EtherWORKS Ethernet cards:
DE425 TP/COAX EISA
DE434 TP PCI
diff --git a/Documentation/networking/dgrs.txt b/Documentation/networking/dgrs.txt
index 58af33a08..d37d1c41a 100644
--- a/Documentation/networking/dgrs.txt
+++ b/Documentation/networking/dgrs.txt
@@ -1,7 +1,7 @@
The Digi Intl. RightSwitch SE-X (dgrs) Device Driver
This is a Linux driver for the Digi International RightSwitch SE-X
-EISA and PCI boards. These are 4 (EISA) or 6 (PCI) port ethernet
+EISA and PCI boards. These are 4 (EISA) or 6 (PCI) port Ethernet
switches and a NIC combined into a single board. This driver can
be compiled into the kernel statically or as a loadable module.
diff --git a/Documentation/networking/eql.txt b/Documentation/networking/eql.txt
index 0694f528c..0f1550150 100644
--- a/Documentation/networking/eql.txt
+++ b/Documentation/networking/eql.txt
@@ -33,7 +33,7 @@
TCP implementation is pretty fast though.--)
- I suggest to ISP's out there that it would probably be fair to charge
+ I suggest to ISPs out there that it would probably be fair to charge
a load-balancing client 75% of the cost of the second line and 50% of
the cost of the third line etc...
diff --git a/Documentation/networking/ethertap.txt b/Documentation/networking/ethertap.txt
index 8b7ab4be4..27202efba 100644
--- a/Documentation/networking/ethertap.txt
+++ b/Documentation/networking/ethertap.txt
@@ -7,7 +7,7 @@ Introduction
============
Ethertap provides packet reception and transmission for user
-space programs. It can be viewed as a simple ethernet device,
+space programs. It can be viewed as a simple Ethernet device,
which instead of receiving packets from a network wire, it receives
them from user space.
diff --git a/Documentation/networking/ewrk3.txt b/Documentation/networking/ewrk3.txt
index bea97f4e2..0427c6c8f 100644
--- a/Documentation/networking/ewrk3.txt
+++ b/Documentation/networking/ewrk3.txt
@@ -35,9 +35,9 @@ sequences). To utilise this ability, you have to do 8 things:
'ifconfig eth?? down' then 'rmmod ewrk3'.
The performance we've achieved so far has been measured through the 'ttcp'
-tool at 975kB/s. This measures the total tcp stack performance which
+tool at 975kB/s. This measures the total TCP stack performance which
includes the card, so don't expect to get much nearer the 1.25MB/s
-theoretical ethernet rate.
+theoretical Ethernet rate.
Enjoy!
diff --git a/Documentation/networking/filter.txt b/Documentation/networking/filter.txt
index 370cb92f8..be865f352 100644
--- a/Documentation/networking/filter.txt
+++ b/Documentation/networking/filter.txt
@@ -15,7 +15,7 @@ the same filter code structure as the BSD Berkeley Packet Filter
(BPF), so refering to the BSD bpf.4 manpage is very helpful in
creating filters.
-LSF is much simpler that BPF. One does not have to worry about
+LSF is much simpler than BPF. One does not have to worry about
devices or anything like that. You simply create your filter
code, send it to the kernel via the SO_ATTACH_FILTER ioctl and
if your filter code passes the kernel check on it, you then
diff --git a/Documentation/networking/framerelay.txt b/Documentation/networking/framerelay.txt
index f02b133d1..1a0b72044 100644
--- a/Documentation/networking/framerelay.txt
+++ b/Documentation/networking/framerelay.txt
@@ -8,8 +8,8 @@ Each DLCI is a point-to-point link between your machine and a remote one.
As such, a separate device is needed to accommodate the routing. Within the
net-tools archives is 'dlcicfg'. This program will communicate with the
base "DLCI" device, and create new net devices named 'dlci00', 'dlci01'...
-The configuration script will ask you how many DLCI's you need, as well as
-how many DLCI's you want to assign to each Frame Relay Access Device (FRAD).
+The configuration script will ask you how many DLCIs you need, as well as
+how many DLCIs you want to assign to each Frame Relay Access Device (FRAD).
The DLCI uses a number of function calls to communicate with the FRAD, all
of which are stored in the FRAD's private data area. assoc/deassoc,
diff --git a/Documentation/networking/ip-sysctl.txt b/Documentation/networking/ip-sysctl.txt
index ab794ef77..1d015b2e2 100644
--- a/Documentation/networking/ip-sysctl.txt
+++ b/Documentation/networking/ip-sysctl.txt
@@ -1,8 +1,10 @@
-/proc/sys/net/ipv4/* variables:
+/proc/sys/net/ipv4/* Variables:
-ip_forwarding - "SNMP" BOOLEAN
- 2 - disabled (default)
- 1 - enabled
+ip_forward - BOOLEAN
+ 0 - disabled (default)
+ not 0 - enabled
+
+ Forward Packets between interfaces.
This variable is special, its change resets all configuration
parameters to their default state (RFC1122 for hosts, RFC1812
@@ -11,32 +13,11 @@ ip_forwarding - "SNMP" BOOLEAN
ip_default_ttl - INTEGER
default 64
-ip_log_martians - BOOLEAN
- log packets with strange or impossible addresses.
- default TRUE (router)
- FALSE (host)
-
-ip_accept_redirects - BOOLEAN
- Accept ICMP redirect messages.
- default TRUE (host)
- FALSE (router)
-
-ip_secure_redirects - BOOLEAN
- Accept ICMP redirect messages only for gateways,
- listed in default gateway list.
- default TRUE
-
ip_addrmask_agent - BOOLEAN
Reply to ICMP ADDRESS MASK requests.
default TRUE (router)
FALSE (host)
-ip_rfc1620_redirects - BOOLEAN
- Send(router) or accept(host) RFC1620 shared media redirects.
- Overrides ip_secure_redirects.
- default TRUE (should be FALSE for distributed version,
- but I use it...)
-
ip_bootp_agent - BOOLEAN
Accept packets with source address of sort 0.b.c.d
and destined to this host, broadcast or multicast.
@@ -44,46 +25,10 @@ ip_bootp_agent - BOOLEAN
default FALSE
-ip_bootp_relay - BOOLEAN
- Accept packets with source address 0.b.c.d destined
- not to this host as local ones. It is supposed, that
- BOOTP relay deamon will catch and forward such packets.
-
- default FALSE
- Not Implemented Yet.
-
-
-ip_source_route - BOOLEAN
- Accept packets with SRR option.
- default TRUE (router)
- FALSE (host)
-
-
ip_no_pmtu_disc - BOOLEAN
Disable Path MTU Discovery.
default FALSE
-ip_rfc1812_filter - INTEGER
- 2 - do source validation by reversed path, as specified in RFC1812
- Recommended option for single homed hosts and stub network
- routers. Could cause troubles for complicated (not loop free)
- networks running a slow unreliable protocol (sort of RIP),
- or using static routes.
-
- 1 - (DEFAULT) Weaker form of RP filtering: drop all the packets
- that look as sourced at a directly connected interface, but
- were input from another interface.
-
- 0 - No source validation.
-
- NOTE: do not disable this option! All BSD derived routing software
- (sort of gated, routed etc. etc.) is confused by such packets,
- even if they are valid.
-
- NOTE: this option is turned on per default only when ip_forwarding
- is on. For non-forwarding hosts it doesn't make much sense and
- makes some legal multihoming configurations impossible.
-
ip_fib_model - INTEGER
0 - (DEFAULT) Standard model. All routes are in class MAIN.
1 - default routes go to class DEFAULT. This mode should
@@ -125,6 +70,7 @@ tcp_retries2 - INTEGER
tcp_max_delay_acks - INTEGER
tcp_fin_timeout - INTEGER
tcp_max_ka_probes - INTEGER
+tcp_hoe_retransmits - INTEGER
Undocumented for now.
tcp_syncookies - BOOLEAN
@@ -143,6 +89,20 @@ tcp_syn_taildrop - BOOLEAN
tcp_max_syn_backlog - INTEGER
Undocumented (work in progress)
+tcp_window_scaling - BOOLEAN
+ Enable window scaling as defined in RFC1323.
+
+tcp_timestamps - BOOLEAN
+ Enable timestamps as defined in RFC1323.
+
+tcp_sack - BOOLEAN
+ Enable select acknowledgements.
+
+tcp_retrans_collapse - BOOLEAN
+ Bug-to-bug compatibility with some broken printers.
+ On retransmit try to send bigger packets to work around bugs in
+ certain TCP stacks.
+
ip_local_port_range - 2 INTEGERS
Defines the local port range that is used by TCP and UDP to
choose the local port. The first number is the first, the
@@ -155,10 +115,94 @@ icmp_echo_ignore_broadcasts - BOOLEAN
ICMP ECHO requests sent to it or just those to broadcast/multicast
addresses, respectively.
+icmp_destunreach_rate - INTEGER
+icmp_paramprob_rate - INTEGER
+icmp_timeexceed_rate - INTEGER
+icmp_echoreply_rate - INTEGER (not enabled per default)
+ Limit the maximal rates for sending ICMP packets to specifc targets.
+ 0 to disable any limiting, otherwise the maximal rate in jiffies(1)
+ See the source for more information.
+
+
+(1) Jiffie: internal timeunit for the kernel. On the i386 1/100s, on the
+Alpha 1/1024s. See the HZ define in /usr/include/asm/param.h for the exact
+value on your system.
+
+conf/interface/*:
+conf/all/* is special and changes the settings for all interfaces.
+ Change special settings per interface.
+
+log_martians - BOOLEAN
+ Log packets with impossible addresses to kernel log.
+
+accept_redirects - BOOLEAN
+ Accept ICMP redirect messages.
+ default TRUE (host)
+ FALSE (router)
+
+forwarding - BOOLEAN
+ Enable IP forwarding on this interface.
+
+mc_forwarding - BOOLEAN
+ Do multicast routing. The kernel needs to be compiled with CONFIG_MROUTE
+ and a multicast routing daemon is required.
+
+proxy_arp - BOOLEAN
+ Do proxy arp.
+
+shared_media - BOOLEAN
+ undocumented.
+
+secure_redirects - BOOLEAN
+ Accept ICMP redirect messages only for gateways,
+ listed in default gateway list.
+ default TRUE
+
+redirects - BOOLEAN
+ Send(router) or accept(host) RFC1620 shared media redirects.
+ Overrides ip_secure_redirects.
+ default TRUE (should be FALSE for distributed version,
+ but I use it...)
+
+bootp_relay - BOOLEAN
+ Accept packets with source address 0.b.c.d destined
+ not to this host as local ones. It is supposed, that
+ BOOTP relay deamon will catch and forward such packets.
+
+ default FALSE
+ Not Implemented Yet.
+
+accept_source_route - BOOLEAN
+ Accept packets with SRR option.
+ default TRUE (router)
+ FALSE (host)
+
+rp_filter - INTEGER
+ 2 - do source validation by reversed path, as specified in RFC1812
+ Recommended option for single homed hosts and stub network
+ routers. Could cause troubles for complicated (not loop free)
+ networks running a slow unreliable protocol (sort of RIP),
+ or using static routes.
+
+ 1 - (DEFAULT) Weaker form of RP filtering: drop all the packets
+ that look as sourced at a directly connected interface, but
+ were input from another interface.
+
+ 0 - No source validation.
+
+ NOTE: do not disable this option! All BSD derived routing software
+ (sort of gated, routed etc. etc.) is confused by such packets,
+ even if they are valid. When enabled it also prevents ip spoofing
+ in some limited fashion.
+
+ NOTE: this option is turned on per default only when ip_forwarding
+ is on. For non-forwarding hosts it doesn't make much sense and
+ makes some legal multihoming configurations impossible.
+
Alexey Kuznetsov.
kuznet@ms2.inr.ac.ru
Updated by:
Andi Kleen
ak@muc.de
-$Id: ip-sysctl.txt,v 1.5 1997/10/17 03:58:23 tdyas Exp $
+$Id: ip-sysctl.txt,v 1.7 1998/05/02 12:05:00 davem Exp $
diff --git a/Documentation/networking/lapb-module.txt b/Documentation/networking/lapb-module.txt
index 2b564a5f5..30c73f09f 100644
--- a/Documentation/networking/lapb-module.txt
+++ b/Documentation/networking/lapb-module.txt
@@ -6,7 +6,7 @@ The LAPB module will be a separately compiled module for use by any parts of
the Linux operating system that require a LAPB service. This document
defines the interfaces to, and the services provided by this module. The
term module in this context does not imply that the LAPB module is a
-seperately loadable module, although it may be. The term module is used in
+separately loadable module, although it may be. The term module is used in
its more standard meaning.
The interface to the LAPB module consists of functions to the module,
diff --git a/Documentation/networking/multicast.txt b/Documentation/networking/multicast.txt
index a8539007a..2bd6fd9ba 100644
--- a/Documentation/networking/multicast.txt
+++ b/Documentation/networking/multicast.txt
@@ -1,6 +1,5 @@
Behaviour of cards under Multicast. This is how they currently
-behave not what the hardware can do. In particular all the 8390 based
-cards don't use the onboard hash filter, and the lance driver doesn't
+behave not what the hardware can do - i.e. the lance driver doesn't
use its filter, even though the code for loading it is in the DEC
lance based driver.
diff --git a/Documentation/networking/policy-routing.txt b/Documentation/networking/policy-routing.txt
index 9cf967737..376dd6e80 100644
--- a/Documentation/networking/policy-routing.txt
+++ b/Documentation/networking/policy-routing.txt
@@ -1,7 +1,7 @@
Classes
-------
- "Class" is complete routing table in common sence.
+ "Class" is a complete routing table in common sense.
I.e. it is tree of nodes (destination prefix, tos, metric)
with attached information: gateway, device etc.
This tree is looked up as specified in RFC1812 5.2.4.3
@@ -16,7 +16,7 @@ Classes
THROW - abort route lookup in this class.
- Currently number of classes is limited by 255
+ Currently the number of classes is limited to 255
(0 is reserved for "not specified class")
Three classes are builtin:
@@ -34,7 +34,7 @@ Classes
Rules
-----
- Rule is record of (src prefix, src interface, tos, dst prefix)
+ Rule is a record of (src prefix, src interface, tos, dst prefix)
with attached information.
Rule types:
@@ -65,15 +65,15 @@ Lookup algorithm
----------------
We scan rules list, and if a rule is matched, apply it.
- If route is found, return it.
- If it is not found or THROW node was matched, continue
+ If a route is found, return it.
+ If it is not found or a THROW node was matched, continue
to scan rules.
Applications
------------
-1. Just ignore classes. All the routes are put to MAIN class
- (and/or to DEFAULT class).
+1. Just ignore classes. All the routes are put into MAIN class
+ (and/or into DEFAULT class).
HOWTO: iproute add PREFIX [ tos TOS ] [ gw GW ] [ dev DEV ]
[ metric METRIC ] [ reject ] ... (look at iproute utility)
@@ -89,13 +89,13 @@ Applications
[ dev INPUTDEV] [ pref PREFERENCE ] route [ gw GATEWAY ]
[ dev OUTDEV ] .....
- Warning: just now size of routing table in this approach is
- limited by 256. If someone will like this model, I'll
+ Warning: As of now the size of the routing table in this
+ approach is limited to 256. If someone likes this model, I'll
relax this limitation.
3. OSPF classes (see RFC1583, RFC1812 E.3.3)
Very clean, stable and robust algorithm for OSPF routing
- domains. Unfortunately, it is not used widely in the Internet.
+ domains. Unfortunately, it is not widely used in the Internet.
Proposed setup:
255 local addresses
@@ -124,8 +124,8 @@ Applications
4. The Variant Router Requirements Algorithm (RFC1812 E.3.2)
Create 16 classes for different TOS values.
- It is funny, but pretty useless algorithm.
- I listed it just to show power of new routing code.
+ It is a funny, but pretty useless algorithm.
+ I listed it just to show the power of new routing code.
5. All the variety of combinations......
@@ -139,10 +139,10 @@ GATED
IMPORTANT NOTE
--------------
- route.c has compilation time switch CONFIG_IP_LOCAL_RT_POLICY.
+ route.c has a compilation time switch CONFIG_IP_LOCAL_RT_POLICY.
If it is set, locally originated packets are routed
- using all the policy list. It is not very convenient and
- pretty ambiguous, when used with NAT and masquerading.
+ using all the policy list. This is not very convenient and
+ pretty ambiguous when used with NAT and masquerading.
I set it to FALSE by default.
diff --git a/Documentation/networking/routing.txt b/Documentation/networking/routing.txt
index 32dfeb2cd..f9a6ad378 100644
--- a/Documentation/networking/routing.txt
+++ b/Documentation/networking/routing.txt
@@ -27,17 +27,17 @@ NEWS for user.
- New interface addressing paradigm.
Assignment of address ranges to interface,
multiple prefixes etc. etc.
- Do not bother, it is compatible with old one. Moreover:
-- You more need not do "route add aaa.bbb.ccc... eth0",
+ Do not bother, it is compatible with the old one. Moreover:
+- You don't need to do "route add aaa.bbb.ccc... eth0" anymore,
it is done automatically.
- "Abstract" UNIX sockets and security enhancements.
- It is necessary to use TIRPC and TLI emulation library.
+ This is necessary to use TIRPC and TLI emulation library.
NEWS for hacker.
- New destination cache. Flexible, robust and just beautiful.
- Network stack is reordered, simplified, optimized, a lot of bugs fixed.
- (well, and new bugs are introduced, but I haven't seen them yet 8))
+ (well, and new bugs were introduced, but I haven't seen them yet 8))
It is difficult to describe all the changes, look into source.
If you see this file, then this patch works 8)
diff --git a/Documentation/networking/sktr.txt b/Documentation/networking/sktr.txt
new file mode 100644
index 000000000..a35332af1
--- /dev/null
+++ b/Documentation/networking/sktr.txt
@@ -0,0 +1,147 @@
+Text file for the Linux SysKonnect Token Ring ISA/PCI Adapter Driver.
+ Text file by: Jay Schulist <jschlst@samba.anu.edu.au>
+
+The Linux SysKonnect Token Ring driver works with the SysKonnect TR4/16(+) ISA,
+SysKonnect TR4/16(+) PCI, SysKonnect TR4/16 PCI, and older revisions of the
+SK NET TR4/16 ISA card.
+
+Latest information on this driver can be obtained on the Linux-SNA WWW site.
+Please point your browser to:
+http://samba.anu.edu.au/linux-sna/documents/drivers/SysKonnect/
+
+Many thanks to Christoph Goos for his excellent work on this driver and
+SysKonnect for donating the adapters to Linux-SNA for the testing and maintaince
+of this device driver.
+
+Important information to be noted:
+1. Adapters can be slow to open (~20 secs) and close (~5 secs), please be
+ patient.
+2. This driver works very well when autoprobing for adapters. Why even
+ think about those nasty io/int/dma settings of modprobe when the driver
+ will do it all for you!
+
+This driver is rather simple to use. Select Y to Token Ring adapter support
+in the kernel configuration. A choice for SysKonnect Token Ring adapters will
+appear. This drives supports all SysKonnect ISA and PCI adapters. Choose this
+option. I personally recommend compiling the driver as a module (M), but if you
+you would like to compile it staticly answer Y instead.
+
+This driver supports multiple adapters without the need to load multiple copies
+of the driver. You should be able to load up to 7 adapters without any kernel
+modifications, if you are in need of more please contact the maintainer of this
+driver.
+
+Load the driver either by lilo/loadlin or as a module. When a module using the
+following command will suffice for most:
+
+# modprobe sktr
+
+This will produce output similar to the following: (Output is user specific)
+
+sktr.c: v1.01 08/29/97 by Christoph Goos
+tr0: SK NET TR 4/16 PCI found at 0x6100, using IRQ 17.
+tr1: SK NET TR 4/16 PCI found at 0x6200, using IRQ 16.
+tr2: SK NET TR 4/16 ISA found at 0xa20, using IRQ 10 and DMA 5.
+
+Now just setup the device via ifconfig and set and routes you may have. After
+this you are ready to start sending some tokens.
+
+Errata:
+For anyone wondering where to pick up the SysKonnect adapters please browse
+to http://www.syskonnect.com
+
+This driver is under the GNU General Public License. Its Firmware image is
+included as an initialized C-array and is licensed by SysKonnect to the Linux
+users of this driver. However no waranty about its fitness is expressed or
+implied by SysKonnect.
+
+Below find attached the setting for the SK NET TR 4/16 ISA adapters
+-------------------------------------------------------------------
+
+ ***************************
+ *** C O N T E N T S ***
+ ***************************
+
+ 1) Location of DIP-Switch W1
+ 2) Default settings
+ 3) DIP-Switch W1 description
+
+
+ ==============================================================
+ CHAPTER 1 LOCATION OF DIP-SWITCH
+ ==============================================================
+
+UÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄæ
+žUÄÄÄÄÄÄæ UÄÄÄÄÄæ UÄÄÄæ ž
+žAÄÄÄÄÄÄU W1 AÄÄÄÄÄU UÄÄÄÄæ ž ž ž
+žUÄÄÄÄÄÄæ ž ž ž ž UÄÄÅæ
+žAÄÄÄÄÄÄU UÄÄÄÄÄÄÄÄÄÄÄæ AÄÄÄÄU ž ž ž žž
+žUÄÄÄÄÄÄæ ž ž UÄÄÄæ AÄÄÄU AÄÄÅU
+žAÄÄÄÄÄÄU ž TMS380C26 ž ž ž ž
+žUÄÄÄÄÄÄæ ž ž AÄÄÄU AÄæ
+žAÄÄÄÄÄÄU ž ž ž ž
+ž AÄÄÄÄÄÄÄÄÄÄÄU ž ž
+ž ž ž
+ž AÄU
+ž ž
+ž ž
+ž ž
+ž ž
+AÄÄÄÄÄÄÄÄÄÄÄÄAÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄAÄÄAÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄAÄÄÄÄÄÄÄÄÄU
+ AÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄU AÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄU
+
+ ==============================================================
+ CHAPTER 2 DEFAULT SETTINGS
+ ==============================================================
+
+ W1 1 2 3 4 5 6 7 8
+ +------------------------------+
+ | ON X |
+ | OFF X X X X X X X |
+ +------------------------------+
+
+ W1.1 = ON Adapter drives address lines SA17..19
+ W1.2 - 1.5 = OFF BootROM disabled
+ W1.6 - 1.8 = OFF I/O address 0A20h
+
+ ==============================================================
+ CHAPTER 3 DIP SWITCH W1 DESCRIPTION
+ ==============================================================
+
+ UÄÄÄAÄÄÄAÄÄÄAÄÄÄAÄÄÄAÄÄÄAÄÄÄAÄÄÄæ ON
+ ž 1 ž 2 ž 3 ž 4 ž 5 ž 6 ž 7 ž 8 ž
+ AÄÄÄAÄÄÄAÄÄÄAÄÄÄAÄÄÄAÄÄÄAÄÄÄAÄÄÄU OFF
+ |AD | BootROM Addr. | I/O |
+ +-+-+-------+-------+-----+-----+
+ | | |
+ | | +------ 6 7 8
+ | | ON ON ON 1900h
+ | | ON ON OFF 0900h
+ | | ON OFF ON 1980h
+ | | ON OFF OFF 0980h
+ | | OFF ON ON 1b20h
+ | | OFF ON OFF 0b20h
+ | | OFF OFF ON 1a20h
+ | | OFF OFF OFF 0a20h (+)
+ | |
+ | |
+ | +-------- 2 3 4 5
+ | OFF x x x disabled (+)
+ | ON ON ON ON C0000
+ | ON ON ON OFF C4000
+ | ON ON OFF ON C8000
+ | ON ON OFF OFF CC000
+ | ON OFF ON ON D0000
+ | ON OFF ON OFF D4000
+ | ON OFF OFF ON D8000
+ | ON OFF OFF OFF DC000
+ |
+ |
+ +----- 1
+ OFF adapter does NOT drive SA<17..19>
+ ON adapter drives SA<17..19> (+)
+
+
+ (+) means default setting
+
+ ********************************
diff --git a/Documentation/networking/soundmodem.txt b/Documentation/networking/soundmodem.txt
index f50985720..47d1dfc3c 100644
--- a/Documentation/networking/soundmodem.txt
+++ b/Documentation/networking/soundmodem.txt
@@ -2,13 +2,13 @@
Thomas M. Sailer, HB9JNX/AE4WA, <sailer@ife.ee.ethz.ch>
-This driver allows either SoundBlaster (sbc) or WindowsSoundSystem (wss)
+This driver allows either SoundBlaster (sbc) or Windows Sound System (wss)
compatible soundcards to be used as either 1200 baud AFSK or 9600 baud FSK
AX.25 packet radio modems. Only half duplex operation is supported; an
attempt to include full duplex support failed because the hardware did
not support it (it appeared that the card only provides one DMA channel,
-although the Codec chip would support two channels). The driver needs
-some processing power! A 486DX/2 66MHz is a minimum requirement, otherwise
+although the codec chip would support two channels). The driver needs
+some processing power! A 66 MHz 486 DX2 is a minimum requirement. Otherwise
interactive performance of the computer may become sluggish. This driver
does *not* support telephone modem standards, it is intended for radio
use only.
diff --git a/Documentation/networking/tlan.txt b/Documentation/networking/tlan.txt
new file mode 100644
index 000000000..d3de6ccd1
--- /dev/null
+++ b/Documentation/networking/tlan.txt
@@ -0,0 +1,140 @@
+TLAN driver for Linux, version 1.0
+README
+
+Well, I'm back. The TLAN driver seems pretty stable, so I'm
+declaring this cycle of development finished, and calling the
+driver 1.0. I will, of course continue to work on improving
+the driver, and work towards a 2.0 release.
+
+
+James
+james@sovereign.org
+
+
+
+I. Supported Devices.
+
+ Only PCI devices will work with this driver.
+
+ Supported:
+ Vendor ID Device ID Name
+ 0e11 ae32 Compaq Netelligent 10/100 TX PCI UTP
+ 0e11 ae34 Compaq Netelligent 10 T PCI UTP
+ 0e11 ae35 Compaq Integrated NetFlex 3/P
+ 0e11 ae40 Compaq Netelligent Dual 10/100 TX PCI UTP
+ 0e11 ae43 Compaq Netelligent Integrated 10/100 TX UTP
+ 0e11 b011 Compaq Netelligent 10/100 TX Embedded UTP
+ 0e11 b012 Compaq Netelligent 10 T/2 PCI UTP/Coax
+ 0e11 b030 Compaq Netelligent 10/100 TX UTP
+ 0e11 f130 Compaq NetFlex 3/P
+ 0e11 f150 Compaq NetFlex 3/P
+ 108d 0012 Olicom OC-2325
+ 108d 0013 Olicom OC-2183
+ 108d 0014 Olicom OC-2326
+
+
+ Caveats:
+
+ I am not sure if 100BaseTX daughterboards (for those cards which
+ support such things) will work. I haven't had any solid evidence
+ either way.
+
+ However, if a card supports 100BaseTx without requiring an add
+ on daughterboard, it should work with 100BaseTx.
+
+ The "Netelligent 10 T/2 PCI UTP/Coax" (b012) device is untested,
+ but I do not expect any problems.
+
+
+II. Building the Driver.
+
+ The TLAN driver may be compiled into the kernel, or it may be compiled
+ as a module separately, or in the kernel. A patch is included for
+ 2.0.29 (which also works for 2.0.30, 2.0.31, and 2.0.32).
+
+ To compile it as part of the kernel:
+ 1. Download and untar the TLAN driver package.
+ 2. If your kernel is 2.1.45 or later, you do not need to patch the
+ kernel sources. Copy the tlan.c and tlan.h to drivers/net in
+ the kernel source tree.
+ 3. Otherwise, apply the appropriate patch for your kernel. For
+ example:
+
+ cd /usr/src/linux
+ patch -p1 < kernel.2.0.29
+
+ 4. Copy the files tlan.c and tlan.h from the TLAN package to the
+ directory drivers/net in the Linux kernel source tree.
+ 5. Configure your kernel for the TLAN driver. Answer 'Y' when
+ prompted to ask about experimental code (the first question).
+ Then answer 'Y' when prompted if to include TI ThunderLAN
+ support. If you want the driver compiled as a module, answer 'M'
+ instead of 'Y'.
+ 6. Make the kernel and, if necessary, the modules.
+
+ To compile the TLAN driver independently:
+ 1. Download and untar the TLAN driver package.
+ 2. Change to the tlan directory.
+ 3. If you are NOT using a versioned kernel (ie, want an non-
+ versioned module), edit the Makefile, and comment out the
+ line:
+ MODVERSIONS = -DMODVERSIONS
+ 4. Run 'make'.
+
+
+III. Driver Options
+ 1. You can append debug=x to the end of the insmod line to get
+ debug messages, where x is a bit field where the bits mean
+ the following:
+
+ 0x01 Turn on general debugging messages.
+ 0x02 Turn on receive debugging messages.
+ 0x04 Turn on transmit debugging messages.
+ 0x08 Turn on list debugging messsages.
+
+ 2. You can append aui=1 to the end of the insmod line to cause
+ the adapter to use the AUI interface instead of the 10 Base T
+ interface. This is also what to do if you want to use the BNC
+ connector on a TLAN based device. (Setting this option on a
+ device that does not have an AUI/BNC connector will probably
+ cause it to not function correctly.)
+
+ 4. You can set duplex=1 to force half duplex, and duplex=2 to
+ force full duplex.
+
+ 5. You can set speed=10 to force 10Mbs operation, and speed=100Mbs
+ to force 100Mbs operation. (I'm not sure what will happen
+ if a card which only supports 10Mbs is forced into 100Mbs
+ mode.)
+
+ 3. If the driver is built into the kernel, you can use the 3rd
+ and 4th parameters to set aui and debug respectively. For
+ example:
+
+ ether=0,0,0x1,0x7,eth0
+
+ This sets aui to 0x1 and debug to 0x7, assuming eth0 is a
+ supported TLAN device.
+
+ The bits in the third byte are assigned as follows:
+
+ 0x01 = aui
+ 0x02 = use SA_INTERRUPT flag when reserving the irq.
+ 0x04 = use half duplex
+ 0x08 = use full duplex
+ 0x10 = use 10BaseT
+ 0x20 = use 100BaseTx
+
+
+IV. Things to try if you have problems.
+ 1. Make sure your card's PCI id is among those listed in
+ section I, above.
+ 1. Make sure routing is correct.
+ 2. If you are using a 2.1.x kernel, try to duplicate the
+ problem on a 2.0.x (preferably 2.0.29 or 2.0.30) kernel.
+
+
+There is also a tlan mailing list which you can join by sending "subscribe tlan"
+in the body of an email to majordomo@vuser.vu.union.edu.
+
+
diff --git a/Documentation/networking/tulip.txt b/Documentation/networking/tulip.txt
index 45533ec1b..4a83d1bf2 100644
--- a/Documentation/networking/tulip.txt
+++ b/Documentation/networking/tulip.txt
@@ -1,7 +1,7 @@
- Tulip ethernet card driver
+ Tulip Ethernet Card Driver
The Tulip driver is developed by Donald Becker and changed by
-Takashi Manabe. This driver is designed to work with PCI ethernet
+Takashi Manabe. This driver is designed to work with PCI Ethernet
cards which use the DECchip DC21x4x family. This driver hopefully
works with all of 1.2.x and 1.3.x kernels, but I tested only
with 1.2.13, 1.3.39, 1.3.49, 1.3.52, 1.3.57 and later.
diff --git a/Documentation/networking/wan-router.txt b/Documentation/networking/wan-router.txt
index 1ffeb14bc..5fc1afffc 100644
--- a/Documentation/networking/wan-router.txt
+++ b/Documentation/networking/wan-router.txt
@@ -41,7 +41,7 @@ This kernel module introduces the notion of a WAN Link Driver (WLD) to Linux
operating system and provides generic hardware-independent services for such
drivers. Why can existing Linux network device interface not be used for
this purpose? Well, it can. However, there are a few key differences between
-a typical network interface (e.g. ethernet) and a WAN link.
+a typical network interface (e.g. Ethernet) and a WAN link.
Many WAN protocols, such as X.25 and frame relay, allow for multiple logical
connections (known as `virtual circuits' in X.25 terminology) over a single
@@ -50,7 +50,7 @@ to a different geographical location and, therefore, different network. As a
result, it is the virtual circuit, not the physical link, that represents a
route and, therefore, a network interface in Linux terms.
-To further complicate things, virtual cuircits are usually volatile in nature
+To further complicate things, virtual circuits are usually volatile in nature
(excluding so called `permanent' virtual circuits or PVCs). With almost no
time required to set up and tear down a virtual circuit, it is highly desirable
to implement on-demand connections in order to minimize network charges. So
@@ -59,7 +59,7 @@ network interfaces and cope as multiple virtual circuits come into existence
and go away dynamically.
Last, but not least, WAN configuration is much more complex than that of say
-ethernet and may well amount to several dozens of parameters. Some of them
+Ethernet and may well amount to several dozens of parameters. Some of them
are "link-wide" while others are virtual circuit-specific. The same holds
true for WAN statistics which is by far more extensive and extremely useful
when troubleshooting WAN connections. Extending the ifconfig utility to suit
@@ -71,9 +71,9 @@ Most of these problems are taken care of by this module. Its goal is to
provide a user with more-or-less standard look and feel for all WAN devices and
assist a WAN device driver writer by providing common services, such as:
- o User-level interface via /proc filesystem
+ o User-level interface via /proc file system
o Centralized configuration
- o Device managenent (setup, shutdown, etc.)
+ o Device management (setup, shutdown, etc.)
o Network interface management (dynamic creation/destruction)
o Protocol encapsulation/decapsulation
@@ -84,7 +84,7 @@ available from
or
ftp.sangoma.com/pub/linux/vX.Y.Z/wanpipe-X.Y.Z.tgz
-where vX.Y.Z represent the linux kernel version number.
+where vX.Y.Z represent the Linux kernel version number.
For technical questions and/or comments regarding this product please e-mail
to jaspreet@sangoma.com or dm@sangoma.com.
@@ -107,7 +107,7 @@ Ave, Cambridge, MA 02139, USA.
-ACKNOLEGEMENTS
+ACKNOWLEDGMENTS
This product is based on the WANPIPE(tm) Multiprotocol WAN Router developed
by Sangoma Technologies Inc. for Linux 1.2.x. Release of Linux 2.0 in summer
@@ -173,7 +173,7 @@ REVISION HISTORY
1.0.1 January 30, 1997
- Implemented user-readable status and statistics
- via /proc filesystem
+ via /proc file system
1.0.0 December 31, 1996
diff --git a/Documentation/networking/z8530drv.txt b/Documentation/networking/z8530drv.txt
index e2e5b5a13..cf7dc609b 100644
--- a/Documentation/networking/z8530drv.txt
+++ b/Documentation/networking/z8530drv.txt
@@ -254,7 +254,7 @@ speed 1200 # the default baudrate
clock dpll # clock source:
# dpll = normal halfduplex operation
# external = MODEM provides own Rx/Tx clock
- # divider = use fullduplex divider if
+ # divider = use full duplex divider if
# installed (1)
mode nrzi # HDLC encoding mode
# nrzi = 1k2 MODEM, G3RUH 9k6 MODEM
@@ -450,7 +450,7 @@ speed:
Example: sccparam /dev/scc3 speed 9600
txdelay:
- The delay (in units of 10ms) after keying of the
+ The delay (in units of 10 ms) after keying of the
transmitter, until the first byte is sent. This is usually
called "TXDELAY" in a TNC. When 0 is specified, the driver
will just wait until the CTS signal is asserted. This
@@ -472,7 +472,7 @@ persist:
slottime:
This is the time between samples of the channel. It is
- expressed in units of 10ms. About 200-300 ms (value 20-30)
+ expressed in units of 10 ms. About 200-300 ms (value 20-30)
seems to be a good value.
Example: sccparam /dev/scc0 slot 20
@@ -484,7 +484,7 @@ tail:
SCC before the transmitter is keyed down. The value depends
on the baudrate selected. A few character times should be
sufficient, e.g. 40ms at 1200 baud. (value 4)
- The value of this parameter is in 10ms units.
+ The value of this parameter is in 10 ms units.
Example: sccparam /dev/scc2 4
@@ -507,9 +507,9 @@ full:
wait:
The initial waittime before any transmit attempt, after the
frame has been queue for transmit. This is the length of
- the first slot in CSMA mode. In fullduplex modes it is
+ the first slot in CSMA mode. In full duplex modes it is
set to 0 for maximum performance.
- The value of this parameter is in 10ms units.
+ The value of this parameter is in 10 ms units.
Example: sccparam /dev/scc1 wait 4
@@ -534,7 +534,7 @@ min:
Example: sccparam /dev/scc3 min 10
idle
- This parameter specifies the maximum idle time in fullduplex
+ This parameter specifies the maximum idle time in full duplex
2 mode, in seconds. When no frames have been sent for this
time, the transmitter will be keyed down. A value of 0 is
has same result as the fullduplex mode 1. This parameter
diff --git a/Documentation/nfsroot.txt b/Documentation/nfsroot.txt
index 79b08fab5..a87d4af21 100644
--- a/Documentation/nfsroot.txt
+++ b/Documentation/nfsroot.txt
@@ -1,5 +1,5 @@
Mounting the root filesystem via NFS (nfsroot)
-==============================================
+===============================================
Written 1996 by Gero Kuhlmann <gero@gkminix.han.de>
Updated 1997 by Martin Mares <mj@atrey.karlin.mff.cuni.cz>
@@ -116,7 +116,7 @@ ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>
classful addressing, unless overridden in BOOTP reply.
<hostname> Name of the client. If empty, the client IP address is
- used in ASCII-notation, or the value received by BOOTP.
+ used in ASCII notation, or the value received by BOOTP.
<device> Name of network device to use. If this is empty, all
devices are used for RARP and BOOTP requests, and the
@@ -185,12 +185,12 @@ depend on what facilities are available:
lar to how LILO is doing it. Please refer to the loadlin docu-
mentation for further information.
-3.4) Using a bootrom
+3.4) Using a boot ROM
This is probably the most elegant way of booting a diskless
- client. With a bootrom the kernel gets loaded using the TFTP
- protocol. As far as I know no commercial bootroms already
+ client. With a boot ROM the kernel gets loaded using the TFTP
+ protocol. As far as I know, no commercial boot ROMs yet
support booting Linux over the network, but there are two
- free implementations of a bootrom available on sunsite.unc.edu
+ free implementations of a boot ROM available on sunsite.unc.edu
and its mirrors. They are called 'netboot-nfs' and 'etherboot'.
Both contain everything you need to boot a diskless Linux client.
diff --git a/Documentation/paride.txt b/Documentation/paride.txt
index 89941584a..47141f7a3 100644
--- a/Documentation/paride.txt
+++ b/Documentation/paride.txt
@@ -1,7 +1,7 @@
Linux and parallel port IDE devices
-PARIDE v1.0 (c) 1997 Grant Guenther <grant@torque.net>
+PARIDE v1.02 (c) 1997-8 Grant Guenther <grant@torque.net>
1. Introduction
@@ -12,7 +12,7 @@ host computer. While some devices (notably scanners) use ad-hoc methods
to pass commands and data through the parallel port interface, most
external devices are actually identical to an internal model, but with
a parallel-port adapter chip added in. Some of the original parallel port
-adapters were little more than mechanisms for mulitplexing a SCSI bus.
+adapters were little more than mechanisms for multiplexing a SCSI bus.
(The Iomega PPA-3 adapter used in the ZIP drives is an example of this
approach). Most current designs, however, take a different approach.
The adapter chip reproduces a small ISA or IDE bus in the external device
@@ -38,11 +38,13 @@ parallel port IDE subsystem, including:
MicroSolutions backpack CD-ROM
MicroSolutions backpack PD/CD
MicroSolutions backpack hard-drives
+ MicroSolutions backpack 8000t tape drive
SyQuest EZ-135, EZ-230 & SparQ drives
Avatar Shark
Imation Superdisk LS-120
FreeCom Power CD
Hewlett-Packard 5GB tape drive
+ Hewlett-Packard 7100 and 7200 CD-RW drives
as well as most of the clone and no-name products on the market.
@@ -56,9 +58,9 @@ high-level drivers for each of the different type of supported device:
pcd ATAPI CD-ROM
pf ATAPI disk
pt ATAPI tape
+ pg ATAPI generic
-(Support for ATAPI CD-R and CD-RW drives is not yet in development,
-but this may change.)
+(Currently, the pg driver is only used with CD-R drives).
The high-level drivers function according to the relevant standards.
The third component of PARIDE is a set of low-level protocol drivers
@@ -72,14 +74,14 @@ support is available for almost all known adapter protocols:
dstr DataStor EP-2000 (TW)
epat Shuttle EPAT (UK)
epia Shuttle EPIA (UK)
+ fit2 FIT TD-2000 (US)
+ fit3 FIT TD-3000 (US)
frpw Freecom Power (DE)
kbic KingByte KBIC-951A and KBIC-971A (TW)
+ ktti KT Technology PHd adapter (SG)
on20 OnSpec 90c20 (US)
on26 OnSpec 90c26 (US)
-(A driver for some modes of the Noveca RAP// protocol is also under
-development).
-
2. Using the PARIDE subsystem
@@ -106,11 +108,13 @@ and high-level drivers that you would use:
MicroSolutions CD-ROM pcd bpck
MicroSolutions PD drive pf bpck
MicroSolutions hard-drive pd bpck
+ MicroSolutions 8000t tape pt bpck
SyQuest EZ, SparQ pd epat
Imation Superdisk pf epat
Avatar Shark pd epat
FreeCom CD-ROM pcd frpw
Hewlett-Packard 5GB Tape pt epat
+ Hewlett-Packard 7100/7200 pg epat
2.1 Configuring built-in drivers
@@ -258,6 +262,7 @@ for u in 0 1 2 3 ; do mkdev pcd$u b 46 $u ; done
for u in 0 1 2 3 ; do mkdev pf$u b 47 $u ; done
for u in 0 1 2 3 ; do mkdev pt$u c 96 $u ; done
for u in 0 1 2 3 ; do mkdev npt$u c 96 $[ $u + 128 ] ; done
+for u in 0 1 2 3 ; do mkdev pg$u c 97 $u ; done
#
# end of mkd
@@ -285,6 +290,11 @@ floppy that you could share with a DOS system:
mkdosfs /dev/pf0
mount /dev/pf0 /mnt
+2.4 Using the pg driver
+
+The pg driver can be used in conjunction with the cdrecord program
+to create CD-ROMs. For more information, and the required patches
+to cdrecord, please visit http://www.torque.net/parport/cdr.html .
3. Troubleshooting
@@ -333,6 +343,6 @@ have in your mail headers, when sending mail to the list server.
You might also find some useful information on the linux-parport
web pages (although they are not always up to date) at
- http://www.torque.net/linux-pp.html
+ http://www.torque.net/parport/
diff --git a/Documentation/parport.txt b/Documentation/parport.txt
index f9ee71092..94a6318b9 100644
--- a/Documentation/parport.txt
+++ b/Documentation/parport.txt
@@ -62,6 +62,8 @@ message similar to:
(If you are using kmod and have configured parport_probe as a module,
this will just happen.)
+The probe information is available in /proc/parport/?/autoprobe.
+
Parport linked into the kernel statically
=========================================
@@ -103,6 +105,9 @@ File: Contents:
allow you to alter it by writing a new
value in (IRQ number or "none").
+/proc/parport/0/autoprobe Any IEEE-1284 device ID information
+ that has been acquired.
+
Device drivers
==============
@@ -125,7 +130,7 @@ with no lp device associated with the second port (parport1). Note
that this is different to the way older kernels worked; there used to
be a static association between the I/O port address and the device
name, so /dev/lp0 was always the port at 0x3bc. This is no longer the
-case - if you only have one port, it will always be /dev/lp0,
+case - if you only have one port, it will default to being /dev/lp0,
regardless of base address.
Also:
diff --git a/Documentation/radiotrack.txt b/Documentation/radiotrack.txt
new file mode 100644
index 000000000..fe942e8a9
--- /dev/null
+++ b/Documentation/radiotrack.txt
@@ -0,0 +1,147 @@
+NOTES ON RADIOTRACK CARD CONTROL
+by Stephen M. Benoit (benoits@servicepro.com) Dec 14, 1996
+----------------------------------------------------------------------------
+
+Document version 1.0
+
+ACKNOWLEDGMENTS
+----------------
+This document was made based on 'C' code for Linux from Gideon le Grange
+(legrang@active.co.za or legrang@cs.sun.ac.za) in 1994, and elaborations from
+Frans Brinkman (brinkman@esd.nl) in 1996. The results reported here are from
+experiments that the author performed on his own setup, so your mileage may
+vary... I make no guarantees, claims or warrantees to the suitability or
+validity of this information. No other documentation on the AIMS
+Lab (http://www.aimslab.com/) RadioTrack card was made available to the
+author. This document is offered in the hopes that it might help users who
+want to use the RadioTrack card in an environment other than MS Windows.
+
+WHY THIS DOCUMENT?
+------------------
+I have a RadioTrack card from back when I ran an MS-Windows platform. After
+converting to Linux, I found Gideon le Grange's command-line software for
+running the card, and found that it was good! Frans Brinkman made a
+comfortable X-windows interface, and added a scanning feature. For hack
+value, I wanted to see if the tuner could be tuned beyond the usual FM radio
+broadcast band, so I could pick up the audio carriers from North American
+broadcast TV channels, situated just below and above the 87.0-109.0 MHz range.
+I did not get much success, but I learned about programming ioports under
+Linux and gained some insights about the hardware design used for the card.
+
+So, without further delay, here are the details.
+
+
+PHYSICAL DESCRIPTION
+--------------------
+The RadioTrack card is an ISA 8-bit FM radio card. The radio frequency (RF)
+input is simply an antenna lead, and the output is a power audio signal
+available through a miniature phono plug. Its RF frequencies of operation are
+more or less limited from 87.0 to 109.0 MHz (the commercial FM broadcast
+band). Although the registers can be programmed to request frequencies beyond
+these limits, experiments did not give promising results. The variable
+frequency oscillator (VFO) that demodulates the intermediate frequency (IF)
+signal probably has a small range of useful frequencies, and wraps around or
+gets clipped beyond the limits mentioned above.
+
+
+CONTROLLING THE CARD WITH IOPORT
+--------------------------------
+The RadioTrack (base) ioport is configurable for 0x30c or 0x20c. Only one
+ioport seems to be involved. The ioport decoding circuitry must be pretty
+simple, as individual ioport bits are directly matched to specific functions
+(or blocks) of the radio card. This way, many functions can be changed in
+parallel with one write to the ioport. The only feedback available through
+the ioports appears to be the "Stereo Detect" bit.
+
+The bits of the ioport are arranged as follows:
+
+ MSb LSb
++------+------+------+--------+--------+-------+---------+--------+
+| VolA | VolB | ???? | Stereo | Radio | TuneA | TuneB | Tune |
+| (+) | (-) | | Detect | Audio | (bit) | (latch) | Update |
+| | | | Enable | Enable | | | Enable |
++------+------+------+--------+--------+-------+---------+--------+
+
+
+VolA . VolB [AB......]
+-----------
+0 0 : audio mute
+0 1 : volume + (some delay required)
+1 0 : volume - (some delay required)
+1 1 : stay at present volume
+
+Stereo Detect Enable [...S....]
+--------------------
+0 : No Detect
+1 : Detect
+
+ Results available by reading ioport >60 msec after last port write.
+ 0xff ==> no stereo detected, 0xfd ==> stereo detected.
+
+Radio to Audio (path) Enable [....R...]
+----------------------------
+0 : Disable path (silence)
+1 : Enable path (audio produced)
+
+TuneA . TuneB [.....AB.]
+-------------
+0 0 : "zero" bit phase 1
+0 1 : "zero" bit phase 2
+
+1 0 : "one" bit phase 1
+1 1 : "one" bit phase 2
+
+ 24-bit code, where bits = (freq*40) + 10486188.
+ The Most Significant 11 bits must be 1010 xxxx 0x0 to be valid.
+ The bits are shifted in LSb first.
+
+Tune Update Enable [.......T]
+------------------
+0 : Tuner held constant
+1 : Tuner updating in progress
+
+
+PROGRAMMING EXAMPLES
+--------------------
+Default: BASE <-- 0xc8 (current volume, no stereo detect,
+ radio enable, tuner adjust disable)
+
+Card Off: BASE <-- 0x00 (audio mute, no stereo detect,
+ radio disable, tuner adjust disable)
+
+Card On: BASE <-- 0x00 (see "Card Off", clears any unfinished business)
+ BASE <-- 0xc8 (see "Default")
+
+Volume Down: BASE <-- 0x48 (volume down, no stereo detect,
+ radio enable, tuner adjust disable)
+ * wait 10 msec *
+ BASE <-- 0xc8 (see "Default")
+
+Volume Up: BASE <-- 0x88 (volume up, no stereo detect,
+ radio enable, tuner adjust disable)
+ * wait 10 msec *
+ BASE <-- 0xc8 (see "Default")
+
+Check Stereo: BASE <-- 0xd8 (current volume, stereo detect,
+ radio enable, tuner adjust disable)
+ * wait 100 msec *
+ x <-- BASE (read ioport)
+ BASE <-- 0xc8 (see "Default")
+
+ x=0xff ==> "not stereo", x=0xfd ==> "stereo detected"
+
+Set Frequency: code = (freq*40) + 10486188
+ foreach of the 24 bits in code,
+ (from Least to Most Significant):
+ to write a "zero" bit,
+ BASE <-- 0x01 (audio mute, no stereo detect, radio
+ disable, "zero" bit phase 1, tuner adjust)
+ BASE <-- 0x03 (audio mute, no stereo detect, radio
+ disable, "zero" bit phase 2, tuner adjust)
+ to write a "one" bit,
+ BASE <-- 0x05 (audio mute, no stereo detect, radio
+ disable, "one" bit phase 1, tuner adjust)
+ BASE <-- 0x07 (audio mute, no stereo detect, radio
+ disable, "one" bit phase 2, tuner adjust)
+
+----------------------------------------------------------------------------
diff --git a/Documentation/ramdisk.txt b/Documentation/ramdisk.txt
index a00eb0a64..1f937c3b3 100644
--- a/Documentation/ramdisk.txt
+++ b/Documentation/ramdisk.txt
@@ -1,4 +1,3 @@
-
Using the RAM disk block device with Linux
------------------------------------------
@@ -7,20 +6,20 @@ Contents:
1) Overview
2) Kernel Command Line Parameters
3) Using "rdev -r" With New Kernels
- 4) An Example of Creating a Compressed ramdisk
+ 4) An Example of Creating a Compressed RAM Disk
1) Overview
-----------
-As of kernel v1.3.48, the ramdisk driver was substantially changed.
+As of kernel v1.3.48, the RAM disk driver was substantially changed.
The older versions would grab a chunk of memory off the top before
handing the remainder to the kernel at boot time. Thus a size parameter
had to be specified via "ramdisk=1440" or "rdev -r /dev/fd0 1440" so
that the driver knew how much memory to grab.
-Now the ramdisk dynamically grows as more space is required. It does
+Now the RAM disk dynamically grows as more space is required. It does
this by using RAM from the buffer cache. The driver marks the buffers
it is using with a new "BH_Protected" flag so that the kernel does
not try to reuse them later. This means that the old size parameter
@@ -28,9 +27,9 @@ is no longer used, new command line parameters exist, and the behavior
of the "rdev -r" or "ramsize" (usually a symbolic link to "rdev")
command has changed.
-Also, the new ramdisk supports up to 16 ramdisks out of the box, and can
-be reconfigured in rd.c to support up to 255 ramdisks. To use multiple
-ramdisk support with your system, run 'mknod /dev/ramX b 1 X' and chmod
+Also, the new RAM disk supports up to 16 RAM disks out of the box, and can
+be reconfigured in rd.c to support up to 255 RAM disks. To use multiple
+RAM disk support with your system, run 'mknod /dev/ramX b 1 X' and chmod
(to change its permissions) it to your liking. The default /dev/ram(disk)
uses minor #1, so start with ram2 and go from there.
@@ -38,14 +37,14 @@ The old "ramdisk=<ram_size>" has been changed to "ramdisk_size=<ram_size>"
to make it clearer. The original "ramdisk=<ram_size>" has been kept around
for compatibility reasons, but it will probably be removed in 2.1.x.
-The new ramdisk also has the ability to load compressed ramdisk images,
+The new RAM disk also has the ability to load compressed RAM disk images,
allowing one to squeeze more programs onto an average installation or
rescue floppy disk.
Notes: You may have "/dev/ram" or "/dev/ramdisk" or both. They are
-equivalent from the standpoint of this document. Also, the new ramdisk
+equivalent from the standpoint of this document. Also, the new RAM disk
is a config option. When running "make config", make sure you enable
-ramdisk support for the kernel you intend to use the ramdisk with.
+RAM disk support for the kernel with which you intend to use the RAM disk.
2) Kernel Command Line Parameters
@@ -55,42 +54,42 @@ ramdisk support for the kernel you intend to use the ramdisk with.
=================
To allow a kernel image to reside on a floppy disk along with a compressed
-ramdisk image, the "ramdisk_start=<offset>" command was added. The kernel
-can't be included into the compressed ramdisk filesystem image, because
+RAM disk image, the "ramdisk_start=<offset>" command was added. The kernel
+can't be included into the compressed RAM disk filesystem image, because
it needs to be stored starting at block zero so that the BIOS can load the
-bootsector and then the kernel can bootstrap itself to get going.
+boot sector and then the kernel can bootstrap itself to get going.
-Note: If you are using an uncompressed ramdisk image, then the kernel can
-be a part of the filesystem image that is being loaded into the ramdisk,
+Note: If you are using an uncompressed RAM disk image, then the kernel can
+be a part of the filesystem image that is being loaded into the RAM disk,
and the floppy can be booted with LILO, or the two can be separate as
is done for the compressed images.
-If you are using a two-disk boot/root setup (kernel on #1, ramdisk image
-on #2) then the ramdisk would start at block zero, and an offset of
+If you are using a two-disk boot/root setup (kernel on #1, RAM disk image
+on #2) then the RAM disk would start at block zero, and an offset of
zero would be used. Since this is the default value, you would not need
to actually use the command at all.
-If instead, you have a "zImage" of about 350k, and a "fs_image.gz" of
-say about 1MB, and you want them both on the same disk, then you
+If instead, you have a "zImage" of about 350 kB, and a "fs_image.gz" of
+say about 1 MB, and you want them both on the same disk, then you
would use an offset. If you stored the "fs_image.gz" onto the floppy
-starting at an offset of 400kB, you would use "ramdisk_start=400".
+starting at an offset of 400 kB, you would use "ramdisk_start=400".
load_ramdisk=N
==============
This parameter tells the kernel whether it is to try to load a
-ramdisk image or not. Specifying "load_ramdisk=1" will tell the
-kernel to load a floppy into the ramdisk. The default value is
-zero, meaning that the kernel should not try to load a ramdisk.
+RAM disk image or not. Specifying "load_ramdisk=1" will tell the
+kernel to load a floppy into the RAM disk. The default value is
+zero, meaning that the kernel should not try to load a RAM disk.
prompt_ramdisk=N
================
This parameter tells the kernel whether or not to give you a prompt
-asking you to insert the floppy containing the ramdisk image. In
-a single floppy configuration the ramdisk image is on the same floppy
+asking you to insert the floppy containing the RAM disk image. In
+a single floppy configuration the RAM disk image is on the same floppy
as the kernel that just finished loading/booting and so a prompt
is not needed. In this case one can use "prompt_ramdisk=0". In a
two floppy configuration, you will need the chance to switch disks,
@@ -100,18 +99,18 @@ value, it doesn't really need to be specified.
ramdisk_size=N
==============
-This parameter tells the ramdisk driver to set up ramdisks of Nk size. The
-default is 4096 (4MB).
+This parameter tells the RAM disk driver to set up RAM disks of N k size. The
+default is 4096 (4 MB).
3) Using "rdev -r" With New Kernels
-----------------------------------
The usage of the word (two bytes) that "rdev -r" sets in the kernel image
-has changed. The low 11 bits (0 -> 10) specify an offset (in 1k blocks)
-of up to 2MB (2^11) of where to find the ramdisk (this used to be the
-size). Bit 14 indicates that a ramdisk is to be loaded, and bit 15
+has changed. The low 11 bits (0 -> 10) specify an offset (in 1 k blocks)
+of up to 2 MB (2^11) of where to find the RAM disk (this used to be the
+size). Bit 14 indicates that a RAM disk is to be loaded, and bit 15
indicates whether a prompt/wait sequence is to be given before trying
-to read the ramdisk. Since the ramdisk dynamically grows as data is
+to read the RAM disk. Since the RAM disk dynamically grows as data is
being written into it, a size field is no longer required. Bits 11
to 13 are not currently used and may as well be zero. These numbers
are no magical secrets, as seen below:
@@ -121,13 +120,13 @@ are no magical secrets, as seen below:
./arch/i386/kernel/setup.c:#define RAMDISK_LOAD_FLAG 0x4000
Consider a typical two floppy disk setup, where you will have the
-kernel on disk one, and have already put a ramdisk image onto disk #2.
+kernel on disk one, and have already put a RAM disk image onto disk #2.
-Hence you want to set bits 0 to 13 as zero, meaning that your ramdisk
-starts at an offset of zero kB from the beginning of the floppy.
+Hence you want to set bits 0 to 13 as 0, meaning that your RAM disk
+starts at an offset of 0 kB from the beginning of the floppy.
The command line equivalent is: "ramdisk_start=0"
-You want bit 14 as one, indicating that a ramdisk is to be loaded.
+You want bit 14 as one, indicating that a RAM disk is to be loaded.
The command line equivalent is: "load_ramdisk=1"
You want bit 15 as one, indicating that you want a prompt/keypress
@@ -147,20 +146,20 @@ Since the default start = 0 and the default prompt = 1, you could use:
append = "load_ramdisk=1"
-4) An Example of Creating a Compressed ramdisk
+4) An Example of Creating a Compressed RAM Disk
----------------------------------------------
-To create a ramdisk image, you will need a spare block device to
-construct it on. This can be the ramdisk device itself, or an
+To create a RAM disk image, you will need a spare block device to
+construct it on. This can be the RAM disk device itself, or an
unused disk partition (such as an unmounted swap partition). For this
-example, we will use the ramdisk device, "/dev/ram".
+example, we will use the RAM disk device, "/dev/ram".
-Note: This technique should not be done on a machine with less than 8MB
+Note: This technique should not be done on a machine with less than 8 MB
of RAM. If using a spare disk partition instead of /dev/ram, then this
restriction does not apply.
-a) Decide on the ramdisk size that you want. Say 2MB for this example.
- Create it by writing to the ramdisk device. (This step is not currently
+a) Decide on the RAM disk size that you want. Say 2 MB for this example.
+ Create it by writing to the RAM disk device. (This step is not currently
required, but may be in the future.) It is wise to zero out the
area (esp. for disks) so that maximal compression is achieved for
the unused blocks of the image that you are about to create.
@@ -174,9 +173,9 @@ b) Make a filesystem on it. Say ext2fs for this example.
c) Mount it, copy the files you want to it (eg: /etc/* /dev/* ...)
and unmount it again.
-d) Compress the contents of the ramdisk. The level of compression
+d) Compress the contents of the RAM disk. The level of compression
will be approximately 50% of the space used by the files. Unused
- space on the ramdisk will compress to almost nothing.
+ space on the RAM disk will compress to almost nothing.
dd if=/dev/ram bs=1k count=2048 | gzip -v9 > /tmp/ram_image.gz
@@ -184,23 +183,23 @@ e) Put the kernel onto the floppy
dd if=zImage of=/dev/fd0 bs=1k
-f) Put the ramdisk image onto the floppy, after the kernel. Use an offset
+f) Put the RAM disk image onto the floppy, after the kernel. Use an offset
that is slightly larger than the kernel, so that you can put another
(possibly larger) kernel onto the same floppy later without overlapping
- the ramdisk image. An offset of 400kB for kernels about 350kB in
+ the RAM disk image. An offset of 400 kB for kernels about 350 kB in
size would be reasonable. Make sure offset+size of ram_image.gz is
- not larger than the total space on your floppy (usually 1440kB).
+ not larger than the total space on your floppy (usually 1440 kB).
dd if=/tmp/ram_image.gz of=/dev/fd0 bs=1k seek=400
-g) Use "rdev" to set the boot device, ramdisk offset, prompt flag, etc.
+g) Use "rdev" to set the boot device, RAM disk offset, prompt flag, etc.
For prompt_ramdisk=1, load_ramdisk=1, ramdisk_start=400, one would
have 2^15 + 2^14 + 400 = 49552.
rdev /dev/fd0 /dev/fd0
rdev -r /dev/fd0 49552
-That is it. You now have your boot/root compressed ramdisk floppy. Some
+That is it. You now have your boot/root compressed RAM disk floppy. Some
users may wish to combine steps (d) and (f) by using a pipe.
--------------------------------------------------------------------------
diff --git a/Documentation/rtc.txt b/Documentation/rtc.txt
index e290b4177..7718228ba 100644
--- a/Documentation/rtc.txt
+++ b/Documentation/rtc.txt
@@ -129,7 +129,7 @@ fprintf(stderr, "\nAgain, from using select(2) on /dev/rtc:");
fflush(stderr);
for (i=1; i<6; i++) {
struct timeval tv = {5, 0}; /* 5 second timeout on select */
- struct fd_set readfds;
+ fd_set readfds;
FD_ZERO(&readfds);
FD_SET(fd, &readfds);
diff --git a/Documentation/smart-config.txt b/Documentation/smart-config.txt
index eda5c3dfa..b31d252fa 100644
--- a/Documentation/smart-config.txt
+++ b/Documentation/smart-config.txt
@@ -72,14 +72,12 @@ Flag Dependencies
modular, 'make' will notice that the foo.o was not compiled
with -DMODULE and will recompile foo.c.
- Flag dependencies also work with per-source-file flags such
- as those in drivers/net/CONFIG.
-
All .a and .o files made from C source or with 'ld' or 'ar'
have flag dependencies. .S files do not have flag dependencies.
Per-source-file Flags
+ Flag dependencies also work with per-source-file flags.
You can specify compilation flags for individual source files
like this:
diff --git a/Documentation/smp.tex b/Documentation/smp.tex
index e67f08978..40e73fe6e 100644
--- a/Documentation/smp.tex
+++ b/Documentation/smp.tex
@@ -24,8 +24,8 @@ processors.}
\hfill Alan Cox, 1995
-The author wishes to thank Caldera Inc ( http://www.caldera.com )
-whose donation of an ASUS dual pentium board made this project possible,
+The author wishes to thank Caldera Inc. ( http://www.caldera.com )
+whose donation of an ASUS dual Pentium board made this project possible,
and Thomas Radke, whose initial work on multiprocessor Linux formed
the backbone of this project.
@@ -35,7 +35,7 @@ processors and glue chipsets with a hardware/software specification. The
specification places much of the onus for hard work on the chipset and
hardware rather than the operating system.
-The Intel pentium processors have a wide variety of inbuilt facilities for
+The Intel Pentium processors have a wide variety of inbuilt facilities for
supporting multiprocessing, including hardware cache coherency, built in
interprocessor interrupt handling and a set of atomic test and set,
exchange and similar operations. The cache coherency in particular makes the
@@ -52,7 +52,7 @@ For any kernel to function in a sane manner it has to provide internal
locking and protection of its own tables to prevent two processes updating
them at once and for example allocating the same memory block. There are
two strategies for this within current Unix and Unixlike kernels.
-Traditional unix systems from the earliest of days use a scheme of 'Coarse
+Traditional Unix systems from the earliest of days use a scheme of 'Coarse
Grained Locking' where the entire kernel is protected by a small number of
locks only. Some modern systems use fine grained locking. Because fine
grained locking has more overhead it is normally used only on
@@ -176,7 +176,7 @@ threads it is necessary to replace these with tests that the process id is
The memory management core of the existing Linux system functions
adequately within the multiprocessor framework providing the locking is
used. Certain processor specific areas do need changing, in particular
-invalidate() must invalidate the TLB's of all processors before it returns.
+invalidate() must invalidate the TLBs of all processors before it returns.
\subsubsection{Miscellaneous Functions}
@@ -210,7 +210,7 @@ interrupt and kernel syscall entry function handling and finally the
extensions to standard kernel facilities to cope with multiple processors.
\subsubsection{Initialisation}
-The intel MP architecture captures all the processors except for a single
+The Intel MP architecture captures all the processors except for a single
processor known as the 'boot processor' in the BIOS at boot time. Thus a
single processor enters the kernel bootup code. The first processor
executes the bootstrap code, loads and uncompresses the kernel. Having
@@ -266,8 +266,8 @@ is mapped with a vremap() call and the apic pointer is adjusted
appropriately. From then on the real APIC logical identity register is
read.
-Message passing is accomplished using a pair of IPI's on interrupt 13
-(unused by the 80486 FPU's in SMP mode) and interrupt 16. Two are used in
+Message passing is accomplished using a pair of IPIs on interrupt 13
+(unused by the 80486 FPUs in SMP mode) and interrupt 16. Two are used in
order to separate messages that cannot be processed until the receiver
obtains the kernel spinlock from messages that can be processed
immediately. In effect IRQ 13 is a fast IRQ handler that does not obtain
diff --git a/Documentation/sound/ALS007 b/Documentation/sound/ALS007
new file mode 100644
index 000000000..69a264815
--- /dev/null
+++ b/Documentation/sound/ALS007
@@ -0,0 +1,40 @@
+ALS-007 based sound cards
+=========================
+
+Support for sound cards based around the Avance Logic ALS-007 chip is
+included. The ALS-007 is a single chip PnP sound solution which is mostly
+hardware compatible with the Sound Blaster 16 card, with most differences
+occurring in the use of the mixer registers. For this reason the ALS-007
+code is integrated as part of the Sound Blaster 16 driver (adding only 800
+bytes to the SB16 driver).
+
+To use an ALS-007 sound card under Linux, enable the following options in the
+sound configuration section of the kernel config:
+ - 100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support
+ - FM synthesizer (YM3812/OPL-3) support
+Since the ALS-007 is a PnP card, the sound driver probably should be
+compiled as a module, with the isapnptools used to wake up the sound card.
+Set the "I/O base for SB", "Sound Blaster IRQ" and "Sound Blaster DMA" (8 bit -
+either 0, 1 or 3) to the values used in your particular installation (they
+should match the values used to configure the card using isapnp). The
+ALS-007 does NOT implement 16 bit DMA, so the "Sound Blaster 16 bit DMA"
+should be set to -1. If you wish to use the external MPU-401 interface on
+the card, "MPU401 I/O base of SB16" and "SB MPU401 IRQ" should be set to
+the appropriate values for your installation. (Note that the ALS-007
+requires a separate IRQ for the MPU-401, so don't specify -1 here). (Note
+that the base port of the internal FM synth is fixed at 0x388 on the ALS007;
+in any case the FM synth location cannot be set in the kernel configuration).
+
+The resulting sound driver will provide the following capabilities:
+ - 8 and 16 bit audio playback
+ - 8 and 16 bit audio recording
+ - Software selection of record source (line in, CD, FM, mic, master)
+ - Record and playback of midi data via the external MPU-401
+ - Playback of midi data using inbuilt FM synthesizer
+ - Control of the ALS-007 mixer via any OSS-compatible mixer programs.
+ Controls available are Master (L&R), Line in (L&R), CD (L&R),
+ DSP/PCM/audio out (L&R), FM (L&R) and Mic in (mono).
+
+Jonathan Woithe
+jwoithe@physics.adelaide.edu.au
+30 March 1998
diff --git a/Documentation/sound/AWE32 b/Documentation/sound/AWE32
index 351f88a38..a21b46bc6 100644
--- a/Documentation/sound/AWE32
+++ b/Documentation/sound/AWE32
@@ -1,63 +1,122 @@
-From: Nicola Bernardelli <nbern@mail.protos.it>
-
- In order to load SB-AWE related drivers on recent kernels (tested
-with 2.1.86 and 2.1.88) with modularized sound support these lines can
-be issued (of course with the suitable values for the parameters)
-after PNP setup:
-
-insmod sound.o
-insmod uart401.o
-insmod sb.o io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
-insmod awe_wave.o
-
- Alternatively, in order to also have automatic load on demand
-(not of the awe support, which would anyway most likely also require a
-call to sfxload), these lines can be added to /etc/conf.modules, of
-course with the suitable values for the parameters):
-
-alias char-major-14 sb
-post-install sb modprobe "-k" "adlib_card"
-options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
-options adlib_card io=0x388 # FM synthesiser
-
-and then these two commands can be issued:
-
-modprobe sb
+ Installing and using Creative AWE midi sound under Linux.
+
+This documentation is devoted to the Creative Sound Blaster AWE32, AWE64 and
+SB32.
+
+1) Make sure you have an ORIGINAL Creative SB32, AWE32 or AWE64 card. This is
+important, because the driver works only with real Creative cards.
+
+2) If your card is NOT "Plug-n-Play" (I myself don't know Creative AWE non
+plug'n'play cards however) then go to 5th step now. In the other case
+proceed to step 3.
+
+3) You should obtain isapnptools. I looked through other PnP packages
+for Linux, but all they are either in deep unstable beta/alpha releases or
+they are much worse than isapnptools. In my case isapnptools were included in
+a Linux distribution (Red Hat 5.0). If you also already have them then go to
+step 4.
+
+The latest copy of isapnptools-1.15 is available from
+ftp://ftp.demon.co.uk/pub/unix/linux/utils/ (I tested isapnptools-1.15.tgz)
+You should gunzip/untar it to something like /usr/local/
+(cp isapnptools-1.15.tgz /usr/local/; cd /usr/local/;
+tar -xzf isapnptools-1.15.tgz).
+
+Compile the package (make) and install it (make install).
+If something goes wrong check the INSTALL file in isapnptools-1.15 directory.
+
+4) Now do a "pnpdump > /etc/isapnp.conf". File /etc/isapnp.conf will contain
+info about PnP devices you may have. If you want you can read the manual page
+about isapnp.conf file (man isapnp.conf). Most lines of your isapnp.conf file are
+commented. You should uncomment lines which don't conflict with your
+configuration.
+
+ATTENTION! Device Audio should have 1 IRQ, 2 DMA and 3 base I/O resources.
+If you don't have such a configuration you should manually add the resources to
+the isapnp.conf file. After editing I got these lines in the Audio device
+section (I ripped out all the comments):
+
+"(CONFIGURE CTL0044/1132685 (LD 0 (INT 0 (IRQ 5 (MODE +E))) (DMA 0 (CHANNEL 1))
+ (DMA 1 (CHANNEL 5)) (IO 0 (BASE 0x220)) (IO 1 (BASE 0x330)) (IO 2 (BASE 0x388))
+ (ACT Y)))"
+
+(In your case CTL044/1132685 numbers may be other)
+
+Don't forget to uncomment (ACT Y)!
+
+The next device is the on-board IDE controller. You may enable it if you wish,
+but it will not effect sound.
+
+Then WaveTable goes. For some reason Plug-n-Play detects only one I/O port,
+but the wavetable needs THREE! My working string is:
+
+"(CONFIGURE CTL044/1132685 (LD 2 (IO 0 (BASE 0x0620)) (IO 1 (BASE 0x0A20))
+(IO 3 (BASE 0x0E20)) (ACT Y) ))"
+
+Resources 0x0620, 0x0A20 and 0x0E20 should work. Other on-board devices:
+Gameport and StereoEnhance are not required to be inited.
+
+Now you can execute "isapnp /etc/isapnp.conf". No errors should be reported.
+If you correctly installed isapnptools, then isapnp will run every boot time.
+
+5) Now you should recompile the kernel. I recommend using development kernels,
+because the AWE32 driver is included in them. ATTENTION! In kernels 2.1.102,
+2.1.103, 2.1.104-pre1 and 2.1.104 (not the others) the lowlevel sound driver
+is not working. You should use the patch available at
+http://members.xoom.com/yar/history.html. If you are using stable kernel
+releases 2.0.x, then get the latest version (3.8s9) of
+OSS/Free at ftp://ftp.4front-tech.com/ossfree/ossfree38s9-linux20x.tar.gz
+and gunzip/untar it in /usr/src/ (assuming you keep your kernel source in
+/usr/src/linux). Then go to /usr/src/linux/ and view the README file. That
+file contains info about kernel compilation and installation.
+
+In "make (x,menu)config" select in "Sound":
+"Sound card support", "100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support",
+"Generic OPL2/OPL3 FM synthesizer support" and "FM synthesizer (YM3812/OPL-3)
+support" as <M> (module).
+
+If you use kernel version 2.0.x or version 2.1.y (y <= 2.1.104) skip substep a,
+on 2.1.105 or later go through it.
+
+substep a:
+In "make (x,menu)config" select in "Sound":
+select "OSS sound modules" as <M> (module)
+
+In "Additional low level sound drivers":
+"Additional low level sound drivers", "AWE32 synth" as <M> (module).
+Select "Additional low level sound drivers" as [y] (or [*] (yes)) (If it is not
+available as [y], select it as <M> (module))
+Now recompile the kernel (make dep; make (b)zImage; make modules;
+make modules_install), update your boot loader and boot new kernel.
+
+6) Now download awesfx program from
+http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv/index.html#Latest. Compile it.
+Copy sfxload program to /bin (or /sbin if you wish). To enable AWE midi
+synthesis you should also get the sound bank file for general midi from
+http://members.xoom.com/yar/synthgm.sbk.gz. Copy it to
+/usr and gunzip it there.
+
+7) Edit /etc/rc.d/rc.local, inserting at the end of the file:
+
+modprobe sound
+insmod uart401
+insmod sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
insmod awe_wave
+sfxload /usr/synthfm.sbk
-------------------------------------------------------------------------------
-
-After picking up the second approach, you may want to put these lines
-on an ossfreeOn script:
-
- -----
-#!/bin/sh
-
-modprobe sb
-insmod awe_wave
-
-# A call to 'aumix -L' (attention to what the home dir is at boot
-# time, you may put a link /.aumixrc -> /home/<sounduser>/.aumixrc) to
-# restore mixer device levels and a call to 'sfxload <path to
-# soundfont bank>' may be added in a customized ossfreeSetup script:
-
-if [ -x /usr/local/sbin/ossfreeSetup ] ; then
- /usr/local/sbin/ossfreeSetup
-fi
- -----
+(on io=0xaaa irq=b.... you should use your own settings)
+That will enable the Sound Blaster and AWE wave synthesis.
-And these lines in an ossfreeOff script:
+To play midi files you should get one of these programs:
- -----
-#!/bin/sh
+Playmidi 2.4 or higher: http://playmidi.openprojects.net
+Drvmidi 4.2.b: http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv/index.html#Latest
-# NOT set -e, maybe not all of them are currently loaded.
+(These are available at all major Linux FTP sites and may already be
+ in your distribution)
-rmmod awe_wave
-rmmod adlib_card
-rmmod opl3
-rmmod sb
-rmmod uart401
-rmmod sound
- -----
+If something goes wrong please e-mail me. All comments and suggestions are
+welcome.
+ Yaroslav Rosomakho (alons55@dialup.ptt.ru)
+ http://members.xoom.com/yar
diff --git a/Documentation/sound/CS4232 b/Documentation/sound/CS4232
index b4906b148..7d6af7a5c 100644
--- a/Documentation/sound/CS4232
+++ b/Documentation/sound/CS4232
@@ -1,23 +1,23 @@
-
-insmod sound
-insmod ad1848
-insmod uart401
-insmod cs4232 io=* irq=* dma=* dma2=*
-
-This configures the crystal CS423x sound chip and activates its DSP
-functions. On some cards the non PnP setup the board attempts to do fails.
-If you have problems use the kernel PnP facilities.
-
-io is the I/O address of the WSS (normally 0x534)
-irq is the IRQ of this device
-dma/dma2 are the DMA channels. DMA2 may well be 0
-
-
-To get midi synth facilities add
-
-insmod opl3 io=*
-
-io= I/O address of the OPL3 synthesizer. This will be shown in /proc/sys/pnp
-and is normally 0x388
-
-
+To configure the Crystal CS423x sound chip and activate its DSP functions,
+modules may be loaded in this order:
+
+ modprobe sound
+ insmod ad1848
+ insmod uart401
+ insmod cs4232 io=* irq=* dma=* dma2=*
+
+This is the meaning of the parameters:
+
+ io--I/O address of the Windows Sound System (normally 0x534)
+ irq--IRQ of this device
+ dma and dma2--DMA channels (DMA2 may be 0)
+
+On some cards, the board attempts to do non-PnP setup, and fails. If you
+have problems, use Linux' PnP facilities.
+
+To get MIDI facilities add
+
+ insmod opl3 io=*
+
+where "io" is the I/O address of the OPL3 synthesizer. This will be shown
+in /proc/sys/pnp and is normally 0x388.
diff --git a/Documentation/sound/ChangeLog.multisound b/Documentation/sound/ChangeLog.multisound
new file mode 100644
index 000000000..fcd5b19f4
--- /dev/null
+++ b/Documentation/sound/ChangeLog.multisound
@@ -0,0 +1,137 @@
+1998-08-06 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.7.2
+
+ * After A/D calibration, do an explicit set to the line input,
+ rather than using set_recsrc
+
+1998-07-20 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.7.1
+
+ * Add more OSS ioctls
+
+1998-07-19 Andrew Veliath <andrewtv@usa.net>
+
+ * Update doc file
+
+ * Bring back DIGITAL1 with digital parameter to msnd_pinnacle.c
+ and CONFIG_MSNDPIN_DIGITAL. I'm not sure this actually works,
+ since I find audio playback goes into a very speeded mode of
+ operation, however it might be due to a lack of a digital
+ source, which I don't have to test.
+
+1998-07-18 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.7.0
+
+ * Can now compile with Alan Cox' 2.0.34-modular-sound patch (so
+ now it requires >= 2.1.106 or 2.0.34-ms) (note for 2.0.34-ms it
+ is in the Experimental section)
+
+ * More modularization, consolidation, also some MIDI hooks
+ installed for future MIDI modules
+
+ * Write flush
+
+ * Change default speed, channels, bit size to OSS/Free defaults
+
+1998-06-02 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.5b
+
+ * Fix version detection
+
+ * Remove underflow and overflow resets (delay was too long)
+
+ * Replace spinlocked bitops with atomic bit ops
+
+1998-05-27 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.5a
+
+ * Better recovery from underflow or overflow conditions
+
+ * Fix a deadlock condition with one thread reading and the other
+ writing
+
+1998-05-26 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.5
+
+ * Separate reset queue functions for play and record
+
+ * Add delays in dsp_halt
+
+1998-05-24 Andrew Veliath <andrewtv@usa.net>
+
+ * Add a check for Linux >= 2.1.95
+
+ * Remove DIGITAL1 input until I figure out how to make it work
+
+ * Add HAVE_DSPCODEH which when not defined will load firmware from
+ files using mod_firmware_load, then release memory after they
+ are uploaded (requires reorganized OSS).
+
+1998-05-22 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.4c
+
+ * Hopefully fix the mixer volume problem
+
+1998-05-19 Andrew Veliath <andrewtv@usa.net>
+
+ * Add __initfuncs and __initdatas to reduce resident code size
+
+ * Move bunch of code around, remove some protos
+
+ * Integrate preliminary changes for Alan Cox's OSS reorganization
+ for non-OSS drivers to coexist with OSS devices on the same
+ major. To compile standalone, must now define STANDALONE.
+
+1998-05-16 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.4b
+
+ * Integrated older card support into a unified driver, tested on a
+ MultiSound Classic c/o Kendrick Vargas.
+
+1998-05-15 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.4
+
+ * Fix read/write return values
+
+1998-05-13 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.3
+
+ * Stop play gracefully
+
+ * Add busy flag
+
+ * Add major and calibrate_signal module parameters
+
+ * Add ADC calibration
+
+ * Add some OSS compatibility ioctls
+
+ * Add mixer record selection
+
+ * Add O_NONBLOCK support, separate read/write wait queues
+
+ * Add sample bit size ioctl, expanded sample rate ioctl
+
+ * Playback suspension now resumes
+
+ * Use signal_pending after interruptible_sleep_on
+
+ * Add recording, change ints to bit flags
+
+1998-05-11 Andrew Veliath <andrewtv@usa.net>
+
+ * Update version to 0.2
+
+ * Add preliminary playback support
+
+ * Use new Turtle Beach DSP code
diff --git a/Documentation/sound/ESS1868 b/Documentation/sound/ESS1868
new file mode 100644
index 000000000..d508349dc
--- /dev/null
+++ b/Documentation/sound/ESS1868
@@ -0,0 +1,84 @@
+Documentation for the ESS1868F AudioDrive PnP sound card
+
+The ESS1868 sound card is a PnP ESS1688-compatible 16-bit sound card.
+
+Notes about configuring the sound card:
+
+ * The ESS1868 does not allow use of a 16-bit DMA, thus DMA 0, 1, 2, and 3
+ may only be used.
+
+ * isapnptools version 1.14 does work with ESS1868. Earlier versions might
+ not.
+
+ * Sound support MUST be compiled as MODULES, not statically linked
+ into the kernel.
+
+For configuring the sound card's I/O addresses, IRQ and DMA, here is a
+sample copy of the isapnp.conf directives regarding the ESS1868:
+
+(CONFIGURE ESS1868/-1 (LD 1
+(IO 0 (BASE 0x0220))
+(IO 1 (BASE 0x0388))
+(IO 2 (BASE 0x0330))
+(DMA 0 (CHANNEL 1))
+(INT 0 (IRQ 5 (MODE +E)))
+(ACT Y)
+))
+
+(for a full working isapnp.conf file, remember the
+(ISOLATE)
+(IDENTIFY *)
+at the beginning and the
+(WAITFORKEY)
+at the end.)
+
+In this setup, the main card I/O is 0x0220, FM synthesizer is 0x0388, and
+the MPU-401 MIDI port is located at 0x0330. IRQ is IRQ 5, DMA is channel 1.
+
+After configuring the sound card via isapnp, to use the card you must load
+the sound modules with the proper I/O information. Here is my setup:
+
+# ESS1868F AudioDrive initialization
+
+/sbin/insmod sound
+/sbin/insmod uart401
+/sbin/insmod sb io=0x220 irq=5 dma=1 dma16=-1
+/sbin/insmod mpu401 io=0x330
+/sbin/insmod opl3 io=0x388
+/sbin/insmod v_midi
+
+opl3 is the FM synthesizer--I have not tried the SoftOSS wavetable
+synthesizer yet, but I assume it would work as well. Also, doing:
+/sbin/insmod opl3
+/sbin/insmod adlib_card io=0x388
+works, but I believe the sound quality is a bit distorted when playing MIDI
+files.
+
+When using the above setup, my /proc/sound gives the following:
+
+OSS/Free:3.8s2++-971130
+Load type: Driver loaded as a module
+Kernel: Linux scitus.dyn.ml.org 2.1.104 #1 SMP Sun May 24 11:04:27 EDT 1998 i486
+Config options: 0
+
+Installed drivers:
+
+Card config:
+
+Audio devices:
+0: ESS ES1688 AudioDrive (rev 11) (3.1)
+
+Synth devices:
+0: Yamaha OPL-3
+
+Midi devices:
+0: Loopback MIDI Port 1
+1: Loopback MIDI Port 2
+
+Timers:
+0: System clock
+
+Mixers:
+0: Sound Blaster
+
+
diff --git a/Documentation/sound/MultiSound b/Documentation/sound/MultiSound
new file mode 100644
index 000000000..4d4313134
--- /dev/null
+++ b/Documentation/sound/MultiSound
@@ -0,0 +1,234 @@
+Getting Firmware
+~~~~~~~~~~~~~~~~
+
+See the end of this document on how to obtain and create the necessary
+firmware files.
+
+
+Supported Features
+~~~~~~~~~~~~~~~~~~
+
+Currently digital audio and mixer functionality is supported. (memory
+mapped digital audio is not yet supported). Modular MultiSound
+support is composed of the following modules:
+
+msnd - MultiSound base (requires soundcore)
+msnd_classic - Base audio/mixer support for Classic, Monetery and
+ Tahiti cards
+msnd_pinnacle - Base audio/mixer support for Pinnacle and Fiji cards
+
+
+Important Notes - Read Before Using
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+* The firmware files are not included (may change in future). You
+must obtain these images from Turtle Beach (they are included in the
+MultiSound Development Kits), and place them in /etc/sound for
+example, and give the full paths in the Linux configuration. Please
+note these files must be binary files, not assembler.
+
+* You need the following information to use this driver: the card's
+I/O base (i.e. 0x250), the IRQ (i.e. 5), and the shared memory area
+(i.e. 0xd8000).
+
+* Probing is not currently implemented, and only the msnd_classic
+driver will actually program the card's IRQ and SMA locations; the
+msnd_pinnacle is primarily for use with the card in PnP mode, however
+it should work if you know what the card's resource values are (this
+will change in the future).
+
+* Note the Turtle Beach Pinnacle card contains a Kurzweil MA-1
+synthesizer with an MPU compatible interface, which should work with
+the mpu401 module. You must know the resource values of the MA-1.
+
+
+Examples
+~~~~~~~~
+
+* If you have a MultiSound Classic/Monterey/Tahiti:
+
+insmod soundcore
+insmod msnd
+insmod msnd_classic io=0x290 irq=7 mem=0xd0000
+
+* If you have a MultiSound Pinnacle:
+
+insmod soundcore
+insmod msnd
+insmod msnd_pinnacle io=0x210 irq=5 mem=0xd8000
+
+* To use the MPU-compatible Kurzweil synth on the Pinnacle, add the
+following:
+
+insmod sound
+insmod mpu401 io=0x330 irq=9
+
+
+msnd_classic, msnd_pinnacle Required Options
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+If the following options are not given, the module will not load.
+Examine the kernel message log for informative error messages.
+WARNING--probing isn't supported so try to make sure you have the
+correct shared memory area, otherwise you may experience problems.
+
+io I/O base of DSP, e.g. io=0x210
+irq IRQ number, e.g. irq=5
+mem Shared memory area, e.g. mem=0xd8000
+
+
+msnd_classic, msnd_pinnacle Additional Options
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+fifosize The digital audio FIFOs, in kilobytes. The
+ default is 64kB (two FIFOs are allocated, so
+ this uses up 128kB).
+
+calibrate_signal Setting this to one calibrates the ADCs to the
+ signal, zero calibrates to the card (defaults
+ to zero).
+
+
+msnd_pinnacle Additional Options
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+digital Specify digital=1 to enable the S/PDIF input
+ if you have the digital daughterboard
+ adapter. This will enable access to the
+ DIGITAL1 input for the soundcard in the mixer.
+ Some mixer programs might have trouble setting
+ the DIGITAL1 source as an input. If you have
+ trouble, you can try the setdigital.c program
+ at the bottom of this document.
+
+
+Obtaining and Creating Firmware Files
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ For the Classic/Tahiti/Monterey
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Download to /tmp and unzip the following file from Turtle Beach:
+
+ ftp://ftp.tbeach.com/pub/tbs/pinn/msndvkit.zip
+
+When unzipped, unzip the file named MsndFiles.zip. Then copy the
+following firmware files to /etc/sound (note the file renaming):
+
+ cp DSPCODE/MSNDINIT.BIN /etc/sound/msndinit.bin
+ cp DSPCODE/MSNDPERM.REB /etc/sound/msndperm.bin
+
+When configuring the Linux kernel, specify /etc/sound/msndinit.bin and
+/etc/sound/msndperm.bin for the two firmware files (Linux kernel
+versions older than 2.2 do not ask for firmware paths, and are
+hardcoded to /etc/sound).
+
+
+ For the Pinnacle/Fiji
+ ~~~~~~~~~~~~~~~~~~~~~
+
+Download to /tmp and unzip the following file from Turtle Beach (be
+sure to use the entire URL; some have had trouble navigating to the
+URL):
+
+ ftp://ftp.tbeach.com/oldpub/tbs/pinn/pnddk100.zip
+
+Put the following lines into a file named conv.l (between the start
+and end lines):
+
+-- conv.l start --
+%%
+[ \n\t,\r]
+\;.*
+DB
+[0-9A-Fa-f]+H { int n; sscanf(yytext, "%xH", &n); printf("%c", n); }
+-- conv.l end --
+
+Then, compile the conv program with GNU make with the following
+command:
+
+ make LEX=flex LOADLIBES=-lfl conv
+
+This should give you an executable named conv. Now, we create the
+binary firmware files by doing the following conversion (assuming the
+archive unpacked into a directory named PINNDDK):
+
+ ./conv < PINNDDK/dspcode/pndspini.asm > /etc/sound/pndspini.bin
+ ./conv < PINNDDK/dspcode/pndsperm.asm > /etc/sound/pndsperm.bin
+
+The conv (and conv.l) program is not needed after conversion and can
+be safely deleted. Then, when configuring the Linux kernel, specify
+/etc/sound/pndspini.bin and /etc/sound/pndsperm.bin for the two
+firmware files (Linux kernel versions older than 2.2 do not ask for
+firmware paths, and are hardcoded to /etc/sound).
+
+
+Recording from the S/PDIF Input
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+If you have a Pinnacle or Fiji with S/PDIF input and want to set it as
+the input source, you can use this program if you have trouble trying
+to do it with a mixer program (be sure to insert the module with the
+digital=1 option).
+
+Compile with:
+cc -O setdigital.c -o setdigital
+
+-- start setdigital.c --
+#include <stdio.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <sys/ioctl.h>
+#include <sys/soundcard.h>
+
+int main(int argc, char *argv[])
+{
+ int fd;
+ unsigned long recmask, recsrc;
+
+ if (argc != 2) {
+ fprintf(stderr, "usage: setdigital <mixer device>\n");
+ exit(1);
+ } else
+
+ if ((fd = open(argv[1], O_RDWR)) < 0) {
+ perror(argv[1]);
+ exit(1);
+ }
+
+ if (ioctl(fd, SOUND_MIXER_READ_RECMASK, &recmask) < 0) {
+ fprintf(stderr, "error: ioctl read recmask failed\n");
+ perror("ioctl");
+ close(fd);
+ exit(1);
+ }
+
+ if (!(recmask & SOUND_MASK_DIGITAL1)) {
+ fprintf(stderr, "error: cannot find DIGITAL1 device in mixer\n");
+ close(fd);
+ exit(1);
+ }
+
+ if (ioctl(fd, SOUND_MIXER_READ_RECSRC, &recsrc) < 0) {
+ fprintf(stderr, "error: ioctl read recsrc failed\n");
+ perror("ioctl");
+ close(fd);
+ exit(1);
+ }
+
+ recsrc |= SOUND_MASK_DIGITAL1;
+
+ if (ioctl(fd, SOUND_MIXER_WRITE_RECSRC, &recsrc) < 0) {
+ fprintf(stderr, "error: ioctl write recsrc failed\n");
+ perror("ioctl");
+ close(fd);
+ exit(1);
+ }
+
+ close(fd);
+
+ return 0;
+}
+-- end setdigital.c --
diff --git a/Documentation/sound/OPL3-SA b/Documentation/sound/OPL3-SA
new file mode 100644
index 000000000..153082c46
--- /dev/null
+++ b/Documentation/sound/OPL3-SA
@@ -0,0 +1,81 @@
+OPL3-SA1 sound driver (opl3sa.o)
+
+---
+Note: This howto only describes how to setup the OPL3-SA1 chip; this info
+does not apply to the SA2, SA3, or SA4. Contact hannu@opensound.com for
+the support details of these other SAx chips.
+---
+
+The Yamaha OPL3-SA1 sound chip is usually found built into motherboards, and
+it's a decent little chip offering a WSS mode, a SB Pro emulation mode, MPU401
+and OPL3 FM Synth capabilities.
+
+You can enable inclusion of the driver via CONFIG_SOUND_OPL3SA1=m, or
+CONFIG_SOUND_OPL3SA1=y through 'make config/xconfig/menuconfig'.
+
+You'll need to know all of the relevant info (irq, dma, and io port) for the
+chip's WSS mode, since that is the mode the kernel sound driver uses, and of
+course you'll also need to know about where the MPU401 and OPL3 ports and
+irq's are if you want to use those.
+
+Here's the skinny on how to load it as a module:
+
+ modprobe opl3sa io=0x530 irq=11 dma=0 dma2=1 mpu_io=0x330 mpu_irq=5
+
+Module options in detail:
+
+ io: This is the WSS's port base.
+ irq: This is the WSS's irq.
+ dma: This is the WSS's dma line. In my BIOS setup screen this was
+ listed as "WSS Play DMA"
+ dma2: This is the WSS's secondary dma line. My BIOS calls it the
+ "WSS capture DMA"
+
+ mpu_io: This is the MPU401's port base.
+ mpu_irq: This is the MPU401's irq.
+
+If you'd like to use the OPL3 FM Synthesizer, make sure you enable
+CONFIG_YM3812 (in 'make config'). That'll build the opl3.o module.
+
+Then a simple 'insmod opl3 io=0x388', and you now have FM Synth.
+
+You can also use the SoftOSS software synthesizer instead of the builtin OPL3.
+Here's how:
+
+Say 'y' or 'm' to "SoftOSS software wave table engine" in make config.
+
+If you said yes, the software synth is availible once you boot your new
+kernel.
+
+If you chose to build it as a module, just insmod the resulting softoss2.o
+
+A 'cat /dev/sndstat' with all the above options should look similar to this:
+
+ OSS/Free:3.8s2++-971130
+ Load type: Driver loaded as a module
+ Kernel: Linux iniquity 2.1.105 #145 Mon Jun 8 11:40:47 MST 1998 i586
+ Config options: 0
+
+ Installed drivers:
+
+ Card config:
+
+ Audio devices:
+ 0: MSS audio codec (CS4231) (DUPLEX)
+
+ Synth devices:
+ 0: Yamaha OPL-3
+ 1: SoftOSS
+
+ Midi devices:
+ 0: OPL3-SA (MPU401)
+
+ Timers:
+ 0: System clock
+ 1: MSS audio codec (CS4231)
+
+ Mixers:
+ 0: MSS audio codec (CS4231)
+
+Questions? Comments?
+<stiker@northlink.com>
diff --git a/Documentation/sound/Opti b/Documentation/sound/Opti
index bc8b15290..34b0f4331 100644
--- a/Documentation/sound/Opti
+++ b/Documentation/sound/Opti
@@ -10,8 +10,8 @@ kernel release will include these features.
Please do not report inconsistencies on older Linux
kernels.
-The OPTi 82C931 is supported in its non PnP mode.
-Usually you do not need to set jumpers etc... The sound driver
+The OPTi 82C931 is supported in its non-PnP mode.
+Usually you do not need to set jumpers, etc. The sound driver
will check the card status and if it is required it will
force the card into a mode in which it can be programmed.
@@ -34,7 +34,7 @@ Answer 'm' for these items:
Support for OPTi MAD16 and/or Mozart based cards (CONFIG_MAD16)
FM synthesizer (YM3812/OPL-3) support (CONFIG_YM3812)
-The configuration menu may ask for addresses, irq lines or dma
+The configuration menu may ask for addresses, IRQ lines or DMA
channels. If the card is used as a module the module loading
options will override these values.
@@ -49,8 +49,8 @@ Go on and compile your kernel and modules. Install the modules. Run depmod -a.
Using isapnptools
-----------------
-In most systems with a PnP bios you do not need to use isapnp. The
-initialization provided by the bios is sufficient for the driver
+In most systems with a PnP BIOS you do not need to use isapnp. The
+initialization provided by the BIOS is sufficient for the driver
to pick up the card and continue initialization.
If that fails, or if you have other PnP cards, you need to use isapnp
@@ -61,8 +61,8 @@ about your PnP cards. Then edit the resulting file and select
the options of your choice. This file is normally installed as
/etc/isapnp.conf.
-The driver had one limitation WRT io port resources.
-IO3 base should be 0x0E0C. Isapnp allows other io ports but this
+The driver has one limitation with respect to I/O port resources:
+IO3 base must be 0x0E0C. Although isapnp allows other ports, this
address is hard-coded into the driver.
Using kmod and autoloading the sound driver
@@ -82,6 +82,14 @@ options mad16 irq=10 dma=0 dma16=1 io=0x530 joystick=1 cdtype=0
options opl3 io=0x388
post-install mad16 /sbin/ad1848_mixer_reroute 14 8 15 3 16 6
+If you have an MPU daughtercard or onboard MPU you will want to add to the
+"options mad16" line - eg
+
+options mad16 irq=5 dma=0 dma16=3 io=0x530 mpu_io=0x330 mpu_irq=9
+
+To set the I/O and IRQ of the MPU.
+
+
Explain:
alias mixer0 mad16
@@ -117,7 +125,7 @@ options opl3 io=0x388
post-install mad16 /sbin/ad1848_mixer_reroute 14 8 15 3 16 6
This sets resources and options for the mad16 and opl3 drivers.
-I use 2 dma channels (only one is required) to enable full duplex.
+I use two DMA channels (only one is required) to enable full duplex.
joystick=1 enables the joystick port. cdtype=0 disables the cd port.
You can also set mpu_io and mpu_irq in the mad16 options for the
uart401 driver.
@@ -155,10 +163,10 @@ the mad16 driver (use "modprobe mad16" to prevent auto-unloading)
before the cdrom is accessed the first time.
Using the sound driver built-in to the kernel may help here, but...
-Most new systems have a PnP bios and also two IDE controllers.
+Most new systems have a PnP BIOS and also two IDE controllers.
The IDE controller on the sound card may be needed only on older
systems (which have only one IDE controller) but these systems
-also do not have a PnP bios - requiring isapnptools and a modularized
+also do not have a PnP BIOS - requiring isapnptools and a modularized
driver.
Known problems
diff --git a/Documentation/sound/Soundblaster b/Documentation/sound/Soundblaster
index 8fe9d42ef..ad4cb5567 100644
--- a/Documentation/sound/Soundblaster
+++ b/Documentation/sound/Soundblaster
@@ -1,17 +1,16 @@
-
-insmod sound
+modprobe sound
insmod uart401
insmod sb ...
-This loads the driver for the soundblaster and assorted clones. Cards that
+This loads the driver for the Sound Blaster and assorted clones. Cards that
are covered by other drivers should not be using this driver.
-The soundblaster module takes the following arguments
+The Sound Blaster module takes the following arguments
-io I/O address of the soundblaster chip
-irq IRQ of the soundblaster chip
-dma 8bit DMA channel for the soundblaster
-dma16 16bit DMA channel for SB16 and equivalent cards
+io I/O address of the Sound Blaster chip
+irq IRQ of the Sound Blaster chip
+dma 8-bit DMA channel for the Sound Blaster
+dma16 16-bit DMA channel for SB16 and equivalent cards
mpu_io I/O for MPU chip if present
mad16=1 Set when loading this as part of the MAD16 setup only
@@ -29,10 +28,14 @@ insmod opl3 io=0x388
Using Mwave
To make this driver work with Mwave you must set mwave_bug. You also need
-to warmboot from DOS/Windows with the required firmware loaded under this
+to warm boot from DOS/Windows with the required firmware loaded under this
OS. IBM are being difficult about documenting how to load this firmware.
Avance Logic ALS007
-This card isn't currently supported. I have patches to merge however that
-add limited support.
+This card is supported; see the separate file ALS007 for full details.
+
+Avance Logic ALS100
+
+This card is supported; setup should be as for a standard Sound Blaster 16.
+The driver will identify the audio device as a "Sound Blaster 16 (ALS-100)".
diff --git a/Documentation/sound/Tropez+ b/Documentation/sound/Tropez+
new file mode 100644
index 000000000..b93a6b734
--- /dev/null
+++ b/Documentation/sound/Tropez+
@@ -0,0 +1,26 @@
+From: Paul Barton-Davis <pbd@op.net>
+
+Here is the configuration I use with a Tropez+ and my modular
+driver:
+
+ alias char-major-14 wavefront
+ alias synth0 wavefront
+ alias mixer0 cs4232
+ alias audio0 cs4232
+ pre-install wavefront modprobe "-k" "cs4232"
+ post-install wavefront modprobe "-k" "opl3"
+ options wavefront io=0x200 irq=9
+ options cs4232 synthirq=9 synthio=0x200 io=0x530 irq=5 dma=1 dma2=0
+ options opl3 io=0x388
+
+Things to note:
+
+ the wavefront options "io" and "irq" ***MUST*** match the "synthio"
+ and "synthirq" cs4232 options.
+
+ you can do without the opl3 module if you don't
+ want to use the OPL/[34] synth on the soundcard
+
+ the opl3 io parameter is conventionally not adjustable.
+
+Please see drivers/sound/README.wavefront for more details.
diff --git a/Documentation/sound/Wavefront b/Documentation/sound/Wavefront
new file mode 100644
index 000000000..aadbfd23f
--- /dev/null
+++ b/Documentation/sound/Wavefront
@@ -0,0 +1,371 @@
+ An OSS/Free Driver for WaveFront soundcards
+ (Turtle Beach Maui, Tropez, Tropez Plus)
+
+ Paul Barton-Davis, July 1998
+
+ VERSION 0.2.4
+
+Driver Status
+-------------
+
+Requires: Kernel 2.1.106 or later (a version of the driver is included
+with kernels 2.1.109 and above)
+
+As of 7/20/1998, this driver is currently in *BETA* state. This means
+that it compiles and runs, and that I use it on my system (Linux
+2.1.106) with some reasonably demanding applications and uses. I
+believe the code is approaching an initial "finished" state that
+provides bug-free support for the Tropez Plus.
+
+Please note that to date, the driver has ONLY been tested on a Tropez
+Plus. I would very much like to hear (and help out) people with Tropez
+and Maui cards, since I think the driver can support those cards as
+well.
+
+Finally, the driver has not been tested (or even compiled) as a static
+(non-modular) part of the kernel. Alan Cox's good work in modularizing
+OSS/Free for Linux makes this rather unnecessary.
+
+Some Questions
+--------------
+
+**********************************************************************
+0) What does this driver do that the maui driver did not ?
+**********************************************************************
+
+* can fully initialize a WaveFront card from cold boot - no DOS
+ utilities needed
+* working patch/sample/program loading and unloading (the maui
+ driver didn't document how to make this work, and assumed
+ user-level preparation of the patch data for writing
+ to the board. ick.)
+* full user-level access to all WaveFront commands
+* for the Tropez Plus, (primitive) control of the YSS225 FX processor
+* Virtual MIDI mode supported - 2 MIDI devices accessible via the
+ WaveFront's MPU401/UART emulation. One
+ accesses the WaveFront synth, the other accesses the
+ external MIDI connector. Full MIDI read/write semantics
+ for both devices.
+* OSS-compliant /dev/sequencer interface for the WaveFront synth,
+ including native and GUS-format patch downloading.
+* semi-intelligent patch management (prototypical at this point)
+
+**********************************************************************
+1) What to do about MIDI interfaces ?
+**********************************************************************
+
+The Tropez Plus (and perhaps other WF cards) can in theory support up
+to 2 physical MIDI interfaces. One of these is connected to the
+ICS2115 chip (the WaveFront synth itself) and is controlled by
+MPU/UART-401 emulation code running as part of the WaveFront OS. The
+other is controlled by the CS4232 chip present on the board. However,
+physical access to the CS4232 connector is difficult, and it is
+unlikely (though not impossible) that you will want to use it.
+
+An older version of this driver introduced an additional kernel config
+variable which controlled whether or not the CS4232 MIDI interface was
+configured. Because of Alan Cox's work on modularizing the sound
+drivers, and now backporting them to 2.0.34 kernels, there seems to be
+little reason to support "static" configuration variables, and so this
+has been abandoned in favor of *only* module parameters. Specifying
+"mpuio" and "mpuirq" for the cs4232 parameter will result in the
+CS4232 MIDI interface being configured; leaving them unspecified will
+leave it unconfigured (and thus unusable).
+
+BTW, I have heard from one Tropez+ user that the CS4232 interface is
+more reliable than the ICS2115 one. I have had no problems with the
+latter, and I don't have the right cable to test the former one
+out. Reports welcome.
+
+**********************************************************************
+2) Why does line XXX of the code look like this .... ?
+**********************************************************************
+
+Either because its not finished yet, or because you're a better coder
+than I am, or because you don't understand some aspect of how the card
+or the code works.
+
+I absolutely welcome comments, criticisms and suggestions about the
+design and implementation of the driver.
+
+**********************************************************************
+3) What files are included ?
+**********************************************************************
+
+ drivers/sound/README.wavefront -- this file
+
+ drivers/sound/wavefront.patch -- patches for the 2.1.106 sound drivers
+ needed to make the rest of this work
+ DO NOT USE IF YOU'VE APPLIED THEM
+ BEFORE, OR HAVE 2.1.109 OR ABOVE
+
+ drivers/sound/wavfront.c -- the driver
+ drivers/sound/ys225.h -- data declarations for FX config
+ drivers/sound/ys225.c -- data definitions for FX config
+ drivers/sound/wf_midi.c -- the "uart401" driver
+ to support virtual MIDI mode.
+ include/wavefront.h -- the header file
+ Documentation/sound/Tropez+ -- short docs on configuration
+
+**********************************************************************
+4) How do I compile/install/use it ?
+**********************************************************************
+
+PART ONE: install the source code into your sound driver directory
+
+ cd <top-of-your-2.1.106-code-base-e.g.-/usr/src/linux>
+ tar -zxvf <where-you-put/wavefront.tar.gz>
+
+PART TWO: apply the patches
+
+ DO THIS ONLY IF YOU HAVE A KERNEL VERSION BELOW 2.1.109
+ AND HAVE NOT ALREADY INSTALLED THE PATCH(ES).
+
+ cd drivers/sound
+ patch < wavefront.patch
+
+PART THREE: configure your kernel
+
+ cd <top of your kernel tree>
+ make xconfig (or whichever config option you use)
+
+ - choose YES for Sound Support
+ - choose MODULE (M) for OSS Sound Modules
+ - choose MODULE(M) to YM3812/OPL3 support
+ - choose MODULE(M) for WaveFront support
+ - choose MODULE(M) for CS4232 support
+
+ - choose "N" for everything else (unless you have other
+ soundcards you want support for)
+
+
+ make dep
+ make boot
+ .
+ .
+ .
+ <whatever you normally do for a kernel install>
+ make modules
+ .
+ .
+ .
+ make modules_isntall
+
+Here's my autoconf.h SOUND section:
+
+/*
+ * Sound
+ */
+#define CONFIG_SOUND 1
+#undef CONFIG_SOUND_OSS
+#define CONFIG_SOUND_OSS_MODULE 1
+#undef CONFIG_SOUND_PAS
+#undef CONFIG_SOUND_SB
+#undef CONFIG_SOUND_ADLIB
+#undef CONFIG_SOUND_GUS
+#undef CONFIG_SOUND_MPU401
+#undef CONFIG_SOUND_PSS
+#undef CONFIG_SOUND_MSS
+#undef CONFIG_SOUND_SSCAPE
+#undef CONFIG_SOUND_TRIX
+#undef CONFIG_SOUND_MAD16
+#undef CONFIG_SOUND_WAVEFRONT
+#define CONFIG_SOUND_WAVEFRONT_MODULE 1
+#undef CONFIG_SOUND_CS4232
+#define CONFIG_SOUND_CS4232_MODULE 1
+#undef CONFIG_SOUND_MAUI
+#undef CONFIG_SOUND_SGALAXY
+#undef CONFIG_SOUND_OPL3SA1
+#undef CONFIG_SOUND_SOFTOSS
+#undef CONFIG_SOUND_YM3812
+#define CONFIG_SOUND_YM3812_MODULE 1
+#undef CONFIG_SOUND_VMIDI
+#undef CONFIG_SOUND_UART6850
+/*
+ * Additional low level sound drivers
+ */
+#undef CONFIG_LOWLEVEL_SOUND
+
+************************************************************
+6) How do I configure my card ?
+************************************************************
+
+You need to edit /etc/conf.modules. Here's mine (edited to show the
+relevant details):
+
+ # Sound system
+ alias char-major-14 wavefront
+ alias synth0 wavefront
+ alias mixer0 cs4232
+ alias audio0 cs4232
+ pre-install wavefront modprobe "-k" "cs4232"
+ post-install wavefront modprobe "-k" "opl3"
+ options wavefront io=0x200 irq=9
+ options cs4232 synthirq=9 synthio=0x200 io=0x530 irq=5 dma=1 dma2=0
+ options opl3 io=0x388
+
+Things to note:
+
+ the wavefront options "io" and "irq" ***MUST*** match the "synthio"
+ and "synthirq" cs4232 options.
+
+ you can do without the opl3 module if you don't
+ want to use the OPL/[34] FM synth on the soundcard
+
+ the opl3 io parameter is conventionally not adjustable.
+ In theory, any not-in-use IO port address would work, but
+ just use 0x388 and stick with the crowd.
+
+**********************************************************************
+7) What about firmware ?
+**********************************************************************
+
+Turtle Beach have not given me permission to distribute their firmware
+for the ICS2115. However, if you have a WaveFront card, then you
+almost certainly have the firmware, and if not, its freely available
+on their website, at:
+
+ http://www.tbeach.com/tbs/downloads/scardsdown.htm#tropezplus
+
+The file is called WFOS2001.MOT (for the Tropez+).
+
+This driver, however, doesn't use the pure firmware as distributed,
+but instead relies on a somewhat processed form of it. You can
+generate this very easily. Following an idea from Andrew Veliath's
+Pinnacle driver, the following flex program will generate the
+processed version:
+
+---- cut here -------------------------
+%option main
+%%
+^S[28].*\r$ printf ("%c%.*s", yyleng-1,yyleng-1,yytext);
+<<EOF>> { fputc ('\0', stdout); return; }
+\n {}
+. {}
+---- cut here -------------------------
+
+To use it, put the above in file (say, ws.l) compile it like this:
+
+ shell> flex -ows.c ws.l
+ shell> cc -o ws ws.c
+
+and then use it like this:
+
+ ws < my-copy-of-the-oswf.mot-file > /etc/sound/wavefront.os
+
+If you put it somewhere else, you'll always have to use the wf_ospath
+module parameter (see below) or alter the source code.
+
+**********************************************************************
+7) How do I get it working ?
+**********************************************************************
+
+Optionally, you can reboot with the "new" kernel (even though the only
+changes have really been made to a module).
+
+Then, as root do:
+
+ modprobe wavefront
+
+You should get something like this in /var/log/messages:
+
+ WaveFront: firmware 1.20 already loaded.
+
+or
+
+ WaveFront: no response to firmware probe, assume raw.
+
+then:
+
+ WaveFront: waiting for memory configuration ...
+ WaveFront: hardware version 1.64
+ WaveFront: available DRAM 8191k
+ WaveFront: 332 samples used (266 real, 13 aliases, 53 multi), 180 empty
+ WaveFront: 128 programs slots in use
+ WaveFront: 256 patch slots filled, 142 in use
+
+The whole process takes about 16 seconds, the longest waits being
+after reporting the hardware version (during the firmware download),
+and after reporting program status (during patch status inquiry). Its
+shorter (about 10 secs) if the firmware is already loaded (i.e. only
+warm reboots since the last firmware load).
+
+The "available DRAM" line will vary depending on how much added RAM
+your card has. Mine has 8MB.
+
+Next, check /dev/sndstat, which on my machine says:
+---------------------------------------------------------------------
+OSS/Free:3.8s2++-971130
+Load type: Driver loaded as a module
+Kernel: Linux bd 2.1.106 #12 SMP Fri Jul 3 00:37:34 EDT 1998 i486
+Config options: 0
+
+Installed drivers:
+
+Card config:
+
+Audio devices:
+0: Crystal audio controller (CS4232) (DUPLEX)
+
+Synth devices:
+0: Turtle Beach WaveFront
+1: Yamaha OPL-3
+
+Midi devices:
+0: WaveFront Internal MIDI
+1: WaveFront External MIDI
+
+Timers:
+0: System clock
+1: Crystal audio controller (CS4232)
+
+Mixers:
+0: Crystal audio controller (CS4232)
+-----------------------------------------------------------
+
+To check basically functionality, use play(1) or splay(1) to send a
+.WAV or other audio file through the audio portion. Then use playmidi
+to play a General MIDI file. Try the "-D 0" to hear the
+difference between sending MIDI to the WaveFront and using the OPL/3,
+which is the default (I think ...). If you have an external synth(s)
+hooked to the soundcard, you can use "-e" to route to the
+external synth(s) (in theory, -D 1 should work as well, but I think
+there is a bug in playmidi which prevents this from doing what it
+should).
+
+**********************************************************************
+8) What are the module parameters ?
+**********************************************************************
+
+Its best to read wavefront.c for this, but here is a summary:
+
+integers:
+ wf_raw - if set, ignore apparent presence of firmware
+ loaded onto the ICS2115, reset the whole
+ board, and initialize it from scratch. (default = 0)
+
+ fx_raw - if set, always initialize the YSS225 processor
+ on the Tropez plus. (default = 1)
+
+ < The next 4 are basically for kernel hackers to allow
+ tweaking the driver for testing purposes. >
+
+ wait_usecs - loop timer used when waiting for
+ status conditions on the board.
+ The default is 150.
+
+ debug_default - debugging flags. See sound/wavefront.h
+ for WF_DEBUG_* values. Default is zero.
+ Setting this allows you to debug the
+ driver during module installation.
+strings:
+ ospath - path to get to the pre-processed OS firmware.
+ (default: /etc/sound/wavefront.os)
+
+**********************************************************************
+9) Who should I contact if I have problems?
+**********************************************************************
+
+Just me: Paul Barton-Davis <pbd@op.net>
+
+
diff --git a/Documentation/sound/es1370 b/Documentation/sound/es1370
new file mode 100644
index 000000000..8c37df406
--- /dev/null
+++ b/Documentation/sound/es1370
@@ -0,0 +1,62 @@
+ALaw/uLaw sample formats
+------------------------
+
+This driver does not support the ALaw/uLaw sample formats.
+ALaw is the default mode when opening a sound device
+using OSS/Free. The reason for the lack of support is
+that the hardware does not support these formats, and adding
+conversion routines to the kernel would lead to very ugly
+code in the presence of the mmap interface to the driver.
+And since xquake uses mmap, mmap is considered important :-)
+and no sane application uses ALaw/uLaw these days anyway.
+In short, playing a Sun .au file as follows:
+
+cat my_file.au > /dev/dsp
+
+does not work. Instead, you may use the play script from
+Chris Bagwell's sox-12.14 package (available from the URL
+below) to play many different audio file formats.
+The script automatically determines the audio format
+and does do audio conversions if necessary.
+http://home.sprynet.com/sprynet/cbagwell/projects.html
+
+
+Blocking vs. nonblocking IO
+---------------------------
+
+Unlike OSS/Free this driver honours the O_NONBLOCK file flag
+not only during open, but also during read and write.
+This is an effort to make the sound driver interface more
+regular. Timidity has problems with this; a patch
+is available from http://www.ife.ee.ethz.ch/~sailer/linux/pciaudio.html.
+(Timidity patched will also run on OSS/Free).
+
+
+MIDI UART
+---------
+
+The driver supports a simple MIDI UART interface, with
+no ioctl's supported.
+
+
+MIDI synthesizer
+----------------
+
+This soundcard does not have any hardware MIDI synthesizer;
+MIDI synthesis has to be done in software. To allow this
+the driver/soundcard supports two PCM (/dev/dsp) interfaces.
+The second one goes to the mixer "synth" setting and supports
+only a limited set of sampling rates (44100, 22050, 11025, 5512).
+By setting lineout to 1 on the driver command line
+(eg. insmod es1370 lineout=1) it is even possible on some
+cards to convert the LINEIN jack into a second LINEOUT jack, thus
+making it possible to output four independent audio channels!
+
+There is a freely available software package that allows
+MIDI file playback on this soundcard called Timidity.
+See http://www.cgs.fi/~tt/timidity/.
+
+
+
+Thomas Sailer
+sailer@ife.ee.ethz.ch
diff --git a/Documentation/sound/es1371 b/Documentation/sound/es1371
new file mode 100644
index 000000000..a6b1c0257
--- /dev/null
+++ b/Documentation/sound/es1371
@@ -0,0 +1,56 @@
+ALaw/uLaw sample formats
+------------------------
+
+This driver does not support the ALaw/uLaw sample formats.
+ALaw is the default mode when opening a sound device
+using OSS/Free. The reason for the lack of support is
+that the hardware does not support these formats, and adding
+conversion routines to the kernel would lead to very ugly
+code in the presence of the mmap interface to the driver.
+And since xquake uses mmap, mmap is considered important :-)
+and no sane application uses ALaw/uLaw these days anyway.
+In short, playing a Sun .au file as follows:
+
+cat my_file.au > /dev/dsp
+
+does not work. Instead, you may use the play script from
+Chris Bagwell's sox-12.14 package (available from the URL
+below) to play many different audio file formats.
+The script automatically determines the audio format
+and does do audio conversions if necessary.
+http://home.sprynet.com/sprynet/cbagwell/projects.html
+
+
+Blocking vs. nonblocking IO
+---------------------------
+
+Unlike OSS/Free this driver honours the O_NONBLOCK file flag
+not only during open, but also during read and write.
+This is an effort to make the sound driver interface more
+regular. Timidity has problems with this; a patch
+is available from http://www.ife.ee.ethz.ch/~sailer/linux/pciaudio.html.
+(Timidity patched will also run on OSS/Free).
+
+
+MIDI UART
+---------
+
+The driver supports a simple MIDI UART interface, with
+no ioctl's supported.
+
+
+MIDI synthesizer
+----------------
+
+This soundcard does not have any hardware MIDI synthesizer;
+MIDI synthesis has to be done in software. To allow this
+the driver/soundcard supports two PCM (/dev/dsp) interfaces.
+
+There is a freely available software package that allows
+MIDI file playback on this soundcard called Timidity.
+See http://www.cgs.fi/~tt/timidity/.
+
+
+
+Thomas Sailer
+sailer@ife.ee.ethz.ch
diff --git a/Documentation/sound/mwave b/Documentation/sound/mwave
index 8bf73a039..b0f847cd6 100644
--- a/Documentation/sound/mwave
+++ b/Documentation/sound/mwave
@@ -1,7 +1,7 @@
- How to try and survive an IBM Mwave under Linux SB drivers
+ How to try to survive an IBM Mwave under Linux SB drivers
-* IBM refuse to provide documentation. If anyone can ever find out what
+* IBM refuses to provide documentation. If anyone can ever find out what
MWD50430.EXE actually does to load firmware then this comedy could go
away.
@@ -12,34 +12,35 @@
----------------------------------------------------------------------------
-OK, First thing - the IRQ problem IS a problem, whether the test is bypassed or
-not. And it is NOT a linux problem - it is an MWAVE problem that is fixed with
-the latest MWAVE patches. So, in other words, DON'T bypass the test for MWAVES!!
+OK, first thing - the IRQ problem IS a problem, whether the test is bypassed or
+not. It is NOT a Linux problem, but an MWAVE problem that is fixed with the
+latest MWAVE patches. So, in other words, don't bypass the test for MWAVES!
-My config is Win 95 on HDA1, swap on HDA2, RH 5 on HDA3.
+I have Windows 95 on /dev/hda1, swap on /dev/hda2, and Red Hat 5 on /dev/hda3.
The steps, then:
Boot to Linux.
- Mount Win95 file system (assume mount mount = /dos95)
+ Mount Windows 95 file system (assume mount point = /dos95).
mkdir /dos95/linux
mkdir /dos95/linux/boot
mkdir /dos95/linux/boot/parms
- Copy the kernel, any initrd image, and loadlin to /dos95/linux/boot
+ Copy the kernel, any initrd image, and loadlin to /dos95/linux/boot/.
- Reboot to win 95
+ Reboot to Windows 95.
- Edit C:/msdos.sys and add/change the following:
+ Edit C:/msdos.sys and add or change the following:
Logo=0
BootGUI=0
- [Note msdos.sys IS a text file but it needs to be 'unhidden' and make
- read-writable before it can be edited]
+ Note that msdos.sys is a text file but it needs to be made 'unhidden',
+ readable and writable before it can be edited. This can be done with
+ DOS' "attrib" command.
- Edit Config .sys to have multiple config menus. I have one for win95, and
- five for linux. Like this:
+ Edit config.sys to have multiple config menus. I have one for windows 95 and
+ five for Linux, like this:
------------
[menu]
menuitem=W95, Windows 95
@@ -70,11 +71,11 @@ DEVICE=C:\MWW\MANAGER\MWD50430.EXE
SHELL=c:\command.com /e:2048
-------------------
-The important things are the SHELL and DEVICE statements
+The important things are the SHELL and DEVICE statements.
- Then change Autoexec.bat. Basically everything in there originally should be
- done ONLY when Win95 is booted. Then you add new things specifically for
- Linux. Mine is as follows
+ Then change autoexec.bat. Basically everything in there originally should be
+ done ONLY when Windows 95 is booted. Then you add new things specifically
+ for Linux. Mine is as follows
---------------
@ECHO OFF
@@ -111,35 +112,35 @@ win
------------------------
-Now build a file in c:\linux\boot\parms for each linux config that you have.
+Now build a file in c:\linux\boot\parms for each Linux config that you have.
For example, my LINDOC3 config is for a docked Thinkpad at runlevel 3 with no
-initrd image, and has a parm file named LINDOC3.PAR in c:\linux\boot\parms:
+initrd image, and has a parameter file named LINDOC3.PAR in c:\linux\boot\parms:
-----------------------
# LOADLIN @param_file image=other_image root=/dev/other
#
# Linux Console in docking station
#
-c:\linux\boot\zImage.krn # first value must be the filename of the Linux-kernel
-root=/dev/hda3 # the device which gets mounted as root FS
-ro # Other kernel arguments go here
+c:\linux\boot\zImage.krn # First value must be filename of Linux kernel.
+root=/dev/hda3 # device which gets mounted as root FS
+ro # Other kernel arguments go here.
apm=off
doc=yes
3
-----------------------
-the doc=yes parm is an environment variable that my init scripts use, it is not
+The doc=yes parameter is an environment variable used by my init scripts, not
a kernel argument.
-However, the apm=off parm IS a kernel argument!!!!!!! APM, at least in my setup,
+However, the apm=off parameter IS a kernel argument! APM, at least in my setup,
causes the kernel to crash when loaded via loadlin (but NOT when loaded via
LILO). The APM stuff COULD be forced out of the kernel via the kernel compile
-options. BUT I, instead, got hold of an unofficial patch to the APM drivers that
-allows them to be dynamically deactivated via kernel arguments. Whatever you
-chose to document, APM, it seems, MUST be off for setups like mine.
+options. Instead, I got an unofficial patch to the APM drivers that allows them
+to be dynamically deactivated via kernel arguments. Whatever you chose to
+document, APM, it seems, MUST be off for setups like mine.
-Now check the C:\MWW\MWCONFIG.REF looks like this:
+Now make sure C:\MWW\MWCONFIG.REF looks like this:
----------------------
[NativeDOS]
@@ -167,16 +168,16 @@ OR the Default= line COULD be
Default=SBPRO
-Reboot to Win95 and choose Linux. When booted, use sndconfig to configure the
-sound modules and VOILA - ThinkPad sound with Linux.
+Reboot to Windows 95 and choose Linux. When booted, use sndconfig to configure
+the sound modules and voilą - ThinkPad sound with Linux.
-Now the gotchas - You can either have CD sound OR Mixers but not both. That's a
-problem with the SB1.5(CD sound) or SBPRO(Mixers) settings. No-one knows why
+Now the gotchas - you can either have CD sound OR Mixers but not both. That's a
+problem with the SB1.5 (CD sound) or SBPRO (Mixers) settings. No one knows why
this is!
-And, for some reason MPEG3 files, when played through mpg123, sound like they
-are playing at 1/8th speed - not very useful!!!!!!!!!!!! If you have ANY insight
-on why this second thing might be happening I would be grateful.
+For some reason MPEG3 files, when played through mpg123, sound like they
+are playing at 1/8th speed - not very useful! If you have ANY insight
+on why this second thing might be happening, I would be grateful.
===========================================================
_/ _/_/_/_/
@@ -188,5 +189,3 @@ _/ _/_/_/_/
_/ _/
_/_/
===========================================================
-
-
diff --git a/Documentation/sound/sonicvibes b/Documentation/sound/sonicvibes
new file mode 100644
index 000000000..4a4eb2526
--- /dev/null
+++ b/Documentation/sound/sonicvibes
@@ -0,0 +1,73 @@
+ALaw/uLaw sample formats
+------------------------
+
+This driver does not support the ALaw/uLaw sample formats.
+ALaw is the default mode when opening a sound device
+using OSS/Free. The reason for the lack of support is
+that the hardware does not support these formats, and adding
+conversion routines to the kernel would lead to very ugly
+code in the presence of the mmap interface to the driver.
+And since xquake uses mmap, mmap is considered important :-)
+and no sane application uses ALaw/uLaw these days anyway.
+In short, playing a Sun .au file as follows:
+
+cat my_file.au > /dev/dsp
+
+does not work. Instead, you may use the play script from
+Chris Bagwell's sox-12.14 package (available from the URL
+below) to play many different audio file formats.
+The script automatically determines the audio format
+and does do audio conversions if necessary.
+http://home.sprynet.com/sprynet/cbagwell/projects.html
+
+
+Blocking vs. nonblocking IO
+---------------------------
+
+Unlike OSS/Free this driver honours the O_NONBLOCK file flag
+not only during open, but also during read and write.
+This is an effort to make the sound driver interface more
+regular. Timidity has problems with this; a patch
+is available from http://www.ife.ee.ethz.ch/~sailer/linux/pciaudio.html.
+(Timidity patched will also run on OSS/Free).
+
+
+MIDI UART
+---------
+
+The driver supports a simple MIDI UART interface, with
+no ioctl's supported.
+
+
+MIDI synthesizer
+----------------
+
+The card both has an OPL compatible FM synthesizer as well as
+a wavetable synthesizer.
+
+I haven't managed so far to get the OPL synth running.
+
+Using the wavetable synthesizer requires allocating
+1-4MB of physically contiguous memory, which isn't possible
+currently on Linux without ugly hacks like the bigphysarea
+patch. Therefore, the driver doesn't support wavetable
+synthesis.
+
+
+No support from S3
+------------------
+
+I do not get any support from S3. Therefore, the driver
+still has many problems. For example, although the manual
+states that the chip should be able to access the sample
+buffer anywhere in 32bit address space, I haven't managed to
+get it working with buffers above 16M. Therefore, the card
+has the same disadvantages as ISA soundcards.
+
+Given that the card is also very noisy, and if you haven't
+already bought it, you should strongly opt for one of the
+comparatively priced Ensoniq products.
+
+
+Thomas Sailer
+sailer@ife.ee.ethz.ch
diff --git a/Documentation/sound/ultrasound b/Documentation/sound/ultrasound
index 51abe84a7..32cd50478 100644
--- a/Documentation/sound/ultrasound
+++ b/Documentation/sound/ultrasound
@@ -1,19 +1,18 @@
-
-insmod sound
+modprobe sound
insmod ad1848
insmod gus io=* irq=* dma=* ...
-This loads the driver for the Gravis Ultrasound family of soundcards.
+This loads the driver for the Gravis Ultrasound family of sound cards.
-The gus modules takes the following arguments
+The gus module takes the following arguments
-io I/O address of the ultrasound card (eg. io=0x220)
-irq IRQ of the soundblaster card
-dma DMA channel for the soundblaster
+io I/O address of the Ultrasound card (eg. io=0x220)
+irq IRQ of the Sound Blaster card
+dma DMA channel for the Sound Blaster
dma16 2nd DMA channel, only needed for full duplex operation
type 1 for PnP card
gus16 1 for using 16 bit sampling daughter board
-no_wave_dma Set to disable dma usage for wavetable (see note)
+no_wave_dma Set to disable DMA usage for wavetable (see note)
db16 ???
diff --git a/Documentation/spinlocks.txt b/Documentation/spinlocks.txt
index 53f9362f5..c6e24f82d 100644
--- a/Documentation/spinlocks.txt
+++ b/Documentation/spinlocks.txt
@@ -11,7 +11,7 @@ On Fri, 2 Jan 1998, Doug Ledford wrote:
> these routines and go about making use of them? Do they only lock on a
> per-processor basis or can they also lock say an interrupt routine from
> mucking with a queue if the queue routine was manipulating it when the
-> interrupt occured, or should I still use a cli(); based construct on that
+> interrupt occurred, or should I still use a cli(); based construct on that
> one?
See <asm/spinlock.h>. The basic version is:
diff --git a/Documentation/stallion.txt b/Documentation/stallion.txt
index 6c80ff368..c80d39bc0 100644
--- a/Documentation/stallion.txt
+++ b/Documentation/stallion.txt
@@ -4,8 +4,8 @@ Stallion Multiport Serial Driver Readme
Copyright (C) 1994-1998, Stallion Technologies (support@stallion.com).
-Version: 5.4.5
-Date: 23MAR98
+Version: 5.4.6
+Date: 23JUN98
diff --git a/Documentation/svga.txt b/Documentation/svga.txt
index 362eb4fef..22d82294b 100644
--- a/Documentation/svga.txt
+++ b/Documentation/svga.txt
@@ -60,7 +60,7 @@ absolutely insane PC design.
"0 0F00 80x25" means that the first menu item (the menu items are numbered
from "0" to "9" and from "a" to "z") is a 80x25 mode with ID=0x0f00 (see the
-next section for a description of mode ID's).
+next section for a description of mode IDs).
<flashing-cursor-here> encourages you to enter the item number or mode ID
you wish to set and press <RETURN>. If the computer complains something about
@@ -91,9 +91,9 @@ function.
modes are not listed at all and the modes revealed by `scan' are shown before
all VESA modes.
-3. Mode ID's
-~~~~~~~~~~~~
- Because of the complexity of all the video stuff, the video mode ID's
+3. Mode IDs
+~~~~~~~~~~~
+ Because of the complexity of all the video stuff, the video mode IDs
used here are also a bit complex. A video mode ID is a 16-bit number usually
expressed in a hexadecimal notation (starting with "0x"). You can set a mode
by entering its mode directly if you know it even if it isn't shown on the menu.
@@ -139,7 +139,7 @@ The ID numbers can be divided to three regions:
If you add 0x8000 to the mode ID, the program will try to recalculate
vertical display timing according to mode parameters, which can be used to
-eliminate some annoying bugs of certain VGA BIOS'es (usually those used for
+eliminate some annoying bugs of certain VGA BIOSes (usually those used for
cards with S3 chipsets and old Cirrus Logic BIOSes) -- mainly extra lines at the
end of the display.
@@ -179,7 +179,7 @@ of the table (which also includes a video card name to be displayed on the
top of the menu).
CONFIG_VIDEO_400_HACK - force setting of 400 scan lines for standard VGA
-modes. This option is intended to be used on certain buggy BIOS'es which draw
+modes. This option is intended to be used on certain buggy BIOSes which draw
some useless logo using font download and then fail to reset the correct mode.
Don't use unless needed as it forces resetting the video card.
@@ -233,7 +233,7 @@ force setting of the correct mode.
2.2 (01-Feb-96) EGA 80x43 fixed. VESA extended to 0x200-0x4ff (non-standard 02XX
VESA modes work now). Display end bug workaround supported.
Special modes renumbered to allow adding of the "recalculate"
- flag, 0xffff and 0xfffe became aliases instead of real ID's.
+ flag, 0xffff and 0xfffe became aliases instead of real IDs.
Screen contents retained during mode changes.
2.3 (15-Mar-96) Changed to work with 1.3.74 kernel.
2.4 (18-Mar-96) Added patches by Hans Lermen fixing a memory overwrite problem
@@ -267,3 +267,4 @@ force setting of the correct mode.
offered explicitly on the prompt line.
- Removed the doc section describing adding of new probing
functions as I try to get rid of _all_ hardware probing here.
+2.12 (25-May-98)- Added support for VESA frame buffer graphics.
diff --git a/Documentation/sysctl/README b/Documentation/sysctl/README
index be6a09704..ca08da9da 100644
--- a/Documentation/sysctl/README
+++ b/Documentation/sysctl/README
@@ -1,4 +1,3 @@
-
Documentation for /proc/sys/*/* version 0.1
(c) 1998, Rik van Riel <H.H.vanRiel@phys.uu.nl>
diff --git a/Documentation/sysctl/kernel.txt b/Documentation/sysctl/kernel.txt
index b935b4ca9..5525e236a 100644
--- a/Documentation/sysctl/kernel.txt
+++ b/Documentation/sysctl/kernel.txt
@@ -1,4 +1,3 @@
-
Documentation for /proc/sys/kernel/* version 0.1
(c) 1998, Rik van Riel <H.H.vanRiel@phys.uu.nl>
@@ -89,8 +88,8 @@ would suffice to set your hostname and domainname.
file-max & file-nr:
-The kernel allocates filehandles dynamically, but as yet it
-doesn't free them again...
+The kernel allocates file handles dynamically, but as yet it
+doesn't free them again.
The value in file-max denotes the maximum number of file-
handles that the Linux kernel will allocate. When you get lots
@@ -99,17 +98,17 @@ want to increase this limit.
The three values in file-nr denote the number of allocated
file handles, the number of used file handles and the maximum
-number of file handles. When the allocated filehandles come
+number of file handles. When the allocated file handles come
close to the maximum, but the number of actually used ones is
-far behind, you've encountered a peak in your filehandle usage
-and you don't need to increase the maximum.
+far behind, you've encountered a peak in your usage of file
+handles and you don't need to increase the maximum.
==============================================================
inode-max, inode-nr & inode-state:
-As with filehandles, the kernel allocates the inode structures
-dynamically, but can't free them yet...
+As with file handles, the kernel allocates the inode structures
+dynamically, but can't free them yet.
The value in inode-max denotes the maximum number of inode
handlers. This value should be 3-4 times larger than the value
diff --git a/Documentation/sysctl/vm.txt b/Documentation/sysctl/vm.txt
index 099d2a3b4..c49a2fe43 100644
--- a/Documentation/sysctl/vm.txt
+++ b/Documentation/sysctl/vm.txt
@@ -1,4 +1,3 @@
-
Documentation for /proc/sys/vm/* version 0.1
(c) 1998, Rik van Riel <H.H.vanRiel@phys.uu.nl>
@@ -99,7 +98,7 @@ be used for buffer memory. The percentage is calculated
as a percentage of total system memory.
The values are:
-min_percent -- this is the minumum percentage of memory
+min_percent -- this is the minimum percentage of memory
that should be spent on buffer memory
borrow_percent -- when Linux is short on memory, and the
buffer cache uses more memory, free pages
@@ -138,7 +137,7 @@ freepages.high The swapping daemon exits when memory is
kswapd:
Kswapd is the kernel swapout daemon. That is, kswapd is that
-piece of the kernel that frees memory when it get's fragmented
+piece of the kernel that frees memory when it gets fragmented
or full. Since every system is different, you'll probably want
some control over this piece of the system.
@@ -152,7 +151,7 @@ tries_base The maximum number of pages kswapd tries to
number. Usually this number will be divided
by 4 or 8 (see mm/vmscan.c), so it isn't as
big as it looks.
- When you need to increase the bandwith to/from
+ When you need to increase the bandwidth to/from
swap, you'll want to increase this number.
tries_min This is the minimum number of times kswapd
tries to free a page each time it is called.
@@ -186,9 +185,9 @@ From linux/mm/mmap.c:
--------------------------------------------------------------
static inline int vm_enough_memory(long pages)
{
- /* Stupid algorithm to decide if we have enough memory: while
- * simple, it hopefully works in most obvious cases.. Easy to
- * fool it, but this should catch most mistakes.
+ /* This stupid algorithm decides whether we have enough memory:
+ * while simple, it should work in most obvious cases. It's
+ * easily fooled, but this should catch most mistakes.
*/
long freepages;
@@ -269,7 +268,7 @@ also scan small processes.
The values of sc_pageout_weight and sc_bufferout_weight are
used to control how many tries kswapd will make in order
to swapout one page / buffer. These values can be used to
-finetune the ratio between user pages and buffer/cache memory.
+fine-tune the ratio between user pages and buffer/cache memory.
When you find that your Linux system is swapping out too many
process pages in order to satisfy buffer memory demands, you
might want to either increase sc_bufferout_weight, or decrease
diff --git a/Documentation/sysrq.txt b/Documentation/sysrq.txt
index f9d282bba..40bce4fd7 100644
--- a/Documentation/sysrq.txt
+++ b/Documentation/sysrq.txt
@@ -1,23 +1,30 @@
- MAGIC SYSRQ KEY DOCUMENTATION v1.0
+ MAGIC SYSRQ KEY DOCUMENTATION v1.2
------------------------------------
- [Fri Apr 3 08:27:12 EST 1998]
+ [Sat May 16 01:09:21 EDT 1998]
-1. What is the magic SysRQ key?
+* What is the magic SysRQ key?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-It is a 'magical' key combo you can hit, and the kernel will respond to
-regardless of anything else, unless it is hard-locked.
+It is a 'magical' key combo you can hit which kernel will respond to
+regardless of whatever else it is doing, unless it is completely locked up.
-2. How do I enable the magic SysRQ key?
+* How do I enable the magic SysRQ key?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You need to say yes to 'Magic SysRq key (CONFIG_MAGIC_SYSRQ)' when
configuring the kernel. This option is only available it 2.1.x or later
kernels.
-3. How do I use the magic SysRQ key?
+* How do I use the magic SysRQ key?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-You press the key combo 'ALT-SysRQ-<command key>'.
+On x86 - You press the key combo 'ALT-SysRQ-<command key>'. Note - Some
+ (older?) may not have a key labeled 'SysRQ'. The 'SysRQ' key is
+ also known as the 'Print Screen' key.
-4. What are the 'command' keys?
+On SPARC - You press 'ALT-STOP-<command key>', I believe.
+
+On other - If you know of the key combos for other architectures, please
+ let me know so I can add them to this section.
+
+* What are the 'command' keys?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
'r' - Turns off keyboard raw mode and sets it to XLATE.
@@ -30,7 +37,7 @@ You press the key combo 'ALT-SysRQ-<command key>'.
's' - Will attempt to sync all mounted filesystems.
-'u' - Will attempt to remount all mounted file systems readonly.
+'u' - Will attempt to remount all mounted filesystems read-only.
'p' - Will dump the current registers and flags to your console.
@@ -39,7 +46,7 @@ You press the key combo 'ALT-SysRQ-<command key>'.
'm' - Will dump current memory info to your console.
-'0'-'8' - Sets the console log level, controlling which kernel messages
+'0'-'9' - Sets the console log level, controlling which kernel messages
will be printed to your console. ('0', for example would make
it so that only emergency messages like PANICs or OOPSes would
make it to your console.)
@@ -51,7 +58,7 @@ You press the key combo 'ALT-SysRQ-<command key>'.
'l' - Send a SIGKILL to all processes, INCLUDING init. (Your system
will be non-functional after this.)
-5. Okay, so what can I use them for?
+* Okay, so what can I use them for?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Well, un'R'aw is very handy when your X server or a svgalib program crashes.
@@ -62,12 +69,17 @@ re'B'oot is good when you're unable to shut down. But you should also 'S'ync
and 'U'mount first.
'S'ync is great when your system is locked up, it allows you to sync your
-disks and will certainly lessen the chance of data loss and fscking.
+disks and will certainly lessen the chance of data loss and fscking. Note
+that the sync hasn't taken place until you see the "OK" and "Done" appear
+on the screen. (If the kernel is really in strife, you may not ever get the
+OK or Done message...)
'U'mount is basically useful in the same ways as 'S'ync. I generally 'S'ync,
'U'mount, then re'B'oot when my system locks. It's saved me many a fsck.
+Again, the unmount (remount read-only) hasn't taken place until you see the
+"OK" and "Done" message appear on the screen.
-The loglevel'0'-'8' is useful when your console is being flooded with
+The loglevel'0'-'9' is useful when your console is being flooded with
kernel messages you do not want to see. Setting '0' will prevent all but
the most urgent kernel messages from reaching your console. (They will
still be logged if syslogd/klogd are alive, though.)
@@ -76,14 +88,26 @@ t'E'rm and k'I'll are useful if you have some sort of runaway process you
are unable to kill any other way, especially if it's spawning other
processes.
-6. Sometimes SysRQ seems to get 'stuck' after using it, what can I do?
+* Sometimes SysRQ seems to get 'stuck' after using it, what can I do?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
That happens to me, also. I've found that tapping shift, alt, and control
on both sides of the keyboard, and hitting an invalid sysrq sequence again
-will fix the problem. (ie, something like alt-sysrq-z).
-
-7. I have more questions, who can I ask?
+will fix the problem. (ie, something like alt-sysrq-z). Switching to another
+virtual console (ALT+Fn) and then back again should also help.
+
+* I hit SysRQ, but nothing seems to happen, what's wrong?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+There are some keyboards which do not support 'SysRQ', you can try running
+'showkey -s' and pressing SysRQ or alt-SysRQ to see if it generates any
+0x54 codes. If it doesn't, you may define the magic sysrq sequence to a
+different key. Find the keycode with showkey, and change the define of
+'#define SYSRQ_KEY 0x54' in [/usr/src/linux/]include/asm/keyboard.h to
+the keycode of the key you wish to use, then recompile. Oh, and by the way,
+you exit 'showkey' by not typing anything for ten seconds.
+
+* I have more questions, who can I ask?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You may feel free to send email to myrdraal@deathsdoor.com, and I will
-respond as soon as possible.
+respond as soon as possible. If that email address does not work, use
+myrdraal@jackalz.dyn.ml.org.
-Myrdraal
diff --git a/Documentation/transname.txt b/Documentation/transname.txt
deleted file mode 100644
index b778a1153..000000000
--- a/Documentation/transname.txt
+++ /dev/null
@@ -1,264 +0,0 @@
-Transname version 1.9 (C) 1997 Thomas Schoebel-Theuer
-
-transname enables diskless clients, X-terminals etc to mount the
-*root filesystem* of the server. This make administration of
-large pools a lot easier.
-
-Wherefore is linux-2.0.21-transname.patch?
-
-Currently different diskless clients must have their root / on different
-directories on the server, beause each client has _some_ different
-configuration files. However, most files (typically about 99%) have the same
-contents on the clients and on the server, but have to be replicated
-(and maintained separately) just because of the 1% differences.
-This duplication causes very large efforts in practise, since at least
-the /etc directory has to be duplicated for every client. Even in /etc
-many files are identical, for example sendmail.cf, initrc scripts and
-others. Maintaining a large pool requires means to ensure coherence among
-the duplicates. Classical methods like symlinks are inconvenient
-for this task because they have to be valid in the view of mounted
-filesystems at all clients, not at the server.
-
-Linux transname overcomes this problem by allowing filenames
-to be context-dependent. For example, if you have a file /etc/config
-that should differ on the hosts "myserver" and "myclient", you just
-create two different files named /etc/config#host=myserver# and
-/etc/config#host=myclient# . On host "myserver", the file
-/etc/config#host=myserver# will appear as if it were hardlinked to
-file /etc/config (without the #...=...# suffix). On host "myclient",
-the corresponding other file will appear as /etc/config. So you
-can access the right file contents under the _same_ name, depending
-on which host you are working on.
-
-A similar concept can be found in older HP-UX versions, but with
-so-called "hidden directories" which don't allow contemporary viewing of
-all versions by default. In contrast, transname shows all context-dependent
-files in the dir listing and they can be edited using the
-fully qualified name.
-
-Transname was developed for and is used at our Linux pool at the
-University of Stuttgart with good results. Maintenance of the pool is
-at a minimum, and adding new clients is child's play. No worry with
-keeping up mail configurations, newly installed tools, changed /etc/services,
-/etc/shells, /etc/resolv.conf and many, many others. In contrast to a
-sophisticated symlink solution, adding a new file to the /etc directory
-is seen immediately by all clients.
-
-An example for the use of linux-2.0-transname.patch:
-
-For example, you can make your /etc/fstab context-dependent. If you want
-to do that, you should create an /etc/fstab#ktype=default# for the
-server and an /etc/fstab#ktype=diskless# for all clients. This is because
-your clients may not yet know their own hostname when they attempt to mount
-the root filesystem. You can compile in the kerneltypes "default" and
-"diskless" into different kernels for servers and clients. Of course,
-if your clients boot via bootp and know their names when mounting the root,
-you can use /etc/fstab#host=myclient# instead. But at least servers
-booting from disk normally don't know their hostname at root mount time,
-so you can mix methods and use /etc/fstab#ktype=default# for the server,
-/etc/fstab#ktype=diskless# for the majority of the clients and
-/etc/fstab#host=myclient# for some specific client, because translation
-of #host=...# is given precedence over #ktype=...# by default.
-
-This sort of name translation works with any underlying file system
-and with any inode type (i.e. with directories, symlinks, devices etc),
-because it is implemented in the VFS layer of the kernel. Currently,
-five types of default translations are supported:
-
- * <name>#host=<hostname># depends on the hostname, see "uname -n"
- * <name>#kname=<string># works with a hard compiled-in string
- * <name>#ktype=<string># works with a hard compiled-in string
- * <name>#machine=<id># depends on architecture, see "uname -m"
- * <name>#system=<id># currently only supported by Linux, see "uname -s"
-
-Others may be added in future.
-
-The current translations are displayed at boot time in the kernel messages
-for easier debugging, and can be retrieved by reading
-/proc/sys/kernel/nametrans which is a special file containing the currently
-valid translations.
-
-The default translations change whenever the hostname(1) is set or changed.
-Thus, the hostname is not set (or set to the name "(none)") at boot time
-before init(8) sets it. So, if you want to use the hostname before that
-moment, there are three ways:
-
- a) set the hostname before via bootp or similar.
- b) use the compiled-in translations kname and ktype solely.
- c) set all translations by lilo (or on the boot command line) with
- kernel parameter nametrans=#host=banana#:#ktype=diskless# ,
- thus overriding and hiding the default (built-in) translations.
-
-Note that by supplying the colon-separated list of at most 16 suffixes, you
-can also use other translation types that are not defined in the default
-translations. However, you must ensure that the syntax #...=...# is correct.
-The specified contexts will be tried in the specified order *instead* of the
-default translations.
-
-You can override the default (or parameter-supplied) translations at runtime
-by executing
-echo "#host=$HOST#:#ktype=diskless#:#myconfig=something#" > /proc/sys/kernel/nametrans
-However, after doing this (or setting as kernel parameter) the built-in
-default translations have no effect any more, thus changing the hostname
-will not be reflected in the overridden translations. You can switch
-back to the default translations by executing
-echo "" > /proc/sys/kernel/nametrans
-
-Another drawback is that administration tools currently are not aware of
-context-dependent files, so you cannot switch between contexts inside
-one tool session. However, you can simulate administration sessions
-on the server as if they were running on some client. To do this,
-you have to set an environment variable NAMETRANS which has to be the
-*first* environment variable in the list. For example, you can execute
-'env - NAMETRANS=#host=mango#:#ktype=diskless# "`env`" command ...'
-where the command will see the same files as if it had been executed on host
-"mango" with a "diskless" kernel. To switch off translations entirely, use
-an empty list, e.g. 'env - NAMETRANS= "`env`" command ...'.
-
-Hopefully the creators of administration tools and maintainers of Linux
-distributions will support changing environments in future, so that
-maintaining different views will be very easy.
-
-Some hints:
-
-Archivers like tar, dump, restore should be used with translation
-switched off, in order to avoid doubled space in archive files and when
-extracting from them. Also, make sure that nfsd, mountd (and similar ones
-like samba daemons) run without translation, in order to avoid doubled
-(or even wrong) translation at the server and at the client. You can
-automatically force the creation of context-dependent filenames if there
-exists a template filename like /etc/mtab#host=CREATE#. As soon as a
-process running on "mango" tries to create a file /etc/mtab, the version
-/etc/mtab#host=mango# is created instead (which appears in turn as
-hardlinked to /etc/mtab). Note that if you want to make /etc/fstab
-context-dependent, you should execute "touch /etc/mtab#host=CREATE#" and
-"touch /etc/mtab.tmp#host=CREATE#", because mount, umount and others
-running on different hosts would otherwise try to create one shared
-/etc/mtab which would result in a clash. Also one should execute
-"touch /etc/nologin#host=CREATE#" to prevent global side effects from
-shutdown resp. runlevel.
-
-Which files you have to make context-dependent will differ for different
-needs and different applications. Hopefully some day a standard will
-cover the most common cases and the mist common Linux distributions.
-A HOWTO on this subject is in preparation.
-
-How to install linux-2.0.21-transname.patch?
-
-First of all, keep a backup of your kernel on your disk. Second, keep a
-floppy with a miniroot handy, so you can boot from the floppy, mount
-your harddisk root filesystem and change the names of your configuration
-files back to their old names in case of emergency.
-
-Then, make a kernel with transname support enabled. With "make config"
-or "make xconfig", just go to the section "filesystems". Take a look at
-the help texts that are associated with the transname options, they tell
-you further hints not mentioned in this README. Then build your kernel as
-usual, install it with a *new* kernel-filename, add a *new* entry to
-/etc/lilo.conf and run lilo. **DON'T CHANGE** any configuration files for the
-first reboot!
-
-Just reboot the new kernel and play a little bit around with
-creating context-dependent filenames in your home directory.
-Try all modes including setting NAMETRANS to different values.
-
-As an example for the changes necessary on our LST-1.8-based Linux pool,
-here is the output of the command
-find / /tmp -xdev -name "*#*#" -print | sort -u | xargs ls -ld
-
--r--r--r-- 1 root root 1725 Dec 21 1995 /etc/X11R6/xdm/xdm-config#host=eiche#
--r--r--r-- 3 root root 9509 Feb 15 17:35 /etc/XF86Config#host=balsa#
--r--r--r-- 1 root root 9401 Feb 15 17:34 /etc/XF86Config#host=eiche#
--rw-r--r-- 1 root root 9820 Feb 21 17:00 /etc/XF86Config#host=fichte#
--rw-r--r-- 1 root root 9822 Feb 14 15:45 /etc/XF86Config#host=laerche#
--r--r--r-- 3 root root 9509 Feb 15 17:35 /etc/XF86Config#host=mahagoni#
--r--r--r-- 3 root root 9509 Feb 15 17:35 /etc/XF86Config#host=palisander#
--r--r--r-- 2 root root 9509 Feb 15 17:41 /etc/XF86Config#host=pcbs10#
--r--r--r-- 2 root root 9509 Feb 15 17:41 /etc/XF86Config#host=pcbs11#
--rw-r--r-- 1 root root 586 Jun 11 23:13 /etc/fstab#ktype=default#
--rw-r--r-- 1 root root 242 May 29 17:35 /etc/fstab#ktype=diskless#
--rw------- 1 root root 338 Jun 14 16:37 /etc/lilo.conf#host=eiche#
--rw------- 1 root root 5236 Dec 16 1995 /etc/lst.cnf#host=balsa#
--rw------- 1 root root 5254 Dec 16 1995 /etc/lst.cnf#host=eiche#
--rw------- 1 root root 5236 Dec 19 1995 /etc/lst.cnf#host=fichte#
--rw------- 1 root root 5236 Jan 11 13:47 /etc/lst.cnf#host=laerche#
--rw------- 1 root root 5236 Feb 14 16:57 /etc/lst.cnf#host=mahagoni#
--rw------- 1 root root 5236 Jan 4 1996 /etc/lst.cnf#host=palisander#
--rw------- 1 root root 5236 Feb 15 13:57 /etc/lst.cnf#host=pcbs10#
--rw------- 1 root root 5236 Feb 14 17:06 /etc/lst.cnf#host=pcbs11#
--rw-r--r-- 1 root root 0 Dec 18 1995 /etc/mtab#host=CREATE#
--rw-r--r-- 1 root root 157 Jun 23 21:16 /etc/mtab#host=balsa#
--rw-r--r-- 1 root root 466 Jul 1 16:15 /etc/mtab#host=eiche#
--rw-r--r-- 1 root root 239 Jul 4 11:10 /etc/mtab#host=fichte#
--rw-r--r-- 1 root root 239 Jun 18 14:17 /etc/mtab#host=laerche#
--rw-r--r-- 1 root root 239 May 23 10:50 /etc/mtab#host=mahagoni#
--rw-r--r-- 1 root root 239 Jul 3 10:36 /etc/mtab#host=palisander#
--rw-r--r-- 1 root root 47 Feb 15 14:57 /etc/mtab#host=pcbs10#
--rw-r--r-- 1 root root 47 Feb 14 20:04 /etc/mtab#host=pcbs11#
--rw-r--r-- 1 root root 0 Dec 18 1995 /etc/mtab.tmp#host=CREATE#
--rw-r--r-- 1 root root 0 Dec 19 1995 /etc/nologin#host=CREATE#
----------- 1 root root 115 Feb 15 14:57 /etc/nologin#host=pcbs10#
----------- 1 root root 115 Feb 14 20:04 /etc/nologin#host=pcbs11#
--rw-r--r-- 1 root root 4818 Dec 16 1995 /etc/system.cnf#host=balsa#
-lrwxrwxrwx 1 root root 25 Dec 22 1995 /etc/system.cnf#host=eiche# -> system.cnf#ktype=default#
--rw-r--r-- 1 root root 4821 Dec 19 1995 /etc/system.cnf#host=fichte#
--rw-r--r-- 1 root root 4824 Jan 11 13:47 /etc/system.cnf#host=laerche#
--rw-r--r-- 1 root root 4827 Feb 14 16:57 /etc/system.cnf#host=mahagoni#
--rw-r--r-- 1 root root 4833 Jan 4 1996 /etc/system.cnf#host=palisander#
--rw-r--r-- 1 root root 4840 Feb 15 14:10 /etc/system.cnf#host=pcbs10#
--rw-r--r-- 1 root root 4846 Feb 14 18:23 /etc/system.cnf#host=pcbs11#
--rw-r--r-- 1 root root 4818 Dec 13 1995 /etc/system.cnf#ktype=default#
-drwxrwxrwt 16 root root 3072 Jul 4 14:29 /tmp#ktype=default#
-lrwxrwxrwx 1 root root 26 Jul 4 14:22 /tmp#ktype=diskless# -> /tmp#ktype=default#/client
--rw-rw-rw- 1 root root 0 Feb 15 14:57 /tmp/client#host=CREATE#
-drwxrwxrwx 4 root root 1024 Jun 28 12:15 /tmp/client#host=balsa#
-drwxrwxrwx 3 root root 1024 Jul 4 11:10 /tmp/client#host=fichte#
-drwxrwxrwx 3 root root 1024 Jun 18 14:18 /tmp/client#host=laerche#
-drwxrwxrwx 3 root root 1024 May 24 13:06 /tmp/client#host=mahagoni#
-drwxrwxrwx 3 root root 1024 Jul 3 10:37 /tmp/client#host=palisander#
-drwxrwxrwx 4 root root 1024 Feb 15 14:57 /tmp/client#host=pcbs10#
-drwxrwxrwx 3 root root 1024 Feb 20 06:43 /tmp/client#host=pcbs11#
-lrwxrwxrwx 1 root root 9 Feb 15 13:58 /usr/X11R6/bin/X#host=pcbs10# -> XF86_SVGA
-lrwxrwxrwx 1 root root 9 Feb 14 17:37 /usr/X11R6/bin/X#host=pcbs11# -> XF86_SVGA
-lrwxrwxrwx 1 root root 7 Feb 14 17:15 /usr/X11R6/bin/X#ktype=diskless# -> XF86_S3
-drwxr-xr-x 22 root root 1024 Dec 13 1995 /var#host=balsa#
-drwxr-xr-x 23 root root 1024 Jan 12 14:22 /var#host=eiche#
-drwxr-xr-x 22 root root 1024 Dec 13 1995 /var#host=fichte#
-drwxr-xr-x 22 root root 1024 Dec 13 1995 /var#host=laerche#
-drwxr-xr-x 22 root root 1024 Dec 13 1995 /var#host=mahagoni#
-drwxr-xr-x 22 root root 1024 Dec 13 1995 /var#host=palisander#
-drwxr-xr-x 22 root root 1024 Dec 13 1995 /var#host=pcbs10#
-drwxr-xr-x 22 root root 1024 Dec 13 1995 /var#host=pcbs11#
-
-Notes: The /tmp directory has an own filesystem on server "eiche",
-in order to prevent users from filling the whole filestore (we dont use
-quotas). Each client needs a different /tmp because of possible name clashes.
-Also, the whole /var hierarchy is kept differently to prevent any risk, but
-that could be optimized perhaps. Note that nfsd and mountd have been
-replaced by a script which switches off translations, in the style
-
--rwxr-xr-x 2 root root 70 Mar 22 12:54 /usr/sbin/rpc.mountd
--rwxr-xr-x 1 root root 32772 Jun 11 1995 /usr/sbin/rpc.mountd.notrans
--rwxr-xr-x 2 root root 70 Mar 22 12:54 /usr/sbin/rpc.nfsd
--rwxr-xr-x 1 root root 45060 Jun 11 1995 /usr/sbin/rpc.nfsd.notrans
-
-where /usr/sbin/rpc.mountd has the contents
-
-#!/bin/sh
-exec /usr/bin/env - NAMETRANS= "`/usr/bin/env`" $0.notrans $*
-
-Of course, that could be improved, but is a quick hack to get things to work.
-
-Enjoy,
-
--- Thomas
-
-
-The author can be contacted under
- schoebel@informatik.uni-stuttgart.de
-or snailmail
- Thomas Schoebel-Theuer
- Institut fuer Informatik
- Breitwiesenstr. 20-22
- D-70565 Stuttgart
-
diff --git a/Documentation/watchdog.txt b/Documentation/watchdog.txt
index caf7adf24..e328e3c15 100644
--- a/Documentation/watchdog.txt
+++ b/Documentation/watchdog.txt
@@ -23,7 +23,7 @@ will reboot from almost anything.
A second temperature monitoring interface is available on the WDT501P cards
and some Berkshire cards. This provides /dev/temperature. This is the machine
-internal temperature in degrees farenheit. Each read returns a single byte
+internal temperature in degrees Fahrenheit. Each read returns a single byte
giving the temperature.
The third interface logs kernel messages on additional alert events.