
Introduction
============

This document presents information to users about D-Link DGE-500T Gigabit Adapter
and the relevant LINUX software driver 
version 1.0.0.0 for LINUX operating system kernel version 2.2.x.

Installation and Configuration
==============================

The fourth stage in the installation sequence is installing the driver
for the GigMAC card. The following subsections describe the procedure
for installing the driver for LINUX.

LINUX Driver Installation
-------------------------

Follow this sequence for installation under LINUX.

 1.To freshly make the driver
   go to the /DLK directory and execute "make"

 2.To remove the binaries
   execute "make clean"

 3.If the machine on which the testing is done is an SMP machine,
   please include the flag -D__SMP__ in the CFLAGS of the Makefile.

 4.After the dgem.o ( The driver module ) is made, to load the driver
   execute the command "insmod dgem". We can uload the driver by doing
   "rmmod dgem".

 5.After loading the driver, get the interface name( eg: eth0, eth1 etc)
   for the device. The last line in the messages listed will indicate the
   name of the interface for the driver. If the message is not coming on
   the console, we can see the messages in the kernel buffer by executing
   "dmesg" on the command line. The last line in that will indicate the
   interface name.

 6.To configure IP for the interface.
   ifconfig <interface-name> <ip-addr>
   eg: ifconfig eth0 10.10.10.1

   To shutdown the interface.
   ifconfig <interface-name> down
   eg: ifconfig eth0 down

   Please note that it may appear to hang on doing an "ifconfig", but it is
   just momentary and it will soon come out of that. The link becomes active
   only after about 20 seconds since the "ifconfig".

 7.Now we are all set to go with the driver.

 8.To make the driver load when the system boots up, the following lines
   needs to be put in any of the startup scripts like /etc/rc.d/rc.local
   or /etc/rc.d/init.d/network

      /sbin/insmod /working/oct1/dgem.o
      /sbin/ifconfig <interface-name> <ip-addr>

 9.The tunable parameters of the driver like the Receive and Transmit buffers
   are put in the file nsm.h under the heading "Tunable parameters". Right now
   the value of RX_QUEUE_SZ is 100, on a high end system putting a value of
   200 for RX_QUEUE_SZ can give better performance.

10.To try jumbo frames, the mtu size can be increased using the ifconfig
   utility, as follows

   ifconfig <interface-name> mtu <mtu-size>
   eg: ifconfig eth0 mtu 3000

   The BUF_SIZE_MAX value in nsm.h (Tunable parameter) should be changed to
   4096.
   <mtu-size> can be increased upto 4000 bytes for sane operation.
