mirror of https://github.com/tLDP/LDP
2552 lines
85 KiB
Plaintext
2552 lines
85 KiB
Plaintext
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
|
||
|
||
<article>
|
||
<!-- Header -->
|
||
|
||
<articleinfo>
|
||
|
||
<!-- Title information -->
|
||
|
||
<title>Token-Ring mini-HOWTO</title>
|
||
<author>
|
||
<firstname>Mike</firstname>
|
||
<surname>Phillips</surname>
|
||
<affiliation>
|
||
<address>
|
||
<email>mikep@linuxtr.net</email>
|
||
</address>
|
||
</affiliation>
|
||
</author>
|
||
<author>
|
||
<firstname>Tom</firstname>
|
||
<surname>Gall</surname>
|
||
<affiliation>
|
||
<address>
|
||
<email>tom_gall@vnet.ibm.com</email>
|
||
</address>
|
||
</affiliation>
|
||
</author>
|
||
<author>
|
||
<firstname>Mike</firstname>
|
||
<surname>Eckhoff</surname>
|
||
</author>
|
||
|
||
<revhistory>
|
||
<revision>
|
||
<revnumber>5.00</revnumber>
|
||
<date>2002-01-23</date>
|
||
<authorinitials>mlp</authorinitials>
|
||
<revremark>
|
||
Updated to reflect the current state of Token Ring with Linux
|
||
</revremark>
|
||
</revision>
|
||
<revision>
|
||
<revnumber>4.3</revnumber>
|
||
<date>29 March 2000</date>
|
||
<authorinitials>tg</authorinitials>
|
||
<revremark>
|
||
Brought up to date.
|
||
</revremark>
|
||
</revision>
|
||
<revision>
|
||
<revnumber>4.1</revnumber>
|
||
<date>7 January 1998</date>
|
||
<authorinitials>me</authorinitials>
|
||
<revremark>
|
||
v4.1 released by Mike
|
||
</revremark>
|
||
</revision>
|
||
</revhistory>
|
||
|
||
<abstract>
|
||
<indexterm>
|
||
<primary>template</primary>
|
||
</indexterm>
|
||
|
||
<para>
|
||
This howto is designed to help you get up and running using a Token
|
||
Ring adaptor to access the network. Generally speaking Section 3
|
||
will tell you which driver you need based on the adaptor card you
|
||
have.
|
||
</para>
|
||
</abstract>
|
||
</articleinfo>
|
||
|
||
<!-- Begin the document -->
|
||
<sect1 id="intro">
|
||
<title>Introduction</title>
|
||
|
||
<indexterm>
|
||
<primary>tr!introduction</primary>
|
||
</indexterm>
|
||
|
||
<para>
|
||
Welcome to the Linux Token Ring mini-howto. We hope you find the information
|
||
contained within helpful.
|
||
</para>
|
||
|
||
<para>
|
||
If you have any problems with the drivers that are not talked about in
|
||
this howto, feel free to email me at <email>mikep@linuxtrnet</email>.
|
||
</para>
|
||
|
||
<para>
|
||
You may also wish to join the Linux on Token Ring Listserv
|
||
by mailing <email>majordomo@linuxtr.net</email> with the body containing:
|
||
<screen>subscribe linux-tr</screen>
|
||
The latest and greatest information, drivers, patches, bug fixes, etc, etc
|
||
can always be found at the <ulink url="http://www.linuxtr.net">Linux Token Project</ulink> site.
|
||
</para>
|
||
|
||
<sect2 id="Thanks">
|
||
<title>Special Thanks</title>
|
||
|
||
<para>
|
||
Thanks to Mark Swanson, Peter De Schrijver, David Morris, Paul Norton
|
||
and everyone else who has contributed to the Token Ring code
|
||
and drivers over the years.
|
||
</para>
|
||
<para>
|
||
Thanks also to the many people and companies who have provided
|
||
hardware and technical documents to enable the drivers to be
|
||
written in the first place.
|
||
</para>
|
||
<para>
|
||
Special Thanks to Mike Eckhoff the originator of this HOWTO, and Tom Gall
|
||
for the previous version, and to Matthew Marsh for hosting
|
||
the website and mailing list!
|
||
</para>
|
||
<para>
|
||
And, finally, thanks to all to subscribers to the linux-tr mailing list who
|
||
have provided support, feedback, testing and thanks over the years. It
|
||
wouldn't have been worth it without your continued support and gratitude.
|
||
</para>
|
||
|
||
</sect2>
|
||
|
||
<sect2 id="copyright">
|
||
<title>Copyright Information</title>
|
||
|
||
<para>
|
||
This documument is copyright (c) 1995-1998 by Michael Eckhoff,
|
||
copyright(c) 2000 by Tom Gall and copyright (c) 2001 by Mike
|
||
Phillips.
|
||
</para>
|
||
|
||
<para>
|
||
Permission is granted to copy, distribute and/or modify this
|
||
document under the terms of the GNU Free Documentation License,
|
||
Version 1.1 or any later version published by the Free Software
|
||
Foundation, with no Invariant sections, with no Front-Cover Texts,
|
||
and with no Back-Cover Texts.
|
||
</para>
|
||
|
||
<para>
|
||
A copy of the license is included in
|
||
<link linkend="fdl">Appendix A</link>
|
||
</para>
|
||
|
||
<para>
|
||
If you have any question, please contact
|
||
<email>linux-howto@linuxdoc.org</email>
|
||
</para>
|
||
</sect2>
|
||
|
||
<sect2 id="disclaimer">
|
||
<title>Disclaimer</title>
|
||
|
||
<para>
|
||
No liability for the contents of this document can be accepted.
|
||
Use the concepts, examples and other content at your own risk.
|
||
As this is a new edition of this document, there may be errors
|
||
and inaccuracies, that may of course be damaging to your system.
|
||
Proceed with caution, and although this is highly unlikely,
|
||
the authors do not take any responsibility for that.
|
||
</para>
|
||
|
||
<para>
|
||
All copyrights are held by their respective owners, unless
|
||
specifically noted otherwise. Use of a term in this document
|
||
should not be regarded as affecting the validity of any trademark
|
||
or service mark.
|
||
</para>
|
||
|
||
<para>
|
||
Naming of particular products or brands should not be seen as
|
||
endorsements.
|
||
</para>
|
||
|
||
<para>
|
||
You are strongly recommended to take a backup of your system
|
||
before major installation and backups at regular intervals.
|
||
</para>
|
||
</sect2>
|
||
|
||
<sect2 id="newversions">
|
||
<title>New Versions</title>
|
||
|
||
<indexterm>
|
||
<primary>tr!new versions</primary>
|
||
</indexterm>
|
||
|
||
<para>
|
||
The latest version of this document can always be found at
|
||
<ulink url="http://www.linuxtr.net">Linux Token Ring Project</ulink>
|
||
under the Documentation section.
|
||
</para>
|
||
|
||
<para>
|
||
The latest version of this HOWTO will always be made available on
|
||
the Linux Token Ring Project website, in a variety of formats:
|
||
</para>
|
||
|
||
<para>
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>
|
||
<ulink url="http://www.linuxtr.net/documentation/howtohtml/index.html">HTML</ulink>,
|
||
</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>
|
||
<ulink url="http://www.linuxtr.net/documentation/trhowto.txt">Plain text</ulink>,
|
||
</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>
|
||
<ulink url="http://www.linuxtr.net/documentation/trhowto.pdf">Adobe Acrobat pdf</ulink>,
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<ulink url="http://www.linuxtr.net/documentation/trhowto.ps">Postscript</ulink>,
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<ulink url="http://www.linuxtr.net/documentation/trhowto.sgml">SGML source</ulink>,
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
</sect2>
|
||
|
||
<sect2 id="credits">
|
||
<title>Credits</title>
|
||
|
||
<para>
|
||
In this version I have the pleasure of acknowleding:
|
||
</para>
|
||
|
||
<para>
|
||
<emphasis>IBM</emphasis> for providing hardware,
|
||
technical documentation and technical support when the tech docs
|
||
didn't quite seem enough.
|
||
</para>
|
||
|
||
<para>
|
||
<emphasis>Madge</emphasis> for providing their hardware to test with.
|
||
</para>
|
||
|
||
<para>
|
||
<emphasis>3Com</emphasis> for proving the technical documents to
|
||
allow the 3c359 driver to be developed.
|
||
</para>
|
||
|
||
</sect2>
|
||
|
||
<sect2 id="feedback">
|
||
<title>Feedback</title>
|
||
|
||
<para>
|
||
Feedback is most certainly welcome for this document. Without your
|
||
submissions and input, this document wouldn't exist. Please send
|
||
your additions, comments and criticisms to the following email
|
||
address: <email>mikep@linuxtr.net</email>
|
||
</para>
|
||
|
||
</sect2>
|
||
</sect1>
|
||
|
||
<sect1 id="hardware">
|
||
<title>Hardware requirements</title>
|
||
<indexterm>
|
||
<primary>tr!hardware</primary>
|
||
</indexterm>
|
||
|
||
<para>
|
||
Make sure that you have a Token Ring card that is supported from
|
||
the list below. Many PCI,ISA and even the odd MCA cards are now
|
||
supported. Check <ulink url="http://www.linuxtr.net"></ulink> for
|
||
the latest information.
|
||
</para>
|
||
|
||
<para>
|
||
Cards that are reported to work:
|
||
</para>
|
||
|
||
<para>
|
||
3COM
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>3C389 PCMCIA</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>3C619, 3C619B or 3C619C Token Link</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>3C319 Velocity ISA</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>3C359 Velocity XL - PCI</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>3C339 Velocity PCI</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
IBM
|
||
<itemizedlist>
|
||
<listitem>
|
||
<formalpara><title>PCI</title>
|
||
<para>
|
||
PCI Token Ring Adapter; PCI Wake on Lan Token Ring Adapter; 16/4 Token Ring
|
||
PCI Adapter 2, Wake on Lan, and Wake on Lan Special; High Speed 100/16/4
|
||
Token Ring Adapter, Token Ring 16/4 Management Adapter.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
<listitem>
|
||
<formalpara><title>Cardbus</title>
|
||
<para>
|
||
16/4 Token Ring Adapter
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara><title>LanStreamer</title>
|
||
<para>
|
||
PCI: Auto LanStreamer, Triple Lanstreamer; MCA: LanStreamer MC16, Lanstreamer
|
||
MC32, AutoLanstreamer MC32, Dual Lanstreamer MC32
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara><title>ISA</title>
|
||
<para>
|
||
Auto 16/4 Token Ring Adapter, 16/4 Token Ring Adapter, Turbo 16/4 Token
|
||
Ring Adapter, Auto Wake Token Ring Adapter.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara><title>PCMCIA</title>
|
||
<para>
|
||
Turbo 16/4 PC Card, Turbo 16/4 PC Card 2, Auto 16/4 Credit Card Adapter,
|
||
16/4 Credit Card Adapter, 16/4 Credit Card Adapter II
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara><title>Tropic MCA</title>
|
||
<para>
|
||
16/4 Token Ring Adapter/A, Auto 16/4 Token Ring Adapter
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
Olicom
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>RapidFire 3139, 3140, 3141, and 3540</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>OC 3136</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>OC 3137</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>OC 3118</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>OC 3129</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
Madge
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>51-02 Smart 16/4 PCI</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>20-03 16/4 Cardbus Adapter Mk2</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>51-04 Smart 16/4 PCI Ringnode Mk3</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>51-09 Smart 16/4 Fiber PCI Ringnode</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>51-07 Smart 100/16/4 PCI-HS Ringnode</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>51-05 Smart 100/16/4 PCI Ringnode</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>20-01 Smart 16/4 PCMCIA</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>60-07 Presto PCI 2000</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>60-06 Presto PCI Plus</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>60-05 Presto PCI</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>53-05 Smart Mk4 PCI Adapter (low profile)</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>31-40 Rapidfire 3140V2 16/4 PCI Adapter</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
SysKonnect
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>TR4/16(+) SK-4190 ISA</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>TR4/16(+) SK-4590 PCI</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>TR4/16(+) SK-4591 PCI</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
SMC
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Tokencard Elite (8115T)</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>Tokencard Elite/A MCA (8115T/A)</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
Intel
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>TokenExpress PRO</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>TokenExpress 16/4</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
Cards that may cause problems:
|
||
</para>
|
||
|
||
|
||
<formalpara>
|
||
<title>Token-Ring Network 16/4 Adapter II</title>
|
||
<para>
|
||
This adapter will NOT work.
|
||
Do not confuse this card with the IBM Token Ring adapter II (4mbit)
|
||
which does. It is a DMA/Busmaster adapter for ISA.
|
||
</para>
|
||
</formalpara>
|
||
|
||
<formalpara>
|
||
<title>3Com TokenLink Velocity ISA</title>
|
||
<para>
|
||
You may or may not get this one to work.
|
||
I have had reports of people running it without problems,
|
||
and others who get errors left and right.
|
||
</para>
|
||
</formalpara>
|
||
|
||
</sect1>
|
||
<sect1 id="drivers">
|
||
<title>Which driver should I use?</title>
|
||
<indexterm>
|
||
<primary>tr!driver</primary>
|
||
</indexterm>
|
||
|
||
<para>
|
||
The realm of Token Ring drivers on Linux has expanded quite a bit in
|
||
last couple of years. It's not just ibmtr anymore! So as a result this
|
||
map will tell you given a card which driver you should try and the
|
||
recommended minimum kernel version (if any).
|
||
</para>
|
||
<para>
|
||
3COM
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>3C389 PCMCIA -- ibmtr_cs</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>3C619, 3C619B or 3C619C Token Link -- ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>3C319 Velocity ISA -- try ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>3C359 Velocity XL - PCI -- driver available from
|
||
<ulink url="http://www.linuxtr.net"></ulink></para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>3C339 Velocity PCI -- tms380tr </para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
IBM
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>PCI Token Ring Adaptor -- olympic </para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>PCI Wake on Lan Token Ring Adaptor -- olympic </para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>16/4 Token Ring PCI Adaptor 2, Wake On Lan, and Wake on Lan Special -- olympic</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>High Speed 100/16/4 Token Ring -- olympic</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>Turbo 16/4 ISA adapter -- ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>Token Ring Auto 16/4 ISA adapter -- ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>Token Ring Auto 16/4 adapter /A -- ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>Token Ring 16/4 adapter /A -- ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>Token Ring adapter /A -- ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>Token Ring adapter II (4 Megabit only) -- ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>16/4 ISA Token Ring card (16bit) -- ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>16/4 ISA Token Ring card (8bit) -- ibmtr</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>All LANStreamer -- lanstreamer </para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>PCMCIA - Turbo 16/4 -- ibmtr_cs</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>PCMCIA - 16/4 -- ibmtr_cs</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>Cardbus - 16/4 - olympic, kernel v.2.4.3 or greater</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
Olicom
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>RapidFire 3139, 3140, 3141, and 3540</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>OC 3136</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>OC 3137</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>OC 3118</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>OC 3129</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
For these Olicom cards, see their website
|
||
<ulink url="http://www.olicom.com"></ulink> for drivers. You will need a
|
||
2.2.x series kernel.
|
||
</para>
|
||
|
||
<para>
|
||
Madge
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>51-02 Smart 16/4 PCI</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>20-03 16/4 Cardbus Adapter Mk2</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>51-04 Smart 16/4 PCI Ringnode Mk3</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>51-09 Smart 16/4 Fiber PCI Ringnode</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>51-07 Smart 100/16/4 PCI-HS Ringnode</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>51-05 Smart 100/16/4 PCI Ringnode</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>20-01 Smart 16/4 PCMCIA</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>60-07 Presto PCI 2000</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>60-06 Presto PCI Plus</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>60-05 Presto PCI</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
For these Madge cards you'll want to visit their site
|
||
<ulink url="http://www.madge.com"></ulink>
|
||
for drivers and get the 2.31 Madge drivers.
|
||
You will need either a 2.0.36 or 2.2.5 as a minimum.
|
||
</para>
|
||
|
||
<para>
|
||
2.41 drivers:
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>51-05 Smart Mk4 PCI Adapter</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>53-05 Smart Mk4 PCI Adapter (low profile)</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>31-40 Rapidfire 3140V2 16/4 PCI Adapter</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>20-03 Smart 16/4 Cardbus Mk2</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>51-04 Smart 16/4 PCI Ringnode Mk3</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>60-07 Presto PCI 2000</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>60-06 Presto PCI Plus</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>60-05 Presto PCI</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
According to the Madge README file the 2.41 driver has been tested on
|
||
uniprocessor and SMP kernel versions: 2.0.36, 2.2.5-15 ,2.2.10,
|
||
2.2.12-20, 2.4.2-2.
|
||
</para>
|
||
<para>
|
||
Other Madge cards are reportedly based on the Texas Instruments tms380
|
||
chipset and thus as of the 2.3.26 kernel you can try the tms380tr driver.
|
||
</para>
|
||
|
||
<para>
|
||
SysKonnect
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>TR4/16(+) SK-4190 ISA</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>TR4/16(+) SK-4590 PCI</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>TR4/16(+) SK-4591 PCI</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
In the 2.2.x series of kernels try sktr. In the 2.3.x and greater
|
||
series try the tms380tr driver.
|
||
</para>
|
||
|
||
<para>
|
||
SMC
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Tokencard Elite (8115T)</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>Tokencard Elite/A MCA (8115T/A)</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
Driver is included as part of the 2.3.38+ kernel.
|
||
</para>
|
||
|
||
<para>
|
||
Intel
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>TokenExpress PRO</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>TokenExpress 16/4</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
Support for these cards is currently under development.
|
||
Check <ulink url="http://www.linuxtr.net"></ulink> for status.
|
||
</para>
|
||
|
||
<sect2 id="driversspecifics">
|
||
<title>Drivers/Adapter Specifics</title>
|
||
|
||
<para>
|
||
Here we'll describe the different options and configurations available
|
||
for each of the available drivers.
|
||
</para>
|
||
|
||
<sect3 id="kp">
|
||
<title>Kernel Module Aliases and Parameters</title>
|
||
|
||
<para>
|
||
Most drivers accept arguments in the form of module paramters (with the
|
||
exception of the special case of PCMCIA, which is fully described below).
|
||
</para>
|
||
|
||
<para>
|
||
Kernel modules are specified in the file /etc/conf.modules or /etc/modules.conf
|
||
depending upon which version of modutils you've got.
|
||
</para>
|
||
|
||
<para>
|
||
You can directly modify this file or use the tools builtin to your specific
|
||
distribution. These distribution specific tools are beyond the scope of this
|
||
document, but you can always directly modify the modules.conf file by hand
|
||
to get things up and running and then figure out how your distribution
|
||
handles these files. For example, Debian has several files in the /etc/modutils
|
||
directory and from these builds the modules.conf file.
|
||
</para>
|
||
|
||
<para>
|
||
Kernel modules aliases are utilized to associate a particular name with a
|
||
kernel module.
|
||
</para>
|
||
|
||
<para>
|
||
For token ring, this is used to assign drivers for each of the token ring
|
||
interfaces so that the system scripts know which driver to insert when
|
||
you bring an interface up.
|
||
</para>
|
||
|
||
<para>
|
||
The format of the alias lines are:
|
||
<screen>
|
||
alias <emphasis>module_name</emphasis> interface
|
||
</screen>
|
||
Usually, the only line you'll need for the token ring networking would be
|
||
something like:
|
||
<screen>alias olympic tr0</screen>
|
||
This binds the olympic driver to the tr0 interface so when you type
|
||
<screen>ifconfig tr0 up</screen>
|
||
if the tr0 interface is not already loaded, the system will insert the
|
||
olympic driver, which in turn will find the network card and create
|
||
the tr0 network device.
|
||
</para>
|
||
|
||
<para>
|
||
Kernel modules parameters are specified in the following format:
|
||
<screen>
|
||
options <emphasis>module_name</emphasis> <emphasis>parameter_1</emphasis>=XXX [<emphasis>parameter2</emphasis>=YYY ...]
|
||
</screen>
|
||
Where the modules_name is the name of the driver, i.e. olympic, ibmtr, 3c359 and the
|
||
` parameters are those available for each driver. See either the following sections for
|
||
driver specifics or check out the drivers source code.
|
||
</para>
|
||
|
||
<para>
|
||
For example, if you wanted to set the Olympic driver to 16 mbps operation and with
|
||
a default buffer size of 8192 bytes, you would use the following line:
|
||
<screen>
|
||
options olympic ringspeed=16 pkt_buf_sz=8192
|
||
</screen>
|
||
</para>
|
||
</sect3>
|
||
|
||
<sect3 id="ibmtr">
|
||
<title>IBMTR Driver</title>
|
||
|
||
<para>
|
||
IBM Tropic Chipset Based Token Ring Adapters
|
||
</para>
|
||
|
||
<para>
|
||
This is the original token ring driver in the kernel and supports almost all
|
||
adapters that use the IBM Tropic chipset, including the IBM ISA, ISA/Pnp, and
|
||
a multitude of adapters from other manufacturers.
|
||
</para>
|
||
|
||
<para>
|
||
The IBM Turbo 16/4 ISA/PnP adapter will, in fact, work fine with the ibmtr driver.
|
||
In older drivers you had to run the card in Auto 16/4 compatability mode.
|
||
The simplest way to set this is to use the LANAID disks
|
||
sent with the card and run the command:
|
||
<screen>LANAIDC /FAST=AUTO16</screen>
|
||
You should then use LANAIDC or LANAID
|
||
to configure the card according to documentation.
|
||
The latest drivers for the Turbo Adapters will recognize these adapters
|
||
and configure them straight out of the box. You may have to either turn
|
||
off isapnp support in the kernel or modify your isapnp.conf file to
|
||
enable the adapter.
|
||
</para>
|
||
|
||
<para>
|
||
Options:
|
||
</para>
|
||
|
||
<para>
|
||
Perusal of the ibmtr source code may leave you to believe that the adapter can
|
||
take three parameters, however, in reality the driver doesn't take any. These
|
||
parameters are a hang over from the early stages of the driver and are only
|
||
intended to be used to force the driver to only test restricted <20>ddresses when
|
||
looking for adapters. The information on these options are included here for
|
||
completeness only.
|
||
</para>
|
||
|
||
<para>
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>io</emphasis>: Specify the I/O ports that the driver will check
|
||
for the presence of any cards. All Tropic based ISA adapters, or adapters
|
||
emulating the ISA cards will be found on either port 0xA20 or 0xA24. If
|
||
you know that your adapter is configured for 0xA24 and/or that probing
|
||
on port 0xA20 will cause problems with your machine, use io to force the
|
||
driver to check a specific port only.
|
||
</para>
|
||
|
||
<para>
|
||
The Turbo adapters (including the confusingly named latest Auto 16/4
|
||
cards) can have their io regions located anywhere permitted by the PnP
|
||
specification. This location is found using the new turbo detection code
|
||
and no parameters are required.
|
||
</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>
|
||
<emphasis>irq</emphasis> & <emphasis>mem</emphasis>: The two options were used
|
||
to tell the driver exactly which irq to use and where the shared ram for the
|
||
adapter could be found. These two options are now totally redundant in the driver
|
||
as the interrupt line and the location of the shared ram is obtained directly by
|
||
interrogating the adapter.
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
</sect3>
|
||
<sect3 id="olympic">
|
||
<title>Olympic Driver</title>
|
||
|
||
<para>
|
||
IBM PCI Pit/Pit-Phy/Olympic chipset based token ring cards
|
||
</para>
|
||
|
||
<para>
|
||
Options:
|
||
</para>
|
||
|
||
<para>
|
||
The driver accepts four options: ringspeed, pkt_buf_sz,
|
||
message_level and network_monitor.
|
||
</para>
|
||
|
||
<para>
|
||
These options can be specified differently for each card found, i.e if you
|
||
have two olympic adapters in your machine and want to assign a ring speed of 16mbps
|
||
to the first adapter, but a ring speed of 4mbps to the second adapter, your options
|
||
line would read:
|
||
<screen>
|
||
options olympic ringspeed=16,4
|
||
</screen>
|
||
However, it should be noted that the driver assigns value to each adapter in the
|
||
order they are discovered<65> which is usually the order there are present on the pci
|
||
bus. A little trial and error may be required to be certain which adapter is receiving
|
||
which configuration option.
|
||
</para>
|
||
|
||
<para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>ringspeed</emphasis>: Has one of three settings 0 (default), 4 or 16. 0 will
|
||
make the card autosense the ringspeed and join at the appropriate speed,
|
||
this will be the default option for most people. 4 or 16 allow you to
|
||
explicitly force the card to operate at a certain speed. The card will fail
|
||
if you try to insert it at the wrong speed. (Although some hubs will allow
|
||
this so be *very* careful). The main purpose for explicitly setting the ring
|
||
speed is for when the card is first on the ring. In autosense mode, if the card
|
||
cannot detect any active monitors on the ring it will not open, so you must
|
||
re-init the card at the appropriate speed. Unfortunately at present the only
|
||
way of doing this is rmmod and insmod which is a bit tough if it is compiled
|
||
in the kernel. The driver does support 100 mbps full duplex operation. This
|
||
is automatically detected by the adapter when connected to an appropriate
|
||
switch.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>pkt_buf_sz</emphasis>: This is this initial receive buffer allocation
|
||
size. This will default to 4096 if no value is entered. You may increase
|
||
performance of the driver by setting this to a value larger than the network
|
||
packet size, although the driver now re-sizes buffers based on MTU settings as well.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>message_level</emphasis>: Controls level of messages created by the
|
||
driver. Defaults to 0 which only displays start-up and critical messages.
|
||
Presently any non-zero value will display all soft messages as well. NB This
|
||
does not turn debugging messages on, that must be done by modified the source code.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>network_monitor</emphasis>: Any non-zero value will provide a
|
||
quasi network monitoring mode. All unexpected MAC frames (beaconing etc.)
|
||
will be received by the driver and the source and destination addresses printed.
|
||
Also an entry will be added in /proc/net called olympic_tr%d, where tr%d
|
||
is the registered device name, i.e tr0, tr1, etc. This displays low
|
||
level information about the configuration of the ring and the adapter.
|
||
This feature has been designed for network administrators to assist in
|
||
the diagnosis of network / ring problems. (This used to OLYMPIC_NETWORK_MONITOR,
|
||
but has now changed to allow each adapter to be configured differently and
|
||
to alleviate the necessity to re-compile olympic to turn the option on).
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<formalpara>
|
||
<title>Multi-card</title>
|
||
<para>
|
||
The driver will detect multiple cards and will work with shared interrupts,
|
||
each card is assigned the next token ring device, i.e. tr0 , tr1, tr2. The
|
||
driver should also happily reside in the system with other drivers. It has
|
||
been tested with ibmtr.c running. I have had multiple cards in the same
|
||
system, all sharing the same interrupt and working perfectly fine together.
|
||
This is also true for the Cardbus Olympic adapters, I have quite happily
|
||
had a Cardbus adapter and regular 16 bit PCMCIA token ring adapter working
|
||
together in the same laptop.
|
||
</para>
|
||
</formalpara>
|
||
|
||
<formalpara>
|
||
<title>Variable MTU size:</title>
|
||
|
||
<para>
|
||
The driver can handle a MTU size upto either 4500 or 18000 depending upon
|
||
ring speed. The driver also changes the size of the receive buffers as part
|
||
of the mtu re-sizing, so if you set mtu = 18000, you will need to be able
|
||
to allocate 16 * (sk_buff with 18000 buffer size) call it 18500 bytes per ring
|
||
position = 296,000 bytes of memory space, plus of course anything
|
||
necessary for the tx sk_buff's. Remember this is per card, so if you are
|
||
building routers, gateway's etc, you could start to use a lot of memory
|
||
real fast.
|
||
</para>
|
||
</formalpara>
|
||
</sect3>
|
||
|
||
<sect3 id="lanstreamer">
|
||
<title>Lanstreamer Driver</title>
|
||
|
||
<para>
|
||
IBM PCI/MCA Lanstreamer chipset based token ring cards
|
||
</para>
|
||
|
||
<para>
|
||
Options:
|
||
</para>
|
||
|
||
<para>
|
||
The driver accepts three options: ringspeed, pkt_buf_sz,
|
||
message_level and network_monitor.
|
||
</para>
|
||
|
||
<para>
|
||
These options can be specified differently for each card found, i.e if you
|
||
have two olympic adapters in your machine and want to assign a ring speed of 16mbps
|
||
to the first adapter, but a ring speed of 4mbps to the second adapter, your options
|
||
line would read:
|
||
<screen>
|
||
options lanstreamer ringspeed=16,4
|
||
</screen>
|
||
However, it should be noted that the driver assigns value to each adapter in the
|
||
order they are discovered<65> which is usually the order there are present on the pci/mca
|
||
bus. A little trial and error may be required to be certain which adapter is receiving
|
||
which configuration option.
|
||
</para>
|
||
|
||
<para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>ringspeed</emphasis>: Has one of three settings 0 (default), 4 or 16. 0 will
|
||
make the card autosense the ringspeed and join at the appropriate speed,
|
||
this will be the default option for most people. 4 or 16 allow you to
|
||
explicitly force the card to operate at a certain speed. The card will fail
|
||
if you try to insert it at the wrong speed. (Although some hubs will allow
|
||
this so be *very* careful). The main purpose for explicitly setting the ring
|
||
speed is for when the card is first on the ring. In autosense mode, if the card
|
||
cannot detect any active monitors on the ring it will not open, so you must
|
||
re-init the card at the appropriate speed. Unfortunately at present the only
|
||
way of doing this is rmmod and insmod which is a bit tough if it is compiled
|
||
in the kernel.
|
||
switch.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>pkt_buf_sz</emphasis>: This is this initial receive buffer allocation
|
||
size. This will default to 4096 if no value is entered. You may increase
|
||
performance of the driver by setting this to a value larger than the network
|
||
packet size, although the driver now re-sizes buffers based on MTU settings as well.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>message_level</emphasis>: Controls level of messages created by the
|
||
driver. Defaults to 0 which only displays start-up and critical messages.
|
||
Presently any non-zero value will display all soft messages as well. NB This
|
||
does not turn debugging messages on, that must be done by modified the source code.
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<formalpara>
|
||
<title>Network Monitor</title>
|
||
<para>
|
||
The Lanstreamer driver does support a network monitor mode similar to the olympic
|
||
driver, however it is a compile time option and not a module parameter. To enable
|
||
the network monitor mode, edit lanstreamer.c and change the line:
|
||
<screen>#define STREAMER_NETWORK_MONITOR 0</screen>
|
||
to read:
|
||
<screen>#define STREAMER_NETWORK_MONITOR 1</screen>
|
||
All unexpected MAC frames (beaconing etc.) will be received by the driver and
|
||
the source and destination addresses printed.
|
||
Also an entry will be added in /proc/net called streamer_tr. This displays low
|
||
level information about the configuration of the ring and the adapter.
|
||
This feature has been designed for network administrators to assist in
|
||
the diagnosis of network / ring problems.
|
||
</para>
|
||
</formalpara>
|
||
|
||
<formalpara>
|
||
<title>Multi-card</title>
|
||
<para>
|
||
The driver will detect multiple cards and will work with shared interrupts,
|
||
each card is assigned the next token ring device, i.e. tr0 , tr1, tr2. The
|
||
driver should also happily reside in the system with other drivers.
|
||
</para>
|
||
</formalpara>
|
||
|
||
<formalpara>
|
||
<title>Variable MTU size:</title>
|
||
|
||
<para>
|
||
The driver can handle a MTU size upto either 4500 or 18000 depending upon
|
||
ring speed. The driver also changes the size of the receive buffers as part
|
||
of the mtu re-sizing, so if you set mtu = 18000, you will need to be able
|
||
to allocate 16 * (sk_buff with 18000 buffer size) call it 18500 bytes per ring
|
||
position = 296,000 bytes of memory space, plus of course anything
|
||
necessary for the tx sk_buff's. Remember this is per card, so if you are
|
||
building routers, gateway's etc, you could start to use a lot of memory
|
||
real fast.
|
||
</para>
|
||
</formalpara>
|
||
</sect3>
|
||
<sect3 id="xl-3c359">
|
||
<title>3Com 3C359 Driver</title>
|
||
|
||
<para>
|
||
3COM PCI TOKEN LINK VELOCITY XL TOKEN RING CARDS
|
||
</para>
|
||
|
||
<para>
|
||
Currently the 3c359 driver in not included in the standard kernel source.
|
||
To utlize the driver, you must download the driver from the
|
||
<ulink url="http://www.linuxtr.net">Linux Token Ring Project</ulink> web
|
||
site and patch your kernel.
|
||
</para>
|
||
|
||
<para>
|
||
Once you've downloaded the file, you can patch your kernel with the following
|
||
commands:
|
||
<screen>
|
||
cd /usr/src/linux
|
||
patch -p1 < 3c359-2.4.16.patch
|
||
</screen>
|
||
or, if the patch file is gzipped:
|
||
<screen>
|
||
zcat 3c359-2.4.16.patch | patch -p1
|
||
</screen>
|
||
Then just run make config|menuconfig|xconfig and select the 3c359 driver from the
|
||
token ring drivers section of the kernel configuration and then compile and install
|
||
the kernel and/or modules as usual.
|
||
</para>
|
||
|
||
<para>
|
||
Options:
|
||
</para>
|
||
|
||
<para>
|
||
The driver accepts three options: ringspeed, pkt_buf_sz,
|
||
message_level.
|
||
</para>
|
||
|
||
<para>
|
||
These options can be specified differently for each card found, i.e if you
|
||
have two olympic adapters in your machine and want to assign a ring speed of 16mbps
|
||
to the first adapter, but a ring speed of 4mbps to the second adapter, your options
|
||
line would read:
|
||
<screen>
|
||
options 3c359 ringspeed=16,4
|
||
</screen>
|
||
However, it should be noted that the driver assigns value to each adapter in the
|
||
order they are discovered<65> which is usually the order there are present on the pci
|
||
bus. A little trial and error may be required to be certain which adapter is receiving
|
||
which configuration option.
|
||
</para>
|
||
|
||
<para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>ringspeed</emphasis>: Has one of three settings 0 (default), 4 or 16. 0 will
|
||
make the card autosense the ringspeed and join at the appropriate speed,
|
||
this will be the default option for most people. 4 or 16 allow you to
|
||
explicitly force the card to operate at a certain speed. The card will fail
|
||
if you try to insert it at the wrong speed. (Although some hubs will allow
|
||
this so be *very* careful). The main purpose for explicitly setting the ring
|
||
speed is for when the card is first on the ring. In autosense mode, if the card
|
||
cannot detect any active monitors on the ring it will open at the same speed
|
||
as its last opening. This can be harardous if this speed does not match the
|
||
speed you want the ring to operate at.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>pkt_buf_sz</emphasis>: This is this initial receive buffer allocation
|
||
size. This will default to 4096 if no value is entered. You may increase
|
||
performance of the driver by setting this to a value larger than the network
|
||
packet size, although the driver now re-sizes buffers based on MTU settings as well.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<emphasis>message_level</emphasis>: Controls level of messages created by the
|
||
driver. Defaults to 0 which only displays start-up and critical messages.
|
||
Presently any non-zero value will display all soft messages as well. NB This
|
||
does not turn debugging messages on, that must be done by modified the source code.
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<formalpara>
|
||
<title>Multi-card</title>
|
||
<para>
|
||
The driver will detect multiple cards and will work with shared interrupts,
|
||
each card is assigned the next token ring device, i.e. tr0 , tr1, tr2. The
|
||
driver should also happily reside in the system with other drivers. It has
|
||
been tested with ibmtr.c running. I have had multiple cards in the same
|
||
system, all sharing the same interrupt and working perfectly fine together.
|
||
</para>
|
||
</formalpara>
|
||
|
||
<formalpara>
|
||
<title>Variable MTU size:</title>
|
||
|
||
<para>
|
||
The driver can handle a MTU size upto either 4500 or 18000 depending upon
|
||
ring speed. The driver also changes the size of the receive buffers as part
|
||
of the mtu re-sizing, so if you set mtu = 18000, you will need to be able
|
||
to allocate 16 * (sk_buff with 18000 buffer size) call it 18500 bytes per ring
|
||
position = 296,000 bytes of memory space, plus of course anything
|
||
necessary for the tx sk_buff's. Remember this is per card, so if you are
|
||
building routers, gateway's etc, you could start to use a lot of memory
|
||
real fast.
|
||
</para>
|
||
</formalpara>
|
||
</sect3>
|
||
|
||
<sect3 id="syskonnect">
|
||
<title>SysKonnect adapters</title>
|
||
|
||
<para>
|
||
Information for the SysKonnect Token Ring ISA/PCI Adapter is courtesy Jay
|
||
Schulist <email>jschlst@samba.org</email>
|
||
</para>
|
||
|
||
<para>
|
||
The Linux SysKonnect Token Ring driver works with the SysKonnect TR4/16(+) ISA,
|
||
SysKonnect TR4/16(+) PCI, SysKonnect TR4/16 PCI, and older revisions of the
|
||
SK NET TR4/16 ISA card.
|
||
</para>
|
||
|
||
<para>
|
||
Latest information on this driver can be obtained on the Linux-SNA WWW site.
|
||
Please point your browser to: http://www.linux-sna.org
|
||
</para>
|
||
|
||
<para>
|
||
Important information to be noted:
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>
|
||
1. Adapters can be slow to open (~20 secs) and close (~5 secs), please be
|
||
patient.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
2. This driver works very well when autoprobing for adapters. Why even
|
||
think about those nasty io/int/dma settings of modprobe when the driver
|
||
will do it all for you!
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<para>
|
||
This driver is rather simple to use. Select Y to Token Ring adapter support
|
||
in the kernel configuration. A choice for SysKonnect Token Ring adapters will
|
||
appear. This drives supports all SysKonnect ISA and PCI adapters. Choose this
|
||
option. I personally recommend compiling the driver as a module (M), but if you
|
||
you would like to compile it staticly answer Y instead.
|
||
</para>
|
||
|
||
<para>
|
||
This driver supports multiple adapters without the need to load multiple copies
|
||
of the driver. You should be able to load up to 7 adapters without any kernel
|
||
modifications, if you are in need of more please contact the maintainer of this
|
||
driver.
|
||
</para>
|
||
|
||
<para>
|
||
Load the driver either by lilo/loadlin or as a module. When a module using the
|
||
following command will suffice for most:
|
||
<screen>
|
||
# modprobe sktr
|
||
</screen>
|
||
|
||
This will produce output similar to the following: (Output is user specific)
|
||
|
||
<screen>
|
||
sktr.c: v1.01 08/29/97 by Christoph Goos
|
||
tr0: SK NET TR 4/16 PCI found at 0x6100, using IRQ 17.
|
||
tr1: SK NET TR 4/16 PCI found at 0x6200, using IRQ 16.
|
||
tr2: SK NET TR 4/16 ISA found at 0xa20, using IRQ 10 and DMA 5.
|
||
</screen>
|
||
|
||
|
||
Now just setup the device via ifconfig and set and routes you may have. After
|
||
this you are ready to start sending some tokens.
|
||
</para>
|
||
|
||
<formalpara>
|
||
<title>Errata</title>
|
||
<para>
|
||
For anyone wondering where to pick up the SysKonnect adapters please browse
|
||
to http://www.syskonnect.com
|
||
</para>
|
||
</formalpara>
|
||
|
||
<para>
|
||
Below is the setting for the SK NET TR 4/16 ISA adapters
|
||
<screen>
|
||
***************************
|
||
*** C O N T E N T S ***
|
||
***************************
|
||
|
||
1) Location of DIP-Switch W1
|
||
2) Default settings
|
||
3) DIP-Switch W1 description
|
||
|
||
|
||
==============================================================
|
||
CHAPTER 1 LOCATION OF DIP-SWITCH
|
||
==============================================================
|
||
|
||
+------------------------------------------------------------------+
|
||
|+------+ +-----+ +---+ |
|
||
||------| W1 +-----+ +----+ | | |
|
||
||------| | | | | +---+
|
||
||------| +-----------+ +----+ | | | ||
|
||
||------| | | +---+ +---+ +---+
|
||
||------| | TMS380C26 | | | |
|
||
||------| | | +---+ |-+
|
||
|+------+ | | | |
|
||
| +-----------+ | |
|
||
| | |
|
||
| |-+
|
||
| |
|
||
| |
|
||
| |
|
||
| |
|
||
+------------+----------------+--+-----------------------+---------+
|
||
+----------------+ +-----------------------+
|
||
</screen>
|
||
<screen>
|
||
==============================================================
|
||
CHAPTER 2 DEFAULT SETTINGS
|
||
==============================================================
|
||
|
||
W1 1 2 3 4 5 6 7 8
|
||
+------------------------------+
|
||
| ON X |
|
||
| OFF X X X X X X X |
|
||
+------------------------------+
|
||
|
||
W1.1 = ON Adapter drives address lines SA17..19
|
||
W1.2 - 1.5 = OFF BootROM disabled
|
||
W1.6 - 1.8 = OFF I/O address 0A20h
|
||
</screen>
|
||
<screen>
|
||
==============================================================
|
||
CHAPTER 3 DIP SWITCH W1 DESCRIPTION
|
||
==============================================================
|
||
|
||
+---+---+---+---+---+---+---+---+ ON
|
||
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
|
||
+---+---+---+---+---+---+---+---+ OFF
|
||
|AD | BootROM Addr. | I/O |
|
||
+-+-+-------+-------+-----+-----+
|
||
| | |
|
||
| | +------ 6 7 8
|
||
| | ON ON ON 1900h
|
||
| | ON ON OFF 0900h
|
||
| | ON OFF ON 1980h
|
||
| | ON OFF OFF 0980h
|
||
| | OFF ON ON 1b20h
|
||
| | OFF ON OFF 0b20h
|
||
| | OFF OFF ON 1a20h
|
||
| | OFF OFF OFF 0a20h (+)
|
||
| |
|
||
| |
|
||
| +-------- 2 3 4 5
|
||
| OFF x x x disabled (+)
|
||
| ON ON ON ON C0000
|
||
| ON ON ON OFF C4000
|
||
| ON ON OFF ON C8000
|
||
| ON ON OFF OFF CC000
|
||
| ON OFF ON ON D0000
|
||
| ON OFF ON OFF D4000
|
||
| ON OFF OFF ON D8000
|
||
| ON OFF OFF OFF DC000
|
||
|
|
||
|
|
||
+----- 1
|
||
OFF adapter does NOT drive SA<17..19>
|
||
ON adapter drives SA<17..19> (+)
|
||
|
||
|
||
(+) means default setting
|
||
|
||
</screen>
|
||
</para>
|
||
</sect3>
|
||
<sect3 id="pcmcia">
|
||
<title>PCMCIA</title>
|
||
|
||
<sect4 id="pcmciaintro">
|
||
<title>Introduction</title>
|
||
|
||
<para>
|
||
PCMCIA Token Ring adapters will work on all versions of the Linux kernel.
|
||
Unfortunately, the road to hell is often paved with melting snowballs ;-)
|
||
and there are a myriad of different combinations that can be used to get the
|
||
adapters to work, all with different options, different requirements and
|
||
different issues. Hopefully with this document you will be able to figure
|
||
out which combinations of ingredients are required and how to get them up and
|
||
running on your machine.
|
||
</para>
|
||
</sect4>
|
||
<sect4 id="history">
|
||
<title>History</title>
|
||
|
||
<para>
|
||
In the 2.0.x and 2.2.x kernels days, pcmcia was only available as an external
|
||
package, created and maintained by David Hinds. When the only stable kernel
|
||
available was 2.0.36, life was pretty easy and with a few simple configuration
|
||
options the adapters would work.
|
||
</para>
|
||
|
||
<para>
|
||
With the advent of 2.2.x, ibmtr.c was completely updated, which broke the pcmcia
|
||
driver (ibmtr_cs.c). The pcmcia driver was updated to work with the new ibmtr driver
|
||
and the 2.2.x kernels. This is where the first level of complication starts. As
|
||
the pcmcia_cs package is stand alone, it has to support the various different
|
||
kernels, so instead of being able to have different versions of drivers in different
|
||
versions of the kernel source, the pcmcia_cs drivers must work with all kernel
|
||
versions. This not only creates some ugliness in the driver itself but also causes
|
||
confusion as to which version of pcmcia_cs works for the latest kernel.
|
||
</para>
|
||
|
||
<para>
|
||
At this point, everything was working fine, and then come along the 2.3.x develpment
|
||
series of kernels. The 2.3.x kernels provided their own support for pcmcia and the
|
||
ibmtr_cs driver was included in the kernel proper. So now there were two ways of
|
||
getting pcmcia token ring support, either using the kernel drivers themselves or
|
||
using the pcmcia_cs package, not too much of a problem because only developers were
|
||
using the 2.3.x kernels. Of course this all changed when the 2.4 kernel was released
|
||
and a lot more users started using the kernel.
|
||
</para>
|
||
|
||
<para>
|
||
During late 2000, early 2001, significant development work was done on both the
|
||
standard ibmtr driver and the pcmcia driver. Original pcmcia updates including using
|
||
high memory and hot-eject support. These initial updates were only for the 2.2.x kernels,
|
||
and hence only included in the pcmcia_cs package. Later development saw great improvements
|
||
in ibmtr and ibmtr_cs for the 2.4.x kernels. So as of writing, 1/23/02 , there are many
|
||
different combinations of kernel version and driver floating around especially considering
|
||
that different distributions have released different versions of the 2.4 kernels.
|
||
</para>
|
||
</sect4>
|
||
|
||
<sect4 id="k20">
|
||
<title>2.0.x kernels</title>
|
||
|
||
<para>
|
||
If you are using one of the 2.0.x kernels, then I salute your perserverance and really you
|
||
should have got the pcmcia drivers configured and working by now ;-)
|
||
</para>
|
||
|
||
<para>
|
||
You will have to use the pcmcia_cs package and play with the /etc/pcmcia/config.opts, see
|
||
the section below about config.opts fun. Just about any version of pcmcia_cs that's been
|
||
released in the last 2/3 years will work fine.
|
||
</para>
|
||
</sect4>
|
||
|
||
<sect4 id="k220">
|
||
<title>2.2.0 - 2.2.6 kernels</title>
|
||
|
||
<para>
|
||
These were the series of kernels where the pcmcia driver didn't work at all. It's probably
|
||
just easiest to upgrade the kernel to a later version.
|
||
</para>
|
||
|
||
<para>
|
||
If you really do need to get this up and running, then a recent pcmcia_cs is required and
|
||
you should be able to grab the ibmtr.c and ibmtr.h from a 2.2.7 - 2.2.16 kernel and use
|
||
them (note no greater than 2.2.16 !!)
|
||
</para>
|
||
|
||
<para>
|
||
You have to do the config.opts mangling, see the section on setting all this up.
|
||
</para>
|
||
</sect4>
|
||
|
||
<sect4 id="k2216">
|
||
<title>2.2.7 - 2.2.16 kernels</title>
|
||
|
||
<para>
|
||
These kernels are well supported, simply use the pcmcia_cs package and play with the
|
||
config.opts file.
|
||
</para>
|
||
</sect4>
|
||
|
||
<sect4 id="k2219">
|
||
<title>2.2.17 - 2.2.19 kernels</title>
|
||
|
||
<para>
|
||
The pcmcia driver was updated for these kernel to eliminate the need for the config.opts
|
||
mangling. You'll need pcmcia_cs at least 3.1.24, although it is probably better just to
|
||
grab the latest version.
|
||
</para>
|
||
|
||
<para>
|
||
Simply compile up pcmcia_cs and you're done. No need to play with config.opts, in fact
|
||
if you've been running a previous version that did have the ibmtr_cs line in config.opts
|
||
it would be a <emphasis>very good</emphasis> idea to remove or comment out the line.
|
||
The new driver allocates the entire 64k for shared ram and it needs to be aligned on a 64k
|
||
boundary, if you've got a previous srambase value not on a 64k boundary, the driver will
|
||
barf and the kernel will panic.
|
||
</para>
|
||
</sect4>
|
||
|
||
<sect4 id="k24">
|
||
<title>2.4.0 - 2.4.4 (non Redhat) kernels</title>
|
||
|
||
<para>
|
||
Use the built-in kernel pcmcia driver and play with config.opts.
|
||
</para>
|
||
|
||
<para>
|
||
If you want to use the latest and greatest version of the driver with the high memory and
|
||
hot-swap support you can download the patch and patch up your kernel. Then the line in
|
||
config.opts can be removed and everything will work fine.
|
||
</para>
|
||
</sect4>
|
||
|
||
<sect4 id="k244">
|
||
<title>2.4.4-ac11 > kernels</title>
|
||
|
||
<para>
|
||
These kernels include the new drivers so simply compile up the drivers, ensure that there is
|
||
no configuration line in config.opts and away you go.
|
||
</para>
|
||
</sect4>
|
||
|
||
<sect4 id="k24RH">
|
||
<title>2.4.2 mangled, i.e. Redhat 7.1</title>
|
||
|
||
<para>
|
||
When RedHat released 7.1 with the 2.4.2 kernel they modified the kernel (as they always
|
||
do) and included the updated ibmtr/ibmtr_cs driver from the
|
||
<ulink url="http://www.linuxtr.net">web site</ulink>. If you're lucky this
|
||
may work straight out of the box (again no need for the ibmtr_cs line in config.opts), if
|
||
not then it is probably easiest to upgrade to the latest 2.4.x kernels and use the drivers
|
||
there. (The reason being that while I will work out how to get around a distribution
|
||
caused problem, I will not provide support for them, I'll answer questions and give help
|
||
because I'm a nice guy, but I am not going to provide driver updates against distributions.
|
||
Official support is for the drivers in the kernels available from the official kernel mirrors.
|
||
</para>
|
||
</sect4>
|
||
|
||
<sect4 id="k24CS">
|
||
<title>2.4.x kernels and pcmcia_cs</title>
|
||
|
||
<para>
|
||
There is no need to use pcmcia_cs with the 2.4 kernels to get the token ring adapters up
|
||
and running, but I appreciate that some of you may need to use pcmcia_cs to get other adapters
|
||
working that are not supported properly in the kernel.
|
||
</para>
|
||
|
||
<para>
|
||
The pcmcia_cs package will not work with the latest drivers, it may work with the 2.4.0-2.4.4
|
||
drivers. I am currently in two minds about providing support with pcmcia_cs for the 2.4 kernels,
|
||
you can ask me directly or check the <ulink url="http://www.linuxtr.net">web site</ulink> every
|
||
now and then so see if anything has changed.
|
||
</para>
|
||
</sect4>
|
||
|
||
<sect4 id="mangling">
|
||
<title>Config.opts mangling (or how to send yourself insane)</title>
|
||
|
||
<para>
|
||
This is the hardest part to getting the pcmcia adapters working with the drivers that need the
|
||
ibmtr_cs line in /etc/pcmcia/config.opts. No set of values is guaranteed to work the same on a
|
||
different machine. It really is a case of trial and error but forewarned and forearmed with a
|
||
little bit of knowledge can make the process a whole lot easier.
|
||
</para>
|
||
|
||
<para>
|
||
<quote>Hey, I don't care, just give me something that works</quote>
|
||
</para>
|
||
<para>
|
||
OK, try this, it works in most situations, if it doesn't you have to read the rest of the
|
||
section anyway. Just insert the following line in /etc/pcmcia/config.opts
|
||
<screen>modules "ibmtr_cs" opts "mmiobase=0xd2000 srambase=0xd4000"</screen>
|
||
restart pcmcia and insert the adapter.
|
||
</para>
|
||
|
||
<para>
|
||
<quote>OK, that didn't work, bring on the pain</quote>
|
||
</para>
|
||
|
||
<para>
|
||
The pcmcia driver need to allocate two areas of memory to operate properly. All areas of memory
|
||
allocated must be aligned on the same boundary as the size of the area being aligned, i.e.
|
||
a block 8K in size must be on an 8K boundary (0xc8000, 0xca000, 0xcc000, 0xce000, 0xd0000, 0xd2000)
|
||
and for a 16K block must be on a 16K boundary (0xc8000, 0xcc000, 0xd0000, 0xd4000). All memory
|
||
areas must be allocated within the ISA address space, 0xC0000-0xDFFFF). Theoretically you should be
|
||
able to use anywhere within this area, although experience has shown that most machines hide
|
||
stuff in the 0xc0000-0xc9fff area. Some machines have even been known to use the 0xd0000-0xd1fff
|
||
area without telling anybody (some thinkpads !!). So you really want to stick with memory
|
||
allocations in the 0xcc000 - 0xdffff range.
|
||
</para>
|
||
|
||
<para>
|
||
Of course, the two memory areas cannot overlap either ;)
|
||
</para>
|
||
|
||
<para>
|
||
The first area of memory is an 8K area for the memory mapped input/output (MMIO) and must be
|
||
placed on an 8K boundary. This area of memory is not usually the cause of any problems and can be
|
||
placed pretty much anywhere, recommended values are: 0xcc000, 0xd0000,0xd2000,0xd4000.
|
||
</para>
|
||
|
||
<para>
|
||
The second area of memory can be sized to fit your desires, this is the area of memory where the
|
||
incoming and outgoing packets are stored and received. The driver defaults to a 16K memory size
|
||
and must be placed on a 16K boundary. Good areas are: 0xd0000,0xd4000,0xd8000.
|
||
</para>
|
||
|
||
<para>
|
||
Once you've decided which areas of memory you are goin to try, you need to add the correct line
|
||
to the /etc/pcmcia/config.opts file. Configuration lines in this file take the format of:
|
||
<screen>
|
||
module "module_name" opts "option1=opt1_value option2=opt2_value ...."
|
||
</screen>
|
||
In our case module_name is ibmtr_cs. There are three options that be set with the ibmtr_cs driver,
|
||
mmiobase, srambase and sramsize.
|
||
</para>
|
||
|
||
<para>
|
||
If they are not set they will revert to the defaults in the driver, which in 9 cases out of 10
|
||
won't work for you. sramsize rarely has to be set unless you are looking for that last little bit
|
||
of performance from your adapter.
|
||
</para>
|
||
|
||
<para>
|
||
So, having decided upon your values, let's say 0xd2000 for the MMIO and 0xd4000 for the shared
|
||
memory you would build a config.opts line like this:
|
||
<screen>
|
||
module "ibmtr_cs" opts "mmiobase=0xd2000 srambase=0xd4000"
|
||
</screen>
|
||
The pcmcia_cs package must be restarted for these new options to take effect, usually with:
|
||
<screen>/etc/init.d/pcmcia restart or /etc/rc.d/init.d/pcmcia/restart</screen>
|
||
depending upon which run level organization your distribution adheres to.
|
||
</para>
|
||
|
||
<para>
|
||
Then just plug it in and see if it works. If not you'll just have to go back and change the
|
||
values for mmiobase and srambase until you find a combination that works.
|
||
Or, you can upgrade to a kernel/pcmcia_cs version that support high memory allocation,
|
||
where all this config.opts nonsense is not required and you can just happily plug your adapter
|
||
in and watch it run.
|
||
</para>
|
||
</sect4>
|
||
</sect3>
|
||
|
||
<sect3 id="madge">
|
||
<title>Madge Supplied Drivers</title>
|
||
|
||
<para>
|
||
Madge released 2.31 of their driver in 1999 and 2.41 in late 2001. Both drivers can
|
||
be downloaded from the <ulink url="http://www.madge.com">Madge</ulink> web site and
|
||
the 2.41 driver is also available from the
|
||
<ulink url="http:/www.linuxtr.net">Linux Token Ring Project</ulink> web site.
|
||
</para>
|
||
|
||
<para>
|
||
Once the drivers have been downloaded, see the README file that comes with the drivers
|
||
for instruction on how to built and install the drivers. The only other issue some
|
||
people find with the drivers is a failure to build the tool chain due to an incorrect
|
||
version of the newt libraries. If you get a compiler error relating to newt.h change
|
||
the madge-source/include/mtok/config.h file so that the #define NEWNEWT line reads:
|
||
<screen>
|
||
#define NEWNEWT 1
|
||
</screen>
|
||
This will ensure the tools use the correct newt libraries during the build process.
|
||
</para>
|
||
|
||
<para>
|
||
A patch is available from the <ulink url="http://www.linuxtr.net">Linux Token Ring
|
||
Project</ulink> web site for the 2.31 drivers to enable them to work with the
|
||
2.4.x kernels.
|
||
</para>
|
||
|
||
</sect3>
|
||
|
||
<sect3 id="olicom">
|
||
<title>Olicom Drivers</title>
|
||
|
||
<para>
|
||
Back when Olicom were still in business they did produce a Linux driver
|
||
that does actually work. Trying to find the driver these days is a bit tough.
|
||
If the ftp.olicom.com site is still up and running, the driver can be found
|
||
there.
|
||
</para>
|
||
|
||
<para>
|
||
The driver is a combination of GPL source code and proprietary binary low level
|
||
code. The driver only works with the 2.0.36 and 2.2.x kernels. It should be
|
||
possible to port this driver to the 2.4.x kernels...
|
||
</para>
|
||
</sect3>
|
||
</sect2>
|
||
</sect1>
|
||
|
||
<sect1 id="problemns">
|
||
<title>Known problems</title>
|
||
|
||
<para>
|
||
See www.linuxtr.net for the latest greatest set of bugs. Generally
|
||
speaking the biggest problem that I've seen (with ibmtr) is that
|
||
if you pull your connection from the wall the 2.0.x series of
|
||
kernels would generally not recover.
|
||
</para>
|
||
<para>
|
||
This has been fixed in the latest version of ibmtr and the driver
|
||
should now recognize when the link cable has been detached.
|
||
</para>
|
||
<para>
|
||
There are some laptops that don't want to work with the Olympic Cardbus
|
||
adapter, for some reason the driver never sees the open interrupt from the
|
||
card. I don't think this is a problem with the driver, but with the Cardbus
|
||
subsystem, for some people this problem has simply gone away with a newer
|
||
kernel and I personally have never seen it on the laptops I've used in the
|
||
development of the driver (Sony Vaio Z505 and Dell Latitude CPx500).
|
||
</para>
|
||
|
||
</sect1>
|
||
|
||
<sect1 id="vmware">
|
||
<title>VMWare and Token Ring</title>
|
||
|
||
<para>
|
||
Thanks to Scott Russell scottrus@raleigh.ibm.com for this little "trick"
|
||
</para>
|
||
|
||
<para>
|
||
One of the bummers about VMWare is if you are on a
|
||
Token-Ring adapter, your VMWare system can't have a real TCP/IP
|
||
address. Turns out this isn't the case. Here's how to do it.
|
||
</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>
|
||
In the info below we'll call your linux box 'linux.mycompany.biz.com'
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
Register another ip address, I'll call it 'vmware.mycompany.biz.com'
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
Make sure FORWARD_IPV4=true in your /etc/sysconfig/network file. If you have
|
||
to change it you can dynamically turn on the feature as root
|
||
<screen> cat 1 > /proc/sys/net/ipv4/ip_forward</screen>
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
Alias the second ip to the TR adapter. You end up with something like
|
||
this from /sbin/ifconfig:
|
||
<screen>
|
||
tr0 linux.mycompany.biz.com
|
||
tr0:0 vmware.mycompany.biz.com
|
||
vmnet1 192.168.0.1
|
||
</screen>
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
Make sure you can ping both ip addresses from another box.
|
||
If you cannot then this next step will not work.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
Use ipchains/iptables to redirect incoming traffic for the tr0:0 interface to
|
||
your vmnet1 interface. (When I did this I only redirected specific
|
||
ports from tr0:0 to vmnet1.)
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>
|
||
Now any outside system your 'NT' box appears to be on the TR. In bound
|
||
traffic can find it as well as out.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="qanda">
|
||
<title>Commonly asked Questions</title>
|
||
|
||
<para>
|
||
Here are a collection of commonly asked questions that arise from time to
|
||
time on the linux-tr mailing list. If your question isn't answered here or
|
||
elsewhere in this document, feel free to ask away on the mailing list.
|
||
</para>
|
||
|
||
<qandaset defaultlabel="qanda">
|
||
<qandaentry>
|
||
<question>
|
||
<para>
|
||
DHCP doesn't work with my Token Ring adapter.
|
||
</para>
|
||
</question>
|
||
<answer>
|
||
<para>
|
||
Certain dhcp servers and clients do not work properly with token
|
||
ring drivers. This is especially true with the 2.4 kernels. During
|
||
the development of the 2.3.x series of kernels the internal type
|
||
for token ring was changed to accomodate multicast support over
|
||
token ring. The solution is to upgrade your dhcp client/server
|
||
to a version that supports token ring and/or the latest kernel
|
||
versions.
|
||
</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question>
|
||
<para>
|
||
I can't set the LAA on my adapter with ifconfig tr0 hw tr 4000DEADBEEF.
|
||
</para>
|
||
</question>
|
||
<answer>
|
||
<para>
|
||
Firstly, double check that your adapter/driver support setting the LAA,
|
||
and that you've supplied a valid LAA. Also, most drivers will only allow
|
||
this to be set before the adapter is opened onto the ring.
|
||
Again, this is related to the change in the internal type for token ring
|
||
in the 2.4 kernels. A patch is available from the
|
||
<ulink url="http:/www.linuxtr.net">web site</ulink> for nettools
|
||
that fixes this and allows the LAA to be set.
|
||
</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question>
|
||
<para>
|
||
My Linux machine is on a bridged network and I'm having connectivity
|
||
issues with machine beyond the bridge.
|
||
</para>
|
||
</question>
|
||
<answer>
|
||
<para>
|
||
The token ring source routing code in the kernel uses the spanning
|
||
tree algorithm. Contact your network administrator to enable this
|
||
protocol on the bridges.
|
||
</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question>
|
||
<para>
|
||
Can I use a Linux machine to bridge between token ring and
|
||
ethernet ?
|
||
</para>
|
||
</question>
|
||
<answer>
|
||
<para>
|
||
The simply answer in no. Briding network topologies in software
|
||
is incredibly complicated and while it is possibly, nobody has
|
||
written the code to do it. If you must bridge there are several
|
||
manufacturers that produce hardware bridges (most notably Cisco).
|
||
</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question>
|
||
<para>
|
||
OK, if I can't bridge, how do I connect my Token Ring and
|
||
ethernet networks ?
|
||
</para>
|
||
</question>
|
||
<answer>
|
||
<para>
|
||
A cheap linux box with a token ring and ethernet adapter makes
|
||
an excellent router. There is no difference between setting up
|
||
a token ring/ethernet router and an ethernet/ethernet router.
|
||
You can do masquerading (NAT) and filtering on the router as
|
||
per usual. For more details see the Netfilter howto.
|
||
</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
</qandaset>
|
||
</sect1>
|
||
<appendix id="fdl">
|
||
|
||
<appendixinfo>
|
||
<releaseinfo>
|
||
Version 1.1 March 2000
|
||
</releaseinfo>
|
||
|
||
<!-- Comment out, if any of this is left in, the docbook tools
|
||
get very confused and start putting red text in the middle
|
||
of pdf files and actually printing out the copyright and
|
||
legal notice.
|
||
|
||
Of course, this may be conflicting with tags in the main
|
||
body of the documents and causing the problem.
|
||
|
||
<copyright>
|
||
<year>2000</year><holder>Free Software Foundation, Inc.</holder>
|
||
</copyright>
|
||
|
||
<legalnotice id="fdl-legalnotice">
|
||
<para>
|
||
<address>Free Software Foundation, Inc.
|
||
<street>59 Temple Place, Suite 330</street>
|
||
<city>Boston</city>, <state>MA</state>, <postcode>02111-1307</postcode>
|
||
<country>USA</country>
|
||
</address>
|
||
Everyone is permitted to copy and distribute verbatim copies of this
|
||
licnese document, but changing is not allowed.
|
||
</para>
|
||
</legalnotice>
|
||
-->
|
||
</appendixinfo>
|
||
|
||
<title>GNU Free Documentation License</title>
|
||
|
||
<sect1 id="fdl-preamble">
|
||
<title>0. PREAMBLE</title>
|
||
|
||
<para>
|
||
The purpose of this License is to make a manual, textbook, or
|
||
other written document <quote>free</quote> in the sense of
|
||
freedom: to assure everyone the effective freedom to copy and
|
||
redistribute it, with or without modifying it, either
|
||
commercially or noncommercially. Secondarily, this License
|
||
preserves for the author and publisher a way to get credit for
|
||
their work, while not being considered responsible for
|
||
modifications made by others.
|
||
</para>
|
||
|
||
<para>
|
||
This License is a kind of <quote>copyleft</quote>, which means
|
||
that derivative works of the document must themselves be free in
|
||
the same sense. It complements the GNU General Public License,
|
||
which is a copyleft license designed for free software.
|
||
</para>
|
||
|
||
<para>
|
||
We have designed this License in order to use it for manuals for
|
||
free software, because free software needs free documentation: a
|
||
free program should come with manuals providing the same
|
||
freedoms that the software does. But this License is not limited
|
||
to software manuals; it can be used for any textual work,
|
||
regardless of subject matter or whether it is published as a
|
||
printed book. We recommend this License principally for works
|
||
whose purpose is instruction or reference.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section1">
|
||
<title>1. APPLICABILITY AND DEFINITIONS</title>
|
||
|
||
<para id="fdl-document">
|
||
This License applies to any manual or other work that contains a
|
||
notice placed by the copyright holder saying it can be
|
||
distributed under the terms of this License. The
|
||
<quote>Document</quote>, below, refers to any such manual or
|
||
work. Any member of the public is a licensee, and is addressed
|
||
as <quote>you</quote>.
|
||
</para>
|
||
|
||
<para id="fdl-modified">
|
||
A <quote>Modified Version</quote> of the Document means any work
|
||
containing the Document or a portion of it, either copied
|
||
verbatim, or with modifications and/or translated into another
|
||
language.
|
||
</para>
|
||
|
||
<para id="fdl-secondary">
|
||
A <quote>Secondary Section</quote> is a named appendix or a
|
||
front-matter section of the <link linkend="fdl-document">Document</link>
|
||
that deals exclusively with the relationship of the publishers
|
||
or authors of the Document to the Document's overall subject
|
||
(or to related matters) and contains nothing that could fall
|
||
directly within that overall subject. (For example, if the
|
||
Document is in part a textbook of mathematics, a Secondary
|
||
Section may not explain any mathematics.) The relationship
|
||
could be a matter of historical connection with the subject
|
||
or with related matters, or of legal, commercial, philosophical,
|
||
ethical or political position regarding them.
|
||
</para>
|
||
|
||
<para id="fdl-invariant">
|
||
The <quote>Invariant Sections</quote> are certain
|
||
<link linkend="fdl-secondary"> Secondary Sections</link>
|
||
whose titles are designated, as being those of Invariant
|
||
Sections, in the notice that says that the
|
||
<link linkend="fdl-document">Document</link> is released under
|
||
this License.
|
||
</para>
|
||
|
||
<para id="fdl-cover-texts">
|
||
The <quote>Cover Texts</quote> are certain short passages of
|
||
text that are listed, as Front-Cover Texts or Back-Cover Texts,
|
||
in the notice that says that the
|
||
<link linkend="fdl-document">Document</link> is released under
|
||
this License.
|
||
</para>
|
||
|
||
<para id="fdl-transparent">
|
||
A <quote>Transparent</quote> copy of the
|
||
<link linkend="fdl-document"> Document</link> means a
|
||
machine-readable copy, represented in a format whose specification
|
||
is available to the general public, whose contents can be viewed
|
||
and edited directly and straightforwardly with generic text editors
|
||
or (for images composed of pixels) generic paint programs or (for
|
||
drawings) some widely available drawing editor, and that is
|
||
suitable for input to text formatters or for automatic
|
||
translation to a variety of formats suitable for input to text
|
||
formatters. A copy made in an otherwise Transparent file format
|
||
whose markup has been designed to thwart or discourage
|
||
subsequent modification by readers is not Transparent. A copy
|
||
that is not <quote>Transparent</quote> is called
|
||
<quote>Opaque</quote>.
|
||
</para>
|
||
|
||
<para>
|
||
Examples of suitable formats for Transparent copies include
|
||
plain ASCII without markup, Texinfo input format, LaTeX input
|
||
format, SGML or XML using a publicly available DTD, and
|
||
standard-conforming simple HTML designed for human
|
||
modification. Opaque formats include PostScript, PDF,
|
||
proprietary formats that can be read and edited only by
|
||
proprietary word processors, SGML or XML for which the DTD
|
||
and/or processing tools are not generally available, and the
|
||
machine-generated HTML produced by some word processors for
|
||
output purposes only.
|
||
</para>
|
||
|
||
<para id="fdl-title-page">
|
||
The <quote>Title Page</quote> means, for a printed book, the
|
||
title page itself, plus such following pages as are needed to
|
||
hold, legibly, the material this License requires to appear in
|
||
the title page. For works in formats which do not have any title
|
||
page as such, <quote>Title Page</quote> means the text near the
|
||
most prominent appearance of the work's title, preceding the
|
||
beginning of the body of the text.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section2">
|
||
<title>2. VERBATIM COPYING</title>
|
||
|
||
<para>
|
||
You may copy and distribute the
|
||
<link linkend="fdl-document">Document</link> in any medium, either
|
||
commercially or noncommercially, provided that this License, the
|
||
copyright notices, and the license notice saying this License
|
||
applies to the Document are reproduced in all copies, and that
|
||
you add no other conditions whatsoever to those of this
|
||
License. You may not use technical measures to obstruct or
|
||
control the reading or further copying of the copies you make or
|
||
distribute. However, you may accept compensation in exchange for
|
||
copies. If you distribute a large enough number of copies you
|
||
must also follow the conditions in
|
||
<link linkend="fdl-section3">section 3</link>.
|
||
</para>
|
||
|
||
<para>
|
||
You may also lend copies, under the same conditions stated
|
||
above, and you may publicly display copies.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section3">
|
||
<title>3. COPYING IN QUANTITY</title>
|
||
|
||
<para>
|
||
If you publish printed copies of the
|
||
<link linkend="fdl-document">Document</link> numbering more than 100,
|
||
and the Document's license notice requires
|
||
<link linkend="fdl-cover-texts">Cover Texts</link>, you must enclose
|
||
the copies in covers that carry, clearly and legibly, all these
|
||
Cover Texts: Front-Cover Texts on the front cover, and
|
||
Back-Cover Texts on the back cover. Both covers must also
|
||
clearly and legibly identify you as the publisher of these
|
||
copies. The front cover must present the full title with all
|
||
words of the title equally prominent and visible. You may add
|
||
other material on the covers in addition. Copying with changes
|
||
limited to the covers, as long as they preserve the title of the
|
||
<link linkend="fdl-document">Document</link> and satisfy these
|
||
conditions, can be treated as verbatim copying in other
|
||
respects.
|
||
</para>
|
||
|
||
<para>
|
||
If the required texts for either cover are too voluminous to fit
|
||
legibly, you should put the first ones listed (as many as fit
|
||
reasonably) on the actual cover, and continue the rest onto
|
||
adjacent pages.
|
||
</para>
|
||
|
||
<para>
|
||
If you publish or distribute <link linkend="fdl-transparent">Opaque</link>
|
||
copies of the <link linkend="fdl-document">Document</link> numbering
|
||
more than 100, you must either include a machine-readable
|
||
<link linkend="fdl-transparent">Transparent</link> copy along with
|
||
each Opaque copy, or state in or with each Opaque copy a
|
||
publicly-accessible computer-network location containing a
|
||
complete Transparent copy of the Document, free of added
|
||
material, which the general network-using public has access to
|
||
download anonymously at no charge using public-standard network
|
||
protocols. If you use the latter option, you must take
|
||
reasonably prudent steps, when you begin distribution of Opaque
|
||
copies in quantity, to ensure that this Transparent copy will
|
||
remain thus accessible at the stated location until at least one
|
||
year after the last time you distribute an Opaque copy (directly
|
||
or through your agents or retailers) of that edition to the
|
||
public.
|
||
</para>
|
||
|
||
<para>
|
||
It is requested, but not required, that you contact the authors
|
||
of the <link linkend="fdl-document">Document</link> well before
|
||
redistributing any large number of copies, to give them a chance
|
||
to provide you with an updated version of the Document.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section4">
|
||
<title>4. MODIFICATIONS</title>
|
||
|
||
<para>
|
||
You may copy and distribute a
|
||
<link linkend="fdl-modified">Modified Version</link> of the
|
||
<link linkend="fdl-document">Document</link> under the conditions of
|
||
sections <link linkend="fdl-section2">2</link> and
|
||
<link linkend="fdl-section3">3</link> above, provided that you release
|
||
the Modified Version under precisely this License, with the
|
||
Modified Version filling the role of the Document, thus
|
||
licensing distribution and modification of the Modified Version
|
||
to whoever possesses a copy of it. In addition, you must do
|
||
these things in the Modified Version:
|
||
</para>
|
||
|
||
<itemizedlist mark="opencircle">
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>A</title>
|
||
<para>
|
||
Use in the
|
||
<link linkend="fdl-title-page">Title Page</link> (and on
|
||
the covers, if any) a title distinct from that of the
|
||
<link linkend="fdl-document">Document</link>, and from those of
|
||
previous versions (which should, if there were any, be
|
||
listed in the History section of the Document). You may
|
||
use the same title as a previous version if the original
|
||
publisher of that version gives permission.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>B</title>
|
||
<para>
|
||
List on the
|
||
<link linkend="fdl-title-page">Title Page</link>, as authors,
|
||
one or more persons or entities responsible for authorship
|
||
of the modifications in the
|
||
<link linkend="fdl-modified">Modified Version</link>,
|
||
together with at least five of the principal authors of
|
||
the <link linkend="fdl-document">Document</link> (all of
|
||
its principal authors, if it has less than five).
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>C</title>
|
||
<para>
|
||
State on the
|
||
<link linkend="fdl-title-page">Title Page</link> the name
|
||
of the publisher of the
|
||
<link linkend="fdl-modified">Modified Version</link>, as the
|
||
publisher.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>D</title>
|
||
<para>
|
||
Preserve all the copyright notices of the
|
||
<link linkend="fdl-document">Document</link>.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>E</title>
|
||
<para>
|
||
Add an appropriate copyright notice for your modifications
|
||
adjacent to the other copyright notices.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>F</title>
|
||
<para>
|
||
Include, immediately after the copyright notices, a
|
||
license notice giving the public permission to use the
|
||
<link linkend="fdl-modified">Modified Version</link> under
|
||
the terms of this License, in the form shown in the
|
||
Addendum below.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>G</title>
|
||
<para>
|
||
Preserve in that license notice the full lists of
|
||
<link linkend="fdl-invariant"> Invariant Sections</link>
|
||
and required
|
||
<link linkend="fdl-cover-texts">Cover Texts</link> given
|
||
in the <link linkend="fdl-document">Document's</link>
|
||
license notice.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>H</title>
|
||
<para>
|
||
Include an unaltered copy of this License.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>I</title>
|
||
<para>
|
||
Preserve the section entitled <quote>History</quote>, and
|
||
its title, and add to it an item stating at least the
|
||
title, year, new authors, and publisher of the
|
||
<link linkend="fdl-modified">Modified Version </link>as given on
|
||
the <link linkend="fdl-title-page">Title Page</link>. If
|
||
there is no section entitled <quote>History</quote> in the
|
||
<link linkend="fdl-document">Document</link>, create one
|
||
stating the title, year, authors, and publisher of the
|
||
Document as given on its Title Page, then add an item
|
||
describing the Modified Version as stated in the previous
|
||
sentence.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>J</title>
|
||
<para>
|
||
Preserve the network location, if any, given in the
|
||
<link linkend="fdl-document">Document</link> for public access
|
||
to a <link linkend="fdl-transparent">Transparent</link>
|
||
copy of the Document, and likewise the network locations
|
||
given in the Document for previous versions it was based
|
||
on. These may be placed in the <quote>History</quote>
|
||
section. You may omit a network location for a work that
|
||
was published at least four years before the Document
|
||
itself, or if the original publisher of the version it
|
||
refers to gives permission.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>K</title>
|
||
<para>
|
||
In any section entitled <quote>Acknowledgements</quote> or
|
||
<quote>Dedications</quote>, preserve the section's title,
|
||
and preserve in the section all the substance and tone of
|
||
each of the contributor acknowledgements and/or
|
||
dedications given therein.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>L</title>
|
||
<para>
|
||
Preserve all the <link linkend="fdl-invariant">Invariant
|
||
Sections</link> of the
|
||
<link linkend="fdl-document">Document</link>, unaltered in their
|
||
text and in their titles. Section numbers or the
|
||
equivalent are not considered part of the section titles.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>M</title>
|
||
<para>
|
||
Delete any section entitled
|
||
<quote>Endorsements</quote>. Such a section may not be
|
||
included in the
|
||
<link linkend="fdl-modified">Modified Version</link>.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<formalpara>
|
||
<title>N</title>
|
||
<para>
|
||
Do not retitle any existing section as
|
||
<quote>Endorsements</quote> or to conflict in title with any
|
||
<link linkend="fdl-invariant">Invariant Section</link>.
|
||
</para>
|
||
</formalpara>
|
||
</listitem>
|
||
|
||
</itemizedlist>
|
||
|
||
<para>
|
||
If the <link linkend="fdl-modified">Modified Version</link>
|
||
includes new front-matter sections or appendices that qualify as
|
||
<link linkend="fdl-secondary">Secondary Sections</link> and
|
||
contain no material copied from the Document, you may at your
|
||
option designate some or all of these sections as invariant. To
|
||
do this, add their titles to the list of
|
||
<link linkend="fdl-invariant">Invariant Sections</link> in the
|
||
Modified Version's license notice. These titles must be
|
||
distinct from any other section titles.
|
||
</para>
|
||
|
||
<para>
|
||
You may add a section entitled <quote>Endorsements</quote>,
|
||
provided it contains nothing but endorsements of your
|
||
<link linkend="fdl-modified">Modified Version</link> by various
|
||
parties--for example, statements of peer review or that the text
|
||
has been approved by an organization as the authoritative
|
||
definition of a standard.
|
||
</para>
|
||
|
||
<para>
|
||
You may add a passage of up to five words as a
|
||
<link linkend="fdl-cover-texts">Front-Cover Text</link>, and a
|
||
passage of up to 25 words as a
|
||
<link linkend="fdl-cover-texts">Back-Cover Text</link>, to
|
||
the end of the list of
|
||
<link linkend="fdl-cover-texts">Cover Texts</link>
|
||
in the <link linkend="fdl-modified">Modified Version</link>.
|
||
Only one passage of Front-Cover Text and one of Back-Cover Text
|
||
may be added by (or through arrangements made by) any one
|
||
entity. If the <link linkend="fdl-document">Document</link>
|
||
already includes a cover text for the same cover, previously
|
||
added by you or by arrangement made by the same entity you are
|
||
acting on behalf of, you may not add another; but you may
|
||
replace the old one, on explicit permission from the previous
|
||
publisher that added the old one.
|
||
</para>
|
||
|
||
<para>
|
||
The author(s) and publisher(s) of the
|
||
<link linkend="fdl-document">Document</link> do not by this License
|
||
give permission to use their names for publicity for or to
|
||
assert or imply endorsement of any
|
||
<link linkend="fdl-modified">Modified Version </link>.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section5">
|
||
<title>5. COMBINING DOCUMENTS</title>
|
||
|
||
<para>
|
||
You may combine the <link linkend="fdl-document">Document</link>
|
||
with other documents released under this License, under the
|
||
terms defined in <link linkend="fdl-section4">section 4</link>
|
||
above for modified versions, provided that you include in the
|
||
combination all of the
|
||
<link linkend="fdl-invariant">Invariant Sections</link> of all
|
||
of the original documents, unmodified, and list them all as
|
||
Invariant Sections of your combined work in its license notice.
|
||
</para>
|
||
|
||
<para>
|
||
The combined work need only contain one copy of this License,
|
||
and multiple identical
|
||
<link linkend="fdl-invariant">Invariant Sections</link> may be
|
||
replaced with a single copy. If there are multiple Invariant
|
||
Sections with the same name but different contents, make the
|
||
title of each such section unique by adding at the end of it,
|
||
in parentheses, the name of the original author or publisher of
|
||
that section if known, or else a unique number. Make the same
|
||
adjustment to the section titles in the list of Invariant Sections
|
||
in the license notice of the combined work.
|
||
</para>
|
||
|
||
<para>
|
||
In the combination, you must combine any sections entitled
|
||
<quote>History</quote> in the various original documents,
|
||
forming one section entitled <quote>History</quote>; likewise
|
||
combine any sections entitled <quote>Acknowledgements</quote>,
|
||
and any sections entitled <quote>Dedications</quote>. You must
|
||
delete all sections entitled <quote>Endorsements.</quote>
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section6">
|
||
<title>6. COLLECTIONS OF DOCUMENTS</title>
|
||
|
||
<para>
|
||
You may make a collection consisting of the
|
||
<link linkend="fdl-document">Document</link> and other documents
|
||
released under this License, and replace the individual copies
|
||
of this License in the various documents with a single copy that
|
||
is included in the collection, provided that you follow the
|
||
rules of this License for verbatim copying of each of the
|
||
documents in all other respects.
|
||
</para>
|
||
|
||
<para>
|
||
You may extract a single document from such a collection, and
|
||
distribute it individually under this License, provided you
|
||
insert a copy of this License into the extracted document, and
|
||
follow this License in all other respects regarding verbatim
|
||
copying of that document.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section7">
|
||
<title>7. AGGREGATION WITH INDEPENDENT WORKS</title>
|
||
|
||
<para>
|
||
A compilation of the <link linkend="fdl-document">Document</link>
|
||
or its derivatives with other separate and independent documents
|
||
or works, in or on a volume of a storage or distribution medium,
|
||
does not as a whole count as a
|
||
<link linkend="fdl-modified">Modified Version</link>
|
||
of the Document, provided no compilation copyright is claimed
|
||
for the compilation. Such a compilation is called an
|
||
<quote>aggregate</quote>, and this License does not apply to the
|
||
other self-contained works thus compiled with the Document , on
|
||
account of their being thus compiled, if they are not themselves
|
||
derivative works of the Document. If the
|
||
<link linkend="fdl-cover-texts">Cover Text</link> requirement of
|
||
<link linkend="fdl-section3">section 3</link> is applicable to these
|
||
copies of the Document, then if the Document is less than one
|
||
quarter of the entire aggregate, the Document's Cover Texts may
|
||
be placed on covers that surround only the Document within the
|
||
aggregate. Otherwise they must appear on covers around the whole
|
||
aggregate.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section8">
|
||
<title>8. TRANSLATION</title>
|
||
|
||
<para>
|
||
Translation is considered a kind of modification, so you may
|
||
distribute translations of the
|
||
<link linkend="fdl-document">Document</link> under the terms of
|
||
<link linkend="fdl-section4">section 4</link>. Replacing
|
||
<link linkend="fdl-invariant"> Invariant Sections</link> with
|
||
translations requires special permission from their copyright
|
||
holders, but you may include translations of some or all
|
||
Invariant Sections in addition to the original versions of these
|
||
Invariant Sections. You may include a translation of this
|
||
License provided that you also include the original English
|
||
version of this License. In case of a disagreement between the
|
||
translation and the original English version of this License,
|
||
the original English version will prevail.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section9">
|
||
<title>9. TERMINATION</title>
|
||
|
||
<para>
|
||
You may not copy, modify, sublicense, or distribute the
|
||
<link linkend="fdl-document">Document</link> except as expressly
|
||
provided for under this License. Any other attempt to copy,
|
||
modify, sublicense or distribute the Document is void, and will
|
||
automatically terminate your rights under this License. However,
|
||
parties who have received copies, or rights, from you under this
|
||
License will not have their licenses terminated so long as such
|
||
parties remain in full compliance.
|
||
</para>
|
||
</sect1>
|
||
|
||
<sect1 id="fdl-section10">
|
||
<title>10. FUTURE REVISIONS OF THIS LICENSE</title>
|
||
|
||
<para>
|
||
The <ulink type="http" url="http://www.gnu.org/fsf/fsf.html">
|
||
Free Software Foundation</ulink> may publish new, revised versions
|
||
of the GNU Free Documentation License from time to time. Such
|
||
new versions will be similar in spirit to the present version, but
|
||
may differ in detail to address new problems or concerns. See
|
||
<ulink type="http" url="http://www.gnu.org/copyleft">
|
||
http://www.gnu.org/copyleft/</ulink>.
|
||
</para>
|
||
|
||
<para>
|
||
Each version of the License is given a distinguishing version
|
||
number. If the <link linkend="fdl-document">Document</link>
|
||
specifies that a particular numbered version of this License
|
||
<quote>or any later version</quote> applies to it, you have the
|
||
option of following the terms and conditions either of that
|
||
specified version or of any later version that has been
|
||
published (not as a draft) by the Free Software Foundation. If
|
||
the Document does not specify a version number of this License,
|
||
you may choose any version ever published (not as a draft) by
|
||
the Free Software Foundation.
|
||
</para>
|
||
</sect1>
|
||
</appendix>
|
||
|
||
</article>
|
||
|
||
<!-- End document stuff
|
||
Local variables:
|
||
mode: sgml
|
||
sgml-omittag:t
|
||
sgml-shortag:t
|
||
sgml-namecase-general:t
|
||
sgml-general-insert-case:lower
|
||
sgml-minimize-attributes:nil
|
||
sgml-always-quote-attributes:t
|
||
sgml-indent-step:1
|
||
sgml-indent-data:nil
|
||
sgml-parent-document:nil
|
||
sgml-exposed-tags:nil
|
||
sgml-local-catalogs:nil
|
||
sgml-local-ecat-files:nil
|
||
End:
|
||
-->
|