From: karim@opersys.com
To: Jurgen Kramer <gtm.kramer@inter.nl.net>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Which driver for the 3C940 / 3C2000?
Date: Sun, 22 Jun 2003 01:07:25 -0400 [thread overview]
Message-ID: <3EF5398D.2000009@opersys.com> (raw)
In-Reply-To: 1056053787.2994.10.camel@paragon.slim
Hello Jurgen,
Jurgen Kramer wrote:
> I am a bit confused about which driver a need for my onboard (Asus
> P4C800 mobo) 3Com gigabit Ethernet controller. It should be a 3C940 but
> sometimes it's called 3C2000. I found a driver at the asus site which
> compiles and works with some kernel versions. Is there a proper (open
> source) kernel driver for this chip? It seems that the tg3 driver
> support some type of 3C940 but not mine.
>
> lspci -n gives:
>
> 02:05.0 Class 0200: 10b7:1700 (rev 12)
>
> This chip is also currently not defined in pci_ids.h (2.4 and 2.5)
I've got a P4C800DX-2.4GH-HT and have run into similar issues. I tried
using the 3C2000 driver shipped by ASUS on their "driver" CD, but that was
a weird experience. The driver built and installed fine with the SMP
kernel shipped with RedHat9. HOWEVER ... I could browse some web sites
and not others (I'm still trying to figure out how this could be ...)
Somehow, I could point konqueror to slashdot.org, kernel.org, motorola.com,
yahoo.com, lwn.net, etc. and see the pages, but I was unable to visit intel.com,
google.com, or amazon.com. I couldn't imagine this being a driver problem, so I
tried all sorts of different things, but still had this weird behavior. Finally, I
decided to put an 8139 with the same config, and that worked right away ... !?!
During my research about the 3C2000, I discovered that the driver
shipped with the board is actually a variant of the code in
drivers/net/sk98lin, with modified printks to display 3Com text instead of
SysKonnect information:
/* 2002 12 24 JMA begin
* Change to 3Com names.
static const char SysKonnectFileId[] = "@(#) (C) SysKonnect GmbH.";
static const char SysKonnectBuildNumber[] =
"@(#)SK-BUILD: 6.01 beta 01 PL: 01";
#define BOOT_STRING "sk98lin: Network Device Driver v6.01 beta 01\n" \
"Copyright (C) 2000-2002 SysKonnect GmbH."
#define VER_STRING "6.01 beta 01"
*/
static const char SysKonnectFileId[] = "@(#) (C) 3Com Corporation.";
static const char SysKonnectBuildNumber[] =
"@(#)SK-BUILD: A10 PL: 01";
#define BOOT_STRING "3C2000: 3Com Gigabit NIC Driver Version A10\n" \
"Copyright (C) 2003 3Com Corporation.\n" \
"Copyright (C) 2003 Marvell."
#define VER_STRING "A10"
Another header has:
#define SK_PCI_ISCOMPLIANT(result, pdev) { \
result = SK_FALSE; /* default */ \
/* 3Com (0x10b7) */ \
if (pdev->vendor == 0x10b7) { \
/* Gigabit Ethernet Adapter (0x1700) */ \
if ((pdev->device == 0x1700)) { \
result = SK_TRUE; \
} \
/* SysKonnect (0x1148) */ \
} else if (pdev->vendor == 0x1148) { \
/* SK-98xx Gigabit Ethernet Server Adapter (0x4300) */ \
/* SK-98xx Gigabit Ethernet Adapter (0x4320) */ \
if ((pdev->device == 0x4300) || \
(pdev->device == 0x4320)) { \
result = SK_TRUE; \
} \
/* D-Link (0x1186) */ \
} else if (pdev->vendor == 0x1186) { \
...
And it goes on for CNET and Linksys. Apparently, all these devices rely
on the same core. However, a trivial adding of the appropriate vendor ID
and device ID to the sk98lin in 2.4.21 resulted in an ooops at load time,
so it isn't as straight forward as I would have liked it to be ...
It'd be nice that the sk98lin driver already in Linux be modified to add
support to the 3C940, albeit without the browsing weirdness ...
Karim
--
Author, Speaker, Developer, Consultant
Pushing Embedded and Real-Time Linux Systems Beyond the Limits
http://www.opersys.com || karim@opersys.com || 514-812-4145
next prev parent reply other threads:[~2003-06-22 4:51 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-06-19 20:16 Which driver for the 3C940 / 3C2000? Jurgen Kramer
2003-06-22 5:07 ` karim [this message]
-- strict thread matches above, loose matches on Subject: below --
2003-06-22 11:50 Martin Schlemmer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3EF5398D.2000009@opersys.com \
--to=karim@opersys.com \
--cc=gtm.kramer@inter.nl.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox