SCO_MDI.TXT Driver File Contents (enw9501.zip)

   Driver Installation - for SCO UNIX MDI Driver
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

   (1) Introduction:
   -----------------

      This Readme file explains how to install the SCO Unix MDI driver.

      The Preinstallation Hardware and Software Requirements:

        a) Firmware Requirements:

           o Fully complient Rev. 2.0 or above PCI BIOS supplied with the PC.

           o If Ethernet adapter makes use of Digital Semiconductor 21050
             (PCI-PCI bridge) or any other PCI-PCI bridge, the PCI BIOS
             should support PCI-PCI bridge architecture.

        b) Software Revision Requirements:

           o OpenServer or higher version

           o SCO AHS


      This directories contains the following files:

        SUM332TD.Z  (28669)
               The compressed image of the distribution diskette.
               The distribution diskette contains all the
               files required for installing the driver using
               custom and netconfig, in particular:
                 - custom related scripts.
                 - netconfig related scripts and AOF files.
                 - Driver.o, the driver
                 - Space.c, the parameter file
                 - space.h - header file, not intended to be modified


   (2). Driver Installation:
   -------------------------

     To install the SCO Unix MDI Device Driver:

     1.  Copy the file SUM332TD.Z to SUM332T.dd.Z on a SCO Unix machine.
         The number in parentheses near the file's name (above) is the
         checksum for the file. To verify, use:

           sum -r SUM332T.dd.Z

         and compare the results.

     2.  Uncompress SUM332T.dd.Z to SUM332T.dd, using:

          uncompress SUM332T.dd

     3.  Copy the file to a diskette. To create a 3.5" floppy in drive 0,
         use:

            dd if=SUM332T.dd of=/dev/rfd0135ds18

         Mark the diskette:

            DC21X4 PCI Ethernet Adapter MDI driver
            Rel.03.32

     4.  Run custom. From the menu select:

           Software -> Install New -> From Host -> Media Floppy -> Full

     5.  Put the distribution diskette in the drive and select continue.

     6.  When prompted for distribution floppy 1, just press enter.

     7.  When custom has completed, remove the diskette and quit custom.

     8.  Run netconfig. Add the desired chain. The DC21X4 drivers are called:

           "Digital DC2104X PCI Ethernet controller" and
           "Digital DC2114X PCI Ethernet and Fast Ethernet controller"

         NOTE: For boards with more than one Digital Semiconductor 21X4X on
               them, a driver must be installed for each active port on the
               board. Thus, if a board has two separate ports, two separate
               chains must be created in order to connect both ports to
               networks. This is similar to installing two boards, each with
               one port.

               Not all ports must be active.

     9.  You can change the default value of the media by using the
         "Advanced Options..." option in the menu.

     10. When the chain has been configured, select "Exit" from the
         netconfig menu. If you don't wish to modify the space.c file
         relink the kernel at the prompt.

     11. If you wish to change parameters in the space.c file, edit

            /etc/conf/pack.d/d21x/space.c

         and make the required changes.
         The changes will apply to all the installed boards.

     12. To activate the adapter, you must reboot. When the system boots,
         you should see the following message among the other configuration
         messages:

         %d21x  0x2000-0x2200  5 - type=DC21040/TP addr=12-34-56-78-9a-bc

         or

         %d21x  0x2000-0x2200  5 - type=DC21140/100TX addr=12-34-56-78-9a-bc

         with the appropriate I/O addresses, IRQ, serial media and IEEE
         address.


   (3).  Parameters:
   -----------------

     The space.c file contains the different parameters that can be modified.
     They can be divided into several groups:

     1. Port parameters. These include:
         XXX_BUS_ARBITRATION
         XXX_BURST_LENGTH
         XXX_CACHE_ALIGNMENT
         XXX_PASS_BAD_FRAMES
         XXX_BACKOFF_CNTR
         XXX_10MB_THRESHOLD
         XXX_100MB_THRESHOLD
         XXX_PARITY_ERROR_RESPONSE
         XXX_LATENCY_TIMER
         XXX_CRC_CALC
         XXX_DC2114X_GPR_CTRL
         XXX_DC2114X_GPR_DATA
         XXX_TURBO
         XXX_SNOOZE
         XXX_0_MAC_ADDR
         XXX_1_MAC_ADDR
         XXX_2_MAC_ADDR
         XXX_3_MAC_ADDR
     2. Driver tuning parameters:
         XXX_RX_BUFS_TO_POST

     3. Driver diagnostics control:
         XXX_DEBUG

     The meaning of each is explained in detail in the space.c file,
     including allowed values for each parameter. The values in space.c
     apply to ALL the installed boards, except the MAC address parameter.

     Space.c is NOT the place to modify the board's slot number line.
     This must be modified in netconfig, by running the reconfiguration
     script.

     The serial mode interface can be changed during netconfig as explained
     before.


   (4).  Errors and trouble shooting:
   ----------------------------------

     1. Mismatch between PCI configuration and netconfig/space.c:

        In order for the adapter to work correctly, the same values that
        are used during the PCI configuration (e.g CFLT) must be used in
        the space.c file. Mismatches may cause the adapter to malfunction,
        or even hang the system.

        Currently, the PCI setup takes precedence except for the value for
        the latency timer, which is taken from the space.c file.



   (5).  Driver's error messages (when working in debug level > 0):
   ----------------------------------------------------------------

     In "d21xi" the 'i' stands for a number between 0 and 3, indicating
     the particular instance of the driver the message is reported by.

   * "d21xi Could not intialize driver, PCI BIOS couldn't read/write
      configuration register"

     This message will be printed in PCI board - if can't read or write the
     configuration registers when using the PCI BIOS.

   * "d21xi Could not intialize driver, found PCMC revision.1 with
      write-back cache mode"

     This message will be printed in PCI board - if PCMC rev.1 chip was
     found and it works with write-back cache mode (this mode can cause
     crash in the driver).


   * "d21xi Could not intialize driver, unsupported PCI board - DC21040
      revision.1"

     This message will be printed in PCI board - if it is a board with
     Digital Semiconductor 21040 revision 1 on it.

   * "d21xi Could not intialize driver, unsupported board - DC21140
      revision 1.0"

     This message will be printed if the board has Digital Semiconductor
     21140 revision 1 on it.

   * "d21xi Could not intialize driver, unsupported Digital Semiconductor"

     This message will be printed if the board doesn't have one of the
     following Digital Semiconductor on it:

        -DC21040
        -DC21140
        -DC21140A
        -DC21041
        -DC21142
        -DC21143

   * "d21xi Could not intialize driver, couldn't link interrupt handler to
      interrupt line"

     This message will be printed if the driver couldn't link the interrupt
     line to the interrupt handler.

   * "d21xi Could not intialize driver, unsupported interrupt line was set
      by the PCI BIOS to CFIT"

     This message will be printed in PCI board - if the value of the
     interrupt line that was read from the CFLT register > 0xF

   * "d21xi Could not intialize driver, unsupported selected serial media"

     This message will be printed in boards with Digital Semiconductor 21041
     or 21140 or 21140A or DC21142 or DC21143  - if unsupported serial mode
     was choose by the user or read from the SROM (in case the user choose
     to use the SROM value) for the serial interface of Digital Semiconductor
     21041 or 21140 or 21140A or DC21142 or DC21143. And in boards with
     Digital Semiconductor 21040 - if unsupported serial mode was choose
     by the user for the serial interface of Digital Semiconductor 21040

   * "d21xi [d21xinit] Could not initialize driver, autosense mode conflicts
      with GPR values in space.c"

      For DC21140/DC21140A/DC21142 based adapters, the selected serial
      mode is AUTOSENSE and there are GPR values in space.c that override
      the defaults.
      Either select serial mode explicitely, or set the GPR values in
      space.c back to the default values (see space.c).

   * "d21xi Could not intialize driver, unsupported DC21041 mode"

     This message will be printed in boards with DC21041 on it - if the chip
     was programmed to be in DC21040 mode (this mode is unsupported by the
     driver)

   * "d21xi Could not intialize driver, PCI board - couldn't read board's
      address"

     This message will be printed in PCI board (when reading IEEE address
     using CSR9) if couldn't read board address.

   * "d21xi Could not intialize driver, PCI board - wrong checksum of
      board's address"

     This message will be printed in PCI board (when reading IEEE address
     using CSR9) if wrong checksum of the IEEE address was read.

   * "d21xi Could not intialize driver, PCI board - the upper 16 bits of
      the CBIO != 0"

     This message will be printed in PCI board - if one of the upper 16
     bits of the CBIO register was set by the PCI BIOS.

   * "d21xi Could not intialize driver, SROM address is odd"

     This message will be printed if the driver tried to read odd address
     in the SROM.

   * "d21xi Could not intialize driver, try to read beyond the SROM last
      address"

     This message will be printed if the driver tried to read beyond the
     last SROM address.

   * "d21xi Could not intialize driver, can't read/write from/to the SROM"

     This message will be printed if the driver couldn't read/write from/to
     the SROM

   * "d21xi Could not intialize driver, SROM's checksum wrong"

     This message will be printed if the checksum of the SROM is wrong.

   * "d21xi Could not intialize driver, didn't find board's info in the SROM"

     This message will be printed if the board leaf-info in the SROM.

   * "d21xi Could not intialize driver, read null address from the SROM"

     This message will be printed if the null IEEE address was read from
     the SROM.

   * "d21xi Could not intialize driver, unsupported board"

     This message will be printed if the driver found SROM on the board but
     didn't find DC21140 or DC21041 or DC2114A or DC21142 or DC21143 chip.

   * "d21xi Could not intialize driver, unsupported SROM version"

     This message will be printed if unsupported SROM version was found by
     the driver.

   * "d21x ERROR, minor number n, Ethernet controller configuration problem"

     This message will be printed in the d21x_open routine when the driver
     couldn't find a specific board with specific minor number

   * "d21xi [d21x_open] Ethernet controller not found"

     This message will be printed in the d21x_open routine when a specific
     board wasn't found by the D21Xinit routine and a request for opening
     a new stream to the driver was requested.

   * "d21xi [d21x_close] Problems stopping adapter"

     This message will be printed in the d21x_close routine when the last
     user of the stream close the connection to the adapter and the driver
     try to stop the adapter without success (due to PCI BIOS problems)

   * "d21xi Controller has transitioned to halted state d21xi Halt ID
      halt_reason"

     This message will be printed when the driver detects a HW error and
     is moving to Halt state.

   * "d21xi - wput : unknown stream message db_type"

     This message will be printed in the d21x_wput routine when the driver
     is given an unknown STREAM message.

   * "d21xi Controller has transitioned to halted state!
      Halt ID: TX Jabber Timer Expired"

     or:

     "d21xi Controller has transitioned to halted state!
      Halt ID: Transmit Jabber Timer expiration interrupt"

     This messages will be printed when a TX jabber timer expired when
     DC21X4 sends a packet. In this case the driver stop the adapter
     operation.

   * "d21xi Controller has transitioned to halted state!
      Halt ID: Couldn't use PCI BIOS"

     This messages will be printed when a the driver failed to use the PCI
     BIOS for read and write the configuration registers

   * "d21xi Controller has transitioned to halted state!
      Halt ID: Setupacket Timeout"

     This messages will be printed when the driver fails to send setup packet

   * "d21xi Controller has transitioned to halted state!
      Halt ID: System Error occured"

     This messages will be printed when the driver reads DC21X4 status
     register and finds that the system error bit is set

   * "d21xi - Invalid MACIOC_SETMCA message"

     This message will be printed when the driver gets an invalid
     MACIOC_SETMCA message.

   * "d21xi - Invalid MACIOC_DELMCA message"

     This message will be printed when the driver gets an invalid
     MACIOC_DELMCA message.

   * "d21xi - Invalid MACIOC_GETMCA message"

     This message will be printed when the driver gets an invalid
     MACIOC_GETMCA message.

   * "d21xi - Invalid MACIOC_GETADDR message"

     This message will be printed when the driver gets an invalid
     MACIOC_GETADDR message.

   * "d21xi - Invalid MACIOC_PROMISC message"

     This message will be printed when the driver gets an invalid
     MACIOC_PROMISC message.

   * "d21xi - Invalid MACIOC_GETRADDR message"

     This message will be printed when the driver gets an invalid
     MACIOC_GETRADDR message.

   * "d21xi - Invalid MACIOC_GETMCSIZE message"

     This message will be printed when the driver gets an invalid
     MACIOC_GETMCSIZE message.

   * "d21xi - Internal Error : Mismatch in transmit list pointers"

     This message will be printed when something wrong the driver internals
     transmit pointers.

   * "d21xi - m_data with bad Ethernet header size"

     This message will be printed when the driver gets a packet with
     length > Ethernet packet length.

   * "d21xi - m_data - driver is not bound"

     This message will be printed when the driver gets packets to send from
     an unbound protocol.

   * "d21xi - uwput req : unknown; "

     This message will be printed when an unknown uwput request was sent
     from the upper layer.

   * "d21xi - uwput ioctl : default, uknown ioctl; "

     This message will be printed when an unknown ioctl message was sent
     from the upper layer.

   * "d21xi - Internal error in autodetect!"

     This message will be printed when internal error was detected in
     media autodetection

   * "m_data : buffer reside in more than 2 pages - system error!"

     This meesage will appear when the driver discover that buffer with
     size < 4K reside in more that 2 pages.

   * "d21x_alloc_rx_bufs : (buffer_size % 4) != 0)"

     This message will be print when the driver discover system error
     in buffer allocation.

   * "d21x_mac_hwfail_ind routine Can't allocate message block"

     This message will be printed when a HW problem was discovered and the
     driver can't allocate an error message

   * "d21xi [d21xinit] could not initialize driver, unable to set phy's
      connection"

     This message will be printed when the driver fails to set MII PHY
     connection

   * "d21xi [d21xinit] could not initialize driver, unsupported admin
      control command"

     This message will be printed when the driver try to set an unsupported
     admin command to the MII PHY.

   * "d21xi [d21xinit] could not initialize driver, can't read MII PHY
      register"

     This message will be printed when the driver try to read one of the
     MII PHY regiters without a success.

Download Driver Pack

How To Update Drivers Manually

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.

server: ftp, load: 1.32