Install the Drivers

# IBM* OS/2* and LAN Requestor

Location of Files

Installation

Installation under DOS

Advanced Settings for PROTOCOL.INI

Example PROTOCOL.INI

## Location of Files

10/100 | Gigabit
--- | ---
\PRO100\OS2\E100B.OS2 (OS/2* driver) \PRO100\OS2\E100BEO2.NIF or \PRO100\DOS\E100B.DOS (DOS driver) \PRO100\DOS\E100BEDS.NIF (DLR and LSP installation file) | \PRO1000\OS2\E1000.OS2 (OS/2 driver) \PRO1000\OS2\E1000.NIF or \PRO1000\DOS\E1000.DOS (DOS driver) \PRO1000\DOS\E1000.NIF (DLR and LSP installation file)

| NOTE: LAN Requester needs DOS 3.3 through 5, but if you're using DOS 6.0 or higher, run SETVER.EXE prior to using the executable files found on the DOS LAN Requester disks. See your DOS manual if you need help with SETVER.EXE.

## Installation

### LAN Server and OS/2 Requester (4.0 or 3.0)

1. Run the MPTS utility with LAN Server 4.0 or OS/2 Requester 4.0 (Run the LAPS utility with LAN Server 3.0 or OS/2 Requester 3.0).

2. Click Install.

3. When prompted, insert the Configuration and Drivers disk in the drive, specify <drive>:\OS2 for driver location, and click OK.

4. When Install reads the E100BE02.NIF (10/100 Mbit) or E1000.NIF (gigabit) file, installation is complete. Click OK. The adapter driver has been copied to your system.

5. Click Configure from the MPTS window.

6. At the Configure window, make sure the LAN adapters and protocols option is selected, then click Configure.

7. At the LAPS Configuration window, select the Intel adapter (OS/2 driver: E100B.OS2 for 10/100 Mbit, or E1000.OS2 for gigabit) from the Network Adapters window.

8. Click Add in the Network Adapter window to add the Intel PCI adapter to the current configuration.

9. Select your desired protocol(s) from the Protocol window and click Add to add the protocol(s) to the current configuration.

10. Click OK when you're done and follow the prompts to exit MPTS. Your CONFIG.SYS is automatically updated.

11. Restart the computer for the changes to take effect.

## Installation under DOS

### DOS LAN Services

Due to a problem with the DOS LAN Services (DLS) installation utility, you need to complete the following steps before executing the installation of DLS:

1. On DLS Diskette 1, make a directory off the root called NDIS.

2. Copy the file E100B.DOS (10/100 Mbit) or E1000.DOS (for gigabit) from the \DOS directory of the Configuration and Drivers disk into this new directory \DOS on DLS disk 1.

3. Run the DOS LAN Services installation program at the DOS workstation. Follow the prompts.

4. When presented with an adapter list, select Network card not shown in list below.

5. When prompted for the location of the OEMSETUP.INF file, insert the Configuration and Drivers disk in your drive and enter <drive>:\DOS as the path.

6. Select the Intel adapter from the list. Follow the prompts.

7. Enter your machine name, user name and domain name.

8. Set the options as you need; then highlight "The listed options are correct" and press <Enter>.

9. Accept the defaults on the next screen, highlight "The listed options are correct" and press <Enter>.

10. Set the Speed, Duplex mode, or Slot Device if needed. We recommend accepting the defaults. Then, highlight "The listed options are correct" and press <Enter>.

11. You may be asked to insert DLS disks. Follow the prompts to complete the installation and restart your computer for changes to take effect.

### General Installation under DOS - LAN Support Program (LSP)

1. Run DXMAID from the LAN Support Program disk.

2. Follow the prompts and instructions.

3. When prompted, insert the Configuration and Drivers disk and enter the pathname <drive>:\DOS.

4. The default configuration is suitable for most environments. We recommend accepting the defaults.

5. After the installation is complete, restart your computer for the changes to take effect.

### General Installation under DOS - DOS LAN Requester

1. Run the DOS LAN Requester installation program at the DOS workstation. Follow the prompts to configure your DOS LAN Requester as required.

2. After the installation is complete, restart your computer for the changes to take effect.

## Advanced Settings for PROTOCOL.INI

#### DRIVERNAME

This is the only parameter required for all configurations. This parameter is essentially an "instance ID". Each instance of the driver must create a unique instance name, both to satisfy DOS and OS/2 driver requirements, and to make it possible to find the parameters for the instance in the PROTOCOL.INI file.

When the driver initializes, it tries to find previously loaded instances of itself. If none are found, the driver calls itself "E1000$", and looks for that name in the PROTOCOL.INI file to find its parameters. If one or more instances are found, the driver calls itself "E100x$", where 'x' is one more than the value used by the most recently loaded instance. So, in this scenario, the second driver calls itself "E1002$", the third calls itself "E1003$", and so on; there is no driver called "E1001$". Up to 10 drivers can be loaded in a single system in this way.

Syntax: | DRIVERNAME = [E1000$ | E1002$ | etc.]
Example: | DRIVERNAME = E1000$
Default: | None, this is a required parameter.
Normal Behavior: | The driver finds its section in PROTOCOL.INI by matching its instance ID to the value for this parameter.
Possible Errors: | The device driver uses a DOS and OS/2 function to display the name of the driver it is expecting. This function cannot display a '$' character. For this reason, the user may see a message referring to this value without the '$'; the user must remember to enter the '$' character as part of the parameter's value.

#### SPEEDDUPLEX

The parameter disables Auto-Speed-Detect and causes the adapter to function at the speed indicated. Do not include this parameter if you want your PRO/1000 adapter to connect at 1000Mbps.

Syntax: | SPEEDDUPLEX = [0 | 1 | 2 | 3]
Example: | SPEEDDUPLEX = 2
Default: | Parameter not included in PROTOCOL.INI
Normal Behavior: | 0 = 10Mbps half duplex 1 = 10Mbps full duplex 2 = 100Mbps half duplex 3 = 100Mbps full duplex

Possible Errors:

If the SPEEDDUPLEX parameter is set to an invalid value:

- The parameter is ignored and the default (Auto-Speed-Detect) is used
- A message indicates a "Parameter value out of range" error

#### SLOT

This parameter makes it possible for the driver to uniquely identify which of the adapters is to be controlled by the driver. The parameter can be entered in hexadecimal or decimal.

Syntax: | SLOT = [0x0..0x1FFF] SLOT = [0..8191]
Examples: | SLOT = 0x1C SLOT = 28
Default: | The driver will Auto-Configure if possible.
Normal Behavior: | The driver uses the value of the parameter to decide which adapter to control.

Possible Errors:

If only one adapter is installed, and the value does not correctly indicate the adapter slot:

- A message indicates that the value does not match the actual configuration
- The driver finds the adapter and uses it

If more than one adapter is installed, and the value does not correctly indicate an adapter slot:

- A message indicates possible slots to use
- The driver loads on the next available slot

#### NODE

This parameter sets the Individual Address of the adapter, overriding the value read from the EEPROM.

Syntax: | NODE = “12 hexadecimal digits” The value must be exactly 12 hexadecimal digits, enclosed in double quotes. The value can not be all zeros. The value can not have the Multicast bit set (LSB of 2nd digit = 1).
Example: | NODE = “00AA00123456”
Default: | Value from EEPROM installed on adapter
Normal Behavior: | The Current Station Address in the NDIS MAC Service-Specific Characteristics (MSSC) table is assigned the value of this parameter. The adapter hardware is programmed to receive frames with the destination address equal to the Current Station Address in the MSSC table. The Permanent Station Address in the MSSC table will be set to reflect the node address read from the adapter’s EEPROM.
Possible Errors: | If any of the rules described above are violated, the driver treats this as a fatal error and an error message occurs, indicating the correct rules for forming a proper address.

#### CACHEFLUSH

Windows NT bypasses the normal driver "hooks" into the reboot sequence during a push install so the driver is unaware of a system boot occurring. Hence the driver may copy incoming frames to host memory during system initialization. This will cause unpredictable behavior (most likely the system will halt). Setting this parameter to any non-zero value enables a disk-cache flush monitor; which is an alternate method of watching for a reboot call. This parameter should not be used under normal circumstances.

| NOTE: This situation is not being corrected.

Syntax: | CACHEFLUSH = [0 | 1]
Example: | CACHEFLUSH = 1
Default: | 0
Normal Behavior: | Use this parameter during a remote installation or push-install of Windows NT.
Possible Errors: | Any nonzero value sets this parameter to 1. The driver does not give any outward indication of the value of this parameter.

#### ADVERTISE

This parameter can be used to restrict the speeds and duplexes advertised to a link partner during auto-negotiation. If AutoNeg = 1, this value is used to determine what speed and duplex combinations are advertised to the link partner. This field is treated as a bit mask.

Syntax: | ADVERTISE = [ 1 | 2 | 4 | 8 | 0x20 | 0x2F]: 0x01 = 10 Half, 0x02 = 10 Full, 0x04 = 100 Half, 0x08 = 100 Full, 0x20 = 1000 Full, 0x2F = all rates
Example: | ADVERTISE = 1
Default: | 0x2F (all rates are supported)
Normal Behavior: | By default all speed/duplex combinations are advertised.
Possible Errors: | An error message is displayed if the value given is out of range.

#### FLOWCONTROL

This parameter, which refers to IEEE 802.3x flow control, helps prevent packets from being dropped and can improve overall network performance. Specifically, the parameter determines what flow control capabilities the adapter advertises to its link partner when auto negotiation occurs. This setting does NOT force flow control to be used. It only affects the advertised capabilities.

NOTES:

- Due to errata in the 82542 silicon, the chip is not able to receive PAUSE frames if the ReportTxEarly parameter is set to 1. Thus, if ReportTxEarly =1 and the driver is running on an adapter using this silicon (such as the PWLA8490), the driver will modify the FlowControl parameter to disable the ability to receive PAUSE frames.

- If half-duplex is forced or auto-negotiated, the driver will completely disable flow control.

Syntax: | FLOWCONTROL = [ 0 | 1 | 2 | 3 |0xFF]
Example: | FLOWCONTROL = 1
Default: | 3
Normal Behavior: | 0 = Disabled (No flow control capability) 1 = Receive Pause Frames (can receive and respond to PAUSE frames) 2 = Transmit Pause Frames (can send PAUSE frames) 3 = Both Enabled (can send and receive PAUSE frames) 0xFF = Hardware Default.
Possible Errors: | An error message is displayed if the value given is out of range.

#### SMARTPOWERDOWN

This parameter enables the Smart Power Down feature under OS/2. This feature is disabled by default on all devices except where the Device ID = 0x101E. On these devices, this feature is enabled by default.

Enabling this feature causes the software to put the device into a low power (D3) state when the link is disconnected. When the link is reconnected, the device is brought back to the D0 state.

Syntax: | SmartPowerDown = [ 0 | any other value ]
Example: | SmartPowerDown = 1
Default: | 0 except when device ID = 0x101E
Normal Behavior: | 0 = Disabled, any other value = Enabled
Possible Errors: | None

#### APMPOWERDOWN

This parameter enables the driver to put the device into the low power (D3) state on a "suspend" under OS/2. That feature is enabled by default on all NICs; this parameter provides a way to disable it.

Syntax: | APMPowerDown = [ 0 | any other value ]
Example: | APMPowerDown = 0
Default: | 1
Normal Behavior: | 0 = Disabled, any other value = Enabled
Possible Errors: | None

#### USELASTSLOT

This parameter causes the driver to load on the device in the last slot found in the slot scan. The default behavior of the driver is to load on the first adapter found in the slot scan. This parameter forces the driver to load on the last one found instead.

Syntax: | UseLastSlot = [ 0 | any other value ]
Example: | USELASTSLOT = 1
Default: | 0
Normal Behavior: | 0 = Disabled, any other value = Enabled
Possible Errors: | None

#### TXLOOPCOUNT

This parameter controls the number of times the transmit routine loops while waiting for a free transmit buffer. This parameter can affect Transmit performance.

Syntax: | TXLOOPCOUNT = <32-bit value>
Example: | TXLOOPCOUNT = 10000
Default: | 1000
Normal Behavior: | Default
Possible Errors: | None

## Example PROTOCOL.INI

DRIVERNAME = E1000$ (or DRIVERNAME = E100b$)

NODE = "02AA00123456" ; override the burned in MAC address
SPEEDDUPLEX = 0 ; 10Mbps half duplex
= 1 ; 10Mbps full duplex
= 2 ; 100Mbps half duplex
= 3 ; 100Mbps full duplex
SLOT = 7 ; set this for each NIC if using more than one

CACHEFLUSH = 1 ; set this if doing an unattended installation of Windows NT 4.0 using this driver to make the initial connection

`Last modified on 12/03/04 3:53p Revision 1`