177 lines
7 KiB
Text
177 lines
7 KiB
Text
This is version 0.32
|
|
|
|
CONTENTS:
|
|
|
|
1. Introduction.
|
|
2. License.
|
|
3. Files in this release.
|
|
4. Installation.
|
|
5. Problems and tuning.
|
|
6. Acknowledgments.
|
|
|
|
|
|
1. INTRODUCTION.
|
|
|
|
This is an Ethernet driver for the D-Link DE-600 Ethernet pocket
|
|
adapter for the parallel port, used with Linux on a laptop.
|
|
Some improvements over the 0.2X releases include:
|
|
o driver code trying to send packets end to end,
|
|
o a more solid interrupt handler,
|
|
o a fix that modifies the tcp protocol so that
|
|
the DE-600 won't choke as easily on receives.
|
|
|
|
This is a beta release, i.e. it ought to work! (:-)
|
|
|
|
I have used this driver for NFS, ftp, telnet and X-clients on
|
|
remote machines. Transmissions with ftp seems to work as
|
|
good as can be expected (i.e. > 80k bytes/sec) from a
|
|
parallel port...:-)
|
|
The speed limit is now in the upper protocols,
|
|
at least for a 386SX-25 :-)
|
|
|
|
All comments/fixes to Bjorn Ekwall (bj0rn@blox.se).
|
|
|
|
(No, I have _not_ included any support for the DE-620 yet
|
|
since I have _no_ official documentation on how to program
|
|
that beast. There are some code modifications in place
|
|
already in case I get some _real_ info..., c'mon D-Link!)
|
|
|
|
|
|
2. LICENSE.
|
|
|
|
This program is free software; you can redistribute it
|
|
and/or modify it under the terms of the GNU General Public
|
|
License as published by the Free Software Foundation; either
|
|
version 2, or (at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be
|
|
useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
PURPOSE. See the GNU General Public License for more
|
|
details.
|
|
|
|
You should have received a copy of the GNU General Public
|
|
License along with this program; if not, write to the Free
|
|
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA
|
|
02139, USA.
|
|
|
|
|
|
3. FILES IN THIS RELEASE.
|
|
|
|
README.DLINK This file.
|
|
d_link.c The Source (,may it be with You :-).
|
|
|
|
|
|
4. INSTALLATION.
|
|
|
|
o Get the latest net binaries (those referring to /conf/net).
|
|
|
|
o Read the NET-2 and Ethernet HOWTO's and modify your setup.
|
|
|
|
o To include networking and the DE600 in your kernel, do:
|
|
# cd /linux
|
|
# make config (answer yes on net and DE600)
|
|
# make clean
|
|
# make depend
|
|
# make zImage (or whatever magic you usually do)
|
|
|
|
o I use lilo to boot multiple kernels, so that I at least
|
|
can have one working kernel :-). If you do too, append
|
|
these lines to /etc/lilo/config:
|
|
|
|
image = /usr/src/linux/zImage
|
|
label = newlinux
|
|
root = /dev/hda2 (or whatever YOU have...)
|
|
|
|
# /etc/lilo/install
|
|
|
|
o Do "sync" and reboot the new kernel with a D-Link pocket
|
|
adapter connected.
|
|
|
|
Now, watch for any fireworks (try to ignore (or live with)
|
|
the smoke... :-) or:
|
|
|
|
do
|
|
read NET-FAQ and all info in /conf/net
|
|
if fix in code needed...
|
|
vi /linux/net/inet/d_link.c
|
|
cd /linux
|
|
make zImage
|
|
/etc/lilo/install
|
|
sync
|
|
reboot
|
|
endif
|
|
try it...
|
|
until satisfied
|
|
|
|
|
|
5. "PROBLEMS" AND TUNING,
|
|
|
|
o Some machines have trouble handling the parallel port and
|
|
the adapter at high speed. If you experience problems:
|
|
|
|
- The adapter is not recognized at boot, i.e. an Ethernet
|
|
adress of 00:80:c8:... is not shown, try to add another
|
|
"; SLOW_DOWN_IO"
|
|
at D_LINK_SLOW_DOWN near line 43. As a last resort, uncomment:
|
|
"#define REALLY_SLOW_IO"
|
|
near line 48 (see <asm/io.h> for hints).
|
|
|
|
- You experience "timeout" messages: first try to add
|
|
another "; SLOW_DOWN_IO" at D_LINK_SLOW_DOWN near line 22,
|
|
_then_ try to increase the value (original value: 5)
|
|
at "if (tickssofar < 5)" near line 424.
|
|
|
|
- The adapter _is_ recognized at boot but you get
|
|
messages about "Network Unreachable": The problem
|
|
is probably _not_ with the d_link driver.
|
|
Check your net configuration instead (ifconfig and route)
|
|
in "rc.inet1".
|
|
|
|
o There might be some temporary "slowdowns" when communicating
|
|
with other systems when receiving through the TCP layer.
|
|
A "fix" for this is made lastly in the source, in the function
|
|
"d_link_rspace()" that is used to modify TCP if there is
|
|
a DE-600 in use (see comments around lines 320 and 730).
|
|
|
|
The aim of this fix is to reduce the possibility of more
|
|
than two packets arriving adressed to the adapter within
|
|
the timespan it takes to copy one packet from the adapter.
|
|
|
|
Transfers with ftp with a packetsize of >= 1k will be taken
|
|
care of with this "fix", but telnet with many small packets
|
|
might run into problems sometimes. The "slowdown" will usually
|
|
take care of itself, especially if there are some larger packets
|
|
arriving now and then...
|
|
|
|
There is some room for "tuning" by changing (decreasing) the
|
|
values for "D_LINK_MAX_WINDOW" and "D_LINK_MIN_WINDOW"
|
|
defined near the end of the file (around line 726).
|
|
UDP (i.e. NFS) does not suffer from the same problem.
|
|
|
|
o The code inside d_link_interrupt() is somewhat of a
|
|
(educated) guesswork since my only source of information
|
|
is the asm-source (:-), though I have tried to improve on it.
|
|
|
|
o There is some rudimentary support for debugging, see
|
|
the source. Use "-DD_LINK_DEBUG=3" when compiling.
|
|
|
|
|
|
6. ACKNOWLEDGMENTS.
|
|
|
|
This driver wouldn't have been done without the base
|
|
(and support) from Ross Biro (bir7@leland.stanford.edu).
|
|
The driver also relies upon GPL-ed source from D-Link Inc.
|
|
and from Russel Nelson at Crynwr Software (nelson@crynwr.com).
|
|
Additional input also from Donald Becker (becker@super.org).
|
|
Alpha release primary victim^H^H^H^H^H^Htester:
|
|
Erik Proper (erikp@cs.kun.nl).
|
|
Good input also from several users, most notably Mark Burton
|
|
<markb@ordern.demon.co.uk>.
|
|
Lastly, Fred van Kempen deserves all thanks for keeping up
|
|
the good work which will give us all a _great_ net package!
|
|
|
|
|
|
Happy hacking!
|
|
|
|
Bjorn Ekwall == bj0rn@blox.se
|