summaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-08-28 22:00:09 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-08-28 22:00:09 +0000
commit1a1d77dd589de5a567fa95e36aa6999c704ceca4 (patch)
tree141e31f89f18b9fe0831f31852e0435ceaccafc5 /Documentation
parentfb9c690a18b3d66925a65b17441c37fa14d4370b (diff)
Merge with 2.4.0-test7.
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/Changes113
-rw-r--r--Documentation/Configure.help158
-rw-r--r--Documentation/DocBook/Makefile5
-rw-r--r--Documentation/README.DAC96026
-rw-r--r--Documentation/arm/SA1100/CERF34
-rw-r--r--Documentation/arm/SA1100/nanoEngine9
-rw-r--r--Documentation/digiboard.txt16
-rw-r--r--Documentation/digiepca.txt8
-rw-r--r--Documentation/fb/matroxfb.txt21
-rw-r--r--Documentation/i386/IO-APIC.txt4
-rw-r--r--Documentation/isdn/README2
-rw-r--r--Documentation/isdn/README.HiSax17
-rw-r--r--Documentation/isdn/README.eicon18
-rw-r--r--Documentation/isdn/README.fax3
-rw-r--r--Documentation/isdn/README.hysdn38
-rw-r--r--Documentation/kernel-docs.txt10
-rw-r--r--Documentation/networking/arcnet-hardware.txt2
-rw-r--r--Documentation/networking/arcnet.txt2
-rw-r--r--Documentation/networking/ax25.txt2
-rw-r--r--Documentation/networking/ethertap.txt6
-rw-r--r--Documentation/networking/ip-sysctl.txt75
-rw-r--r--Documentation/networking/tuntap.txt150
-rw-r--r--Documentation/networking/vortex.txt139
-rw-r--r--Documentation/networking/x25.txt4
-rw-r--r--Documentation/nmi_watchdog.txt2
-rw-r--r--Documentation/oops-tracing.txt2
-rw-r--r--Documentation/scsi-generic.txt2
-rw-r--r--Documentation/sound/Soundblaster12
-rw-r--r--Documentation/sparc/sbus_drivers.txt272
-rw-r--r--Documentation/usb/proc_usb_info.txt19
-rw-r--r--Documentation/usb/usb-serial.txt20
-rw-r--r--Documentation/watchdog.txt31
32 files changed, 994 insertions, 228 deletions
diff --git a/Documentation/Changes b/Documentation/Changes
index f856fe16b..9b0e67bf1 100644
--- a/Documentation/Changes
+++ b/Documentation/Changes
@@ -16,14 +16,16 @@ Axel Boldt, Alessandro Sigala, and countless other users all over the
'net).
The latest revision of this document, in various formats, can always
-be found at http://cyberbuzz.gatech.edu/kaboom/linux/Changes-2.4/
-<http://cyberbuzz.gatech.edu/kaboom/linux/Changes-2.4/>.
+be found at <http://cyberbuzz.gatech.edu/kaboom/linux/Changes-2.4/>.
Feel free to translate this document. If you do so, please send me a
URL to your translation for inclusion in future revisions of this
document.
-Last updated: June 11, 2000
+Smotrite file <http://oblom.rnc.ru/linux/kernel/Changes.ru>, yavlyaushisya
+russkim perevodom dannogo documenta.
+
+Last updated: August 15, 2000
Chris Ricker (kaboom@gatech.edu or chris.ricker@genetics.utah.edu).
@@ -41,12 +43,13 @@ Card) hardware, for example, you probably needn't concern yourself
with pcmcia-cs.
o Gnu C 2.7.2.3 # gcc --version
+o Gnu make 3.77 # make --version
o binutils 2.9.1.0.22 # ld -v
-o util-linux 2.10g # chsh -v
+o util-linux 2.10o # kbdrate -v
o modutils 2.3.13 # insmod -V
o e2fsprogs 1.18 # /sbin/tune2fs --version
-o pcmcia-cs 3.1.13 # cardmgr -V
-o PPP 2.4.0b1 # pppd --version
+o pcmcia-cs 3.1.19 # cardmgr -V
+o PPP 2.4.0 # pppd --version
o isdn4k-utils 3.1beta7 # isdnctrl 2>&1|grep version
Kernel compilation
@@ -59,7 +62,7 @@ You will need at least gcc 2.7.2 to compile the kernel. You currently
have several options for gcc-derived compilers: gcc 2.7.2.3, various
versions of egcs, the new gcc 2.95 and upcoming gcc 3.0, and experimental
compilers like pgcc. For absolute stability, it is still recommended
-that gcc 2.7.2.3 be used to compile your kernel. egcs 1.12 should also
+that gcc 2.7.2.3 be used to compile your kernel. egcs 1.1.2 should also
work. gcc 2.95 is known to have problems, and using pgcc for your kernel
is just asking for trouble.
@@ -68,6 +71,11 @@ greater than -O2 may not be wise. Similarly, if you choose to use gcc-2.95
or derivatives, be sure not to use -fstrict-aliasing (which, depending on
your version of gcc 2.95, may necessitate using -fno-strict-aliasing).
+Make
+----
+
+You will need Gnu make 3.77 or later to build the kernel.
+
Binutils
--------
@@ -95,7 +103,7 @@ System V shared memory is now implemented via a virtual filesystem.
You do not have to mount it to use it as long as you can live with the
default maxima for shared memory and segments. If you wish to change
these variables, you have to mount it with the options nr_blocks
-and/or nr_inodes. POSIX shared memory is also now implemented via a
+and / or nr_inodes. POSIX shared memory is also now implemented via a
virtual filesystem. If you want to use it, you'll need to mount the
filesystem. The recommended mount location is /dev/shm, and adding the
following line to /etc/fstab should take care of things:
@@ -124,7 +132,8 @@ Util-linux
New versions of util-linux provide *fdisk support for larger disks,
support new options to mount, recognize more supported partition
-types, and similar goodies. You'll probably want to upgrade.
+types, have a fdformat which works with 2.4 kernels, and similar goodies.
+You'll probably want to upgrade.
Ksymoops
--------
@@ -138,7 +147,15 @@ Modutils
Upgrade to recent modutils to fix various outstanding bugs which are
seen more frequently under 2.3.x, and to enable auto-loading of USB
-modules.
+modules. In addition, the layout of modules under
+/lib/modules/`uname -r`/ has been made more sane. This change also
+requires that you upgrade to a recent modutils.
+
+Mkinitrd
+--------
+
+These changes to the /lib/modules file tree layout also require that
+mkinitrd be upgraded.
E2fsprogs
---------
@@ -224,110 +241,90 @@ Compilers
gcc 2.7.2.3
-----------
-o ftp://ftp.gnu.org/gnu/gcc/gcc-2.7.2.3.tar.gz
- <ftp://ftp.gnu.org/gnu/gcc/gcc-2.7.2.3.tar.gz>
-o ftp://metalab.unc.edu/pub/gnu/gcc-2.7.2.3.tar.gz
- <ftp://metalab.unc.edu/pub/gnu/gcc-2.7.2.3.tar.gz>
+o <ftp://ftp.gnu.org/gnu/gcc/gcc-2.7.2.3.tar.gz>
+o <ftp://metalab.unc.edu/pub/gnu/gcc-2.7.2.3.tar.gz>
-egcs 1.12
+egcs 1.1.2
---------
-o ftp://ftp.valinux.com/pub/support/hjl/gcc/egcs-1.1.2/egcs-1.1.2-glibc.x86.tar.bz2
- <ftp://ftp.valinux.com/pub/support/hjl/gcc/egcs-1.1.2/egcs-1.1.2-glibc.x86.tar.bz2>
-o ftp://ftp.valinux.com/pub/support/hjl/gcc/egcs-1.1.2/egcs-1.1.2-libc5.x86.tar.bz2
- <ftp://ftp.valinux.com/pub/support/hjl/gcc/egcs-1.1.2/egcs-1.1.2-libc5.x86.tar.bz2>
-o ftp://ftp.valinux.com/pub/support/hjl/gcc/egcs-1.1.2/egcs-1.1.2-alpha.tar.bz2
- <ftp://ftp.valinux.com/pub/support/hjl/gcc/egcs-1.1.2/egcs-1.1.2-alpha.tar.bz2>
+o <ftp://ftp.valinux.com/pub/support/hjl/gcc/egcs-1.1.2/egcs-1.1.2-glibc.x86.tar.bz2>
+o <ftp://ftp.valinux.com/pub/support/hjl/gcc/egcs-1.1.2/egcs-1.1.2-libc5.x86.tar.bz2>
+o <ftp://ftp.valinux.com/pub/support/hjl/gcc/egcs-1.1.2/egcs-1.1.2-alpha.tar.bz2>
Binutils
********
2.9.1 series
------------
-o ftp://ftp.valinux.com/pub/support/hjl/binutils/2.9.1/binutils-2.9.1.0.25.tar.gz
- <ftp://ftp.valinux.com/pub/support/hjl/binutils/2.9.1/binutils-2.9.1.0.25.tar.gz>
+o <ftp://ftp.valinux.com/pub/support/hjl/binutils/2.9.1/binutils-2.9.1.0.25.tar.gz>
2.9.5 series
------------
-o ftp://ftp.valinux.com/pub/support/hjl/binutils/binutils-2.9.5.0.46.tar.gz
- <ftp://ftp.valinux.com/pub/support/hjl/binutils/binutils-2.9.5.0.46.tar.bz2>
+o <ftp://ftp.valinux.com/pub/support/hjl/binutils/binutils-2.9.5.0.46.tar.bz2>
System utilities
****************
Util-linux
----------
-o ftp://ftp.cwi.nl/pub/aeb/util-linux/util-linux-2.10g.tar.gz
- <ftp://ftp.cwi.nl/pub/aeb/util-linux/util-linux-2.10g.tar.gz>
+o <ftp://ftp.win.tue.nl/pub/linux-local/util-linux/util-linux-2.10o.tar.gz>
Ksymoops
--------
-o ftp://ftp.kernel.org/pub/linux/utils/kernel/ksymoops/v2.3
- <ftp://ftp.kernel.org/pub/linux/utils/kernel/ksymoops/v2.3>
+o <ftp://ftp.kernel.org/pub/linux/utils/kernel/ksymoops/v2.3>
Modutils
--------
-o ftp://ftp.kernel.org/pub/linux/utils/kernel/modutils/v2.3/modutils-2.3.13.tar.gz
- <ftp://ftp.kernel.org/pub/linux/utils/kernel/modutils/v2.3/modutils-2.3.13.tar.gz>
+o <ftp://ftp.kernel.org/pub/linux/utils/kernel/modutils/v2.3/modutils-2.3.13.tar.gz>
+
+Mkinitrd
+--------
+o <ftp://rawhide.redhat.com/pub/rawhide/SRPMS/SRPMS/mkinitrd-2.5-1.src.rpm>
E2fsprogs
---------
-o http://web.mit.edu/tytso/www/linux/dist/e2fsprogs-1.18.tar.gz
- <http://web.mit.edu/tytso/www/linux/dist/e2fsprogs-1.18.tar.gz>
-o http://web.mit.edu/tytso/www/linux/dist/e2fsprogs-1.18.src.rpm
- <http://web.mit.edu/tytso/www/linux/dist/e2fsprogs-1.18.src.rpm>
+o <http://web.mit.edu/tytso/www/linux/dist/e2fsprogs-1.18.tar.gz>
+o <http://web.mit.edu/tytso/www/linux/dist/e2fsprogs-1.18.src.rpm>
LVM toolset
-----------
-o http://linux.msede.com/lvm/ <http://linux.msede.com/lvm/>
+o <http://linux.msede.com/lvm/>
Pcmcia-cs
---------
-o ftp://sourceforge.org/pcmcia/pcmcia-cs-3.1.13.tar.gz
- <ftp://sourceforge.org/pcmcia/pcmcia-cs-3.1.13.tar.gz>
+o <ftp://projects.sourceforge.org/pub/pcmcia/pcmcia-cs-3.1.19.tar.gz>
Jade
----
-o ftp://ftp.jclark.com/pub/jade/jade-1.2.1.tar.gz
- <ftp://ftp.jclark.com/pub/jade/jade-1.2.1.tar.gz>
+o <ftp://ftp.jclark.com/pub/jade/jade-1.2.1.tar.gz>
DocBook Stylesheets
-------------------
-o http://nwalsh.com/docbook/dsssl/
- <http://nwalsh.com/docbook/dsssl/>
+o <http://nwalsh.com/docbook/dsssl/>
Intel P6 microcode
------------------
-o http://www.urbanmyth.org/microcode/
- <http://www.urbanmyth.org/microcode/>
+o <http://www.urbanmyth.org/microcode/>
Network
*******
PPP
---
-o ftp://linuxcare.com.au/pub/ppp/ppp-2.4.0b1.tar.gz
- <ftp://linuxcare.com.au/pub/ppp/ppp-2.4.0b1.tar.gz>
+o <ftp://linuxcare.com.au/pub/ppp/ppp-2.4.0.tar.gz>
Isdn4k-utils
------------
-o ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/testing/isdn4k-
- utils.v3.1beta7.tar.gz
- <ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/testing/isdn4k-
- utils.v3.1beta7.tar.gz>
+o <ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/testing/isdn4k-utils.v3.1beta7.tar.gz>
Netfilter
---------
-o http://netfilter.filewatcher.org/iptables-1.1.1.tar.bz2
- <http://netfilter.filewatcher.org/iptables-1.1.1.tar.bz2>
-o http://www.samba.org/netfilter/iptables-1.1.1.tar.bz2
- <http://www.samba.org/netfilter/iptables-1.1.1.tar.bz2>
-o http://netfilter.kernelnotes.org/iptables-1.1.1.tar.bz2
- <http://netfilter.kernelnotes.org/iptables-1.1.1.tar.bz2>
+o <http://netfilter.filewatcher.org/iptables-1.1.1.tar.bz2>
+o <http://www.samba.org/netfilter/iptables-1.1.1.tar.bz2>
+o <http://netfilter.kernelnotes.org/iptables-1.1.1.tar.bz2>
Ip-route2
---------
-o ftp://ftp.inr.ac.ru/ip-routing/iproute2-2.2.4-now-ss991023.tar.gz
- <ftp://ftp.inr.ac.ru/ip-routing/iproute2-2.2.4-now-ss991023.tar.gz>
+o <ftp://ftp.inr.ac.ru/ip-routing/iproute2-2.2.4-now-ss991023.tar.gz>
Suggestions and corrections
===========================
diff --git a/Documentation/Configure.help b/Documentation/Configure.help
index 6f6399e9c..b10ade9cd 100644
--- a/Documentation/Configure.help
+++ b/Documentation/Configure.help
@@ -2305,7 +2305,7 @@ CONFIG_AGP
Intel 440LX/BX/GX support
CONFIG_AGP_INTEL
This option gives you AGP support for the GLX component of the
- "soon to be released" XFree86 4.x on Intel 440LX/BX/GX chipsets.
+ XFree86 4.x on Intel 440LX/BX/GX chipsets.
For the moment, you should probably say N, unless you want to test
the GLX component for XFree86 3.3.6, which can be downloaded from
@@ -2320,7 +2320,7 @@ CONFIG_AGP_I810
VIA chipset support
CONFIG_AGP_VIA
This option gives you AGP support for the GLX component of the
- "soon to be released" XFree86 4.x on VIA MPV3/Apollo Pro chipsets.
+ XFree86 4.x on VIA MPV3/Apollo Pro chipsets.
For the moment, you should probably say N, unless you want to test
the GLX component for XFree86 3.3.6, which can be downloaded from
@@ -2329,7 +2329,7 @@ CONFIG_AGP_VIA
AMD Irongate support
CONFIG_AGP_AMD
This option gives you AGP support for the GLX component of the
- "soon to be released" XFree86 4.x on Intel AMD Irongate chipset.
+ XFree86 4.x on Intel AMD Irongate chipset.
For the moment, you should probably say N, unless you want to test
the GLX component for XFree86 3.3.6, which can be downloaded from
@@ -2350,7 +2350,7 @@ CONFIG_AGP_SIS
ALI M1541 support
CONFIG_AGP_ALI
This option gives you AGP support for the GLX component of the
- "soon to be released" XFree86 4.x on the ALi M1541 chipset.
+ XFree86 4.x on the ALi M1541 chipset.
This chipset can do AGP 1x and 2x, but note that there is an
acknowledged incompatibility with Matrox G200 cards. Due to
@@ -2777,7 +2777,8 @@ CONFIG_M386
SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or U5S.
- "586" for generic Pentium CPUs, possibly lacking the TSC
(time stamp counter) register.
- - "Pentium-Classic" for the Intel Pentium/Pentium MMX.
+ - "Pentium-Classic" for the Intel Pentium.
+ - "Pentium-MMX" for the Intel Pentium MMX.
- "Pentium-Pro" for the Intel Pentium Pro/Celeron/Pentium II.
- "Pentium-III" for the Intel Pentium III.
- "K6" for the AMD K6, K6-II and K6-III (aka K6-3D).
@@ -3672,27 +3673,6 @@ CONFIG_IP_ROUTE_NAT
can be gotten from the document
http://www.csn.tu-chemnitz.de/~mha/linux-ip-nat/diplom/nat.html
-IP: optimize as router not host
-CONFIG_IP_ROUTER
- Some Linux network drivers use a technique called copy and checksum
- to optimize host performance. For a machine which acts as a router
- most of the time and is forwarding most packets to another host this
- is however a loss. If you say Y here, copy and checksum will be
- switched off. In the future, it may make other changes which
- optimize for router operation.
-
- Note that your box can only act as a router if you enable IP
- forwarding in your kernel; you can do that by saying Y to "/proc
- file system support" and "Sysctl support" below and executing the
- line
-
- echo "1" > /proc/sys/net/ipv4/ip_forward
-
- at boot time after the /proc file system has been mounted. You can
- do that even if you say N here.
-
- If unsure, say N here.
-
IP: kernel level autoconfiguration
CONFIG_IP_PNP
This enables automatic configuration of IP addresses of devices and
@@ -3762,26 +3742,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: aliasing support
-CONFIG_IP_ALIAS
- Sometimes it is useful to give several IP addresses to a single
- physical network interface (serial port or Ethernet card). The most
- common case is that you want to serve different WWW or FTP documents
- to the outside depending on which of your host names was used to
- connect to you. This is called "multihosting" or "virtual domains"
- or "virtual hosting services" and is explained in the
- Virtual-Services-HOWTO, available from
- http://www.linuxdoc.org/docs.html#howto .
-
- Another scenario would be that there are two logical networks living
- on your local Ethernet and you want to access them both with the
- same Ethernet card. This can also be done if you say Y here.
-
- The configuration of these alias addresses is done with a special
- name syntax explained in Documentation/networking/alias.txt and in
- the IP-Alias mini-HOWTO. If you want this, say Y. Most people don't
- need it and say N.
-
IP: multicast routing
CONFIG_IP_MROUTE
This is used if you want your machine to act as a router for IP
@@ -7259,7 +7219,29 @@ CONFIG_EQUALIZER
module, say M here and read Documentation/modules.txt. If unsure,
say N.
-Ethertap network tap (EXPERIMENTAL)
+Universal TUN/TAP device driver.
+CONFIG_TUN
+ TUN/TAP provides packet reception and transmission for user space programs.
+ It can be viewed as a simple Point-to-Point or Ethernet device, which
+ instead of receiving packets from a physical media, receives them from
+ user space program and instead of sending packets via physical media
+ writes them to the user space program.
+
+ When a program opens /dev/net/tun, driver creates and registers
+ corresponding net device tunX or tapX. After a program closed above
+ devices, driver will automatically delete tunXX or tapXX device and all
+ routes corresponding to it.
+
+ Please read Documentation/networking/tuntap.txt for more information.
+
+ This driver is also available as a module ( = code which can be
+ inserted in and removed from the running kernel whenever you want).
+ The module will be called tun.o. If you want to compile it as a
+ module, say M here and read Documentation/modules.txt.
+
+ If you don't know what to use this for, you don't need it.
+
+Ethertap network tap (OBSOLETE)
CONFIG_ETHERTAP
If you say Y here (and have said Y to "Kernel/User network link
driver", above) and create a character special file /dev/tap0 with
@@ -8736,6 +8718,13 @@ CONFIG_NE2000
module, say M here and read Documentation/modules.txt as well as
Documentation/networking/net-modules.txt.
+National Semiconductor DP83810 series PCI Ethernet support
+CONFIG_NATSEMI
+ This driver is for the National Semiconductor DP83810 series,
+ including the 83815 chip.
+ More specific information and updates are available from
+ http://www.scyld.com/network/natsemi.html
+
SK_G16 support
CONFIG_SK_G16
If you have a network (Ethernet) card of this type, say Y and read
@@ -10173,9 +10162,10 @@ CONFIG_USB_SERIAL_OMNINET
USB Digi International AccelePort USB Serial Driver
CONFIG_USB_SERIAL_DIGI_ACCELEPORT
- Say Y here if you want to use a Digi AccelePort USB 4 device,
- a 4 port USB serial converter. The Digi Acceleport USB 2 and
- 8 are not yet supported by this driver.
+ Say Y here if you want to use Digi AccelePort USB 2 or 4 devices,
+ 2 port (plus parallel port) and 4 port USB serial converters. The
+ parallel port on the USB 2 appears as a third serial port on Linux.
+ The Digi Acceleport USB 8 is not yet supported by this driver.
This code is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
@@ -10236,16 +10226,19 @@ USB ADMtek Pegasus-based ethernet device support
CONFIG_USB_PEGASUS
Say Y if you want to use your USB ethernet device. Supported
cards until now are:
+ ADMtek AN986 (eval. board)
Accton 10/100
Billington USB-100
Corega FEter USB-TX
MELCO/BUFFALO LUA-TX
- D-Link DSB-650TX, DSB-650TX-PNA
- Linksys USB100TX
- SNC 202
+ D-Link DSB-650TX, DSB-650TX-PNA, DSB-650, DU-E10, DU-E100
+ Linksys USB100TX, USB10TX
+ LANEED Ethernet LD-USB/TX
+ SMC 202
+ SOHOware NUB Ethernet
If you have devices with vendor IDs other than noted above
you should add them in the driver code and send a message
- to me (petkan@spct.net) for update.
+ to me (petkan@dce.bg) for update.
This code is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
@@ -11297,6 +11290,21 @@ CONFIG_SMB_FS
want), say M here and read Documentation/modules.txt. The module
will be called smbfs.o. Most people say N, however.
+nls support setting
+CONFIG_SMB_NLS_REMOTE
+ This setting allows you to specify a default value for which
+ codepage the server uses. If this field is left blank no
+ translations will be done by default. The local codepage/charset
+ default to CONFIG_NLS_DEFAULT.
+
+ The nls settings can be changed at mount time, if your smbmount
+ supports that, using the codepage and iocharset parameters.
+
+ Currently no smbmount distributed with samba supports this, it is
+ assumed future versions will. In the meantime you can get an
+ unofficial patch for samba 2.0.7 from:
+ http://www.hojdpunkten.ac.se/054/samba/index.html
+
Coda file system support (advanced network fs)
CONFIG_CODA_FS
Coda is an advanced network file system, similar to NFS in that it
@@ -14085,7 +14093,13 @@ CONFIG_AEDSP16_MPU401
Creative EMU10K1 based PCI sound cards
CONFIG_SOUND_EMU10K1
Say Y or M if you have a PCI sound card using the EMU10K1
- chipset, such as the Creative SBLive! or SB PCI512.
+ chipset, such as the Creative SBLive!, SB PCI512 or Emu-APS.
+
+Crystal SoundFusion (CS4280/461x)
+CONFIG_SOUND_FUSION
+ This module drives the Crystal SoundFusion devices (CS4280/46xx series)
+ when wired as native sound drivers with AC97 codecs. If this driver
+ does not work try the CS4232 driver.
Ensoniq ES1370 based PCI sound cards
CONFIG_SOUND_ES1370
@@ -14374,6 +14388,10 @@ CONFIG_HISAX_1TR6
before E-DSS1 was established. Nowadays, all new lines in Germany
use E-DSS1.
+HiSax Support for US NI1
+CONFIG_HISAX_NI1
+ Enable this if you like to use ISDN in US on a NI1 basic rate interface.
+
Teles 16.0/8.0
CONFIG_HISAX_16_0
This enables HiSax support for the Teles ISDN-cards S0-16.0, S0-8
@@ -14502,6 +14520,13 @@ CONFIG_HISAX_NETJET
See Documentation/isdn/README.HiSax on how to configure it using a
different D-channel protocol, or non-standard IRQ/port settings.
+NETspider U card
+CONFIG_HISAX_NETJET_U
+ This enables HiSax support for the Netspider U interface ISDN card from
+ Traverse Technologies.
+ See Documentation/isdn/README.HiSax on how to configure it using a
+ different D-channel protocol, or non-standard IRQ/port settings.
+
Niccy PnP/PCI card
CONFIG_HISAX_NICCY
This enables HiSax support for the Dr. Neuhaus Niccy PnP or PCI.
@@ -14590,7 +14615,7 @@ CONFIG_ISDN_DRV_SC
called sc.o. See Documentation/isdn/README.sc and
http://www.spellcast.com for more information.
-Eicon.Diehl active card support
+Eicon active card support
CONFIG_ISDN_DRV_EICON
Say Y here if you have an Eicon active ISDN card. In order to use
this card, additional firmware is necessary, which has to be loaded
@@ -14598,6 +14623,11 @@ CONFIG_ISDN_DRV_EICON
latest isdn4k-utils package. Please read the file
Documentation/isdn/README.eicon for more information.
+Eicon Diva Server card support
+CONFIG_ISDN_DRV_EICON_PCI
+ Say Y here if you have an Eicon Diva Server (BRI/PRI/4BRI) ISDN card.
+ Please read Documentation/isdn/README.eicon for more information.
+
Eicon old-type card support
CONFIG_ISDN_DRV_EICON_ISA
Say Y here if you have an old-type Eicon active ISDN card. In order
@@ -14606,10 +14636,18 @@ CONFIG_ISDN_DRV_EICON_ISA
the latest isdn4k-utils package. Please read the file
Documentation/isdn/README.eicon for more information.
-Support AT-Fax Class 2 commands
+Eicon driver type standalone
+CONFIG_ISDN_DRV_EICON_STANDALONE
+ Enable this option if you want the eicon driver as standalone
+ version with no interface to the ISDN4Linux isdn module. If you
+ say Y here, the eicon module only supports the Diva Server PCI
+ cards and will provide its own IDI interface. You should say N
+ here.
+
+Support AT-Fax Class 1 and 2 commands
CONFIG_ISDN_TTY_FAX
If you say Y here, the modem-emulator will support a subset of the
- Fax Class 2 commands. Using a getty with fax-support
+ Fax Class 1 and 2 commands. Using a getty with fax-support
(mgetty+sendfax, hylafax), you will be able to use your Linux box as
an ISDN-fax-machine. This must be supported by the lowlevel driver
also. See Documentation/isdn/README.fax for more information.
@@ -14679,6 +14717,10 @@ CONFIG_HYSDN
Please read the file Documentation/isdn/README.hysdn for more
information.
+HYSDN CAPI 2.0 support
+CONFIG_HYSDN_CAPI
+ Say Y here if you like to use Hypercope's CAPI 2.0 interface
+
Support for Sun4 architecture
CONFIG_SUN4
Say Y here if, and only if, your machine is a Sun4. Note that
diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile
index 39e5f8813..855282be6 100644
--- a/Documentation/DocBook/Makefile
+++ b/Documentation/DocBook/Makefile
@@ -81,6 +81,11 @@ kernel-api.sgml: kernel-api.tmpl $(APISOURCES)
$(TOPDIR)/scripts/docgen $(APISOURCES) \
<kernel-api.tmpl >kernel-api.sgml
+kernel-api-man: $(APISOURCES)
+ @rm -rf $(TOPDIR)/Documentation/man
+ $(TOPDIR)/scripts/kernel-doc -man $^ | \
+ $(PERL) $(TOPDIR)/scripts/split-man $(TOPDIR)/Documentation/man
+
parportbook: $(JPG-parportbook)
parportbook.ps: $(EPS-parportbook)
parportbook.sgml: parportbook.tmpl $(TOPDIR)/drivers/parport/init.c
diff --git a/Documentation/README.DAC960 b/Documentation/README.DAC960
index 8166455b0..88f52364b 100644
--- a/Documentation/README.DAC960
+++ b/Documentation/README.DAC960
@@ -1,11 +1,11 @@
Linux Driver for Mylex DAC960/AcceleRAID/eXtremeRAID PCI RAID Controllers
- Version 2.2.7 for Linux 2.2.16
- Version 2.4.7 for Linux 2.4.0
+ Version 2.2.8 for Linux 2.2.16
+ Version 2.4.8 for Linux 2.4.0
PRODUCTION RELEASE
- 1 August 2000
+ 19 August 2000
Leonard N. Zubkoff
Dandelion Digital
@@ -28,9 +28,9 @@ The latest information on Linux support for DAC960 PCI RAID Controllers, as
well as the most recent release of this driver, will always be available from
my Linux Home Page at URL "http://www.dandelion.com/Linux/". The Linux DAC960
driver supports all current Mylex PCI RAID controllers including the new
-eXtremeRAID 2000/3000 and AcceleRAID 352/170 models which have an entirely new
-firmware interface from the older eXtremeRAID 1100, AcceleRAID 150/200/250, and
-DAC960PJ/PG/PU/PD/PL. See below for a complete controller list as well as
+eXtremeRAID 2000/3000 and AcceleRAID 352/170/160 models which have an entirely
+new firmware interface from the older eXtremeRAID 1100, AcceleRAID 150/200/250,
+and DAC960PJ/PG/PU/PD/PL. See below for a complete controller list as well as
minimum firmware version requirements. For simplicity, in most places this
documentation refers to DAC960 generically rather than explicitly listing all
the supported models.
@@ -120,6 +120,12 @@ AcceleRAID 170
100MHz Intel i960RM RISC Processor
16MB/32MB/64MB ECC SDRAM Memory
+AcceleRAID 160
+ 1 Wide Ultra-160 LVD SCSI channel
+ 100MHz Intel i960RS RISC Processor
+ Built in 16M ECC SDRAM Memory
+ PCI Low Profile Form Factor - fit for 2U height
+
eXtremeRAID 1100 (DAC1164P)
3 Wide Ultra-2/LVD SCSI channels
233MHz StrongARM SA 110 Processor
@@ -164,8 +170,8 @@ DAC960PL 1/2/3 Wide Fast SCSI-2 Channels
Intel i960 RISC Processor
2MB/4MB/8MB/16MB/32MB DRAM Memory
-For the eXtremeRAID 2000/3000 and AcceleRAID 352/170, firmware version 6.00-01
-or above is required.
+For the eXtremeRAID 2000/3000 and AcceleRAID 352/170/160, firmware version
+6.00-01 or above is required.
For the eXtremeRAID 1100, firmware version 5.06-0-52 or above is required.
@@ -203,10 +209,10 @@ To install the DAC960 RAID driver, you may use the following commands,
replacing "/usr/src" with wherever you keep your Linux kernel source tree:
cd /usr/src
- tar -xvzf DAC960-2.2.7.tar.gz (or DAC960-2.4.7.tar.gz)
+ tar -xvzf DAC960-2.2.8.tar.gz (or DAC960-2.4.8.tar.gz)
mv README.DAC960 linux/Documentation
mv DAC960.[ch] linux/drivers/block
- patch -p0 < DAC960.patch
+ patch -p0 < DAC960.patch (if DAC960.patch is included)
cd linux
make config
make depend
diff --git a/Documentation/arm/SA1100/CERF b/Documentation/arm/SA1100/CERF
new file mode 100644
index 000000000..3dfcab450
--- /dev/null
+++ b/Documentation/arm/SA1100/CERF
@@ -0,0 +1,34 @@
+The Intrinsyc CerfBoard is a StrongARM 1110-based computer on a board that measures
+approximately 2" square. It includes an Ethernet controller, an RS232-compatible serial port, a
+USB function port, and one CompactFlash+ slot on the back. Pictures can be found at the
+Intrinsyc website, http://www.intrinsyc.com.
+
+This document describes the support in the Linux kernel for the Intrinsyc CerfBoard as of
+version 2.4.0-test4-np1.
+
+Supported in this version:
+ - CompactFlash+ slot (select PCMCIA in General Setup and any options that may be required)
+ - Onboard Crystal CS8900 Ethernet controller (Cerf CS8900A support in Network Devices)
+ - Serial ports with a serial console (hardcoded to 38400 8N1)
+
+Not supported in this version (yet):
+ - LCD driver/touchscreen interface
+ - UDC (a driver exists right now, but is unstable and slow and only works with the Linux USB)
+
+In order to get this kernel onto your Cerf, you need a server that runs both BOOTP and
+TFTP. Detailed instructions should have come with your evaluation kit on how to use the
+bootloader. This series of commands will suffice:
+
+ make cerf_config
+ make xconfig
+ make dep
+ make zImage
+ cp arch/arm/boot/zImage <TFTP directory>
+
+The default config uses a 4MB RAM disk located at 0xc0500000 as root. Setting the board to
+mount root from a NFS partition works, too.
+
+
+I-Gene Leong, Intrinsyc Software Inc.
+ileong@intrinsyc.com
+
diff --git a/Documentation/arm/SA1100/nanoEngine b/Documentation/arm/SA1100/nanoEngine
new file mode 100644
index 000000000..ff34c4fb6
--- /dev/null
+++ b/Documentation/arm/SA1100/nanoEngine
@@ -0,0 +1,9 @@
+nanoEngine
+----------
+
+"nanoEngine" is a SA1110 based single board computer from
+Bright Star Engineering Inc. See www.brightstareng.com/arm
+for more info.
+
+Ref: Stuart Adams <sja@brightstareng.com>
+
diff --git a/Documentation/digiboard.txt b/Documentation/digiboard.txt
index eee81a0cf..b25fc158a 100644
--- a/Documentation/digiboard.txt
+++ b/Documentation/digiboard.txt
@@ -20,7 +20,7 @@ linux-2.1.x and may not be usable on other architectures than intel now.
It is available from ftp.digi.com/ftp.digiboard.com. You can write me if
you need an patch for this driver.
- Bernhard Kaindl (bkaindl@netway.at) 6. April 1997.
+Bernhard Kaindl (bkaindl@netway.at) 6. April 1997.
Configuring the Driver
----------------------
@@ -153,20 +153,18 @@ ports.
Sources of Information
----------------------
-Web page: http://private.fuller.edu/clameter/digi.html
+Please contact digi directly digilnux@dgii.com. Forward any information of
+general interest to me.
-Mailing list: digiboard@list.fuller.edu
+Web page (mainly of historical interest): http://lameter.com/digi
-(Write e-mail to that address to subscribe. Common ListServ commands work.
-Archive of messages available)
-
-Christoph Lameter (clameter@fuller.edu) 16. April 1996.
+Christoph Lameter (christoph@lameter.com) Aug 14, 2000.
Supporting Tools
----------------
-Some tools and more detailed information can be found at
-ftp://ftp.fuller.edu/Linux/digi
+Some (old) tools and more detailed information can be found at
+ftp://lameter.com/digi
The "ditty" tool described in the Digiboard Manuals for other Unixes
is also available.
diff --git a/Documentation/digiepca.txt b/Documentation/digiepca.txt
index f4777ff9b..008457263 100644
--- a/Documentation/digiepca.txt
+++ b/Documentation/digiepca.txt
@@ -81,16 +81,12 @@ Digi Intl. products:
-> FTP: ftp://dgii.com
-> Webpage: http://www.dgii.com
--> Webpage: http://private.fuller.edu/clameter/digi.html
--> Mailing List: digiboard@list.fuller.edu Note write e-mail to subscribe
- common ListServ commands will not work.
+-> Webpage: http://lameter.com/digi
Acknowledgments:
----------------
Much of this work (And even text) was derived from a similar document
supporting the original public domain DigiBoard driver Copyright (C)
1994,1995 Troy De Jongh. Many thanks to Christoph Lameter
-(clameter@fuller.edu) and Mike McLagan (mike.mclagan@linux.org) who authored
+(christoph@lameter.com) and Mike McLagan (mike.mclagan@linux.org) who authored
and contributed to the original document.
-
-
diff --git a/Documentation/fb/matroxfb.txt b/Documentation/fb/matroxfb.txt
index 13a641b98..0b8068dc5 100644
--- a/Documentation/fb/matroxfb.txt
+++ b/Documentation/fb/matroxfb.txt
@@ -146,6 +146,27 @@ noinit - tells driver, that devices were already initialized. You should use
strange pattern on screen and so on. Devices not enabled by BIOS
are still initialized. It is default.
init - driver initializes every device it knows about.
+memtype - specifies memory type, implies 'init'. This is valid only for G200
+ and G400 and has following meaning:
+ G200: 0 -> 2x128Kx32 chips, 2MB onboard, probably sgram
+ 1 -> 2x128Kx32 chips, 4MB onboard, probably sgram
+ 2 -> 2x256Kx32 chips, 4MB onboard, probably sgram
+ 3 -> 2x256Kx32 chips, 8MB onboard, probably sgram
+ 4 -> 2x512Kx16 chips, 8/16MB onboard, probably sdram only
+ 5 -> same as above
+ 6 -> 4x128Kx32 chips, 4MB onboard, probably sgram
+ 7 -> 4x128Kx32 chips, 8MB onboard, probably sgram
+ G400: 0 -> 2x512Kx16 SDRAM, 16/32MB
+ 2x512Kx32 SGRAM, 16/32MB
+ 1 -> 2x256Kx32 SGRAM, 8/16MB
+ 2 -> 4x128Kx32 SGRAM, 8/16MB
+ 3 -> 4x512Kx32 SDRAM, 32MB
+ 4 -> 4x256Kx32 SGRAM, 16/32MB
+ 5 -> 2x1Mx32 SDRAM, 32MB
+ 6 -> reserved
+ 7 -> reserved
+ You should use sdram or sgram parameter in addition to memtype
+ parameter.
nomtrr - disables write combining on frame buffer. This slows down driver but
there is reported minor incompatibility between GUS DMA and XFree
under high loads if write combining is enabled (sound dropouts).
diff --git a/Documentation/i386/IO-APIC.txt b/Documentation/i386/IO-APIC.txt
index 1a7dbd410..435e69e6e 100644
--- a/Documentation/i386/IO-APIC.txt
+++ b/Documentation/i386/IO-APIC.txt
@@ -109,8 +109,8 @@ Be prepared that it might happen that you need some strange pirq line:
use smart try-and-err techniques to find out the correct pirq line ...
-good luck and mail to linux-smp@vger.rutgers.edu or
-linux-kernel@vger.rutgers.edu if you have any problems that are not covered
+good luck and mail to linux-smp@vger.kernel.org or
+linux-kernel@vger.kernel.org if you have any problems that are not covered
by this document.
-- mingo
diff --git a/Documentation/isdn/README b/Documentation/isdn/README
index 0d3b0b023..6df4d2bb9 100644
--- a/Documentation/isdn/README
+++ b/Documentation/isdn/README
@@ -242,7 +242,7 @@ README for the ISDN-subsystem
0 = transparent
1 = transparent with audio features (e.g. DSP)
2 = Fax G3 Class 2 commands (S14 has to be set to 11)
- 2 = Fax G3 Class 1 commands (S14 has to be set to 11)
+ 3 = Fax G3 Class 1 commands (S14 has to be set to 11)
16 250 Send-Packet-size/16
17 8 Window-size (not yet implemented)
18 4 Bit coded register, Service-Octet-1 to accept,
diff --git a/Documentation/isdn/README.HiSax b/Documentation/isdn/README.HiSax
index fb64b1ecd..2dddf96ec 100644
--- a/Documentation/isdn/README.HiSax
+++ b/Documentation/isdn/README.HiSax
@@ -53,7 +53,7 @@ Sedlbauer Speed Star/Speed Star2 (PCMCIA)
Sedlbauer ISDN-Controller PC/104
USR Sportster internal TA (compatible Stollmann tina-pp V3)
ith Kommunikationstechnik GmbH MIC 16 ISA card
-Traverse Technologie NETjet PCI S0 card
+Traverse Technologie NETjet PCI S0 card and NETspider U card
Dr. Neuhaus Niccy PnP/PCI
Siemens I-Surf 1.0
Siemens I-Surf 2.0 (with IPAC, try type 12 asuscom)
@@ -134,7 +134,12 @@ mem=,0xd0000. See example 6 below.
The parameter for the D-Channel protocol may be omitted if you selected the
correct one during kernel config. Valid values are "1" for German 1TR6,
-"2" for EDSS1 (Euro ISDN) and "3" for leased lines (no D-Channel).
+"2" for EDSS1 (Euro ISDN), "3" for leased lines (no D-Channel) and "4"
+for US NI1.
+With US NI1 you have to include your SPID into the MSN setting in the form
+<MSN>:<SPID> for example (your phonenumber is 1234 your SPID 5678):
+AT&E1234:5678 on ttyI interfaces
+isdnctrl eaz ippp0 1234:5678 on network devices
The Creatix/Teles PnP cards use io1= and io2= instead of io= for specifying
the I/O addresses of the ISAC and HSCX chips, respectively.
@@ -186,8 +191,8 @@ Card types:
34 Gazel ISDN cards (PCI) none
35 HFC 2BDS0 PCI none
36 W6692 based PCI cards none
- 37 HFC 2BDS0 S+, SP/PCMCIA irq,io (pcmcia must be set with cardmgr)
-
+ 37 HFC 2BDS0 S+, SP/PCMCIA irq,io (pcmcia must be set with cardmgr)
+ 38 NETspider U PCI card none
At the moment IRQ sharing is only possible with PCI cards. Please make sure
that your IRQ is free and enabled for ISA use.
@@ -291,7 +296,9 @@ type
34 Gazel ISDN cards (PCI) no parameter
35 HFC 2BDS0 PCI no parameter
36 W6692 based PCI cards none
- 37 HFC 2BDS0 S+,SP/PCMCIA pa=irq, pb=io
+ 37 HFC 2BDS0 S+,SP/PCMCIA ONLY WORKS AS A MODULE !
+ 38 NETspider U PCI card none
+
Running the driver
------------------
diff --git a/Documentation/isdn/README.eicon b/Documentation/isdn/README.eicon
index 87b40c6dd..a77542a67 100644
--- a/Documentation/isdn/README.eicon
+++ b/Documentation/isdn/README.eicon
@@ -1,4 +1,4 @@
-$Id: README.eicon,v 1.7 2000/03/06 16:38:43 armin Exp $
+$Id: README.eicon,v 1.9 2000/06/08 08:50:25 armin Exp $
(c) 1999,2000 Armin Schindler (mac@melware.de)
(c) 1999,2000 Cytronics & Melware (info@melware.de)
@@ -40,6 +40,7 @@ DIVA Server family
------------------
- DIVA Server BRI/PCI 2M
- DIVA Server PRI/PCI 2M (9M 23M 30M)
+- DIVA Server 4BRI/PCI
supported functions of onboard DSPs:
- analog modem
- fax group 2/3 (Fax Class 2 commands)
@@ -80,7 +81,7 @@ Example for loading and starting a BRI card with E-DSS1 Protocol.
Example for a BRI card with E-DSS1 Protocol with PtP configuration.
- eiconctrl [-d DriverId] load etsi -n -t0 -s1
+ eiconctrl [-d DriverId] load etsi -n -t1 -s1
Example for loading and starting a PRI card with E-DSS1 Protocol.
@@ -99,6 +100,18 @@ Just use "eiconctrl isdnlog on" and the driver will generate
the necessary D-Channel traces for isdnlog.
+FILECHECK:
+A part of the eicon driver source code files are provided
+by Eicon Technology. In order to get the best support from Eicon,
+these files are tested with a checksum, just to know if the files
+were modified. This does *not* mean, you are not allowed to modify the
+driver. If you want to improve the driver or you fix a bug, please do
+so and let me (or Eicon) know, about the necessary changes. So
+every user knows, if the driver he uses is modified or checked with
+Eicon files. When the driver has been loaded, in the syslog you will
+find something like "verified" or "modified" right after the version.
+
+
Thanks to
Deutsche Mailbox Saar-Lor-Lux GmbH
for sponsoring and testing fax
@@ -113,3 +126,4 @@ Have fun !
Armin Schindler
mac@melware.de
http://www.melware.de
+
diff --git a/Documentation/isdn/README.fax b/Documentation/isdn/README.fax
index eeff9ce9f..5314958a8 100644
--- a/Documentation/isdn/README.fax
+++ b/Documentation/isdn/README.fax
@@ -24,6 +24,9 @@ Supported ISDN-Cards
Eicon DIVA Server BRI/PCI
- full support with both B-channels.
+Eicon DIVA Server 4BRI/PCI
+ - full support with all B-channels.
+
Eicon DIVA Server PRI/PCI
- full support on amount of B-channels
depending on DSPs on board.
diff --git a/Documentation/isdn/README.hysdn b/Documentation/isdn/README.hysdn
index 9cfac4626..90a5e8b71 100644
--- a/Documentation/isdn/README.hysdn
+++ b/Documentation/isdn/README.hysdn
@@ -1,9 +1,13 @@
-$Id: README.hysdn,v 1.1 2000/02/10 19:46:15 werner Exp $
+$Id: README.hysdn,v 1.3 2000/08/06 09:22:51 armin Exp $
The hysdn driver has been written by
by Werner Cornelius (werner@isdn4linux.de or werner@titro.de)
for Hypercope GmbH Aachen Germany. Hypercope agreed to publish this driver
under the GNU Public License.
+The CAPI 2.0-support was added by Ulrich Albrecht (ualbrecht@hypercope.de)
+for Hypercope GmbH Aachen, Germany.
+
+
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
@@ -41,15 +45,19 @@ Table of contents
enable ISDN support in the kernel config and support for HYSDN cards in
the active cards submenu. The driver may only be compiled and used if
support for loadable modules and the process filesystem have been enabled.
- No other ISDN options need to be enabled for these cards.
- Up to now these cards do not use or require the standard isdn interface
- module (isdn.o), but registers itself as an ethernet card. All necessary
+ These cards provide two different interfaces to the kernel. Without the
+ optional CAPI 2.0 support, they register as ethernet card. IP-routing
+ to a ISDN-destination is performed on the card itself. All necessary
handlers for various protocols like ppp and others as well as config info
and firmware may be fetched from Hypercopes WWW-Site www.hypercope.de.
- The driver has been included in the i4l tree as a CAPI compliant module
- is under development and will be connected to the standard i4l modules
- additionally.
+
+ With CAPI 2.0 support enabled, the card can also be used as a CAPI 2.0
+ compliant devices with either CAPI 2.0 applications
+ (check isdn4k-utils) or -using the capidrv module- as a regular
+ isdn4linux device. This is done via the same mechanism as with the
+ active AVM cards and in fact uses the same module.
+
2. Loading/Unloading the driver
@@ -58,7 +66,14 @@ Table of contents
If a loaded driver shall be unloaded all open files in the /proc/net/hysdn
subdir need to be closed and all ethernet interfaces allocated by this
driver must be shut down. Otherwise the module counter will avoid a module
- unload.
+ unload.
+
+ If you are using the CAPI 2.0-interface, make sure to load/modprobe the
+ kernelcapi-module first.
+
+ If you plan to use the capidrv-link to isdn4linux, make sure to load
+ capidrv.o after all modules using this driver (i.e. after hysdn and
+ any avm-specific modules).
3. Entries in the /proc filesystem
@@ -160,8 +175,11 @@ Table of contents
6. Where to get additional info and help
If you have any problems concerning the driver or configuration contact
- the Hypercope support team (www.hypercope.de) and or the author
- Werner Cornelius (werner@isdn4linux or cornelius@titro.de)
+ the Hypercope support team (support@hypercope.de) and or the authors
+ Werner Cornelius (werner@isdn4linux or cornelius@titro.de) or
+ Ulrich Albrecht (ualbrecht@hypercope.de).
+
+
diff --git a/Documentation/kernel-docs.txt b/Documentation/kernel-docs.txt
index e3b91823a..bc1174527 100644
--- a/Documentation/kernel-docs.txt
+++ b/Documentation/kernel-docs.txt
@@ -278,7 +278,7 @@
Author: Stephen C. Tweedie.
URL:
ftp://ftp.uk.linux.org:/pub/linux/sct/fs/jfs/journal-design.ps.gz
- Keywords: ext3, journalist.
+ Keywords: ext3, journaling.
Description: Excellent 8-pages paper explaining the journaling
capabilities added to ext2 by the author, showing different
problems faced and the alternatives chosen.
@@ -476,6 +476,14 @@
URL: http://www.linux-mag.com/2000-03/gear_01.html
Keywords: PCI, bus, bus-mastering.
Description: The title says it all.
+
+ * Title: "Linux 2.4 Kernel Internals"
+ Author: Tigran Aivazian.
+ URL: http://www.moses.uklinux.net/patches/lki.html
+ Keywords: Linux, kernel, VFS, SMP boot
+ Description: A little book used for a short training course
+ I gave on this subject at VERITAS. Covers building the kernel
+ image, booting (including SMP), process management, VFS and more.
BOOKS: (Not on-line)
diff --git a/Documentation/networking/arcnet-hardware.txt b/Documentation/networking/arcnet-hardware.txt
index b84cdc4d6..5072e63ff 100644
--- a/Documentation/networking/arcnet-hardware.txt
+++ b/Documentation/networking/arcnet-hardware.txt
@@ -3063,7 +3063,7 @@ Some Examples:
** Tiara **
(model unknown)
-------------------------
- - from Christoph Lameter <clameter@netcom.com>
+ - from Christoph Lameter <christoph@lameter.com>
Here is information about my card as far as I could figure it out:
diff --git a/Documentation/networking/arcnet.txt b/Documentation/networking/arcnet.txt
index 2cdb6db62..86188673f 100644
--- a/Documentation/networking/arcnet.txt
+++ b/Documentation/networking/arcnet.txt
@@ -70,7 +70,7 @@ list, mail to linux-arcnet@tichy.ch.uj.edu.pl.
There are archives of the mailing list at:
http://tichy.ch.uj.edu.pl/lists/linux-arcnet
-The people on linux-net@vger.rutgers.edu have also been known to be very
+The people on linux-net@vger.kernel.org have also been known to be very
helpful, especially when we're talking about ALPHA Linux kernels that may or
may not work right in the first place.
diff --git a/Documentation/networking/ax25.txt b/Documentation/networking/ax25.txt
index 7572cf733..37c25b092 100644
--- a/Documentation/networking/ax25.txt
+++ b/Documentation/networking/ax25.txt
@@ -8,7 +8,7 @@ who is also the AX.25 Utilities maintainer.
There is an active mailing list for discussing Linux amateur radio matters
called linux-hams. To subscribe to it, send a message to
-Majordomo@vger.rutgers.edu with the words "subscribe linux-hams" in the body
+majordomo@vger.kernel.org with the words "subscribe linux-hams" in the body
of the message, the subject field is ignored.
Jonathan G4KLX
diff --git a/Documentation/networking/ethertap.txt b/Documentation/networking/ethertap.txt
index 4a27cd899..ba37dd3db 100644
--- a/Documentation/networking/ethertap.txt
+++ b/Documentation/networking/ethertap.txt
@@ -1,3 +1,9 @@
+NOTE: Ethertap is now an obsolete facility, and is scheduled
+ to be removed in the 2.5.x kernel series. Those writing
+ applications using ethertap should convert their code to
+ use the TUN/TAP driver instead, see 'tuntap.txt' in this
+ directory for more details. -DaveM
+
Ethertap programming mini-HOWTO
-------------------------------
diff --git a/Documentation/networking/ip-sysctl.txt b/Documentation/networking/ip-sysctl.txt
index e1436a7bb..aade6928c 100644
--- a/Documentation/networking/ip-sysctl.txt
+++ b/Documentation/networking/ip-sysctl.txt
@@ -194,13 +194,84 @@ tcp_timestamps - BOOLEAN
Enable timestamps as defined in RFC1323.
tcp_sack - BOOLEAN
- Enable select acknowledgments.
+ Enable select acknowledgments (SACKS).
+
+tcp_fack - BOOLEAN
+ Enable FACK congestion avoidance and fast restransmission.
+ The value is not used, if tcp_sack is not enabled.
+
+tcp_dsack - BOOLEAN
+ Allows TCP to send "duplicate" SACKs.
+
+tcp_ecn - BOOLEN
+ Enable Explicit Congestion Notification in TCP.
+
+tcp_reordering - INTEGER
+ Maximal reordering of packets in a TCP stream.
+ Default: 3
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.
+tcp_wmem - vector of 3 INTEGERs: min, default, max
+ min: Amount of memory reserved for send buffers for TCP socket.
+ Each TCP socket has rights to use it due to fact of its birth.
+ Default: 4K
+
+ default: Amount of memory allowed for send buffers for TCP socket
+ by default. This value overrides net.core.wmem_default used
+ by other protocols, it is usually lower than net.core.wmem_default.
+ Default: 16K
+
+ max: Maximal amount of memory allowed for automatically selected
+ send buffers for TCP socket. This value does not override
+ net.core.wmem_max, "static" selection via SO_SNDBUF does not use this.
+ Default: 128K
+
+tcp_rmem - vector of 3 INTEGERs: min, default, max
+ min: Minimal size of receive buffer used by TCP sockets.
+ It is guaranteed to each TCP socket, even under moderate memory
+ pressure.
+ Default: 8K
+
+ default: default size of receive buffer used by TCP sockets.
+ This value overrides net.core.rmem_default used by other protocols.
+ Default: 87380 bytes. This value results in window of 65535 with
+ default setting of tcp_adv_win_scale and tcp_app_win:0 and a bit
+ less for default tcp_app_win. See below about these variables.
+
+ max: maximal size of receive buffer allowed for automatically
+ selected receiver buffers for TCP socket. This value does not override
+ net.core.rmem_max, "static" selection via SO_RCVBUF does not use this.
+ Default: 87380*2 bytes.
+
+tcp_mem - vector of 3 INTEGERs: min, pressure, max
+ low: below this number of pages TCP is not bothered about its
+ memory appetite.
+
+ pressure: when amount of memory allocated by TCP exceeds this number
+ of pages, TCP moderates its memory consumption and enters memory
+ pressure mode, which is exited when memory consumtion falls
+ under "low".
+
+ high: number of pages allowed for queueing by all TCP sockets.
+
+ Defaults are calculated at boot time from amount of available
+ memory.
+
+tcp_app_win - INTEGER
+ Reserve max(window/2^tcp_app_win, mss) of window for application
+ buffer. Value 0 is special, it means that nothing is reserved.
+ Default: 31
+
+tcp_adv_win_scale - INTEGER
+ Count buffering overhead as bytes/2^tcp_adv_win_scale
+ (if tcp_adv_win_scale > 0) or bytes-bytes/2^(-tcp_adv_win_scale),
+ if it is <= 0.
+ Default: 2
+
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
@@ -305,4 +376,4 @@ kuznet@ms2.inr.ac.ru
Updated by:
Andi Kleen
ak@muc.de
-$Id: ip-sysctl.txt,v 1.13 2000/01/18 08:24:09 davem Exp $
+$Id: ip-sysctl.txt,v 1.16 2000/08/13 18:24:11 davem Exp $
diff --git a/Documentation/networking/tuntap.txt b/Documentation/networking/tuntap.txt
new file mode 100644
index 000000000..cbeb54cb8
--- /dev/null
+++ b/Documentation/networking/tuntap.txt
@@ -0,0 +1,150 @@
+Universal TUN/TAP device driver.
+Copyright (C) 1999-2000 Maxim Krasnyansky <max_mk@yahoo.com>
+
+ Linux, Solaris drivers
+ Copyright (C) 1999-2000 Maxim Krasnyansky <max_mk@yahoo.com>
+
+ FreeBSD TAP driver
+ Copyright (c) 1999-2000 Maksim Yevmenkin <m_evmenkin@yahoo.com>
+
+1. Description
+ TUN/TAP provides packet reception and transmission for user space programs.
+ It can be viewed as a simple Point-to-Point or Ethernet device, which
+ instead of receiving packets from a physical media, receives them from
+ user space program and instead of sending packets via physical media
+ writes them to the user space program.
+
+ When a program opens /dev/net/tun, driver creates and registers corresponding
+ net device tunX or tapX. After a program closed above devices, driver will
+ automatically delete tunXX or tapXX device and all routes corresponding to it.
+
+ This package(http://vtun.sourceforge.net/tun) contains two simple example
+ programs how to use tun and tap devices. Both programs works like
+ bridge between two network interfaces.
+ br_select.c - bridge based on select system call.
+ br_sigio.c - bridge based on async io and SIGIO signal.
+ However the best example is VTun http://vtun.sourceforge.net :))
+
+2. Installation
+ Run './configure' to configure the driver.
+
+ Run 'make install' to compile and install driver module and to create
+ /dev/net/tun device node.
+
+3. Loading driver module
+ Linux
+ To load TUN/TAP driver module run:
+ modprobe tun
+ To configure automatic loading of the 'tun' module you have to add:
+ alias char-major-195 tun
+ to the /etc/conf.modules, and run:
+ modprobe -a
+ TUN/TAP driver will be automatically loaded when application access
+ /dev/net/tun.
+ If "Kernel module loader" - module auto-loading support is not enabled
+ in your kernel then you can add
+ modprobe tun
+ to one of the startup rc files.
+
+4. Program interface
+ 4.1 Network device allocation:
+
+ int tun_alloc(char *dev)
+ {
+ struct ifreq ifr;
+ int fd, err;
+
+ if( (fd = open("/dev/net/tun", O_RDWR)) < 0 )
+ return tun_alloc_old(dev);
+
+ memset(&ifr, 0, sizeof(ifr));
+
+ /* Flags: IFF_TUN - TUN device (no Ethernet headers)
+ * IFF_TAP - TAP device
+ *
+ * IFF_NO_PI - Do not provide packet information
+ */
+ ifr.ifr_flags = IFF_TUN;
+ if( *dev )
+ strncpy(ifr.ifr_name, dev, IFNAMSIZ);
+
+ if( (err = ioctl(fd, TUNSETIFF, (void *) &ifr)) < 0 ){
+ close(fd);
+ return err;
+ }
+ strcpy(dev, ifr.ifr_name);
+ return fd;
+ }
+
+ 4.2 Frame format:
+ If flag IFF_NO_PI is not set each frame format is:
+ Flags [2 bytes]
+ Proto [2 bytes]
+ Raw protocol(IP, IPv6, etc) frame.
+
+Universal TUN/TAP device driver Frequently Asked Question.
+
+1. What is the TUN ?
+The TUN is Virtual Point-to-Point network device.
+TUN driver was designed as low level kernel support for
+IP tunneling. It provides to userland application
+two interfaces:
+ - /dev/tunX - character device;
+ - tunX - virtual Point-to-Point interface.
+
+Userland application can write IP frame to /dev/tunX
+and kernel will receive this frame from tunX interface.
+In the same time every frame that kernel writes to tunX
+interface can be read by userland application from /dev/tunX
+device.
+
+2. What is the TAP ?
+The TAP is a Virtual Ethernet network device.
+TAP driver was designed as low level kernel support for
+Ethernet tunneling. It provides to userland application
+two interfaces:
+ - /dev/tapX - character device;
+ - tapX - virtual Ethernet interface.
+
+Userland application can write Ethernet frame to /dev/tapX
+and kernel will receive this frame from tapX interface.
+In the same time every frame that kernel writes to tapX
+interface can be read by userland application from /dev/tapX
+device.
+
+3. What platforms are supported by TUN/TAP driver ?
+Currently driver has been written for 3 Unices:
+ Linux kernels 2.2.x, 2.4.x
+ FreeBSD 3.x, 4.x, 5.x
+ Solaris 2.6, 7.0, 8.0
+
+4. What is TUN/TAP driver used for?
+As mentioned above, main purpose of TUN/TAP driver is tunneling.
+It used by VTun (http://vtun.netpedia.net).
+
+5. How does Virtual network device actually work ?
+Virtual network device can be viewed as a simple Point-to-Point or
+Ethernet device, which instead of receiving packets from a physical
+media, receives them from user space program and instead of sending
+packets via physical media sends them to the user space program.
+
+Let's say that you configured IPX on the tap0, then whenever
+kernel sends any IPX packet to tap0, it is passed to the application
+(VTun for example). Application encrypts, compresses and sends it to
+the other side over TCP or UDP. Application on other side decompress
+and decrypts them and write packet to the TAP device, kernel handles
+the packet like it came from real physical device.
+
+6. What is the difference between TUN driver and TAP driver?
+TUN works with IP frames. TAP works with Ethernet frames.
+
+7. What is the difference between BPF and TUN/TAP driver?
+BFP is a advanced packet filter. It can be attached to existing
+network interface. It does not provide virtual network interface.
+TUN/TAP driver does provide virtual network interface and it is possible
+to attach BPF to this interface.
+
+8. Does TAP driver support kernel Ethernet bridging?
+Yes. Linux and FreeBSD drivers support Ethernet bridging.
+
+
diff --git a/Documentation/networking/vortex.txt b/Documentation/networking/vortex.txt
index 9a8039234..b76e8732c 100644
--- a/Documentation/networking/vortex.txt
+++ b/Documentation/networking/vortex.txt
@@ -13,7 +13,7 @@ Please report problems to one or more of:
Andrew Morton <andrewm@uow.edu.au>
Netdev mailing list <netdev@oss.sgi.com>
- Linux kernel mailing list <linux-kernel@vger.rutgers.edu>
+ Linux kernel mailing list <linux-kernel@vger.kernel.org>
Please note the 'Reporting and Diagnosing Problems' section at the end
of this file.
@@ -52,7 +52,6 @@ This driver supports the following hardware:
3CCFE656 Cyclone CardBus
3CCFEM656 Cyclone CardBus
3c450 Cyclone/unknown
- 3Com Boomerang (unknown version)
Module parameters
@@ -67,7 +66,7 @@ options 3c59x debug=3 rx_copybreak=300
If you are using the PCMCIA tools (cardmgr) then the options may be
placed in /etc/pcmcia/config.opts:
-module "3c59x" opts "debug=3 extra_reset=1"
+module "3c59x" opts "debug=3 rx_copybreak=300"
The supported parameters are:
@@ -104,8 +103,8 @@ options=N1,N2,N3,...
When generating a value for the 'options' setting, the above media
selection values may be OR'ed (or added to) the following:
- 512 (0x200) Force full-duplex
- 16 (0x10) Bus-master enable bit (Old Vortex cards only)
+ 512 (0x200) Force full duplex mode.
+ 16 (0x10) Bus-master enable bit (Old Vortex cards only)
For example:
@@ -119,6 +118,22 @@ full_duplex=N1,N2,N3...
Similar to bit 9 of 'options'. Forces the corresponding card into
full-duplex mode.
+flow_ctrl=N1,N2,N3...
+
+ Use 802.3x MAC-layer flow control. The 3com cards only support the
+ PAUSE command, which means that they will stop sending packets for a
+ short period if they receive a PAUSE frame from the link partner.
+
+ The driver only allows flow control on a link which is operating in
+ full duplex mode.
+
+ This feature does not appear to work on the 3c905 - only 3c905B and
+ 3c905C have been tested.
+
+ The 3com cards appear to only respond to PAUSE frames which are
+ sent to the reserved destination address of 01:80:c2:00:00:01. They
+ do not honour PAUSE frames which are sent to the station MAC address.
+
rx_copybreak=M
The driver preallocates 32 full-sized (1536 byte) network buffers
@@ -141,15 +156,6 @@ max_interrupt_work=N
is exceeded the interrupt service routine gives up and generates a
warning message "eth0: Too much work in interrupt".
-extra_reset=N
-
- Where N is 0 or 1 (default 0).
-
- Some network cards (notably 3CCFE575CT Cardbus) do not initialise
- correctly and need an extra transmitter reset. If you find that the
- card comes up receiving but not transmitting, try giving the module
- the 'extra_reset=1' option.
-
compaq_ioaddr=N
compaq_irq=N
compaq_device_id=N
@@ -220,29 +226,102 @@ Autonegotiation notes
Reporting and diagnosing problems
---------------------------------
-If the driver plays up, there are a number of things you can do analyse
-the problem and to help others do this:
+Maintainers find that accurate and complete problem reports are
+invaluable in resolving driver problems. We are frequently not able to
+reproduce problems and must rely on your patience and efforts to get to
+the bottom of the problem.
+
+If you believe you have a driver problem here are some of the
+steps you should take:
+
+- Is it really a driver problem?
+
+ Eliminate some variables: try different cards, different
+ computers, different cables, different ports on the switch/hub,
+ different versions of the kernel or ofthe driver, etc.
+
+- OK, it's a driver problem.
+
+ You need to generate a report. Typically this is an email to the
+ maintainer and/or linux-net@vger.kernel.org. The maintainer's
+ email address will be inthe driver source or in the MAINTAINERS file.
+
+- The contents of your report will vary a lot depending upon the
+ problem. If it's a kernel crash then you should refer to the
+ REPORTING-BUGS file.
+
+ But for most problems it is useful to provide the following:
+
+ o Kernel version, driver version
+
+ o A copy of the banner message which the driver generates when
+ it is initialised. For example:
+
+ eth0: 3Com PCI 3c905C Tornado at 0xa400, 00:50:da:6a:88:f0, IRQ 19
+ 8K byte-wide RAM 5:3 Rx:Tx split, autoselect/Autonegotiate interface.
+ MII transceiver found at address 24, status 782d.
+ Enabling bus-master transmits and whole-frame receives.
+
+ o If it is a PCI device, the relevant output from 'lspci -vx', eg:
+
+ 00:09.0 Ethernet controller: 3Com Corporation 3c905C-TX [Fast Etherlink] (rev 74)
+ Subsystem: 3Com Corporation: Unknown device 9200
+ Flags: bus master, medium devsel, latency 32, IRQ 19
+ I/O ports at a400 [size=128]
+ Memory at db000000 (32-bit, non-prefetchable) [size=128]
+ Expansion ROM at <unassigned> [disabled] [size=128K]
+ Capabilities: [dc] Power Management version 2
+ 00: b7 10 00 92 07 00 10 02 74 00 00 02 08 20 00 00
+ 10: 01 a4 00 00 00 00 00 db 00 00 00 00 00 00 00 00
+ 20: 00 00 00 00 00 00 00 00 00 00 00 00 b7 10 00 10
+ 30: 00 00 00 00 dc 00 00 00 00 00 00 00 05 01 0a 0a
+
+ o A description of the environment: 10baseT? 100baseT?
+ full/half duplex? switched or hubbed?
+
+ o Any additional module parameters which you may be providing to the driver.
+
+ o Any kernel logs which are produced. The more the merrier.
+ If this is a large file and you are sending your report to a
+ mailing list, mention that you have the logfile, but don't send
+ it. If you're reporting direct to the maintainer then just send
+ it.
+
+ To ensure that all kernel logs are available, add the
+ following line to /etc/syslog.conf:
+
+ kern.* /var/log/messages
+
+ Then restart syslogd with:
+
+ /etc/rc.d/init.d/syslog restart
-- Turn on debugging in the driver
- Add 'debug=7' to /etc/modules.conf (/etc/conf.modules)
- Change 'vortex_debug' to 7 in the source code.
+ (The above may vary, depending upon which Linux distribution you use).
-- Send all kernel logs, starting with the first probe of the card.
+ o If your problem is reproducible then that's great. Try the
+ following:
-- Run 'mii-diag -v' to show the state of the Media Independent
- Interface. If the card sometimes works and sometimes doesn't, run
- 'mii-diag -v' in both states.
+ 1) Increase the debug level. Usually this is done via:
-- Please run 'vortex-diag -aaee' in both good and bad states. This
- show the NIC's registers and EEPROM contents.
+ a) modprobe driver.o debug=7
+ b) In /etc/conf.modules (or modules.conf):
+ options driver_name debug=7
-- Describe your setup: 10baseT, 100baseT, full/half duplex, etc.
+ 2) Recreate the problem with the higher debug level,
+ send all logs to the maintainer.
-- Note any additional module insertion commands you're using.
+ 3) Download you card's diagnostic tool from Donald
+ Backer's website http://www.scyld.com/diag. Download
+ mii-diag.c as well. Build these.
-- Try different media type settings (see above).
+ a) Run 'vortex-diag -aaee' and 'mii-diag -v' when the card is
+ working correctly. Save the output.
-- Try inserting the module with 'extra_reset=1' (or compile this into
- the driver).
+ b) Run the above commands when the card is malfunctioning. Send
+ both sets of output.
+Finally, please be patient and be prepared to do some work. You may end up working on
+this problem for a week or more as the maintainer asks more questions, asks for more
+tests, asks for patches to be applied, etc. At the end of it all, the problem may even
+remain unresolved.
diff --git a/Documentation/networking/x25.txt b/Documentation/networking/x25.txt
index 6ae6b8ef7..c91c6d715 100644
--- a/Documentation/networking/x25.txt
+++ b/Documentation/networking/x25.txt
@@ -29,10 +29,10 @@ the Internet using TCP/IP as a reliable link layer. RFC1613 specifies the
format and behaviour of the protocol. If time permits this option will also
be actively considered.
-A linux-x25 mailing list has been created at vger.rutgers.edu to support the
+A linux-x25 mailing list has been created at vger.kernel.org to support the
development and use of Linux X.25. It is early days yet, but interested
parties are welcome to subscribe to it. Just send a message to
-Majordomo@vger.rutgers.edu with the following in the message body:
+majordomo@vger.kernel.org with the following in the message body:
subscribe linux-x25
end
diff --git a/Documentation/nmi_watchdog.txt b/Documentation/nmi_watchdog.txt
index 7f517608a..2eb5a8bbc 100644
--- a/Documentation/nmi_watchdog.txt
+++ b/Documentation/nmi_watchdog.txt
@@ -29,5 +29,5 @@ boxes.
[ feel free to send bug reports, suggestions and patches to
Ingo Molnar <mingo@redhat.com> or the Linux SMP mailing
- list at <linux-smp@vger.rutgers.edu> ]
+ list at <linux-smp@vger.kernel.org> ]
diff --git a/Documentation/oops-tracing.txt b/Documentation/oops-tracing.txt
index 4263c68d5..5510e5349 100644
--- a/Documentation/oops-tracing.txt
+++ b/Documentation/oops-tracing.txt
@@ -13,7 +13,7 @@ If it occurs repeatably try and describe how to recreate it. Thats
worth even more than the oops
If you are totally stumped as to whom to send the report, send it to
-linux-kernel@vger.rutgers.edu. Thanks for your help in making Linux as
+linux-kernel@vger.kernel.org. Thanks for your help in making Linux as
stable as humanly possible.
Where is the_oops.txt?
diff --git a/Documentation/scsi-generic.txt b/Documentation/scsi-generic.txt
index 48ec05c3c..691ecb85b 100644
--- a/Documentation/scsi-generic.txt
+++ b/Documentation/scsi-generic.txt
@@ -756,7 +756,7 @@ http://www.kernel.dk Jens Axboe's site for Linux cdrom matters including
the SCSI "sr" driver.
http://www.torque.net/sg
My site with sg related information.
-newsgroup:linux-scsi@vger.rutgers.edu
+newsgroup:linux-scsi@vger.kernel.org
Newsgroup for Linux related SCSI matters
/usr/src/linux/MAINTAINERS
This is a file in the Linux kernel source that
diff --git a/Documentation/sound/Soundblaster b/Documentation/sound/Soundblaster
index 515c4ec77..3276245ad 100644
--- a/Documentation/sound/Soundblaster
+++ b/Documentation/sound/Soundblaster
@@ -9,8 +9,8 @@ The Sound Blaster module takes the following arguments
io I/O address of the Sound Blaster chip (0x220,0x240,0x260,0x280)
irq IRQ of the Sound Blaster chip (5,7,9,10)
-dma 8-bit DMA channel for the Sound Blaster (0,1,3)
-dma16 16-bit DMA channel for SB16 and equivalent cards (5,6,7)
+dma 8-bit DMA channel for the Sound Blaster (0,1,3)
+dma16 16-bit DMA channel for SB16 and equivalent cards (5,6,7)
mpu_io I/O for MPU chip if present (0x300,0x330)
sm_games=1 Set if you have a Logitech soundman games
@@ -21,11 +21,13 @@ type Use this to specify a specific card type
The following arguments are taken if ISAPnP support is compiled in
isapnp=0 Set this to disable ISAPnP detection (use io=0xXXX etc. above)
-multiple=1 Set to enable detection of multiple Soundblaster cards.
+multiple=0 Set to disable detection of multiple Soundblaster cards.
+ Consider it a bug if this option is needed, and send in a
+ report.
reverse=1 Reverses the order of the search in the PnP table.
uart401=1 Set to enable detection of mpu devices on some clones.
-isapnpjump Jumps to a specific slot in the driver's PnP table. Use the
- source, Luke.
+isapnpjump=n Jumps to slot n in the driver's PnP table. Use the source,
+ Luke.
You may well want to load the opl3 driver for synth music on most SB and
clone SB devices
diff --git a/Documentation/sparc/sbus_drivers.txt b/Documentation/sparc/sbus_drivers.txt
new file mode 100644
index 000000000..fc8ab4a8b
--- /dev/null
+++ b/Documentation/sparc/sbus_drivers.txt
@@ -0,0 +1,272 @@
+
+ Writing SBUS Drivers
+
+ David S. Miller (davem@redhat.com)
+
+ The SBUS driver interfaces of the Linux kernel have been
+revamped completely for 2.4.x for several reasons. Foremost were
+performance and complexity concerns. This document details these
+new interfaces and how they are used to write an SBUS device driver.
+
+ SBUS drivers need to include <asm/sbus.h> to get access
+to functions and structures described here.
+
+ Probing and Detection
+
+ Each SBUS device inside the machine is described by a
+structure called "struct sbus_dev". Likewise, each SBUS bus
+found in the system is described by a "struct sbus_bus". For
+each SBUS bus, the devices underneath are hung in a tree-like
+fashion off of the bus structure.
+
+ The SBUS device structure contains enough information
+for you to implement your device probing algorithm and obtain
+the bits necessary to run your device. The most commonly
+used members of this structure, and their typical usage,
+will be detailed below.
+
+ Here is how probing is performed by an SBUS driver
+under Linux:
+
+ static void init_one_mydevice(struct sbus_dev *sdev)
+ {
+ ...
+ }
+
+ static int mydevice_match(struct sbus_dev *sdev)
+ {
+ if (some_criteria(sdev))
+ return 1;
+ return 0;
+ }
+
+ static void mydevice_probe(void)
+ {
+ struct sbus_bus *sbus;
+ struct sbus_dev *sdev;
+
+ for_each_sbus(sbus) {
+ for_each_sbusdev(sdev, sbus) {
+ if (mydevice_match(sdev))
+ init_one_mydevice(sdev);
+ }
+ }
+ }
+
+ All this does is walk through all SBUS devices in the
+system, checks each to see if it is of the type which
+your driver is written for, and if so it calls the init
+routine to attach the device and prepare to drive it.
+
+ "init_one_mydevice" might do things like allocate software
+state structures, map in I/O registers, place the hardware
+into an initialized state, etc.
+
+ Mapping and Accessing I/O Registers
+
+ Each SBUS device structure contains an array of descriptors
+which describe each register set. We abuse struct resource for that.
+They each correspond to the "reg" properties provided by the OBP firmware.
+
+ Before you can access your device's registers you must map
+them. And later if you wish to shutdown your driver (for module
+unload or similar) you must unmap them. You must treat them as
+a resource, which you allocate (map) before using and free up
+(unmap) when you are done with it.
+
+ The mapping information is stored in an opaque value
+typed as an "unsigned long". This is the type of the return value
+of the mapping interface, and the arguments to the unmapping
+interface. Let's say you want to map the first set of registers.
+Perhaps part of your driver software state structure looks like:
+
+ struct mydevice {
+ unsigned long control_regs;
+ ...
+ struct sbus_dev *sdev;
+ ...
+ };
+
+ At initialization time you then use the sbus_ioremap
+interface to map in your registers, like so:
+
+ static void init_one_mydevice(struct sbus_dev *sdev)
+ {
+ struct mydevice *mp;
+ ...
+
+ mp->control_regs = sbus_ioremap(&sdev->resource[0], 0,
+ CONTROL_REGS_SIZE, "mydevice regs");
+ if (!mp->control_regs) {
+ /* Failure, cleanup and return. */
+ }
+ }
+
+ Second argument to sbus_ioremap is an offset for
+cranky devices with broken OBP PROM. The sbus_ioremap uses only
+a start address and flags from the resource structure.
+Therefore it is possible to use the same resource to map
+several sets of registers or even to fabricate a resource
+structure if driver gets physical address from some private place.
+This practice is discouraged though. Use whatever OBP PROM
+provided to you.
+
+ And here is how you might unmap these registers later at
+driver shutdown or module unload time, using the sbus_iounmap
+interface:
+
+ static void mydevice_unmap_regs(struct mydevice *mp)
+ {
+ sbus_iounmap(mp->control_regs, CONTROL_REGS_SIZE);
+ }
+
+ Finally, to actually access your registers there are 6
+interface routines at your disposal. Accesses are byte (8 bit),
+word (16 bit), or longword (32 bit) sized. Here they are:
+
+ u8 sbus_readb(unsigned long reg) /* read byte */
+ u16 sbus_readw(unsigned long reg) /* read word */
+ u32 sbus_readl(unsigned long reg) /* read longword */
+ void sbus_writeb(u8 value, unsigned long reg) /* write byte */
+ void sbus_writew(u16 value, unsigned long reg) /* write word */
+ void sbus_writel(u32 value, unsigned long reg) /* write longword */
+
+ So, let's say your device has a control register of some sort
+at offset zero. The following might implement resetting your device:
+
+ #define CONTROL 0x00UL
+
+ #define CONTROL_RESET 0x00000001 /* Reset hardware */
+
+ static void mydevice_reset(struct mydevice *mp)
+ {
+ sbus_writel(CONTROL_RESET, mp->regs + CONTROL);
+ }
+
+ Or perhaps there is a data port register at an offset of
+16 bytes which allows you to read bytes from a fifo in the device:
+
+ #define DATA 0x10UL
+
+ static u8 mydevice_get_byte(struct mydevice *mp)
+ {
+ return sbus_readb(mp->regs + DATA);
+ }
+
+ It's pretty straightforward, and clueful readers may have
+noticed that these interfaces mimick the PCI interfaces of the
+Linux kernel. This was not by accident.
+
+ WARNING:
+
+ DO NOT try to treat these opaque register mapping
+ values as a memory mapped pointer to some structure
+ which you can dereference.
+
+ It may be memory mapped, it may not be. In fact it
+ could be a physical address, or it could be the time
+ of day xor'd with 0xdeadbeef. :-)
+
+ Whatever it is, it's an implementation detail. The
+ interface was done this way to shield the driver
+ author from such complexities.
+
+ Doing DVMA
+
+ SBUS devices can perform DMA transactions in a way similar
+to PCI but dissimilar to ISA, e.g. DMA masters supply address.
+In contrast to PCI, however, that address (a bus address) is
+translated by IOMMU before a memory access is performed and therefore
+it is virtual. Sun calls this procedure DVMA.
+
+ Linux supports two styles of using SBUS DVMA: "consistent memory"
+and "streaming DVMA". CPU view of consistent memory chunk is, well,
+consistent with a view of a device. Think of it as an uncached memory.
+Typically this way of doing DVMA is not very fast and drivers use it
+mostly for control blocks or queues. On some CPUs we cannot flush or
+invalidate individual pages or cache lines and doing explicit flushing
+over ever little byte in every control block would be wasteful.
+
+Streaming DVMA is a preferred way to transfer large amounts of data.
+This process works in the following way:
+1. a CPU stops accessing a certain part of memory,
+ flushes its caches covering that memory;
+2. a device does DVMA accesses, then posts an interrupt;
+3. CPU invalidates its caches and starts to access the memory.
+
+A single streaming DVMA operation can touch several discontiguous
+regions of a virtual bus address space. This is called a scatter-gather
+DVMA.
+
+[TBD: Why do not we neither Solaris attempt to map disjoint pages
+into a single virtual chunk with the help of IOMMU, so that non SG
+DVMA masters would do SG? It'd be very helpful for RAID.]
+
+ In order to perform a consistent DVMA a driver does something
+like the following:
+
+ char *mem; /* Address in the CPU space */
+ u32 busa; /* Address in the SBus space */
+
+ mem = (char *) sbus_alloc_consistant(sdev, MYMEMSIZE, &busa);
+
+ Then mem is used when CPU accesses this memory and u32
+is fed to the device so that it can do DVMA. This is typically
+done with an sbus_writel() into some device register.
+
+ Do not forget to free the DVMA resources once you are done:
+
+ sbus_free_consistant(sdev, MYMEMSIZE, mem, busa);
+
+ Streaming DVMA is more interesting. First you allocate some
+memory suitable for it or pin down some user pages. Then it all works
+like this:
+
+ char *mem = argumen1;
+ unsigned int size = argument2;
+ u32 busa; /* Address in the SBus space */
+
+ *mem = 1; /* CPU can access */
+ busa = sbus_map_single(sdev, mem, size);
+ if (busa == 0) .......
+
+ /* Tell the device to use busa here */
+ /* CPU cannot access the memory without sbus_dma_sync_single() */
+
+ sbus_unmap_single(sdev, busa, size);
+ if (*mem == 0) .... /* CPU can access again */
+
+ It is possible to retain mappings and ask the device to
+access data again and again without calling sbus_unmap_single.
+However, CPU caches must be invalidated with sbus_dma_sync_single
+before such access.
+
+[TBD but what about writeback caches here... do we have any?]
+
+ There is an equivalent set of functions doing the same thing
+only with several memory segments at once for devices capable of
+scatter-gather transfers. Use the Source, Luke.
+
+ Examples
+
+ drivers/net/sunhme.c
+ This is a complicated driver which illustrates many concepts
+discussed above and plus it handles both PCI and SBUS boards.
+
+ drivers/scsi/esp.c
+ Check it out for scatter-gather DVMA.
+
+ drivers/sbus/char/bpp.c
+ A non-DVMA device.
+
+ drivers/net/sunlance.c
+ Lance driver abuses consistent mappings for data transfer.
+It is a nifty trick which we do not particularly recommend...
+Just check it out and know that it's legal.
+
+ Bad examples, do NOT use
+
+ drivers/video/cgsix.c
+ This one uses result of sbus_ioremap as if it is an address.
+This does NOT work on sparc64 and therefore is broken. We will
+convert it at a later date.
diff --git a/Documentation/usb/proc_usb_info.txt b/Documentation/usb/proc_usb_info.txt
index f3e629cbe..b8b0cbd4e 100644
--- a/Documentation/usb/proc_usb_info.txt
+++ b/Documentation/usb/proc_usb_info.txt
@@ -1,6 +1,6 @@
/proc/bus/usb filesystem output
===============================
-(version 2000.03.24)
+(version 2000.08.15)
The /proc filesystem for USB devices generates
@@ -10,6 +10,23 @@ The /proc filesystem for USB devices generates
one per line, with each driver's USB minor dev node
number range if applicable.
+**NOTE**: If /proc/bus/usb appears empty, you need
+ to mount the filesystem, issue the command (as root):
+
+ mount -t usbdevfs none /proc/bus/usb
+
+ An alternative and more permanent method would be to add
+
+ none /proc/bus/usb usbdevfs defaults 0 0
+
+ to /etc/fstab. This will mount usbdevfs at each reboot.
+ You can then issue `cat /proc/bus/usb/devices` to extract
+ USB device information.
+
+For more information on mounting the usbdevfs file system, see the
+"USB Device Filesystem" section of the USB Guide. The latest copy
+of the USB Guide can be found at http://www.linux-usb.org/
+
In /proc/bus/usb/devices, each device's output has multiple
lines of ASCII output.
I made it ASCII instead of binary on purpose, so that someone
diff --git a/Documentation/usb/usb-serial.txt b/Documentation/usb/usb-serial.txt
index da7d19090..4ffe021a7 100644
--- a/Documentation/usb/usb-serial.txt
+++ b/Documentation/usb/usb-serial.txt
@@ -135,16 +135,16 @@ ZyXEL omni.net lcd plus ISDN TA
Digi AccelePort Driver
- This driver supports the Digi AccelePort USB 4 device, a 4 port
- USB serial converter. The driver does NOT yet support the Digi
- AccelePort USB 2 or 8.
-
- The driver supports open, close, read, write, termios settings (baud
- rate, word size, parity, stop bits, hardware/software flow control,
- CREAD), DTR/RTS, and TIOCMGET/SET/BIS/BIC ioctls. It has not been
- thoroughly tested, but it seems to be working reasonable well. There
- is more work to do, including flow control, ioctls, and support for
- the Digi AccelePort USB 2 and 8.
+ This driver supports the Digi AccelePort USB 2 and 4 devices, 2 port
+ (plus a parallel port) and 4 port USB serial converters. The driver
+ does NOT yet support the Digi AccelePort USB 8.
+
+ The driver is generally working, though we still have a few more ioctls
+ to implement and final testing and debugging to do. The paralled port
+ on the USB 2 is supported as a serial to parallel converter; in other
+ words, it appears as another USB serial port on Linux, even though
+ physically it is really a parallel port. The Digi Acceleport USB 8
+ is not yet supported.
Please contact Peter Berger (pberger@brimson.com) or Al Borchers
(alborchers@steinerpoint.com) for questions or problems with this
diff --git a/Documentation/watchdog.txt b/Documentation/watchdog.txt
index 893ead8a8..c035ad76c 100644
--- a/Documentation/watchdog.txt
+++ b/Documentation/watchdog.txt
@@ -14,7 +14,7 @@ The following watchdog drivers are currently implemented:
Berkshire Products PC Watchdog Revision A & C (by Ken Hollis)
-All five interfaces provide /dev/watchdog, which when open must be written
+All six interfaces provide /dev/watchdog, which when open must be written
to within a timeout or the machine will reboot. Each write delays the reboot
time another timeout. In the case of the software watchdog the ability to
reboot will depend on the state of the machines and interrupts. The hardware
@@ -35,17 +35,27 @@ to use "panic=60" as a boot argument as well.
The wdt card cannot be safely probed for. Instead you need to pass
wdt=ioaddr,irq as a boot parameter - eg "wdt=0x240,11".
+The i810 TCO watchdog modules can be configured with the "i810_margin"
+commandline argument which specifies the counter initial value. The counter
+is decremented every 0.6 seconds and default to 50 (30 seconds). Values can
+range between 3 and 63.
+
+The i810 TCO watchdog driver also implements the WDIOC_GETSTATUS and
+WDIOC_GETBOOTSTATUS ioctl()s. WDIOC_GETSTATUS returns the actual counter value
+and WDIOC_GETBOOTSTATUS returns the value of TCO2 Status Register (see Intel's
+documentation for the 82801AA and 82801AB datasheet).
+
Features
--------
- WDT501P WDT500P Software Berkshire
-Reboot Timer X X X X
-External Reboot X X o o
-I/O Port Monitor o o o X
-Temperature X o o X
-Fan Speed X o o o
-Power Under X o o o
-Power Over X o o o
-Overheat X o o o
+ WDT501P WDT500P Software Berkshire i810 TCO
+Reboot Timer X X X X X
+External Reboot X X o o o
+I/O Port Monitor o o o X o
+Temperature X o o X o
+Fan Speed X o o o o
+Power Under X o o o o
+Power Over X o o o o
+Overheat X o o o o
The external event interfaces on the WDT boards are not currently supported.
Minor numbers are however allocated for it.
@@ -69,6 +79,7 @@ int main(int argc, const char *argv[])
while(1)
{
write(fd,"\0",1);
+ fsync(fd);
sleep(10);
}
}