1 |
199 |
simons |
Released 1994-06-13
|
2 |
|
|
|
3 |
|
|
|
4 |
|
|
CONTENTS:
|
5 |
|
|
|
6 |
|
|
1. Introduction.
|
7 |
|
|
2. License.
|
8 |
|
|
3. Files in this release.
|
9 |
|
|
4. Installation.
|
10 |
|
|
5. Problems and tuning.
|
11 |
|
|
6. Using the drivers with earlier releases.
|
12 |
|
|
7. Acknowledgments.
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
1. INTRODUCTION.
|
16 |
|
|
|
17 |
|
|
This is a set of Ethernet drivers for the D-Link DE-600/DE-620
|
18 |
|
|
pocket adapters, for the parallel port on a Linux based machine.
|
19 |
|
|
Some adapter "clones" will also work. Xircom is _not_ a clone...
|
20 |
|
|
These drivers _can_ be used as loadable modules,
|
21 |
|
|
and were developed for use on Linux v1.1.13 and above.
|
22 |
|
|
For use on Linux v1.0.X, or earlier releases, see below.
|
23 |
|
|
|
24 |
|
|
I have used these drivers for NFS, ftp, telnet and X-clients on
|
25 |
|
|
remote machines. Transmissions with ftp seems to work as
|
26 |
|
|
good as can be expected (i.e. > 80k bytes/sec) from a
|
27 |
|
|
parallel port...:-) Receive speeds will be about 60-80% of this.
|
28 |
|
|
Depending on your machine, somewhat higher speeds can be achieved.
|
29 |
|
|
|
30 |
|
|
All comments/fixes to Bjorn Ekwall (bj0rn@blox.se).
|
31 |
|
|
|
32 |
|
|
|
33 |
|
|
2. LICENSE.
|
34 |
|
|
|
35 |
|
|
This program is free software; you can redistribute it
|
36 |
|
|
and/or modify it under the terms of the GNU General Public
|
37 |
|
|
License as published by the Free Software Foundation; either
|
38 |
|
|
version 2, or (at your option) any later version.
|
39 |
|
|
|
40 |
|
|
This program is distributed in the hope that it will be
|
41 |
|
|
useful, but WITHOUT ANY WARRANTY; without even the implied
|
42 |
|
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
43 |
|
|
PURPOSE. See the GNU General Public License for more
|
44 |
|
|
details.
|
45 |
|
|
|
46 |
|
|
You should have received a copy of the GNU General Public
|
47 |
|
|
License along with this program; if not, write to the Free
|
48 |
|
|
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA
|
49 |
|
|
02139, USA.
|
50 |
|
|
|
51 |
|
|
|
52 |
|
|
3. FILES IN THIS RELEASE.
|
53 |
|
|
|
54 |
|
|
README.DLINK This file.
|
55 |
|
|
de600.c The Source (,may it be with You :-) for the DE-600
|
56 |
|
|
de620.c ditto for the DE-620
|
57 |
|
|
de620.h Macros for de620.c
|
58 |
|
|
|
59 |
|
|
If you are upgrading from the d-link tar release, there will
|
60 |
|
|
also be a "dlink-patches" file that will patch Linux v1.1.18:
|
61 |
|
|
linux/drivers/net/Makefile
|
62 |
|
|
linux/drivers/net/CONFIG
|
63 |
|
|
linux/drivers/net/MODULES
|
64 |
|
|
linux/drivers/net/Space.c
|
65 |
|
|
linux/config.in
|
66 |
|
|
Apply the patch by:
|
67 |
|
|
"cd /usr/src; patch -p0 < linux/drivers/net/dlink-patches"
|
68 |
|
|
The old source, "linux/drivers/net/d_link.c", can be removed.
|
69 |
|
|
|
70 |
|
|
|
71 |
|
|
4. INSTALLATION.
|
72 |
|
|
|
73 |
|
|
o Get the latest net binaries, according to current net.wisdom.
|
74 |
|
|
|
75 |
|
|
o Read the NET-2 and Ethernet HOWTO's and modify your setup.
|
76 |
|
|
|
77 |
|
|
o If your parallel port has a strange address or irq,
|
78 |
|
|
modify "linux/drivers/net/CONFIG" accordingly, or adjust
|
79 |
|
|
the parameters in the "tuning" section in the sources.
|
80 |
|
|
|
81 |
|
|
If you are going to use the drivers a loadable modules, do _not_
|
82 |
|
|
enable them while doing "make config", but instead make sure that
|
83 |
|
|
the drivers are included in "linux/drivers/net/MODULES".
|
84 |
|
|
|
85 |
|
|
If you are _not_ going to use the driver(s) as loadable modules,
|
86 |
|
|
but instead have them included in the kernel, remember to enable
|
87 |
|
|
the drivers while doing "make config".
|
88 |
|
|
|
89 |
|
|
o To include networking and DE600/DE620 support in your kernel:
|
90 |
|
|
# cd /linux
|
91 |
|
|
(as modules:)
|
92 |
|
|
# make config (answer yes on CONFIG_NET and CONFIG_INET)
|
93 |
|
|
(else included in the kernel:)
|
94 |
|
|
# make config (answer yes on CONFIG _NET, _INET and _DE600 or _DE620)
|
95 |
|
|
# make clean
|
96 |
|
|
# make depend
|
97 |
|
|
# make zImage (or whatever magic you usually do)
|
98 |
|
|
|
99 |
|
|
o I use lilo to boot multiple kernels, so that I at least
|
100 |
|
|
can have one working kernel :-). If you do too, append
|
101 |
|
|
these lines to /etc/lilo/config:
|
102 |
|
|
|
103 |
|
|
image = /linux/zImage
|
104 |
|
|
label = newlinux
|
105 |
|
|
root = /dev/hda2 (or whatever YOU have...)
|
106 |
|
|
|
107 |
|
|
# /etc/lilo/install
|
108 |
|
|
|
109 |
|
|
o Do "sync" and reboot the new kernel with a D-Link
|
110 |
|
|
DE-600/DE-620 pocket adapter connected.
|
111 |
|
|
|
112 |
|
|
o The adapter can be configured with ifconfig eth?
|
113 |
|
|
where the actual number is decided by the kernel
|
114 |
|
|
when the drivers are initialized.
|
115 |
|
|
|
116 |
|
|
|
117 |
|
|
5. "PROBLEMS" AND TUNING,
|
118 |
|
|
|
119 |
|
|
o If you see error messages from the driver, and if the traffic
|
120 |
|
|
stops on the adapter, try to do "ifconfig" and "route" once
|
121 |
|
|
more, just as in "rc.inet1". This should take care of most
|
122 |
|
|
problems, including effects from power loss, or adapters that
|
123 |
|
|
aren't connected to the printer port in some way or another.
|
124 |
|
|
You can somewhat change the behaviour by enabling/disabling
|
125 |
|
|
the macro SHUTDOWN_WHEN_LOST in the "tuning" section.
|
126 |
|
|
For the DE-600 there is another macro, CHECK_LOST_DE600,
|
127 |
|
|
that you might want to read about in the "tuning" section.
|
128 |
|
|
|
129 |
|
|
o Some machines have trouble handling the parallel port and
|
130 |
|
|
the adapter at high speed. If you experience problems:
|
131 |
|
|
|
132 |
|
|
DE-600:
|
133 |
|
|
- The adapter is not recognized at boot, i.e. an Ethernet
|
134 |
|
|
address of 00:80:c8:... is not shown, try to add another
|
135 |
|
|
"; SLOW_DOWN_IO"
|
136 |
|
|
at DE600_SLOW_DOWN in the "tuning" section. As a last resort,
|
137 |
|
|
uncomment: "#define REALLY_SLOW_IO" (see for hints).
|
138 |
|
|
|
139 |
|
|
- You experience "timeout" messages: first try to add another
|
140 |
|
|
"; SLOW_DOWN_IO"
|
141 |
|
|
at DE600_SLOW_DOWN in the "tuning" section, _then_ try to
|
142 |
|
|
increase the value (original value: 5) at
|
143 |
|
|
"if (tickssofar < 5)" near line 422.
|
144 |
|
|
|
145 |
|
|
DE-620:
|
146 |
|
|
- Your parallel port might be "sluggish". To cater for
|
147 |
|
|
this, there are the macros LOWSPEED and READ_DELAY/WRITE_DELAY
|
148 |
|
|
in the "tuning" section. Your first step should be to enable
|
149 |
|
|
LOWSPEED, and after that you can "tune" the XXX_DELAY values.
|
150 |
|
|
|
151 |
|
|
o If the adapter _is_ recognized at boot but you get messages
|
152 |
|
|
about "Network Unreachable", then the problem is probably
|
153 |
|
|
_not_ with the driver. Check your net configuration instead
|
154 |
|
|
(ifconfig and route) in "rc.inet1".
|
155 |
|
|
|
156 |
|
|
o There is some rudimentary support for debugging, look at
|
157 |
|
|
the source. Use "-DDE600_DEBUG=3" or "-DDE620_DEBUG=3"
|
158 |
|
|
when compiling, or include it in "linux/drivers/net/CONFIG".
|
159 |
|
|
IF YOU HAVE PROBLEMS YOU CAN'T SOLVE: PLEASE COMPILE THE DRIVER
|
160 |
|
|
WITH DEBUGGING ENABLED, AND SEND ME THE RESULTING OUTPUT!
|
161 |
|
|
|
162 |
|
|
|
163 |
|
|
6. USING THE DRIVERS WITH EARLIER RELEASES.
|
164 |
|
|
|
165 |
|
|
The later v1.1.X releases of the Linux kernel include some
|
166 |
|
|
changes in the networking layer (a.k.a. NET3). This affects
|
167 |
|
|
these drivers in a few places. The hints that follow are
|
168 |
|
|
_not_ tested by me, since I don't have the diskspace to keep
|
169 |
|
|
all releases on-line.
|
170 |
|
|
Known needed changes to date:
|
171 |
|
|
- release patchfile: some patches will fail, but they should
|
172 |
|
|
be easy to apply "by hand", since they are trivial.
|
173 |
|
|
(Space.c: d_link_init() is now called de600_probe())
|
174 |
|
|
- de600.c: change "mark_bh(NET_BH)" to "mark_bh(INET_BH)".
|
175 |
|
|
- de620.c: (maybe) change the code around "netif_rx(skb);" to be
|
176 |
|
|
similar to the code around "dev_rint(...)" in de600.c
|
177 |
|
|
|
178 |
|
|
|
179 |
|
|
7. ACKNOWLEDGMENTS.
|
180 |
|
|
|
181 |
|
|
These drivers wouldn't have been done without the base
|
182 |
|
|
(and support) from Ross Biro ,
|
183 |
|
|
and D-Link Systems Inc. The driver relies upon GPL-ed
|
184 |
|
|
source from D-Link Systems Inc. and from Russel Nelson at
|
185 |
|
|
Crynwr Software .
|
186 |
|
|
|
187 |
|
|
Additional input also from:
|
188 |
|
|
Donald Becker , Alan Cox
|
189 |
|
|
and Fred N. van Kempen
|
190 |
|
|
|
191 |
|
|
DE-600 alpha release primary victim^H^H^H^H^H^Htester:
|
192 |
|
|
- Erik Proper .
|
193 |
|
|
Good input also from several users, most notably
|
194 |
|
|
- Mark Burton .
|
195 |
|
|
|
196 |
|
|
DE-620 alpha release victims^H^H^H^H^H^H^Htesters:
|
197 |
|
|
- J. Joshua Kopper
|
198 |
|
|
- Olav Kvittem
|
199 |
|
|
- Germano Caronni
|
200 |
|
|
- Jeremy Fitzhardinge
|
201 |
|
|
|
202 |
|
|
|
203 |
|
|
Happy hacking!
|
204 |
|
|
|
205 |
|
|
Bjorn Ekwall == bj0rn@blox.se
|