OS/2 NDIS driver for Realtek 8139/8130/810x and compatibles
-----------------------------------------------------------


Supported Cards
===============

The supported chips may be used on PCI boards or
CardBus cards from various vendors, for example:

* Accton
  EN1207D/EN2242A Series PCI Fast Ethernet Adapter
* Acer Inc
  ALN-325 Fast Ethernet Adapter
* Allied Telesyn International
  AT-2500 Fast Ethernet Adapter
* Aopen Inc
  ALN-325C Fast Ethernet Adapter
  AON-325
* ASUSTeK Computer Inc
  L2 Series Notebooks integrated NIC
* Belkin
  F5D5000 PCI Card/Desktop Network PCI Card
* CAMEO COMMUNICATIONS, INC
  SOHO-FP32
* Compaq
  HNE-300
* Compex
  ReadyLink Express 10/10 Fast Ethernet Adapter
* Conceptronics
  CSP100TCL
* D-Link
  DFE-538TX 10/100 Adapter
  DFE-530TX+ (Rev.D2)
  SN5200 Fast Ethernet Adapter
  DFE-690TXD CardBus
* Danpex
  fe6550tx CardBus 10/100Mbps Ethernet Card
* Edimax
  EN9130 Fast Ethernet Adapter
  10/100M Fast Ethernet Adapter EN9130TXA
  EP-4103DL CardBus
* Encore
  ENL832-TX+
* Fujitsu Ltd
  Lifebook Series Notebooks
* Gigabyte
  GA-6VEML Mainboard
* Hawking Technology
  PN102TX 10/100 PNP PCI Network Adapter
* Kingston
  EtheRX PCI Fast Ethernet Adapter (KNE120TX)
* KTI
  KF-230TX(/2) Fast Ethernet Adapter
* KYE
  Genius GF100TXR Series
* LevelOne
  FPC-0106Tx CardBus
* Longshine
  LCS-8038TX
* Mentor
* Nortel Networks
  10/100BaseTX
* OvisLink
  Fast Ethernet Adapter 10/100Mbps, LFE-8139(/A/H)TX
* Peppercon
  ROL/F-100
* PLANET
  ENW-3504fc CardBus
* Planex
  FNW-3603/3800-TX 10/100 CardBus
* Ruby Tech Corp
  FE-1439TX Fast Ethernet Adapter
* Siemens
  1020 PCI NIC
  1012v2 CardBus
* Sitecom
  Cardbus PC Card Fast Ethernet 10/100 Mbps
* Standard Microsystems Corp
  SMC EZ Card 10/100 (SMC1211TX)
* Surecom
  EP-320X-R/R-1/R-1L 100/10M PCI Adapter
* UNEX Technology Corp
  ND010 Fast Ethernet Adapter


Config.sys Parameters
=====================

   The following switches are supported:

   /V        Verbose mode, displays controller status during
             OS/2 initialization.

   /Q        Quiet mode, no display during OS/2 initialization.

   /2 .. /9  Optional switch to selects other "Drivername =" entry
             in \ibmcom\protocol.ini.

   /U        Number cards as found. Useful if BUSNO, DEVICENO or ETHERID
             values are not present in protocol.ini. This parameter
             can be used for automaticly generated protocol.ini files
             to work with more than one supported card. Obsolete.

Note: All information messages generated during boot are logged to
\ibmcom\lantran.log file.


Included Files
==============

   rtl8139.txt   this file
   rtl8139.nif   defined characteristics for installer (MPTS icon)
   rtsnd.os2     driver file
   rtsnd.sym     optional debug file
   dumpio.exe    optional tool to show chip registers
   rtsnddmn.exe  optional deamon to accelerate NOIRQ mode


Installation
============

   Backup \ibmcom\protocol.ini, \ibmcom\macs\rtl8139.nif, and
   \ibmcom\macs\rtsnd.os2.

   Unzip rtl8139.zip to a work directory.

   Open Network Adapters and Protocol Services.

   Select Configure MPTS.

   Select Lan adapters and protocols.

   Select Configure.

   Select Have Disk.

   Enter the path where you unzipped the Realtek driver.

   Select OK.

   The updated driver should be installed.

   Exit and re-boot.


Recommended Changes for NetBIOS
===============================

   You can try to enhance the NETBEUI performance using
   this mpts/protocol.ini settings:

     [netbeui_nif]
       MAXTRANSMITS = 16
       MINTRANSMITS = 4


Installation for CardBus cards
==============================

   Install the CBENABLE package and reboot. This step is
   needed, since the RTSND.OS2 driver does not contain PCMCIA
   code ("point enabler"), instead the real work is done by
   the OS/2 PCMCIA Subsystem and the CBENABLE package.

   Start PC Card Director:
     verify that an ethernet card is detected.
     verify that status button->client includes "CardBus Enabler".
     verify that status button->informations shows power connected (3.3 V).
     verify that status button->resource reports IRQ and IO window correctly.

   Install as for PCI cards, but enter "1" into the "CardBus enabler"
   settings field.


Inserting/Removing Realtek CardBus Cards
========================================

   The driver checks during system boot if a Realtek Card is installed.
   If none is found  and  the EtherID is not specified  and  you have
   Verbose mode set, you will be prompted to insert one.

   Inserting the card in the socket:

   - Insert card

   - Connect media coupler (see Realtek Card User's Guide)

   - Check Card Director to ensure card is detected and functioning

   - Start the network
     -- ("\MPTN\BIN\setup.cmd", "net continue"...)

   Removing the card from the socket:

   - Stop the network:
     -- "net stop requester".. (peer)
     -- "ifconfig lan0 down" (tcpip).

   - Power off the card using Card Director or cbe_msg.exe.

   - Remove the media coupler (see Realtek Card User's Guide)

   - Press the eject button.

   Note: Ejecting the card during heavy network traffic without following
         the above guidance may result in a system reboot.


NOIRQ mode
==========

   If using the IRQ set by BIOS or spciirq IRQ assignment does not work,
   You can use the NOIRQ=1 mode as an fallback solution.
   Since the driver uses the default 1/18 second OS/2 timer,
   performance will degrade to 167/252 KB/s instead of 11 MB/s.
   The driver will try to detach the rtsnddmn.exe program automaticly,
   to gain more network bandwith at higher CPU time cost.


8139C+ Mode
===========

   There exist a "server" variant of the 8139 chipset, that has an
   addidtional "Plus mode", where the CPU usage is reduced.
   However it will not implemented without having an actual card...
   Perhaps the "Plus mode" is compatible with 8169 models (rtgnda02.zip)?


Problem Reports
===============

   To diagnose problems it may be helpful to send
   file \ibmlan\lantran.log
   file \ibmlan\protocol.ini
   result of rmview /irq > irq.log
   result of rmview /io > io.log
   result of pci -b -p -d > pci.log


Question and Answers
====================

  Q. "Resource manager call for I/O address failed. Check for conflicts"
  A. You may have devices that allocate more than its regular IO address
     room. Example: You may have an ISA COM port card that only decodes
     the lower 10 instead of 16 bit addresses and not only answers on
     02F8..02FF, but also on 06F8..06FF, 0AF8..0AFF,... FEF8..FEFF.
     Solution: Request an BIOS update from the vendor, replace the ISA card
     or ignore the message.

Important Changes
=================

   2003.09.25
     Current version of cbenable package required, beacause of interface
     enhancement.
     Nif file change for CardBus= entry, please correct old values.
     CardBus card can be inserted/reinserted in any socket, the
     card may even be removed at startup time if EtherID is specified.
     rtsnddmn.exe is automaticly started, and no longer needs
     speed configuartion.

   2003.10.31
     Altered BusNo/DeviceNo/FuncNo back to decimal numbers
     in range 0..255/0..31/0..7

   2004.07.16
     added more pci vendor/device numbers
     obsoleted the IRQ parameter, use the spciirq package

   2005.09.10
     Compatibility with early 8139 chip versions. The meaning of the
     power management enable setting has changed.  This caused to
     print the driver good connection message, but when the card
     was to be used (DHCP client), the card did not send/receive
     packets.

     The early chip also uses less I/O address space - 128 instead
     of 256 bytes.

     This driver takes advantage of the PCIBUS.SNP replacement:
     it tries to create the Reseource Manager entry for the card
     below the actual PCI_Bus_x, for example x=2 on newer machines.
     Also attaches "PCI DevFunc" Adjunct.

     Obsoleted IOBase configuration option, use PCIConf package instead.
     If you use the paramter with older version, revisit the driver
     configuration -- see "Installation" paragraph.

