
+--------------------------------------------------------------------------+
|  PACKET DRIVER for DS21040/DS21041/DS21140/DS21142/DS21143   V11.0       |
+--------------------------------------------------------------------------+

	      NOTE: The generic term "DC21X4" relates to the Digital
		    Semiconductor (DS) 21040, 21041, 21140, 21142, 21143
		    Ethernet and Fast Ethernet LAN controllers.


Table of Contents:
------------------

1. Copyright Notice .

2. Overview and Product Description .

3. Preinstallation Hardware and Software Requirements .
   3.1 Hardware Requirements .
   3.2 Software Requirements .

4. Files and Directories (in the installation diskette) .

5. Installing the Hardware Boards .
   5.1 Installing the DC21X4 PCI boards .

6. Installing Software.
   6.1 Basic driver installation .
   6.2 Installing multiple boards .

7. Command-line parameters .
   7.1 Optional Keywords .

8. Driver error messages and their explanation .

9. Hotline and Support Information .


-----------------------------------------------------------------------------


1. Copyright Notice:

	Copyright Digital Equipment Corporation 1994 - 1997.
	Portions Copyright Crynwr Software 1988-1998
	For permissions, see COPYING.DOC.


2. Overview and Product Description:

	      This Readme file explains how to install the NDIS2 driver
	      under DOS, Windows for Workgroups, OS/2 and Win95 .

	      This driver is currently supported for the DS 21040,
	      DS 21041, DS 21140,  DS 21142,  DS 21143 based Ethernet and FastEthernet
	      adapters.


3. Preinstallation Hardware and Software Requirements:

   3.1  Hardware Requirements:

	o An IBM-compatible personal computer with 80386 or higher
	  microprocessor and PCI bus.

	 o A PCI board based on Digital Semiconductor 2104x/2114x
	   10/100 mbps based Ethernet controller.

   3.2  Software Requirements:

	   o MS-DOS 5.0 or later.

4. Files and Directories:

   General files in root directory
   --------------------------------------------------------------------
   RELEASE.TXT  Release notes for this version of the driver.
   README.TXT   The readme file that you are currently reading.


5. Installing the Hardware Boards:

        Installing the DS 21040/21041/21140/21142/21143
	PCI Evaluation Boards

	For the EB40,  see the DS 21040 PCI Evaluation Board User's guide.
	For the EB140, see the DS 21140 PCI Evaluation Board User's guide.
	For the EB41,  see the DS 21041 PCI Evaluation Board User's guide.
	For the EB142, see the DS 21142 PCI Evaluation Board User's guide.
	For the EB143, see the DS 21143 PCI Evaluation Board User's guide.



6. Installing Software:

   6.1  Basic driver installation.

	o  Add the following line to AUTOEXEC.BAT:

	   <drive>:[pathname\DC21X4PK 0x7e

	   When the DC21X4 Driver is installed in DOS HIGH memory use
	   the following:

	   LOADHIGH <drive>:[pathname]\DC21X4PK 0x7e

	o  The following information is displayed when the system is rebooted:

        Digital Semiconductor 2104x/2114x 10/100 mbps Ethernet Controller <version>
        (C) Copyright 1994-1997 Digital Equipment Corporation.

        Working with Digital Semiconductor 21040 based Ethernet Controller
       	PCI Slot: <nn>    IRQ:<nn>

	(For the DS21041, DS21140 or DS21142 the 3rd line is similar)

	Where:
	   Slot is the slot of the adapter
	   IRQ is the interrupt request level

   6.2 Installing multiple boards

     Installation of more than one board is different in the various network
     operating systems. For n adapters one must load n instances of the driver.

     One must ensure that one command-line parameters is set correctly:

     1. SLOT must be specified for multiple boards. The first PCI device has
	"SLOT=16", the second - "SLOT=17" and so on.

     Here is an example of the AUTOEXEC.BAT lines for two DC21X4 boards:

       DC21X4PK 0x7d slot=16
       DC21X4PK 0x7e slot=17

7.  Command-line Parameters

    Changing settings of the adapter is done by adding parameters to
    the command line.  Add the settings to the end of the command line
    in the form: keyword=value.
    
    The following sections describe the settings used for the Digital
    Semicon. DC21X4 Driver, their default values, the range of values
    that can be given and value units.

   7.1  Optional Keywords in the DC21X4 section:

	SLOT         -- Specifies where the DC21X4-based adapter is placed.

	    o A number from 16 to 26 specifies the relative position
	      of an adapter on the PCI bus. 16 specifies the first
	      DC21X4-based adapter on the PCI bus, 17 the second such
	      adapter, and so on. When one PCI adapter is used in the system,
	      use "SLOT=16" .

            o <absent> If the slot value is not specified or is specified
	      as 0, the driver scans for a PCI adapter.

	    Slot
	    units:[integer]
	    range:[0-26]
	    default:[16]


	ConnectionType     -- Defines the Serial Interface connection.

	    o Autosense : For adapters based on the DS 2104X
	      it executes an algorithm which detects the serial interface
	      connection type during the driver's initialization. If the chip
	      support dynamic autosense the detection algorithm is execute
	      also during run time. For adapters based on DS 21140 it
	      executes an algorithm which detects the data rate used -
	      10Mb or 100Mb. The detection algorithm is executed
	      also during run time if the chip support this mode.

	    o _10Base5_(AUI) selects the AUI connector for external
	      transceiver Some boards may also require a jumper on
	      the board to be set to distinguish between AUI and BNC.

	    o _10Base2_(BNC) selects the BNC (thin wire) connector for
	      internal transceiver.  Some boards may also require a jumper
	      on the board to be set to distinguish between AUI and BNC.

	    o _10BaseT selects the RJ45 connector for the Twisted Pair
	      on-board transceiver, for connection to a Twisted Pair 100 Mb
	      hub.

	    o _10BaseT_FD specifies Full Duplex operation via the Twisted
              Pair transceiver. The adapter should be connected to another
              Ethernet station with a cable suitable for Full Duplex mode.
              The line speed is 10 Mbs.

	    o _10BaseT_No_Link_Test selects the Twisted Pair transceiver
	      with Link-Fail test ignored.

	    o _100BaseTx selects the RJ45 connector for the Twisted Pair
	      on-board transceiver, for connection to a Twisted Pair 100 Mbs hub.

	    o _100BaseTx_FD specifies Full Duplex operation via the Twisted
              Pair transceiver. The adapter should be connected to another
              Ethernet station with a cable suitable for Full Duplex mode.
              The line speed is 100 Mbs.

	    o _100BaseT4 selects port on EB140-T4 or compateble.

 	    AUTOSENSE is a valid keywords in all adapters.
	    However, dynamic sensing is relevant only for adapters
	    based on DS 21041/21140/21143.

	    Some DC21X4-based adapters include a jumper to switch between
	    AUI and BNC.  To select one of these modes on such an adapter,
	    you should both set the jumper and specify the correct
	    ConnectionType value.

            The driver will display an error message, and not oparate, if
	    the chosen media is not supported by the specific NIC.


	SoftwareCRC -- controls whether packet CRCs are calculated by software
            or appended by the DC21X4.

	    o 1 means that the CRC will always be calculated by software, for
              packets greater than 144 bytes. This applies only for the chips
              DS21040 revisions A-H.

	    o 0 means that the CRC will never be calculated by
	      software (always appended by DC21X4).

	    o <absent> If this keyword does not appear in PROTOCOL.INI,
	      packet CRCs will be calculated by software for DS21040 chip
	      revisions A-H (for packets longer than 144 bytes), and
	      will be appended by the DC21X4 for all other chips.

	    SoftwareCRC
	    units:[integer]
	    range:[1, 0, <absent>]
	    default:[<absent>]


	NETADDRESS -- Specifies the IEEE ethernet address to be used by the
		      NIC. Overrides the value specified on the ROM.

	    o The address is a 12-byte hexadecimal number. The user should
	      make sure the address is a legal IEEE address.

	    o Example: NETADDRESS=08002B3C45FC

	    NETADDRESS
	    units:[hexadecimal]
	    range:[12 digits]
	    default:[ROM on NIC]


	TransmitBuffers -- Specifies the number of transmit buffers the
			  driver should use.

	    o The number of transmit buffers may vary between 4 and 16.

	    o If this value is not specified, or the keyword is absent,
	      the default number of transmit buffers is 8.

	    o The combined number of transmit and receive buffers must
              not exceed 22. If it does, the driver retreats to the
              default values of 8 and 8.

	    TransmitBuffers
	    units:[integer]
	    range:[4-16]
	    default:[8]


	ReceiveBuffers -- Specifies the number of receive buffers the driver
		       should use.

	      o The number of receive buffers may vary between 4 and 16.

	      o If this value is not specified, or the keyword is absent,
		the default number of receive buffers is 8

	      o The combined number of transmit and receive buffers must
                not exceed 22. If it does, the driver retreats to the
                default values of 8 and 8.

	      ReceiveBuffers
	      units:[integer]
	      range:[4-16]
	      default:[8]


	TX_THRESHOLD - Controls the transmit threshold of the device. A small
		       threshold may improve performance, however in some machines
		       it could cause many packets to be lost, and perhaps the
		       connection may fail.

	      o FP means the threshold is "Full Packet" which is maximal. The
		packet will be transmitted only after it is all in the FIFO.

	      o LW1024 is a threshold of almost one packet.
		LW512 smaller threshold,
		LW256 even smaller,
		LW128 the smallest threshold.

	      The threshold is relevant only for devices operating in 100Mb rate.
	      For devices working in 10Mb rate the changes are minor.


	TURBO       -- Controls whether host-to-PCI posting (HPPE) will be
		       enabled or disabled. This is relevant only if the
		       system's host-to-PCI bridge is INTEL's 82424 (CDC) or
		       82434 (PCMC) bridge.

	      o ENABLED means that HPPE will be disabled. This may improve
		the performance of the DC21X4 device.

	      o DISABLED means that the system configuration will remain
		as it is with no intervention by the driver.

	      o <absent> If this keyword does not appear in PROTOCOL.INI,
		the driver will do nothing and leave system settings as
		they are.

	      TURBO
	      units:[text]
	      range:[ENABLED, DISABLED, <absent>]
	      default:[<absent>]

	SnoozeMode	    --	Changes DS21041 and DS21140 power-management
                                mode to Power-Saving mode.

	      o 1  set DS21041 , DS21140 power-management mode
		to Power-Saving mode.

	      o 0  set DS21041 and DS21140 power-management mode
		to Normal operation mode.

	      o <absent> If this keyword does not appear in PROTOCOL.INI,
		the driver will not operate the Chip Power-Saving mode.

	      SnoozeMode
	      units:[integer]
	      range:[1, 0, <absent>]
	      default:[<absent>]

        PCILatencyTimer      --  Configuration Latancy Timer. Specifies,
                                 in units of PCI bus clocks, the value
				 of the latency timer. Changing this
                                 parameter may affect the device performance.

              PCILatencyTimer
              units:[integer]
              range:[1 - 255]
              default:[18]


        BurstLength          --  Programmable burst length.
				Indicates the Maximum number of longwords to be
				transferred in one DMA transaction. Changing this
                                parameter may affect the device performance.

              BurstLength
              units:[integer]
              range:[0,1,2,4,8,16,32]             (0 means Unlimited)
              default:[16 / 32] in DS2104x / DS2114x family respectively


        CacheLineSize       --  Cache Alignment. Programmable address boundaries
                                for the data burst stop. Changing this parameter
                                may affect the device performance.
                                CAL may be limited by the driver due to system
                                limitations.
				It is recommended to program both PBL and CAL to
                                the same burst value.

              CacheLineSize
              units:[integer]
              range:[32,64,128,<absent>]
              default:[64]


        EXT_MRM             --  Disable the extended PCI command MRM (Memory
                                Read Multiple)
	      o 0  Disables the MRM command.
	      o 1  Enables the MRM command, for the adapters
                      21140A rev >= 21 , 21143 rev >= 20.
	      o <absent>  If this keyword does not apear in the PROTOCOL.INI
                file, the MRM command is enabled (for the above chips).

              MRM_OFF
              units:[integer]
              range:[0,1,<absent>]
              default:[1]


        EXT_MRL             --  Disable the extended PCI command MRL (Memory
                                Read Line)
	      o 0  Disables the MRL command.
	      o 1  Enables the MRL command, for the adapters
                      21140A rev >= 21 , 21143 rev >= 20.
	      o <absent>  If this keyword does not apear in the PROTOCOL.INI
                file, the MRL command is enabled (for the above chips).

              MRL_OFF
              units:[integer]
              range:[0,1,<absent>]
              default:[1]


        EXT_MWI             --  Disable the extended PCI command MWI (Memory
                                Write Invalidate)
	      o 0  Disables the MWI command.
	      o 1  Enables the MWI command, for the adapters
                      21140A rev >= 21 , 21143 rev >= 20.
	      o <absent>  If this keyword does not apear in the PROTOCOL.INI
                file, the MRM command is enabled (for the above chips).

              MWI_OFF
              units:[integer]
              range:[0,1,<absent>]
              default:[1]





 8. Driver error messages and their explanation:


 * 'Could not locate adapter.'
   No DC21X4-based adapter is present in the system.

 * 'Could not locate adapter at specified SLOT.'
   The adapter wasn't found in the slot specified in the PROTOCOL.INI file.

 * 'This revision of the chip is not supported by the driver.'
   The revision of the DC21X4 chip in the system isn't supported.

 * 'Problems in PCI Bus.'
   A problematic PCI device was found, and driver execution must halt.
   The ususal solution is changing the chache-mode in the machine setup
   performed during boot time.

 * 'Problems in devices ROM.'
   A problem was detected in the device's ROM. For example, an incorrect
   version number, an incorrect checksum, etc.

 * 'Driver Instance Limit Exceeded.'
   Too many NICs (either 4 or 8) with the DS21X4 chip are in the system.

 * 'Could not open Protocol Manager.'
   The protocol manager, which coordinates between different networking
   software, could not be opened and therefore the driver cannot be
   initialized.

 * 'Could not register driver with Protocol Manager.'
   The driver could not be registered with the protocol manager. This is
   probably due to an initialization problem.

 * 'Could not close Protocol Manager.'
   The protocol manager couldn't be closed.

 * 'Invalid keyword in PROTOCOL.INI.'
   One of the entries in the PROTOCOL.INI file in the DC21X4 section is
   invalid (an unrecognized keyword). This may sometimes be solved by
   using uppercase letters when specifying values of keywords.

 * 'PROTOCOL.INI keyword has too many parameters.'
   One of the entries in the PROTOCOL.INI file in the DC21X4 section has
   too many parameters.

 * 'PROTOCOL.INI parameter too low, ignored.'
   One of the entries in the PROTOCOL.INI file in the DC21X4 section has
   a value too low.

 * 'PROTOCOL.INI parameter too high, ignored.'
   One of the entries in the PROTOCOL.INI file in the DC21X4 section has
   a value too high.

 * 'PROTOCOL.INI string parameter too long, ignored.'
   One of the entries in the PROTOCOL.INI file in the DC21X4 section has
   a string value with too many characters.

 * 'Invalid PROTOCOL.INI string parameter, ignored.'
   One of the entries in the PROTOCOL.INI file in the DC21X4 section has
   a string value which is invalid.

 * 'PCI BIOS failed to enable I/O operation.'
   The DS21X4 cannot access the machine's I/O space and it is therefore
   not operational.

 * 'PCI BIOS configured I/O base illegal for Intel platform.'
   The DS21X4 cannot access the machine's I/O space due to wrong
   address mapping, and it is therefore not operational.

 * 'PCI BIOS configured IRQ illegal for Intel platform.'
   The DS21X4 interrupt pin is hooked to an illegal interrupt line in the
   host machine. Thus, the DS21X4 isn't operational.

 * 'Could not allocate GDTs.'
   The driver was unable to allocate descriptor tables and it is therefore
   not operational.
   Relevant for the OS/2 driver only.

 * 'Number of Tx/Rx buffers too large - using defaults'
   The number of buffers specified by the user demands too much memory - so
   the driver initializes with the default Tx/Rx buffer number.

 * 'Unsupported Media -  Check The PROTOCOL.INI file setting'
   The Nic or driver do not support the requested media selection.
   Please check the available media types on the Nic and use one of
   them.

 * 'No Media to work with - Cant initialize NIC '
   The driver didn't find any media in the Nic to operate communication.
   Please check the available media types on the NIC and the requested media
   type in the PROTOCOL.INI file seting.

 * ' Failed to set Connection with Mii Phy '
   The driver failed to set network connection using the Mii Phy.
   Please check the available media types on the NIC and the requested media
   type in the PROTOCOL.INI file seting.

 * ' Failed to set Connection '
   The driver failed to set network connection.
   Please check the available media types on the NIC and the requested media
   type in the PROTOCOL.INI file seting.




 9.  Hotline and Support Information:

       Call the Digital Semiconductor Information Line for information and
       technical support:

		 United States and Canada              1-800-332-2717
		 Outside North America                +1-508-628-4760



       Ordering Digital Semiconductor Products

	  To order Digital Semiconductor products, contact your local
	  Digital Semiconductor sales office.  When working with your sales
	  representative, you may be able to take advantage of discounts
	  and volume pricing.

       To order Digital Semiconductor samples or for a complete list of
       products call the Digital Semiconductor Information Line.

       You can order the following network products from Digital
       Semiconductor:

	    21040-AA      DS 21040  PCI Ethernet LAN Controller
	    21041-AA      DS 21041  PCI Ethernet LAN Controller
	    21140-AB      DS 21140  PCI Fast Ethernet LAN Controller
	    21140-AC      DS 21140A PCI Fast Ethernet LAN Controller

	    21A40-01      DS 21040 PCI Evaluation Board Kit
	    21A41-01      DS 21041 PCI Evaluation Board Kit


       Ordering Associated Literature

	  Digital Semiconductor documentation and literature is available
	  with the products. For a complete list and for information about
	  ordering, contact the Digital Semiconductor Information Line.


       Ordering Third-Party Literature

	  You can order the following third-party literature directly from
	  the vendor:


	      Title                       Vendor
	      ----------------------------------------------------------
	      PCI System Design Guide    PCI Special Interest Group
					 N/S HH3-15A
					 5200 N.E. Elam Young Pkwy
					 Hillsboro, Oregon 97124-6497
					 1-503-696-2000

	      ----------------------------------------------------------




       Electronic Orders

	  To place an order through your account at the Electronic Store,
	  dial 1-800-234-1998, using a modem set to 2400- or 9600- baud.
	  You must use a VT terminal or terminal emulator set at 8 bits,
	  no parity. If you need assistance using the Electronic Store,
	  call 1-800-DIGITAL (1-800-344-4825) and ask for an Electronic
	  Store specialist.



       Telephone and Direct Mail Orders


	      From        Call                Write
	      __________________________________________________________
	      U.S.A.      DECdirect           Digital Equipment Corporation
			  Phone:              P.O. Box CS2008
			  1-800-DIGITAL       Nashua, NH 03061
			  (1-800-344-4825)
			  FAX: 603-884-5597


	      Puerto      Phone:              Digital Equipment Corporation
	      Rico        809-781-0505        3 Digital Plaza, 1st Street
			  FAX: 809-749-8377   Suite 200
					      Metro Office Park
					      San Juan, Puerto Rico 00920

	      Canada      Phone:              Digital Equipment of Canada Ltd.
			  1-800-267-6215      100 Herzberg Road
			  FAX: 613-592-1946   Kanata, Ontario, Canada K2K 2A6
					      Attn: DECdirect Sales

	      International  -                Local Digital subsidiary or
					      approved distributor

	      Internal    DTN 264-3030        U.S. Software Supply Business
	      orders      603-884-3030        Digital Equipment Corporation
			  FAX: 603-884-9690   10 Cotton Road
					      Nashua, NH 03063-1260

