Help file for the oltr driver. ============================== What is the oltr driver? ======================== The oltr driver is a device driver for the Olicom Token-Ring adapters. This driver is based on the lower level driver called the Power Mach Works (PMW) kit. Currently the PMW kit supports: - OC-3118 Token-Ring ISA 16/4 Adapter - OC-3136 Token-Ring PCI 16/4 Adapter - OC-3137 Token-Ring PCI/II 16/4 Adapter - RF-3139 RapidFire 3139 Token-Ring 16/4 PCI Adapter - RF-3140 RapidFire 3140 Token-Ring 16/4 PCI Adapter - RF-3141 RapidFire 3141 Token-Ring 16/4 PCI Fiber Adapter - RF-3540 RapidFire 3540 HSTR 100/16/4 PCI Adapter Olicom PC Cards are not suppported. Network card detection ====================== The driver automatically probes for all cards. If the driver is linked into a Linux 2.0.x kernel, note that Linux 2.0 by default only detects one network card; if you have multiple network adapters (Ethernet and/or Token-Ring), you will need to use the "ether=0,0,eth1" option to enable auto-detection of the second (eth1) adapter, "ether=0,0,eth2" to auto-detect the third (eth2) adapter and so on. See the Linux BootPrompt-HOWTO for more details. If the driver is built as a module, you can disable the probing for ISA cards by passing the option "force_probe=0" on the insmod or modprobe command line, or put it into your /etc/conf.modules. You can also tell the driver not to probe, but use an adapter located at a specific I/O port address by passing the option "io=0xA00" if the adapter is configured for I/O port A00, "io=0xA60" if it is configured for I/O port A60 etc. Legal values for the I/O address are 0xA00 .. 0xBE0, in increments of 20 (hexadecimal). Device names ============ For Linux 2.0.x the device to use for ifconfig will simply be called "ethX" (where X is a number starting at 0). The naming of token ring interfaces as "ethX" is due to the fact that Token-Ring support in Linux 2.0 is not quite pre- pared for anything but a single IBM adapter, if the "trX" naming is used. By using the "ethX" naming this problem is avoided. Some way or another if you insert the oltr driver next to the ibmtr driver, both tend to get the same device name. I think the problem is in the ibmtr driver: The oltr driver correctly allocates new ethX device names next to ordinary ethernet drivers. Starting with Linux 2.1.x, the driver uses "trX". Driver options: LAA (Locally Administered Adress) and Speed =========================================================== When the driver is linked into the kernel, it uses the settings configured in hardware for the ring-speed and MAC address. You cannot pass options to the driver from LILO or loadlin. When you load the driver as a loadable kernel module, there are two configuration options: 1) The 'laa' option allows the use of a 'locally administered adress' (LAA). E.g. to assign the address 40.00.12.34.56.78 to the first Olicom card, use 'laa="40.00.12.34.56.78"'. Note that the actual syntax for this option requires proper use of quotes and backslah-escapes to work correctly with your shell and the modprobe or insmod programs: - If you configure this option in /etc/conf.modules, use options oltr laa=\"40.00.12.34.56.78\" - If you load the module with modprobe, use modprobe oltr laa=\\\"40.00.12.34.56.78\\\" - If you load the module with insmod (don't; use modprobe instead) insmod oltr.o laa=\"40.00.12.34.56.78\" According to Token-Ring specifications, the first byte of a LAA must be in the range 40-7F hexadecimal. If you want to set LAA's for more than one card, add all of the LAA's, separated with commas. 2) The 'speed' option selects the ring-speed used by the cards. Legal values are 16 and 4, the default is that which is configured in hardware (can be changed with the setup and configuration tools for your adapter). Note that the RapidFire adapters support speed-sense, i.e. the adapter will select 4, 16 (or 100) Mbps automatically. However, if the adapter is the only station on the ring, the adapter will not insert unless the speed is forced, i.e. a speed parameter is given. There are some user tuneable compile time parameters near the top of the oltr.c source file. Read the comments for an explanation. You can assume that these are set to reasonable defaults: they can tune performance a little bit, that sort of stuff. I expect a difference of less than a few percent, so I didn't bother to do the benchmarks. If you want, go ahead and benchmark it, and report the results. Support ======= If you have problems with this driver, support is available through the normal Olicom support channels, for example by Email at support@olicom.dk or support@olicom.com. Note that this is not for general linux-networking help. Read the networking-howto or ask a local Linux guru. Compatibility ============= SMP --- This driver should work for SMP. Architectures ------------- This driver is NOT compatible with non-intel architectures. For one, the PMW kit is not available for other architectures. Secondly the PMW kit is most likely not 64bit safe. IPX (and other non-IP protocols) -------------------------------- This version of the driver fully supports IPX, thanks to the efforts of Gilbert Ramirez Jr. <gram@verdict.uthscsa.edu>. In fact, any protocol supported by the Linux networking stack should work with this driver. DHCP ---- For Linux 2.0 : The dhcpcd DHCP client as shipped with the Red Hat distribution (and possibly others) do not support Token-Ring. A version of dhcpd 0.65 that works on Token-Ring networks is available at ftp://ftp.olicom.dk/releases/Unix-Driver/Linux/unsupported/dhcp/ Also, the dhclient program from the Internet Software Consortium (www.isc.org) implementation of DHCP supports Token-Ring. For Linux 2.2 : Currently (May 1999), there are no DHCP clients that work with the Token-Ring. tcpdump ------- The current release of tcpdump (and the "pcap" library used by tcpdump) do not support decoding of Token-Ring frames. Keith Owens provided an "experimental patch" for tcpdump 3.3 which is available at ftp://ftp.ocs.com.au/pub/tcpdump-3.3-tokenring.gz - however, this patch assumes that token-ring devices are named "trX" and thus does not work with the Olicom driver and Linux 2.0. For this combination, you need both Keith's patch and a patch from Olicom. Both can be found at ftp://ftp.olicom.dk/pub/Releases/Unix-Driver/Linux/unsupported/tcpdump/ It is uncertain, whether the tcpdump patch works with Linux 2.2.x kernels. OC-3118 ISA adapters and Plug-and-Play ====================================== The OC-3118 is a Plug-and-Play (PnP) card. If you don't have a PNP bios, you need to configure the device using the isapnp tools. See below for a configuration that works for me. Also attached is the isapnptools LSM entry. If the PNP stuff doesn't work for you, you can use the dos "setup" program, or the "cfg3118.exe" program that comes with the adapter kit. These programs are also available at the Olicom WWW sites, www.olicom.dk or www.olicom.com, and allow you to configure the card, and to disable PNP. This will cause the card to power up active, and you no longer need isapnp or a pnpbios. On some systems, it is necessary to change the BIOS setup to allocate an IRQ and DMA channel for non-PnP cards - check your BIOS documentation. Disturbing messages from the OC-3118 ISA adapter ================================================ The oltr driver occasionally blurbs messages that some find disturbing. For example when you're running an OC-3118 card, the driver occasionally mentions: Couldn't get a free page. eth1: Memory tight. Only 8 buffers left. The driver tries to maintain a pool of 16 free buffers for incoming packets. When no buffers are available, it will give you these messages, and retry allocating the buffer the next time a packet comes by or a second elapses. If the number of (normal) buffers goes down to zero, just one emergency buffer remains. No more concurrency between processing one packet and receiving the next will occur. For maximum performance the 16 buffers are necessary, but this message warns you that your system occasionally runs out of buffers. It happens to me on my 8Mb '486 system, especially closely after booting a kernel with the driver compiled in, or just after insmod-ing the module. In short: You can safely ignore this message. Performance =========== TCP throughput has been measured at over 87% of the theoretical bandwidth at the default MTU of 2000 bytes. 8% are easily explained as the TCP headers, MAC headers, and return ACK packets. Then there is 5% of unexplained performance gap. Optimizing this is hardly worthwhile (reduce the overhead by 40%, and you get a 2% performance boost). Copyright ========= Read the top of the oltr.c file for the copyright statement. It is a little more complicated than simply GPL. -------------- sample configuration file for isapnp ------------------ # $Id: olicom.txt,v 1.1 1998/05/21 09:48:45 wolff Exp wolff $ # (DEBUG) (READPORT 0x0203) (ISOLATE) (IDENTIFY *) # Card 1: (serial identifier 2b 83 ac 0c b7 30 94 83 3d) # OLC9430 Serial No -2085876553 [checksum 2b] # Version 1.0, Vendor version 0.0 # ANSI string -->Olicom Token-Ring ISA 16/4<-- # # Logical device id OLC0001 # Device support I/O range check register # (CONFIGURE OLC9430/-2085876553 (LD 0 (IO 0 (BASE 0x0a20)) # IRQ 3, 5, 7, 9, 10, 11, 12 or 15. (INT 0 (IRQ 11 (MODE +L))) (DMA 0 (CHANNEL 6)) (ACT Y) )) # Returns all cards to the "Wait for Key" state (WAITFORKEY) --------------- end of configuration file for isapnp ---------------- Version 1.11 is current at the moment of this writing. (August 1997) --------------------- isapnptools-1.11.lsm --------------------------- Begin3 Title: isapnptools Version: 1.11 Entered-date: 14JUL97 Description: ISA plug and play configuration utility Two programs - one allows the dumping of resource data and generation of a skeleton configuration file, the other configures ISA PnP hardware using a configuration file. Keywords: ISA PnP Configuration Hardware Author: fox@roestock.demon.co.uk (Peter Fox) Maintained-by: fox@roestock.demon.co.uk (Peter Fox) Primary-site: sunsite.unc.edu /pub/Linux/system/hardware 40k isapnptools-1.11.tgz 127k isapnptools-1.11.bin.tgz Alternate-site: tsx-11.mit.edu /pub/linux/sources/sbin 40k isapnptools-1.11.src.tar.gz Alternate-site: tsx-11.mit.edu /pub/linux/binaries/sbin 127k isapnptools-1.11.bin.tar.gz Alternate-site: ftp.redhat.com /pub/pnp/utils 40k isapnptools-1.11.tgz 127k isapnptools-1.11.bin.tgz Original-site: ftp.demon.co.uk /pub/unix/linux/utils 40k isapnptools-1.11.tgz Copying-policy: GNU End ------------------ end of isapnptools-1.11.lsm -----------------------Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.