3Com FDDILink Adapter NT Device Driver, 9/21/93

This diskette contains the Windows NT NDIS 3.0 3Com FDDILink device driver v1.0a.

Installation
------------

Windows NT must be running before you begin adapter installation.

To install the first FDDILink adapter, select nAdd Adapterē from the Network 
Control Panel Applet.  The Control Panel icon is in the main window.  The 
Network Applet icon is in the Control Panel window.  Alternatively, you can 
enter 'start control ncpa.cpl' from a command prompt, and then select Add 
Adapter.  When prompted for the source directory, supply the location of the 
FDDILink driver and OEMSETUP.INF file. This is usually A:\WIN_NT.  To complete 
the installation, you must supply the slot number of the adapter.

To install the second through fourth FDDILink adapters from the command line, 
change directory to A:\WIN_NT of the installation floppy and enter 'install X' 
where X is one of 2, 3, or 4, e.g., 'install 2'. 

Registry Variables
------------------

Several driver parameters are configurable. These parameters are set in the 
registry under the key that represents the adapter instance. For example, 
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\FDDILINK101\Parameters is a path to the parameters section for the first FDDI adapter installed in the machine. Any out-of-bounds values read from the parameters section are forced to default. If any combination of parameters creates illegal values, then the defaults are again chosen. The registry key FDDILINK101 may be different (e.g., FDDILINK202) depending on how many other network adapters have been installed prior to this one.

Use the registry editor REGEDT32.EXE to edit the register values.

NDIS Registry Parameters
------------------------

* BusType
This variable remains constant and must be 2.

* SlotNumber
This variable specifies which slot the adapter must occupy. If a FDDILink adapter is not found in the indicated slot, then the driver will fail with the message '3COM 3C770 FDDI Adapter 1 failed to function' in the error log. (See the Event Viewer under the Administrative Tools icon for a list of events that occurred when the machine was booted.)

* BusNumber
Windows NT provides the ability to utilize multiple I/O buses. Although the bus number is not generally useful to the device driver, it must be provided as an input during adapter registration as part of the adapter information structure. There is no default value and the BusNumber must be present in the registry. On a PC-AT machine, it is always 0.

* NumRcvDesc
The driver dynamically allocates this number of receive descriptors. Each receive descriptor is a software structure used by the driver to reference an FSI descriptor. Given the hardware requirements, this implies that NumRcvDesc must be a power of two in the range supported by the hardware (2-32 K). If not defined in the registry, the default value used is 32. The amount of receive memory allocated to an adapter instance is determined by the following formula:

    Memory Size = NumRcvDesc * RcvBuffSize

* RcvBuffSize
Each receive descriptor references a block of uncached memory where incoming packet fragments are placed by the bus master adapter. The size of each block is restricted by the adapter and must be a power of two in the range supported by the adapter (256-8 K). If not defined in the registry, the default value used is 512.

* NumXmitDesc
The driver dynamically allocates this number of structures to manage outgoing packets submitted by the protocol and the SMT. There is a one to many relationship between software transmit descriptor structures and hardware FSI descriptors in the transmit ring. For a normal protocol, a good ratio is one transmit descriptor for every 5 FSI descriptors. If not defined in the registry, the default value used is 1.

* NumXmitFsiDesc
The transmit ring is defined to consist of this many FSI descriptors. The value must be a power of two in the range supported by the hardware  (32-32K). If not defined in the registry, the default value used is 32.

* RxIndicateLimit
On a very busy machine the FDDI adapter could monopolize the CPU by continuously processing received packets. RxIndicateLimit specifies how many received packets can be processed without relinquishing the CPU. The default is 10.

* TxCompleteLimit
TxCompleteLimit specifies how many transmitted packets can be processed without relinquishing the CPU. The default is 10 (see previous discussion for RxIndicateLimit).

* InterruptsSerialized
This flag specifies whether receive indications and transmit completions are serialized on a multiprocessor machine.  It is a workaround for NDIS specification violations in the Microsoft test protocol. The default value is 1. If cleared to 0, then multiple threads are allowed to be active within the FDDILINK driver.

SMT Registry Parameters
-----------------------

For proper operation on some networks, it may be necessary to adjust certain SMT timer values. The following registry parameters, though combined with the NDIS registry parameters, also affect the SMT.

* treq
The SMT T_Req timer defaults to 165,000 microseconds if the registry parameter does not exist or is out of range. The range varies from 4,000 to 165,000.

* tmax
The SMT T_MAX timer defaults to 167,772 microseconds if the registry parameter does not exist or is out of range.  The range varies from 165,000 to 167,772.

* tvx
The SMT T_Vx timer defaults to 2,611 microseconds if the registry parameter does not exist or is out of range. The range varies from 2,500 to 3,500.

* mode
To change the SMT operation mode from its default Auto Mode value of 0, set the Mode registry parameter to 62 (6.2 mode) or 72 (7.2 mode). If the value is out of range or not present in the registry, it defaults to 0.

3Com is a registered trademark and FDDILink is a trademark of 3Com Corporation. All other marks are the property of their respective owners.
