(I searched, but I have not seen this posted to the list before.)
Non-modular support for 3Com EtherLinkIII cards, specifically the ISA
3c509b, worked fine in kernel 2.2.18.
CONFIG_EL3=y
What worked in kernel 2.2.18 does not work in kernel 2.4.1 however.
http://groups.google.com (deja's successor) reveals that multiple
systems are having this problem, but there are no solutions listed
there (at least not among the English posts. I don't speak German,
but apparently many Linux users do.) I've spent quite a number of hours
attempting to resolve the matter, but with no success either.
Search for "Linux 2.4 3c509" shows the follow excerpts among the responses:
> [1.] Upon boot, the 2.4.1 kernel misconfigures one of two 3c509b NICs
> installed in my computer as "BNC" rather than "10baseT".
I get the same here.
> Boot messages for eth0 in kernel 2.2:
> eth0: 3c509 at 0x300 tag 1, 10baseT port, address 00 a0 24 e9 8d a1, IRQ 10.
> and in 2.4:
> eth0: 3c509 at 0x300, BNC port, address 00 a0 24 e9 8d a1, IRQ 10.
>
> i don't know why it says BNC port.. but it isn't right, it should be 10baseT
Again, similar results here. Incorrect port in 2.4.1 but correct in 2.2.18.
> I have three 3com cards( 1 3c590 Vortex, 1 3c900 Cyclone, 1 3c509B) which
> have no trouble with 2.2 kernels. But when I am trying to play with 2.4.0
> kernel, the 3c509 just can not load.
While my other NICs differ, the end result is that the 3c509 does not
work, yet the other NICs do, which is as I have experienced as well.
At the LILO prompt, I pass parameters as follows:
LILO boot: Linux241 ether=10,0x300,eth0 ether=7,0x320,eth1
and the (NE2000 clone) eth0 card works fine, but the 3c509b eth1 card does not.
LILO boot: Linux241 ether=7,0x320,eth0 ether=10,0x300,eth1
is not a solution, and merely causes the ethX values to flip-flop,
with the same failure. (Anticipated, but I'm mentioning it in case it
matters to anyone.)
And of course, I should mention that
LILO boot: Linux2218 ether=10,0x300,eth0 ether=7,0x320,eth1
works just fine, with the NE2000 clone on eth0 *and* the 3c509b on eth1.
(LILO boot: Linux2218 ether=7,0x320,eth0 ether=10,0x300,eth1
functions as expected as well, with the flip-flop and both cards working.)
There are features of kernel 2.4.x that I consider necessary (including,
but not limited to, netfilter) so using kernel 2.2.18 is not an adequate
solution here.
I've tried recompiling the kernel stripped down to bare minimums for
testing, but nothing seems to resolve this. I've also tested the kernel
on both a 486dx33 and a PII400, with the same results. I've also tried
using this as a single NIC in the ether=, for testing, even though
that is not a satisfactory situation here. Again, failure. I've even
physically removed the other NICs from the machine and acheived no success.
I don't see this driver mentioned in MAINTAINERS so I'm filing this
bug report to the list. (I'm uncertain if this is Donald Becker's
"baby" currently or not.) I'm omitting dmesg and .config etc. since
it doesn't seem to be necessary; anyone with a 3c509b will probably get
similar results with a 2.4.x kernel. If needed I can send any specifics
upon request.
Please CC: [email protected] in any discussion, as I am not on the list.
--------------------------------------------------------------
Get "Your Linux Desktop on the Net" at http://www.workspot.com
In reply to message
From: Lazarus Long <[email protected]>
Subject: (BUG) 3c509b and kernel 2.4.x
Date: Tue, 20 Feb 2001 12:13:59 -0800
(Replying to my own message. :-/ )
>Non-modular support for 3Com EtherLinkIII cards, specifically the ISA
>3c509b, worked fine in kernel 2.2.18.
>
>CONFIG_EL3=y
>
>What worked in kernel 2.2.18 does not work in kernel 2.4.1 however.
Nor does it work in 2.4.2 or 2.4.2-ac1.
>Please CC: [email protected] in any discussion, as I am not on the list.
Again.
--------------------------------------------------------------
Get "Your Linux Desktop on the Net" at http://www.workspot.com
> > [1.] Upon boot, the 2.4.1 kernel misconfigures one of two 3c509b NICs
> > installed in my computer as "BNC" rather than "10baseT".
>
> > Boot messages for eth0 in kernel 2.2:
> > eth0: 3c509 at 0x300 tag 1, 10baseT port, address 00 a0 24 e9 8d a1, IRQ 10.
> > and in 2.4:
> > eth0: 3c509 at 0x300, BNC port, address 00 a0 24 e9 8d a1, IRQ 10.
> >
> > i don't know why it says BNC port.. but it isn't right, it should be 10baseT
>
> > I have three 3com cards( 1 3c590 Vortex, 1 3c900 Cyclone, 1 3c509B) which
> > have no trouble with 2.2 kernels. But when I am trying to play with 2.4.0
> > kernel, the 3c509 just can not load.
>
I'm getting exactly this problems too. If 3c509 is on eth1 (and maybe just eth > 0),
it gets misconfigured port - i have two 3c509 and only second one doesn't work - but
when i force kernel to assign it 10baseT port, it of course works fine. I wanted to
examine this bug more closely, but unfortunately i have too little time now. But
anyway it looks there is bug in some region manipulation...
--
Peter "Pasky" Baudis
Whoever coded that patch should be taken out and shot, hung, drawn and
quartered then forced to write COBOL for the rest of their natural
life.
-- Keith Owens <[email protected]> in linux-kernel
My public PGP key is on: http://pasky.ji.cz/~pasky/pubkey.txt
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS d- s++:++ a--- C+++ UL++++$ P+ L+++ E--- W+ N !o K- w-- !O M-
!V PS+ !PE Y+ PGP+>++ t+ 5 X(+) R++ tv- b+ DI(+) D+ G e-> h! r% y?
------END GEEK CODE BLOCK------