
                             Token-Ring mini-HOWTO
                                       
@:Mike Eckhoff [1]mike.e@emissary.aus-etc.com
Ķ:Tx [2]matterchen@sinamail.com

   v4.1, 7 January 1998 ½Ķ 15 December 2000
     _________________________________________________________________
   
   oOΨUAwˮ֤߭׸ɵ{Pɸյ۫Xӯdߪƶ.ګĳAb
   յۦw˥ Linux Ϊ Token Ring Xʵ{e̦n\Lo.
     _________________________________________________________________
   
   SOP
           Mark Swanson, Peter De Schrijver, David Morris, Paul Norton
          HΥɶbgκ@Xʵ{oQڦbo̦CXH. õ
          packrat P¥Lb linux-tr listserv .
          
1. vMب

2. wݨD

3. nݨD

4. w˩M]w

5. NetTools w

6. wD

7. DP^

8. MSw

     * 8.1 Slackware 96
     * 8.2 RedHat 4.0+
     _________________________________________________________________
   
   SOP
           Mark Swanson, Peter De Schrijver, David Morris, Paul Norton
          HΥɶbgκ@Xʵ{oQڦbo̦CXH. õ
          packrat P¥Lb linux-tr listserv .
          
1. vMب

   ڭ̨äOҳo|XAt. ܦhHwgϥιLoäwg\
   ab linux Ww Token Ring .
   
   ϥΥ,dۭt!!! ... ڭ̹]yDätd.
   
   pGA󥻤奼쪺D,ШӫH...
   
     [3]mike.e@emissary.aus-etc.com
     
   A]iHӫH[J Linux W Token Ring l׾
   [4]majordomo@emissary.aus-etc.com ӫHeХ]t:
   
D linux-tr

   󪺪vk Michael Eckhoff (c) 1995-1998. unvŧiOdbC
   ,AiHHΦHNƻs. ӷ~ƻs]OQ\åby;O,
   qڽTwA̷sT.
   
2. wݨD

   TwAQXʵ{䴩 Token Ring d. ثeu Tropic Q
   .
   
   ڭӤHwiΪd:
     * 3Com 3C619B Token Link
     * 3Com 3C619C Token Link
     * HyperRing Classic 16/4
     * IBM Turbo 16/4 ISA adapter**
     * IBM Token Ring Auto 16/4 ISA adapter
     * IBM Token Ring Auto 16/4 adapter /A
     * IBM Token Ring 16/4 adapter /A
     * IBM Token Ring adapter /A
     * IBM Token Ring adapter II (4 Megabit only)
     * IBM 16/4 ISA Token Ring card (16bit)
     * IBM 16/4 ISA Token Ring card (8bit)
     * Madge Blue (100% IBM compatable)
       
   L 100%; IBM ۮe shared-ram dӤ]iHQu@. pGLi
   гq.
   
   ĳAȥB 16KB Shared RAM.
   
   i঳Dd:
   
   IBM Turbo 16/4 ISA adapter
          ƹWdb Linux Uu@Q. O,AH Auto 16/4 ۮe
          ҦB@. ]wd²檺覡OHd LANAID disks åHU
          O:
          
LANAIDC /FAST=AUTO16

          AӮھڥϥ LANAIDC or LANAID ӳ]wd.
          
   Token-Ring Network 16/4 Adapter II
          dLku@. O⦹dM IBM Token Ring d II (4mbit) d
          VF. oO ISA  DMA/Busmaster d.
          
   3Com TokenLink Velocity ISA
          Aγ\idB@. ھڬYǪ^;Ǥu@L~,]HD.
          
   PCI adapters
          ثeS IBM PCI dQ䴩.
          
   IBM Auto LanStreamer 16/4 Token-Ring PCI Adapter
          ثe䴩,wgbi䴩. wpɬO Full Duplex.
          
3. nݨD

   dNƶ :
          pGAtή֤߬O 2.0 H᪺,и쥻MSq
          (distribution specific section). HUOw 1.2֤ߦӨ.
          
   o̰]Awgw˨åiB@ Linux.
   
   iѥHUmo Token Ring ׸ɵ{:
   
     [5]ftp://ftp.wayne.esu1.k12.ne.us/pub/Linux/Token-Ring/TokenRing.pa
     tch-1.2.0.gz
     
   iqUCmo Net-Tools ׸ɵ{
   
     [6]ftp://ftp.wayne.esu1.k12.ne.us/pub/Linux/Token-Ring/net-tools-1.
     2.0.patched.tar.gz
     
   ׸ɵ{sW@ӥؿ (Ҧp /usr/src/patches) ç׸ɵ{bo.
   
mkdir /usr/src/patches             central directory for patch storage
mkdir /usr/src/patches/token       place TokenRing patch here

4. w˩M]w

   dNƶ :
          oǻOw 1.2  token ring 䴩֤߭׸ɵ{. pGA
          2.0 HW֤,AunbssĶثe֤߮,䴩 token ring
          ﶵ "yes"  "module" Yi.
          
    1.  Token Ring dw˨qWó]wAQnϥΪ\. ̦nb
       DOS ҤUզdL~Ab Linux Wϥ. pGb DOS Uu@,
       ܦiάۦP]wȦb Linux ]. pGoO Plug and Play (H
       Y) d,A]wiHu@,Oo]wȰOU.
    2. AtΥؿ@ӳƥ. AݭnNo׸ɵ{qA֤ߤ
       æ^Atή,oNoܭn.
       
cd /usr/src
tar cvzhf linuxbak.tar.gz linux

    3. Y Token Ring ׸ɵ{.
       
cd /usr/src/patches/token
gzip -d TokenRing.patch-1.2.0.gz

    4. A֤߼W[ TokenRing \.
       
cd /usr/src/linux
patch -p1 < /usr/src/patches/token/TokenRing.patch-1.2.0

       --
       
patch -p1 < <directory-of-patchfile>/TokenRing.patch-1.2.0

    5. q֤ߤjM]׸ɳy rejects (X) ç@A.
       
find . -name \*.rej -print

    6. q֤ߤjM orig ɮרçR.
       
find . -name \*.orig -print | xargs rm

    7. sĶ֤.
       
        dNƶNOTE:
                pGA swap ΰ,ЧL] active.
                
cd /usr/src/linux
make config

       (׸ɵ{|NHUӿﶵ[J config.in
       
Token Ring support (CONFIG_TR) [y]

       (٦HUo...)
       
IBM Tropic chipset based adaptor support (CONFIG_IBMTR) [y]

make dep
make clean
make zImage

    8. ]w LILO. A֤ vmlinuz W vmlinuz.old As֤߽ƻs
       vmlinuz. NڪtΦӨ,ƻsHUXBJ
       
     /usr/src/linux/arch/i386/boot/zImage to /vmlinuz ýs
     /etc/lilo.conf Ϯ֤߯J.
       æbܲŸU "lilo".
    9. A{bis}èϥ Token Ring dF. ]wTаѦҮM
       Sq (distribution specific section).
       
5. NetTools w

   NetTools packages(])ܦh]pô򥻤u. ]t{
   arp, rarp, route, ifconfig and netstat. ]oǵ{w]äF Token
   Ring, A[J NetTools ׸ɵ{oǵ{P Token Ring Xʵ{u
   @a󦳮Ĳv.
   
   dNƶ :
          ثe 1.2.x ֤ߥΪ NetTools O 1.2.0 . pGAΪO 2.0
          ֤,ܥiA NetTools wO̷sF. צp,Aib
          HUm̷sl:
          
     [7]ftp://tapac.inka.de/pub/comp/Linux/networking/NetTools/
     
    1. (1)ƻsøѶ} NetTools lXؿ /usr/src
       
cp net-tools-1.2.0.patched.tar.gz  /usr/src
tar -zxvof /usr/src/net-tools-1.2.0.tar.gz

    2. (5) Make net-tools ɮ.
       
cd /usr/src/net
make install

6. wD

   ڭӤHϥΦXʵ{XGSD. wgB@F@qɶ.
   
   pGAb 1.2.x ֤ߨϥΦXʵ{D,Чs 2.0 ֤. 
   g@ɪ̷s֤ߪO 2.0.33. Token Ring Xʵ{ 1.2 Hᦳܤj
   ﵽ,ӥBjS^.
   
   ~,A 2.0 ֤ߧ@ token ring ׸. ֤ߤwg.pGAQ
   շs\઺,] 2.1 ֤ߪ׸ɵ{.
   
7. DP^

   Q:
          Token Ring Xʵ{sĶ module(Ҳ) ?
          
   A:
          iH, u@a۷n.bsĶ module ɦB~Ѽƥi. pG
          A "spoof(F)" nw˵{ݭn,Ҧp redhat boot disks 
          token ring dݦ ethernet(AӺ) ˸m ( NFS/FTP w˵
          ),AiH "device" oӰѼƱjw]Ƥ tr0 oӦW. 
          AhidɳoӤki|X. jhɭԴNOo̦Ǥۮe
          ʭnJA.:
          
/sbin/insmod ibmtr device=eth0

   Q:
          ڤ@J~T "0011". oOƻN?
          
   A:
          TwAsSDάOA token ring d loopback
          connector.oӿ~TOLk} token ring. oر;
          99.99% O]SQJ.
          
   C:
          pGA˭ĥdB IO 0x220,ܦi token ring d|M
          0xa20  IO Ĭ.
          
          pGAo{Q䴩dLku@ӧASĥd,иյۧA
          d]w 0xa24 άO / ĥd.
          
          ~...
          
          o̦@ǧڦ Token Ring M Linux  email. F
          ,ڧ䤤@ email neRh.
          
        Q:
                
From: "Mr. Chuck Rickard" <chuck@gl.umbc.edu>
Subject: Re: Token Ring Kernel patch.

ڤw[J֤ߨíssĶ.}ɥ,"tr0: Can't assign device to adapter"
and again for tr1".zݪkO?
(HU...)

I d/l'd the patch, applied it, and re-compiled. When booting it said,
"tr0: Can't assign device to adapter" and again for tr1.  Any ideas?

Thanks!

Chuck Rickard
(chuck@umbc8.umbc.edu)

        A:
                
From: David Morris <dwm@shell.portal.com>

                pGuoӰT,ܦdT PIO request (Ѧ
                segment = inb(PIOaddr) in ibmtr.c) wWX Token Ring 
                dҦb IO address dF. (HU...)
                
                When this is the only message issued, it means that the
                PIO request for adapter information (see segment =
                inb(PIOaddr) in ibmtr.c) was so out of range that there
                is no TR card at that IO address.
                
        Q:
                
From: Mike Glover <glover@credit.erin.utoronto.ca>
Subject: Token ring problems.
P±z^.ڷQڤeݪD,{bs@M.צp,HUſO}q
/var/adm/messages ۥXӪ.
(HU奼R...)

Thanks for responding. I was starting to thing that I posted incorrectly,
and I was about to post again. Anyway, the following  clip is part of my
/var/adm/messages file from when I boot up.

May  2 10:03:14 linux kernel: tr0: Unable to assign adapter to device.
May  2 10:03:14 linux kernel: tr1: Unable to assign adapter to device.

oq, tr0: Unable to assign adapter device.۹xZۧ.oT²uܷϪ
pBz.ڥuDڨSw token ring T,ڤpU.
The section, tr0: Unable to assign adapter device. is what kinda confuses
me. The documentation is slim at best so I didn't know what to do with
the message. I know I didn't assign any token ring information,
and I didn't know where to do it.

The hardware(w):
            Its a PC clone (Dell OMNIPLEX 560 to be exact)
            The token ring card is a Olicom 16/4 Adapter.

ڦ DOS Ҫ token ring Xʵ{ӥBWsW,ҥHOoidD.
ڷQiOڦb Linux U]wɩFƻpF.
I have DOS token ring drivers and it snaps into the network, so there is
nothing wrong with the card. I think, I am just missing something really
small in the config on the Linux side.

        A:
                Olicom 16/4 däϥ Tropic .յۥhΤW HOWTO
                ҦCd. (HU...)
                
                The Olicom 16/4 Adapter does not use the Tropic Chipset.
                Try using one of the cards that are listed at the top of
                the HOWTO.
                
        Q:
                
From: Mike Glover <glover@credit.erin.utoronto.ca>
Subject: Found an IBM card...

ڵo{@i IBM token ring dåBi@B,GnB.(b
/etc/rc.d/rc.inet1  ifconfig اڦ eth0 令 tr0)
(...)
I found myself an IBM token ring card and I got a little further,
but still not luck. (I did change /etc/rc.d/rc.inet1 ifconfig entry
from eth0 to tr0)

ޫ,HUO /var/adm/messages e:
Anyway, here is part of the /var/adm/messages file:
May  2 16:23:07 linux kernel: IPX Portions Copyright (c) 1995 Caldera, Inc.
May  2 16:23:07 linux kernel: tr0: PIOaddr:  a20 seg/intr: b8 mmio base:
   000dc000 intr: 0
May  2 16:23:07 linux kernel: tr0: Channel ID string not found for PIOaddr: a20
May  2 16:23:07 linux kernel: tr0: Expected for ISA: 5049434f3631313039393020
May  2 16:23:07 linux kernel: tr0:            found: 000902003021111000182000
May  2 16:23:07 linux kernel: tr0: Expected for MCA: 4d4152533633583435313820
May  2 16:23:07 linux kernel: tr0: Unable to assign adapter to device.
May  2 16:23:07 linux kernel: tr1: Unable to assign adapter to device.
May  2 16:23:07 linux kernel: PPP: version 0.2.7 (4 channels) NEW_TTY_DRIVERS
   OPTIMIZE_FLAGS


oƻ?ڬݤX.
Does this tell you anything. It tells me little.

        A:
                
From: David Morris <dwm@shell.portal.com>

                oTN MMTO area άO TR dOĬyM
                dۮe (ܤֳoT).
                
                This message means either a memory conflict with the MMIO
                area or a TR card which is not compatible with the driver
                (at least the signature isn't known).
                
        Q:
                
From: Mike Glover <glover@credit.erin.utoronto.ca>
Subject: Almost there...

The following sample is what I'm getting on my messages file:

May  3 14:50:24 linux kernel: tr0: now opening the board...
May  3 14:50:24 linux kernel: tr0: board opened...
May  3 15:11:47 linux kernel: tr0: Arrg. Transmitter busy for more than 50 msec
.
   Donald resets adapter, but resetting
May  3 15:11:47 linux kernel:  the IBM tokenring adapter takes a long time.
   It might not even help when the
May  3 15:11:47 linux kernel:  ring is very busy, so we just wait a little long
er
   and hope for the best.
May  3 15:11:47 linux kernel: tr0: Arrg. Transmitter busy for more than 50 msec
.
   Donald resets adapter, but resetting
May  3 15:11:47 linux kernel:  the IBM tokenring adapter takes a long time.
   It might not even help when the
May  3 15:11:47 linux kernel:  ring is very busy, so we just wait a little long
er
   and hope for the best.
May  3 15:11:47 linux kernel: tr0: Arrg. Transmitter busy for more than 50 msec
.
   Donald resets adapter, but resetting

Arrg إu telnet ,rlogin  ftp 컷ݾɤ~|.Wzή,
|@}l.
ڲLw˸m(ڪ SCSI d)dWu@.@˦D,oưFw鶡 IRQ
Ĭ𪺱.
HUOd DIP switches:
The Arrg entry only comes when I telnet, rlogin or ftp to a remote
machine. Once that happens, the connection hangs big time. I took out all
the other hardware (which was 1 SCSI card) and tried running the card all
by itself. Same thing, so it eliminates hardware IRQ's from getting into
a yelling match. The following are the DIP switches on the card:

1       Up      |
2       Down    |
3       Down    |       According to the manual this sets the
4       Up      |       base address to CC000 Which is fine for
5       Up      |       my machine.
6       Down    |
7       Down    +       This sets the IRQ to 2. Which is also fine
8       Down    +
9       Up      X       Primary Lan adapter. Which it is.
10      Up      =       16 KB shared RAM size. This OK?
11      Down    =
12      Up      #       16 Mbps Data rate.

hóoO_uO dip switches,άOڳ]wɪ route table D.
I was wondering if it is in fact the dip switches, or the way I have
configured my route table and other network info.

ttfn,
Mike

        A:
                b 2.0 ֤ߤ Arrg DȱodN.Ҧ׸ɵ{S^
                Ҩ 1.2 ,{bڦbQonʤF.pGALh Arrg T
                D,A@NɯŨ 2.0 ֤߶? The Arrg problem is
                pretty much taken care of in the 2.0 kernels. All of the
                patches have not been ported back to 1.2, and I doubt
                that they will be. If you get excessive Arrg messages, do
                yourself a favour and move to Linux 2.0.
                
8. MSw

8.1 Slackware 96

   pGAtΥL "netconfig" ,в{b. ]wȦpPtάOB
   Ethernet(AӺ) .
   
   s /etc/rc.d/rc.inet1 V tr0 device(])ӤOeth0 device(])
   
   Aӷ|ݨ즳@湳o
   
/sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}

   o令
   
/sbin/ifconfig tr0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}

8.2 RedHat 4.0+

   b RedHat Linux @ӫܴΪ Xwindows xiH]w modules(Ҳ) M
   devices(]). pGAbw RedHat ɴNwgˤWF token ring d,
   AӤwgF token ring Ҳդ䴩F. ոեHUO:
   
modprobe ibmtr

   ݬݧAoƻ. pGAdQ䴩,ܥiAwgϥΥF.
   
   ]w̦nΪO control-panel(x). A|Q kernel module
   control(Ҳծ֤߱) ëܥJ token ring oӷs]. 
   |b}ɦ۰ʸJ ibmtr oXʵ{. MA|QLպAüW[s
   ],tr,õ@ ip address,.
   
   AiHs}æb RedHat Linux 4.0+ Wϥ Token Ring dF.
   
   ЯdN RedHat OaLHg. ]ڦ@qɶS
   Lڪ RedHat tΤF,{boO̰Oмg. צp,̥iHFA
   .

References

   1. mailto:mike.e@emissary.aus-etc.com
   2. mailto:matterchen@sinamail.com
   3. mailto:mike.e@emissary.aus-etc.com
   4. mailto:majordomo@emissary.aus-etc.com
   5. ftp://ftp.wayne.esu1.k12.ne.us/pub/Linux/Token-Ring/TokenRing.patch-1.2.0.gz
   6. ftp://ftp.wayne.esu1.k12.ne.us/pub/Linux/Token-Ring/net-tools-1.2.0.patched.tar.gz
   7. ftp://tapac.inka.de/pub/comp/Linux/networking/NetTools/
