summaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-11-23 02:00:47 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-11-23 02:00:47 +0000
commit06615f62b17d7de6e12d2f5ec6b88cf30af08413 (patch)
tree8766f208847d4876a6db619aebbf54d53b76eb44 /Documentation
parentfa9bdb574f4febb751848a685d9a9017e04e1d53 (diff)
Merge with Linux 2.4.0-test10.
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/Changes53
-rw-r--r--Documentation/Configure.help271
-rw-r--r--Documentation/DocBook/via-audio.tmpl196
-rw-r--r--Documentation/IO-mapping.txt2
-rw-r--r--Documentation/cachetlb.txt6
-rw-r--r--Documentation/exception.txt6
-rw-r--r--Documentation/ia64/README43
-rw-r--r--Documentation/isapnp.txt32
-rw-r--r--Documentation/kbuild/makefiles.txt17
-rw-r--r--Documentation/networking/8139too.txt14
-rw-r--r--Documentation/networking/z8530drv.txt17
-rw-r--r--Documentation/pm.txt1
-rw-r--r--Documentation/s390/cds.txt2
-rw-r--r--Documentation/usb/bluetooth.txt44
-rw-r--r--Documentation/vm/locking33
-rw-r--r--Documentation/zorro.txt16
16 files changed, 570 insertions, 183 deletions
diff --git a/Documentation/Changes b/Documentation/Changes
index c12ed2e6d..abcb21c64 100644
--- a/Documentation/Changes
+++ b/Documentation/Changes
@@ -28,7 +28,10 @@ russkim perevodom dannogo documenta.
Visite <http://www2.adi.uam.es/~ender/tecnico/> para obtener la traducción
al español de este documento en varios formatos.
-Last updated: August 28, 2000
+Eine deutsche Version dieser Datei finden Sie unter
+<http://www.stefan-winter.de/Changes-2.4.0.txt>.
+
+Last updated: October 25, 2000
Chris Ricker (kaboom@gatech.edu or chris.ricker@genetics.utah.edu).
@@ -45,13 +48,13 @@ necessary on all systems; obviously, if you don't have any PCMCIA (PC
Card) hardware, for example, you probably needn't concern yourself
with pcmcia-cs.
-o Gnu C 2.7.2.3 # gcc --version
+o Gnu C 2.91.66 # gcc --version
o Gnu make 3.77 # make --version
o binutils 2.9.1.0.25 # ld -v
o util-linux 2.10o # kbdrate -v
-o modutils 2.3.15 # insmod -V
-o e2fsprogs 1.18 # tune2fs --version
-o pcmcia-cs 3.1.19 # cardmgr -V
+o modutils 2.3.18 # insmod -V
+o e2fsprogs 1.19 # tune2fs --version
+o pcmcia-cs 3.1.21 # cardmgr -V
o PPP 2.4.0 # pppd --version
o isdn4k-utils 3.1beta7 # isdnctrl 2>&1|grep version
@@ -61,13 +64,22 @@ Kernel compilation
GCC
---
-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.1.2 should also
-work. gcc 2.95 is known to have problems, and using pgcc for your kernel
-is just asking for trouble.
+The gcc version requirements may vary depending on the type of CPU in your
+computer. The next paragraph applies to users of x86 CPUs, but not
+necessarily to users of other CPUs. Users of other CPUs should obtain
+information about their gcc version requirements from another source.
+
+The recommended compiler for the kernel is egcs 1.1.2 (gcc 2.91.66), and it
+should be used when you need absolute stability. You may use gcc 2.95.2
+instead if you wish, although it may cause problems. Later versions of gcc
+have not received much testing for Linux kernel compilation, and there are
+almost certainly bugs (mainly, but not exclusively, in the kernel) that
+will need to be fixed in order to use these compilers. In any case, using
+pgcc instead of egcs or plain gcc is just asking for trouble.
+
+Note that gcc 2.7.2.3 is no longer a supported kernel compiler. The kernel
+no longer works around bugs in gcc 2.7.2.3 and, in fact, will refuse to
+be compiled with it.
In addition, please pay attention to compiler optimization. Anything
greater than -O2 may not be wise. Similarly, if you choose to use gcc-2.95
@@ -82,7 +94,7 @@ You will need Gnu make 3.77 or later to build the kernel.
Binutils
--------
-Linux on IA/32 has recently switched from using as86 to using gas for
+Linux on IA-32 has recently switched from using as86 to using gas for
assembling the 16-bit boot code, removing the need for as86 to compile
your kernel. This change does, however, mean that you need a recent
release of binutils.
@@ -242,12 +254,7 @@ Getting updated software
Compilers
*********
-gcc 2.7.2.3
------------
-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.1.2
+egcs 1.1.2 (gcc 2.91.66)
---------
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>
@@ -277,7 +284,7 @@ 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.15.tar.gz>
+o <ftp://ftp.kernel.org/pub/linux/utils/kernel/modutils/v2.3/modutils-2.3.18.tar.bz2>
Mkinitrd
--------
@@ -285,8 +292,8 @@ 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>
-o <http://web.mit.edu/tytso/www/linux/dist/e2fsprogs-1.18.src.rpm>
+o <ftp://download.sourceforge.net/pub/sourceforge/e2fsprogs/e2fsprogs-1.19.tar.gz>
+o <ftp://download.sourceforge.net/pub/sourceforge/e2fsprogs/e2fsprogs-1.19.src.rpm>
LVM toolset
-----------
@@ -294,7 +301,7 @@ o <http://linux.msede.com/lvm/>
Pcmcia-cs
---------
-o <ftp://pcmcia-cs.sourceforge.org/pub/pcmcia-cs/pcmcia-cs-3.1.19.tar.gz>
+o <ftp://pcmcia-cs.sourceforge.net/pub/pcmcia-cs/pcmcia-cs-3.1.21.tar.gz>
Jade
----
diff --git a/Documentation/Configure.help b/Documentation/Configure.help
index 73091c87b..390cc0ba0 100644
--- a/Documentation/Configure.help
+++ b/Documentation/Configure.help
@@ -1,4 +1,4 @@
-# Maintained by Axel Boldt (boldt@math.ucsb.edu)
+# Maintained by Axel Boldt (axel@uni-paderborn.de)
#
# This version of the Linux kernel configuration help texts
# corresponds to the kernel versions 2.3.x.
@@ -868,6 +868,10 @@ CONFIG_BLK_DEV_OPTI621
This is a driver for the OPTi 82C621 EIDE controller.
Please read the comments at the top of drivers/ide/opti621.c.
+ServerWorks OSB4 chipset support (EXPERIMENTAL)
+CONFIG_BLK_DEV_OSB4
+ This driver adds PIO/DMA support for the Serverworks OSB4 chipset
+
Intel PIIXn chipsets support
CONFIG_BLK_DEV_PIIX
This driver adds PIO mode setting and tuning for all PIIX IDE
@@ -938,7 +942,20 @@ CONFIG_BLK_DEV_SIS5513
available" as well.
Please read the comments at the top of drivers/ide/sis5513.c
-
+
+SLC90E66 chipset support
+CONFIG_BLK_DEV_SLC90E66
+ This driver ensures (U)DMA support for Victroy66 SouthBridges for
+ SMsC with Intel NorthBridges. This is an Ultra66 based chipset.
+ The nice thing about it is that you can mix Ultra/DMA/PIO devices
+ and it will handle timing cycles. Since this is an improved look-a-like
+ to the PIIX4 it should be a nice addition.
+
+ If you say Y here, you need to say Y to "Use DMA by default when
+ available" as well.
+
+ Please read the comments at the top of drivers/ide/slc90e66.c
+
Winbond SL82c105 support
CONFIG_BLK_DEV_SL82C105
If you have a Winbond SL82c105 IDE controller, say Y here to enable
@@ -2157,13 +2174,26 @@ CONFIG_ALPHA_LEGACY_START_ADDRESS
If you're using aboot 0.7 or later, the bootloader will examine
the ELF headers to determine where to transfer control. Unfortunately,
- most older bootloaders -- APB, or MILO -- hardcoded the kernel
+ most older bootloaders -- APB or MILO -- hardcoded the kernel
start address rather than examining the ELF headers, and the result
is a hard lockup.
Say Y if you have a broken bootloader. Say N if you do not, or
if you wish to run on Wildfire.
+Large VMALLOC support
+CONFIG_ALPHA_LARGE_VMALLOC
+ Process creation and other aspects of virtual memory management
+ can be streamlined if we restrict the kernel to one PGD for all
+ vmalloc allocations. This equates to about 8GB.
+
+ Under normal circumstances, this is so far and above what is needed
+ as to be laughable. However, there are certain applications (such
+ as benchmark-grade in-kernel web serving) that can make use of as
+ much vmalloc space as is available.
+
+ Say N unless you know you need gobs and gobs of vmalloc space.
+
Non-standard serial port support
CONFIG_SERIAL_NONSTANDARD
Say Y here if you have any non-standard serial boards -- boards
@@ -2387,6 +2417,30 @@ CONFIG_PCI
information about which PCI hardware does work under Linux and which
doesn't.
+PCI support
+CONFIG_PCI_INTEGRATOR
+ Find out whether you have a PCI motherboard. PCI is the name of a
+ bus system, i.e. the way the CPU talks to the other stuff inside
+ your box. Other bus systems are ISA, EISA, Microchannel (MCA) or
+ VESA. If you have PCI, say Y, otherwise N.
+
+ The PCI-HOWTO, available from
+ http://www.linuxdoc.org/docs.html#howto , contains valuable
+ information about which PCI hardware does work under Linux and which
+ doesn't.
+
+QSpan PCI
+CONFIG_PCI_QSPAN
+ Find out whether you have a PCI motherboard. PCI is the name of a
+ bus system, i.e. the way the CPU talks to the other stuff inside
+ your box. Other bus systems are ISA, EISA, Microchannel (MCA) or
+ VESA. If you have PCI, say Y, otherwise N.
+
+ The PCI-HOWTO, available from
+ http://www.linuxdoc.org/docs.html#howto , contains valuable
+ information about which PCI hardware does work under Linux and which
+ doesn't.
+
PCI access mode
CONFIG_PCI_GOBIOS
On PCI systems, the BIOS can be used to detect the PCI devices and
@@ -4571,6 +4625,30 @@ CONFIG_LLC
This is a Logical Link Layer protocol used for X.25 connections over
Ethernet, using ordinary Ethernet cards.
+
+Frame Diverter (EXPERIMENTAL)
+CONFIG_NET_DIVERT
+ The Frame Diverter allows you to divert packets from the
+ network, that are not aimed at the interface receiving it (in
+ promisc. mode). Typically, a Linux box setup as an ethernet bridge
+ with the Frames Diverter on, can do some *really* transparent www
+ caching using a Squid proxy for example.
+
+ This is very usefull when you don't want to change your router's
+ config (or if you simply don't have access to it).
+
+ The other possible usages of diverting Ethernet Frames are numberous:
+ - reroute smtp traffic to another interface
+ - traffic-shape certain network streams
+ - transparently proxy smtp connections
+ - etc...
+
+ For more informations, please refer to:
+ http://www.freshmeat.net/projects/etherdivert
+ http://perso.wanadoo.fr/magpie/EtherDivert.html
+
+ If unsure, say N
+
802.1d Ethernet Bridging
CONFIG_BRIDGE
If you say Y here, then your Linux box will be able to act as an
@@ -8124,6 +8202,11 @@ CONFIG_NE2K_PCI
say Y and read the Ethernet-HOWTO, available from
http://www.linuxdoc.org/docs.html#howto .
+ This driver also works for the following NE2000 clone cards:
+ RealTek RTL-8029 Winbond 89C940 Compex RL2000 KTI ET32P2
+ NetVin NV5000SC Via 86C926 SureCom NE34 Winbond
+ Holtek HT80232 Holtek HT80229
+
This driver is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module will be called ne2k-pci.o. If you want to compile it as a
@@ -8187,6 +8270,8 @@ CONFIG_RTL8129
read the Ethernet-HOWTO, available from
http://www.linuxdoc.org/docs.html#howto .
+ Note: the 8029 is a NE2000 PCI clone, you can use the NE2K-PCI driver.
+
If you want to compile this driver as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read Documentation/modules.txt. This is recommended.
@@ -9969,12 +10054,13 @@ CONFIG_USB_OHCI
The module will be called usb-ohci.o. If you want to compile it
as a module, say M here and read Documentation/modules.txt.
-USB Human Interface Device (HID) support
+USB Human Interface Device (full HID) support
CONFIG_USB_HID
- Say Y here if you want to connect keyboards, mice, joysticks,
- graphic tablets, or any other HID based devices to your
- computer via USB. More information is available:
- Documentation/usb/input.txt.
+ Say Y here if you want full HID support to connect keyboards,
+ mice, joysticks, graphic tablets, or any other HID based devices
+ to your computer via USB. You can't use this driver and the
+ HIDBP (Boot Protocol) keyboard and mouse drivers at the same time.
+ More information is available: Documentation/usb/input.txt.
If unsure, say Y.
@@ -9983,11 +10069,11 @@ CONFIG_USB_HID
The module will be called hid.o. If you want to compile it as a
module, say M here and read Documentation/modules.txt.
-USB HIDBP Keyboard support
+USB HIDBP Keyboard (basic) support
CONFIG_USB_KBD
Say Y here if you don't want to use the generic HID driver for your
USB keyboard and prefer to use the keyboard in its limited Boot
- Protocol mode. This driver is much smaller than the HID one.
+ Protocol mode instead. This driver is much smaller than the HID one.
This code is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
@@ -9996,11 +10082,11 @@ CONFIG_USB_KBD
If unsure, say N.
-USB HIDBP Mouse support
+USB HIDBP Mouse (basic) support
CONFIG_USB_MOUSE
Say Y here if you don't want to use the generic HID driver for your
USB mouse and prefer to use the mouse in its limited Boot Protocol
- mode. This driver is much smaller than the HID one.
+ mode instead. This driver is much smaller than the HID one.
This code is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
@@ -14259,6 +14345,25 @@ CONFIG_SOUND_TRIDENT
for Trident 4Dwave. PCI ID 1039:7018 stands for SiS7018. PCI ID
10B9:5451 stands for ALi5451.
+ This driver supports S/PDIF in/out (record/playback) for ALi 5451
+ embedded in ALi M1535+ and M1535D+. Note that they aren't all
+ enabled by default; you can enable them by saying Y to "/proc file
+ system support" and "Sysctl support", and after the /proc file
+ system has been mounted, executing the command
+
+ command what is enabled
+
+ echo 0>/proc/ALi5451 pcm out is also set to S/PDIF out. (Default).
+
+ echo 1>/proc/ALi5451 use S/PDIF out to output pcm data.
+
+ echo 2>/proc/ALi5451 use S/PDIF out to output non-pcm data.(AC3...).
+
+ echo 3>/proc/ALi5451 record from Ac97 in(MIC, Line in...). (Default).
+
+ echo 4>/proc/ALi5451 no matter Ac97 settings, record from S/PDIF in.
+
+
This driver differs slightly from OSS/Free, so PLEASE READ the
comments at the top of driver/sound/trident.c
@@ -15094,18 +15199,27 @@ CONFIG_RMW_INSNS
really know what you are doing, say N. Try Y only if you're quite
adventurous.
-Amiga AutoConfig Identification
+Zorro support
CONFIG_ZORRO
- This enables support for automatic identification of Amiga expansion
- cards that obey the AutoConfig(tm) specification.
- Say Y if you want your expansion cards to be identified on bootup;
- it will enlarge your kernel by about 10 KB. The identification
- information is then also available through /proc/zorro (say Y to
- "/proc file system support"!). Read Documentation/zorro.txt for more
- information.
+ This enables support for the Zorro bus in the Amiga. If you have
+ expansion cards in your Amiga that conform to the Amiga
+ AutoConfig(tm) specification, say Y, otherwise N. Note that even
+ expansion cards that do not fit in the Zorro slots but fit in e.g.
+ the CPU slot may fall in this category, so you have to say Y to let
+ Linux use these.
+
+Zorro device name database
+CONFIG_ZORRO_NAMES
+ By default, the kernel contains a database of all known Zorro device
+ names to make the information in /proc/iomem comprehensible to the
+ user. This database increases the size of the kernel image by about
+ 15KB, but it gets freed after the system boots up, so it doesn't
+ take up kernel memory. Anyway, if you are building an installation
+ floppy or kernel for an embedded system where kernel image size
+ really matters, you can disable this feature and you'll get device
+ ID numbers instead of names.
- Note that even if you say N here, you can still use your expansion
- cards. If in doubt, say Y.
+ When in doubt, say Y.
Amiga 1200/600 PCMCIA support (EXPERIMENTAL)
CONFIG_AMIGA_PCMCIA
@@ -16684,6 +16798,119 @@ CONFIG_DISPLAY7SEG
another UltraSPARC-IIi-cEngine boardset with a 7-segment display,
you should say N to this option.
+IA-64 system type
+CONFIG_IA64_GENERIC
+ This selects the system type of your hardware. A "generic" kernel
+ will run on any supported IA-64 system. However, if you configure
+ a kernel for your specific system, it will be faster and smaller.
+
+ To find out what type of IA-64 system you have, you may want to
+ check the IA-64 Linux web site at http://www.linux-ia64.org/.
+ As of the time of this writing, most hardware is DIG compliant,
+ so the "DIG-compliant" option is usually the right choice.
+
+ HP-simulator For the HP simulator (http://software.hp.com/ia64linux/).
+ SN1-simulator For the SGI SN1 simulator.
+ DIG-compliant For DIG ("Developer's Interface Guide") compliant system.
+
+ If you don't know what to do, choose "generic".
+
+Kernel page size
+CONFIG_IA64_PAGE_SIZE_4KB
+
+ This lets you select the page size of the kernel. For best IA-64
+ performance, a page size of 8KB or 16KB is recommended. For best
+ IA-32 compatibility, a page size of 4KB should be selected (the vast
+ majority of IA-32 binaries work perfectly fine with a larger page
+ size). For Itanium systems, do NOT chose a page size larger than
+ 16KB.
+
+ 4KB For best IA-32 compatibility
+ 8KB For best IA-64 performance
+ 16KB For best IA-64 performance
+ 64KB Not for Itanium.
+
+ If you don't know what to do, choose 8KB.
+
+Enable Itanium A-step specific code
+CONFIG_ITANIUM_ASTEP_SPECIFIC
+ Select this option to build a kernel for an Itanium prototype system
+ with an A-step CPU. You have an A-step CPU if the "revision" field in
+ /proc/cpuinfo is 0.
+
+Enable Itanium A1-step specific code
+CONFIG_ITANIUM_A1_SPECIFIC
+ Select this option to build a kernel for an Itanium prototype system
+ with an A1-step CPU. If you don't know whether you have an A1-step CPU,
+ you probably don't and you can answer "no" here.
+
+Enable Itanium B-step specific code
+CONFIG_ITANIUM_BSTEP_SPECIFIC
+ Select this option to build a kernel for an Itanium prototype system
+ with a B-step CPU. You have a B-step CPU if the "revision" field in
+ /proc/cpuinfo has a value in the range from 1 to 4.
+
+Enable Itanium B0-step specific code
+CONFIG_ITANIUM_B0_SPECIFIC
+ Select this option to bild a kernel for an Itanium prototype system
+ with a B0-step CPU. You have a B0-step CPU if the "revision" field in
+ /proc/cpuinfo is 1.
+
+Force interrupt redirection
+CONFIG_IA64_HAVE_IRQREDIR
+ Select this option if you know that your system has the ability to
+ redirect interrupts to different CPUs. Select N here if you're
+ unsure.
+
+Enable use of global TLB purge instruction (ptc.g)
+CONFIG_ITANIUM_PTCG
+ Say Y here if you want the kernel to use the IA-64 "ptc.g"
+ instruction to flush the TLB on all CPUs. Select N here if
+ you're unsure.
+
+Enable SoftSDV hacks
+CONFIG_IA64_SOFTSDV_HACKS
+ Say Y here to enable hacks to make the kernel work on the Intel
+ SoftSDV simulator. Select N here if you're unsure.
+
+Enable AzusA hacks
+CONFIG_IA64_AZUSA_HACKS
+ Say Y here to enable hacks to make the kernel work on the NEC
+ AzusA platform. Select N here if you're unsure.
+
+Force socket buffers below 4GB?
+CONFIG_SKB_BELOW_4GB
+ Most of today's network interface cards (NICs) support DMA to
+ the low 32 bits of the address space only. On machines with
+ more then 4GB of memory, this can cause the system to slow
+ down if there is no I/O TLB hardware. Turning this option on
+ avoids the slow-down by forcing socket buffers to be allocated
+ from memory below 4GB. The downside is that your system could
+ run out of memory below 4GB before all memory has been used up.
+ If you're unsure how to answer this question, answer Y.
+
+Enable IA-64 Machine Check Abort
+CONFIG_IA64_MCA
+ Say Y here to enable machine check support for IA-64. If you're
+ unsure, answer Y.
+
+Performance monitor support
+CONFIG_PERFMON
+ Selects whether support for the IA-64 performance monitor hardware
+ is included in the kernel. This makes some kernel data-structures a
+ little bigger and slows down execution a bit, but it is still
+ usually a good idea to turn this on. If you're unsure, say N.
+
+/proc/pal support
+CONFIG_IA64_PALINFO
+ If you say Y here, you are able to get PAL (Processor Abstraction
+ Layer) information in /proc/pal. This contains useful information
+ about the processors in your systems, such as cache and TLB sizes
+ and the PAL firmware version in use.
+
+ To use this option, you have to check that the "/proc file system
+ support" (CONFIG_PROC_FS) is enabled, too.
+
#
# A couple of things I keep forgetting:
# capitalize: AppleTalk, Ethernet, DOS, DMA, FAT, FTP, Internet,
diff --git a/Documentation/DocBook/via-audio.tmpl b/Documentation/DocBook/via-audio.tmpl
index f1fc19a5d..039eff979 100644
--- a/Documentation/DocBook/via-audio.tmpl
+++ b/Documentation/DocBook/via-audio.tmpl
@@ -56,15 +56,16 @@
<chapter id="intro">
<title>Introduction</title>
<para>
- The Via VT82C686A and VT82C686A "super southbridge" chips contain
- AC97-compatible audio logic which features dual full-duplex 16-bit stereo
- PCM sound channels, plus a third PCM channel intended for use
+ The Via VT82C686A "super southbridge" chips contain
+ AC97-compatible audio logic which features dual 16-bit stereo
+ PCM sound channels (full duplex), plus a third PCM channel intended for use
in hardware-assisted FM synthesis.
</para>
<para>
The current Linux kernel audio driver for this family of chips
- supports audio playback, but recording and hardware-assisted
- FM support features are not yet available.
+ supports audio playback and recording, but hardware-assisted
+ FM features, and hardware buffer direct-access (mmap)
+ support are not yet available.
</para>
<para>
This driver supports any Linux kernel version after 2.3.50.
@@ -148,13 +149,6 @@
<title>Known Bugs And Assumptions</title>
<para>
<variablelist>
- <varlistentry><term>Recording support</term>
- <listitem>
- <para>
- Recording support is currently missing.
- </para>
- </listitem></varlistentry>
-
<varlistentry><term>MMAP support</term>
<listitem>
<para>
@@ -188,17 +182,6 @@
</para>
</listitem></varlistentry>
- <varlistentry><term>Broken apps</term>
- <listitem>
- <para>
- Applications which attempt to open the sound device in read/write
- mode (O_RDWR) will fail. This is incorrect OSS behavior, but since
- this driver will eventually support recording as well as playback,
- we will be able to (in the future) support even broken programs which
- unconditionally use O_RDWR.
- </para>
- </listitem></varlistentry>
-
</variablelist>
</para>
@@ -221,8 +204,8 @@
<title>Random Notes</title>
<para>
Two /proc pseudo-files provide diagnostic information. This is generally
- not useful to most users. Power users can disable VIA_PROC_FS macro in the
- driver source code, and remove the /proc support code. In any case, once
+ not useful to most users. Power users can disable CONFIG_SOUND_VIA82CXXX_PROCFS,
+ and remove the /proc support code. Once
version 2.0.0 is released, the /proc support code will be disabled by
default. Available /proc pseudo-files:
</para>
@@ -236,16 +219,6 @@
and device ids are not examined.
</para>
<para>
- Only supports a single sound chip, as this is a motherboard chipset.
- Some architecture remains for multiple cards, feel free to submit
- a patch to clean some of that up.
- </para>
- <para>
- No consideration for SMP, this chipset is not known to be found on
- any SMP motherboards. However, spin_locks must be used anyway in order
- to handle interrupts correctly.
- </para>
- <para>
GNU indent formatting options: -kr -i8 -pcs
</para>
<para>
@@ -265,6 +238,159 @@
<chapter id="changelog">
<title>Driver ChangeLog</title>
+<sect1 id="version1114"><title>
+Version 1.1.14
+</title>
+ <itemizedlist spacing=compact>
+ <listitem>
+ <para>
+ Use VM_RESERVE when available, to eliminate unnecessary page faults.
+ </para>
+ </listitem>
+ </itemizedlist>
+</sect1>
+
+<sect1 id="version1112"><title>
+Version 1.1.12
+</title>
+ <itemizedlist spacing=compact>
+ <listitem>
+ <para>
+ mmap bug fixes from Linus.
+ </para>
+ </listitem>
+ </itemizedlist>
+</sect1>
+
+<sect1 id="version1111"><title>
+Version 1.1.11
+</title>
+ <itemizedlist spacing=compact>
+ <listitem>
+ <para>
+ Many more bug fixes. mmap enabled by default, but may still be buggy.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Uses new and spiffy method of mmap'ing the DMA buffer, based
+ on a suggestion from Linus.
+ </para>
+ </listitem>
+ </itemizedlist>
+</sect1>
+
+<sect1 id="version1110"><title>
+Version 1.1.10
+</title>
+ <itemizedlist spacing=compact>
+ <listitem>
+ <para>
+ Many bug fixes. mmap enabled by default, but may still be buggy.
+ </para>
+ </listitem>
+ </itemizedlist>
+</sect1>
+
+<sect1 id="version119"><title>
+Version 1.1.9
+</title>
+ <itemizedlist spacing=compact>
+ <listitem>
+ <para>
+ Redesign and rewrite audio playback implementation. (faster and smaller, hopefully)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Implement recording and full duplex (DSP_CAP_DUPLEX) support.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Make procfs support optional.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Quick interrupt status check, to lessen overhead in interrupt
+ sharing situations.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Add mmap(2) support. Disabled for now, it is still buggy and experimental.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Surround all syscalls with a semaphore for cheap and easy SMP protection.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix bug in channel shutdown (hardware channel reset) code.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Remove unnecessary spinlocks (better performance).
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Eliminate "unknown AFMT" message by using a different method
+ of selecting the best AFMT_xxx sound sample format for use.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Support for realtime hardware pointer position reporting
+ (DSP_CAP_REALTIME, SNDCTL_DSP_GETxPTR ioctls)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Support for capture/playback triggering
+ (DSP_CAP_TRIGGER, SNDCTL_DSP_SETTRIGGER ioctls)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ SNDCTL_DSP_SETDUPLEX and SNDCTL_DSP_POST ioctls now handled.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Rewrite open(2) and close(2) logic to allow only one user at
+ a time. All other open(2) attempts will sleep until they succeed.
+ FIXME: open(O_RDONLY) and open(O_WRONLY) should be allowed to succeed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Reviewed code to ensure that SMP and multiple audio devices
+ are fully supported.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+</sect1>
+
<sect1 id="version118"><title>
Version 1.1.8
</title>
diff --git a/Documentation/IO-mapping.txt b/Documentation/IO-mapping.txt
index 78253e5b1..ad7c21c83 100644
--- a/Documentation/IO-mapping.txt
+++ b/Documentation/IO-mapping.txt
@@ -141,7 +141,7 @@ For such memory, you can do things like
* read first 32 bits from ISA memory at 0xC0000, aka
* C000:0000 in DOS terms
*/
- unsigned int signature = readl(0xC0000);
+ unsigned int signature = isa_readl(0xC0000);
- remapping and writing:
/*
diff --git a/Documentation/cachetlb.txt b/Documentation/cachetlb.txt
index 3d003463d..952dbc652 100644
--- a/Documentation/cachetlb.txt
+++ b/Documentation/cachetlb.txt
@@ -284,6 +284,12 @@ Here is the new interface:
user space shared/writable mappings of this page potentially
exist, this routine is called.
+ NOTE: This routine need only be called for page cache pages
+ which can potentially ever be mapped into the address
+ space of a user process. So for example, VFS layer code
+ handling vfs symlinks in the page cache need not call
+ this interface at all.
+
The phrase "kernel writes to a page cache page" means,
specifically, that the kernel executes store instructions
that dirty data in that page at the page->virtual mapping
diff --git a/Documentation/exception.txt b/Documentation/exception.txt
index 6adc97ba1..f1d436993 100644
--- a/Documentation/exception.txt
+++ b/Documentation/exception.txt
@@ -284,3 +284,9 @@ get_user macro actually returns a value: 0, if the user access was
successful, -EFAULT on failure. Our original code did not test this
return value, however the inline assembly code in get_user tries to
return -EFAULT. GCC selected EAX to return this value.
+
+NOTE:
+Due to the way that the exception table is built and needs to be ordered,
+only use exceptions for code in the .text section. Any other section
+will cause the exception table to not be sorted correctly, and the
+exceptions will fail.
diff --git a/Documentation/ia64/README b/Documentation/ia64/README
index 738572a80..7163ae745 100644
--- a/Documentation/ia64/README
+++ b/Documentation/ia64/README
@@ -1,6 +1,6 @@
- Linux kernel release 2.3.xx for the IA-64 Platform
+ Linux kernel release 2.4.xx for the IA-64 Platform
- These are the release notes for Linux version 2.3 for IA-64
+ These are the release notes for Linux version 2.4 for IA-64
platform. This document provides information specific to IA-64
ONLY, to get additional information about the Linux kernel also
read the original Linux README provided with the kernel.
@@ -31,46 +31,13 @@ COMPILING the kernel:
IA-64 SPECIFICS
- - Security related issues:
-
- o mmap needs to check whether mapping would overlap with the
- address-space hole in a region or whether the mapping would be
- across regions. In both cases, mmap should fail.
-
- o ptrace is a huge security hole right now as it does not reject
- writing to security sensitive bits (such as the PSR!).
-
- General issues:
- o Kernel modules aren't supported yet.
-
- o For non-RT signals, siginfo isn't passed through from the kernel
- to the point where the signal is actually delivered. Also, we
- should make sure the siginfo data is compliant with the UNIX
- ABI.
-
o Hardly any performance tuning has been done. Obvious targets
- include the library routines (memcpy, IP checksum, etc.). Less
+ include the library routines (IP checksum, etc.). Less
obvious targets include making sure we don't flush the TLB
- needlessly, etc. Also, the TLB handlers should probably try to
- do a speculative load from the virtually mapped linear page
- table and only if that fails fall back on walking the page table
- tree.
+ needlessly, etc.
- o Discontiguous large memory support; memory above 4GB will be
- discontiguous since the 4GB-64MB is reserved for firmware and I/O
- space.
-
- o Correct mapping for PAL runtime code; PAL code needs to be
- mapped by a TR.
-
- o Make current IRQ/IOSAPIC handling closer to IA32 such as,
- disable/enable interrupts, use of INPROGRESS flag etc.
-
- o clone system call implementation; needs to setup proper backing
- store
-
o SMP locks cleanup/optimization
- o IA32 support. Currently experimental. It mostly works but
- there are problems with some dynamically loaded programs.
+ o IA32 support. Currently experimental. It mostly works.
diff --git a/Documentation/isapnp.txt b/Documentation/isapnp.txt
index 4cb7a9b59..3de97b275 100644
--- a/Documentation/isapnp.txt
+++ b/Documentation/isapnp.txt
@@ -1,5 +1,5 @@
ISA Plug & Play support by Jaroslav Kysela <perex@suse.cz>
-=========================================================
+==========================================================
Interface /proc/isapnp
======================
@@ -13,7 +13,7 @@ Write commands:
---------------
With the write interface you can simply activate or modify the configuration
-for ISA Plug & Play devices. It is mainly useable for drivers which don't
+for ISA Plug & Play devices. It is mainly useable for drivers which has not
use the ISA Plug & Play kernel support yet.
card <idx> <vendor> - select PnP device by vendor identification
@@ -33,8 +33,8 @@ poked <reg> <value> - poke configuration dword to selected register
Explanation:
- variable <idx> begins with zero
- variable <CSN> begins with one
- - <vendor> is in form 'PNP0000'
- - <logdev> is in form 'PNP0000'
+ - <vendor> is in format 'PNP0000'
+ - <logdev> is in format 'PNP0000'
Example:
@@ -54,6 +54,7 @@ port 0 0x240
activate
EOF
+
Information for developers
==========================
@@ -92,7 +93,7 @@ callback with appropriate information.
Example for ids parameter initialization:
-static struct isapnp_card_id ids[] __devinitdata = {
+static struct isapnp_card_id card_ids[] __devinitdata = {
{
ISAPNP_CARD_ID('A','D','V', 0x550a),
devs: {
@@ -105,6 +106,25 @@ static struct isapnp_card_id ids[] __devinitdata = {
ISAPNP_CARD_END,
}
};
+ISAPNP_CARD_TABLE(card_ids);
+
+extern int isapnp_probe_devs(const struct isapnp_device_id *ids,
+ int (*probe)(struct pci_bus *card,
+ const struct isapnp_device_id *id));
+
+
+This function is a helper for drivers which requires to use one
+device from an ISA PnP card. For each matched devices is called the probe
+callback with appropriate information.
+
+Example for ids parameter initialization:
+
+static struct isapnp_device_id device_ids[] __devinitdata = {
+ { ISAPNP_DEVICE_SINGLE('E','S','S', 0x0968, 'E','S','S', 0x0968), },
+ { ISAPNP_DEVICE_SINGLE_END, }
+};
+MODULE_DEVICE_TABLE(isapnp, device_ids);
+
ISA PnP configuration
=====================
@@ -157,6 +177,8 @@ Example (game port initialization)
NULL);
if (!dev)
return -ENODEV;
+ if (dev->active)
+ return -EBUSY;
if (dev->prepare(dev)<0)
return -EAGAIN;
if (!(dev->resource[0].flags & IORESOURCE_IO))
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt
index 206272a47..13a663e3e 100644
--- a/Documentation/kbuild/makefiles.txt
+++ b/Documentation/kbuild/makefiles.txt
@@ -341,11 +341,6 @@ architecture-specific values.
# arch/i386/Makefile
- # only work around strength reduction bug(s) on older gcc versions
- CFLAGS += $(shell if ! $(CC) -march=i486 -S -o /dev/null \
- -xc /dev/null >/dev/null 2>&1; \
- then echo "-fno-strength-reduce"; fi)
-
# prevent gcc from keeping the stack 16 byte aligned
CFLAGS += $(shell if $(CC) -mpreferred-stack-boundary=2 \
-S -o /dev/null -xc /dev/null >/dev/null 2>&1; \
@@ -356,21 +351,15 @@ architecture-specific values.
# arch/i386/Makefile
ifdef CONFIG_M386
- CFLAGS += $(shell if $(CC) -march=i386 -S -o /dev/null \
- -xc /dev/null >/dev/null 2>&1; \
- then echo "-march=i386"; else echo "-m386"; fi)
+ CFLAGS += -march=i386
endif
ifdef CONFIG_M486
- CFLAGS += $(shell if $(CC) -march=i486 -S -o /dev/null \
- -xc /dev/null >/dev/null 2>&1; \
- then echo "-march=i486"; else echo "-m486"; fi)
+ CFLAGS += -march=i486
endif
ifdef CONFIG_M586
- CFLAGS += $(shell if $(CC) -march=i586 -S -o /dev/null \
- -xc /dev/null >/dev/null 2>&1; \
- then echo "-march=i586"; fi)
+ CFLAGS += -march=i586
endif
Some arch Makefiles redefine the compilation commands in order
diff --git a/Documentation/networking/8139too.txt b/Documentation/networking/8139too.txt
index 1c5c8afc9..4a045bc48 100644
--- a/Documentation/networking/8139too.txt
+++ b/Documentation/networking/8139too.txt
@@ -180,6 +180,20 @@ suggestions welcome) (WIP)
Change History
--------------
+Version 0.9.11 - October 28, 2000
+
+* Do not fail when PIO and MMIO region lengths do not match.
+ (They don't on some CardBus models, at least)
+* Sanity check Rx packet status and size (Tobias)
+* When handling a Tx timeout, disable Tx ASAP if not already.
+* Do not inline Tx interrupt handler (better register usage)
+* Handle dirty_tx signed integer wrap
+* Do not abort Rx processing on lack of memory, keep going
+ until the current Rx ring is completely handling. (Tobias)
+* Clean up rtl8139_close
+* Whitespace correction for dev_kfree_skb_irq call
+
+
Version 0.9.10 - September 12, 2000
* Never wrap an Rx packet (faster Rx interrupt handling)
diff --git a/Documentation/networking/z8530drv.txt b/Documentation/networking/z8530drv.txt
index c74fb4253..60f453d18 100644
--- a/Documentation/networking/z8530drv.txt
+++ b/Documentation/networking/z8530drv.txt
@@ -4,17 +4,14 @@ full package from:
Internet:
=========
-1. ftp://ftp.ccac.rwth-aachen.de/pub/jr/z8530drv-utils-3.0-1.tar.gz
+1. ftp://ftp.ccac.rwth-aachen.de/pub/jr/z8530drv-utils_3.0-3.tar.gz
-2. ftp://ftp.pspt.fi/pub/ham/linux/ax25/z8530drv-utils-3.0-1.tar.gz
-
-3. ftp://ftp.ucsd.edu/hamradio/packet/tcpip/incoming/z8530drv-utils-3.0.tar.gz
- If you can't find it there, try .../tcpip/linux/z8530drv-utils-3.0.tar.gz
+2. ftp://ftp.pspt.fi/pub/ham/linux/ax25/z8530drv-utils_3.0-3.tar.gz
Please note that the information in this document may be hopelessly outdated.
A new version of the documentation, along with links to other important
Linux Kernel AX.25 documentation and programs, is available on
-http://www.rat.de/jr
+http://yaina.de/jreuter
-----------------------------------------------------------------------------
@@ -23,7 +20,7 @@ http://www.rat.de/jr
********************************************************************
- (c) 1993,1998 by Joerg Reuter DL1BKE <jreuter@poboxes.com>
+ (c) 1993,2000 by Joerg Reuter DL1BKE <jreuter@yaina.de>
portions (c) 1993 Guido ten Dolle PE1NNZ
@@ -655,6 +652,6 @@ Many thanks to Linus Torvalds and Alan Cox for including the driver
in the Linux standard distribution and their support.
Joerg Reuter ampr-net: dl1bke@db0pra.ampr.org
- AX-25 : DL1BKE @ DB0ACH.#NRW.DEU.EU
- Internet: jreuter@poboxes.com
- WWW : http://www.rat.de/jr/
+ AX-25 : DL1BKE @ DB0ABH.#BAY.DEU.EU
+ Internet: jreuter@yaina.de
+ WWW : http://yaina.de/jreuter
diff --git a/Documentation/pm.txt b/Documentation/pm.txt
index 1e78926cd..205f9666f 100644
--- a/Documentation/pm.txt
+++ b/Documentation/pm.txt
@@ -261,7 +261,6 @@ Q: Who do I contact for additional information about
enabling power management for my specific driver/device?
ACPI4Linux mailing list: acpi@phobos.fs.tum.de
-Linux ACPI maintainer: andy_henroid@yahoo.com
System Interface
----------------
diff --git a/Documentation/s390/cds.txt b/Documentation/s390/cds.txt
index 99d514d4c..1de558718 100644
--- a/Documentation/s390/cds.txt
+++ b/Documentation/s390/cds.txt
@@ -419,7 +419,7 @@ therefore not rely on this parameter on function entry.
free_irq() - Release Device Ownership
A device driver may call free_irq() to release ownership of a previously
-aquired device.
+acquired device.
void free_irq( unsigned int irq,
void *dev_id);
diff --git a/Documentation/usb/bluetooth.txt b/Documentation/usb/bluetooth.txt
new file mode 100644
index 000000000..774f5d383
--- /dev/null
+++ b/Documentation/usb/bluetooth.txt
@@ -0,0 +1,44 @@
+INTRODUCTION
+
+ The USB Bluetooth driver supports any USB Bluetooth device.
+ It currently works well with the Linux USB Bluetooth stack from Axis
+ (available at http://developer.axis.com/software/bluetooth/ ) and
+ has been rumored to work with other Linux USB Bluetooth stacks.
+
+
+CONFIGURATION
+
+ Currently the driver can handle up to 256 different USB Bluetooth
+ devices at once.
+
+ If you are not using devfs:
+ The major number that the driver uses is 216 so to use the driver,
+ create the following nodes:
+ mknod /dev/ttyUB0 c 216 0
+ mknod /dev/ttyUB1 c 216 1
+ mknod /dev/ttyUB2 c 216 2
+ mknod /dev/ttyUB3 c 216 3
+ .
+ .
+ .
+ mknod /dev/ttyUB254 c 216 254
+ mknod /dev/ttyUB255 c 216 255
+
+ If you are using devfs:
+ The devices supported by this driver will show up as
+ /dev/usb/ttub/{0,1,...}
+
+ When the device is connected and recognized by the driver, the driver
+ will print to the system log, which node the device has been bound to.
+
+
+CONTACT:
+
+ If anyone has any problems using this driver, please contact me, or
+ join the Linux-USB mailing list (information on joining the mailing
+ list, as well as a link to its searchable archive is at
+ http://www.linux-usb.org/ )
+
+
+Greg Kroah-Hartman
+greg@kroah.com
diff --git a/Documentation/vm/locking b/Documentation/vm/locking
index 125cde7cd..f2e8e6c75 100644
--- a/Documentation/vm/locking
+++ b/Documentation/vm/locking
@@ -4,7 +4,7 @@ The intent of this file is to have an uptodate, running commentary
from different people about how locking and synchronization is done
in the Linux vm code.
-vmlist_access_lock/vmlist_modify_lock
+page_table_lock
--------------------------------------
Page stealers pick processes out of the process pool and scan for
@@ -12,10 +12,10 @@ the best process to steal pages from. To guarantee the existence
of the victim mm, a mm_count inc and a mmdrop are done in swap_out().
Page stealers hold kernel_lock to protect against a bunch of races.
The vma list of the victim mm is also scanned by the stealer,
-and the vmlist_lock is used to preserve list sanity against the
+and the page_table_lock is used to preserve list sanity against the
process adding/deleting to the list. This also guarantees existence
of the vma. Vma existence is not guaranteed once try_to_swap_out()
-drops the vmlist lock. To guarantee the existence of the underlying
+drops the page_table_lock. To guarantee the existence of the underlying
file structure, a get_file is done before the swapout() method is
invoked. The page passed into swapout() is guaranteed not to be reused
for a different purpose because the page reference count due to being
@@ -32,19 +32,19 @@ you must hold mmap_sem to guard against clones doing mmap/munmap/faults,
(ie all vm system calls and faults), and from ptrace, swapin due to
swap deletion etc.
2. To modify the vmlist (add/delete or change fields in an element),
-you must also hold vmlist_modify_lock, to guard against page stealers
+you must also hold page_table_lock, to guard against page stealers
scanning the list.
3. To scan the vmlist (find_vma()), you must either
a. grab mmap_sem, which should be done by all cases except
page stealer.
or
- b. grab vmlist_access_lock, only done by page stealer.
-4. While holding the vmlist_modify_lock, you must be able to guarantee
+ b. grab page_table_lock, only done by page stealer.
+4. While holding the page_table_lock, you must be able to guarantee
that no code path will lead to page stealing. A better guarantee is
to claim non sleepability, which ensures that you are not sleeping
for a lock, whose holder might in turn be doing page stealing.
-5. You must be able to guarantee that while holding vmlist_modify_lock
-or vmlist_access_lock of mm A, you will not try to get either lock
+5. You must be able to guarantee that while holding page_table_lock
+or page_table_lock of mm A, you will not try to get either lock
for mm B.
The caveats are:
@@ -52,7 +52,7 @@ The caveats are:
The update of mmap_cache is racy (page stealer can race with other code
that invokes find_vma with mmap_sem held), but that is okay, since it
is a hint. This can be fixed, if desired, by having find_vma grab the
-vmlist lock.
+page_table_lock.
Code that add/delete elements from the vmlist chain are
@@ -72,23 +72,16 @@ in some cases it is not really needed. Eg, vm_start is modified by
expand_stack(), it is hard to come up with a destructive scenario without
having the vmlist protection in this case.
-The vmlist lock nests with the inode i_shared_lock and the kmem cache
+The page_table_lock nests with the inode i_shared_lock and the kmem cache
c_spinlock spinlocks. This is okay, since code that holds i_shared_lock
never asks for memory, and the kmem code asks for pages after dropping
-c_spinlock. The vmlist lock also nests with pagecache_lock and
+c_spinlock. The page_table_lock also nests with pagecache_lock and
pagemap_lru_lock spinlocks, and no code asks for memory with these locks
held.
-The vmlist lock is grabbed while holding the kernel_lock spinning monitor.
+The page_table_lock is grabbed while holding the kernel_lock spinning monitor.
-The vmlist lock can be a sleeping or spin lock. In either case, care
-must be taken that it is not held on entry to the driver methods, since
-those methods might sleep or ask for memory, causing deadlocks.
-
-The current implementation of the vmlist lock uses the page_table_lock,
-which is also the spinlock that page stealers use to protect changes to
-the victim process' ptes. Thus we have a reduction in the total number
-of locks.
+The page_table_lock is a spin lock.
swap_list_lock/swap_device_lock
-------------------------------
diff --git a/Documentation/zorro.txt b/Documentation/zorro.txt
index ed77a047c..a56e2c485 100644
--- a/Documentation/zorro.txt
+++ b/Documentation/zorro.txt
@@ -9,7 +9,7 @@ Last revised: February 27, 2000
---------------
The Zorro bus is the bus used in the Amiga family of computers. Thanks to
-AutoConfig(tm), it's is 100% Plug-and-Play.
+AutoConfig(tm), it's 100% Plug-and-Play.
There are two types of Zorro busses, Zorro II and Zorro III:
@@ -32,7 +32,6 @@ for the board with Zorro ID `ZORRO_PROD_xxx' looks like:
while ((z = zorro_find_device(ZORRO_PROD_xxx, z))) {
if (!zorro_request_region(z->resource.start+MY_START, MY_SIZE,
"My explanation"))
- strcpy(z->name, "My board name");
...
}
@@ -94,16 +93,7 @@ The treatment of these regions depends on the type of Zorro space:
iounmap(virt_addr);
-5. Zorro Device Naming
-----------------------
-
-Since we think generic device naming is something for userspace (zorroutils),
-we don't keep a Zorro device name database in the kernel.
-However, device drivers are allowed to store the expansion board name in struct
-zorro_dev.
-
-
-6. References
+5. References
-------------
linux/include/linux/zorro.h
@@ -111,6 +101,6 @@ linux/include/linux/ioport.h
linux/include/asm-m68k/io.h
linux/include/asm-m68k/amigahw.h
linux/include/asm-ppc/io.h
-linux/driver/zorro
+linux/drivers/zorro
/proc/bus/zorro