Compatibility Reports for D-Link DFE-580TX

Reported by Anonymous


Rating
Operating system
Linux other
Date

Download the drivers from ftp://ftp.dlink.co.uk/ethernet_adapters/dfe-580tx/

Quick Install
=============
Install linux driver as following command:

1. make all
2. insmod sundance.o
3. ifconfig eth0 up 10.xxx.xxx.xxx netmask 255.0.0.0
^^^^^^^^^^^^^^^\ ^^^^^^^^\
IP NETMASK
Now eth0 bring up, you can test it by "ping" or get more information by
"ifconfig". If test ok, then continue next step.

4. cp sundance.o /lib/modules/`uname -r`/kernel/drivers/net
5. Add the following lines at /etc/modules.conf:
alias eth0 sundance
6. Run "netconfig" or "netconf" to create configuration script ifcfg-eth0
located at /etc/sysconfig/network-scripts or create it manually.

7. Driver will automatically load and configure at next boot time.


Compiling the Driver
====================
In Linux, NIC drivers are most commonly configured as loadable modules.
The approach of building a monolithic kernel has become obsolete. The driver
can be compiled as part of a monolithic kernel, but is strongly discouraged.
The remainder of this section assumes the driver is built as a loadable module.
In the Linux environment, it is a good idea to rebuild the driver from the
source instead of relying on a precompiled version. This approach provides
better reliability since a precompiled driver might depend on libraries or
kernel features that are not present in a given Linux installation.

The 2 files necessary to build Linux device driver are sundance.c and Makefile.
To compile, the Linux installation must include the gcc compiler, the kernel
source, and the kernel headers. The Linux driver supports Linux Kernels 2.4.x.
Copy the files to a directory and enter the following command to compile and
link the driver:

CD-ROM drive
------------

mkdir cdrom
mount -r -t iso9660 -o conv=auto /dev/cdrom /cdrom
cd root
mkdir tmp
cd tmp
cp /cdrom/linux/dlh5x-xx.tgz /root/tmp
tar xfvz dlh5x-x.xx.tgz (x.xx refer to release version)
cd dlh5x-x.xx (x.xx refer to release version)
make all

Floppy disc drive
-----------------

cd root
mkdir tmp
cd tmp
mcopy a:/linux/dlh5x-xx.tgz /root/tmp
tar xfvz dlh5x-x.xx.tgz (x.xx refer to release version)
cd dlh5x-x.xx (x.xx refer to release version)
make all

Installing the Driver
=====================

Manual Installation
-------------------
Once the driver has been compiled, it must be loaded, enabled, and bound
to a protocol stack in order to establish network connectivity. To load a
module enter the command:

insmod sundance.o


or

insmod sundance.o <optional parameter> ; add parameter

========================================================================
example: insmod sundance.o media=100mbps_hd
or insmod sundance.o media=3
or insmod sundance.o media=1,2,3,4 ; for 4 cards or DFE-580TX
========================================================================

Please reference the list of the command line parameters supported by
the Linux device driver below.

The insmod command only loads the driver and gives it a name of the form
eth0, eth1, etc. To bring the NIC into an operational state,
it is necessary to issue the following command:

ifconfig eth0 up

Finally, to bind the driver to the active protocol (e.g., TCP/IP with
Linux), enter the following command:

ifup eth0

Note that this is meaningful only if the system can find a configuration
script that contains the necessary network information. A sample will be
given in the next paragraph.

The commands to unload a driver are as follows:

ifconfig eth0 down
rmmod sundance.o

The following are the commands to list the currently loaded modules and
to see the current network configuration.

lsmod
ifconfig


Automated Installation
----------------------
This section describes how to install the driver such that it is
automatically loaded and configured at boot time. The following description
is based on a Red Hat 7.x distribution, but it can easily be ported to
other distributions as well.

Red Hat v7.x
-----------------
1. Copy sundance.o to the network modules directory, typically
/lib/modules/2.4.x/kernel/drivers/net.
2. Locate the boot module configuration file, most commonly modules.conf
in the /etc directory. Add the following lines:

alias ethx sundance
options sundance <optional parameters>

where ethx will be eth0 if the NIC is the only ethernet adapter, eth1 if
one other ethernet adapter is installed, etc. Refer to the table in the
previous section for the list of optional parameters.
3. Locate the network configuration scripts, normally the
/etc/sysconfig/network-scripts directory, and create a configuration
script named ifcfg-ethx that contains network information.
4. Note that for most Linux distributions, Red Hat included, a configuration
utility with a graphical user interface is provided to perform steps 2
and 3 above.


Parameter Description
=====================
You can install this driver without any addtional parameter. However, if you
are going to have extensive functions then it is necessary to set extra
parameter. Below is a list of the command line parameters supported by the
Linux device
driver.

media=xxxxxxxxx - Specifies the media type the NIC operates at.
autosense Autosensing active media.
10mbps_hd 10Mbps half duplex.
10mbps_fd 10Mbps full duplex.
100mbps_hd 100Mbps half duplex.
100mbps_fd 100Mbps full duplex.
0 Autosensing active media.
1 10Mbps half duplex.
2 10Mbps full duplex.
3 100Mbps half duplex.
4 100Mbps full duplex.
By default, the copper devices operate at
autosense, the fiber devices operate at
100Mbps full duplex.
Note that, the fiber adapter only support
100Mbps half/full duplex types.

flowctrl= - Specifies the flow control function.
0 Disable flow control.
1 Enable flow control.
Configuration Script Sample
===========================
Here is a sample of a simple configuration script:

DEVICE=eth0
USERCTL=no
ONBOOT=yes
POOTPROTO=none
BROADCAST=207.200.5.255
NETWORK=207.200.5.0
NETMASK=255.255.255.0
IPADDR=207.200.5.2


Troubleshooting
===============
Q: Couldn't compiler the driver ?
A: Copy all necessary files on same current directory. Make sure all files
are Unix file format (no LF). You can use some convertible program conver
it from DOS to UNIX. (Like dos2unix, UltraEdit-32 ...).

Q: If I have two or more NICs, how to assgin different speed for each one?
A: Use comma to configure speed respectively. For example:
insmod sundance.o media=100mbps_half,10mbps_half,100mbps_full,autosense
OR
insmod sundance.o media=1,2,0,4

Reported by Anonymous


Rating
Operating system
Linux other
Date

Tested with Red Hat 8.0 and works fine with Donald Becker's latest sundance drivers at http://www.scyld.com/network/ethercard.html. Will not work with older sundance drivers supplied with 2.4.18 kernel.