3com509c not recognized

1999-08-16 Thread westk
I've just done a clean install of Slink (2.0.36 kernel) on a Gateway PII-400, 
but the installer doesn't install the 3c509c driver ("Installation 
Failed..."). 
I've searched the archives and the web in general, but can't find much on the 
"c" card, except that it's a "Tornado" (as opposed to "Vornado" for the "b" 
card, IIRC). I've gotten the "b" card to work before, but this box has a "c" 
card, and I'm forbidden from swapping it out.

Anyone have any suggestions? (BTW, I'm still pretty green in LinuxLand, so 
talk 
down to me.)

Th


Re: 3com509c not recognized

1999-08-16 Thread Heikki Vatiainen
[EMAIL PROTECTED] wrote:
> I've just done a clean install of Slink (2.0.36 kernel) on a Gateway PII-400, 
> but the installer doesn't install the 3c509c driver ("Installation 
> Failed..."). 

You mean 3c905C, the twisted pair only 10/100Mbit/s Ethernet card 
and not 3c509, the 10Mbit/s card?

Also, if you say "dmesg" after you try to install the module, is 
there something like "Unknown 3Com PCI ethernet adapter type 9200 
detected..." near the end of dmesg output?

If this seems to be the case, then you have the 3c905C card, which
is not recognized by the kernel (yet) but is known to work. See
http://kernelnotes.org/lnxlists/linux-kernel/lk_9908_03/
msg00191.html for more info. I have added a patch against 2.0.36
and 2.0.37 in the bottom of this message for you convenience. It
looks like you have to patch and recompile at least the 3Com driver
in your kernel :-/

> I've searched the archives and the web in general, but can't find much on the 
> "c" card, except that it's a "Tornado" (as opposed to "Vornado" for the "b" 
> card, IIRC). I've gotten the "b" card to work before, but this box has a "c" 
> card, and I'm forbidden from swapping it out.

I think the b model (3c905B) is called Cyclone and this new model 
(3c905C) is called Tornado.
 
> Anyone have any suggestions? (BTW, I'm still pretty green in LinuxLand, so 
> talk 
> down to me.)

What you should do is to decide if you want to upgrade to 2.0.37
which is the latest of the 2.0.x series or if you want to stay with
2.0.36. One of the differences between .36 and .37 kernels is that
among other changes, .37 seems to have a more recent 3c59x driver
that .36.

You can patch the driver by first unpacking the kernel source and 
then going in the directory drivers/net/ . You do not need to be a 
root to unpack and compile. You can unpack the sources e.g. in 
your own home directory and then do the compiling there.

Save this mail in a file and edit out all the text except the
actual patch. The first lines in the patch file you are now
creating should start with "---" and "+++". Apply the patch with
command "patch -p0 < the_patch.txt" while still in the drivers/net/
directory.

Now when you have patched the file, see the bottom of the file. If
you do not want to recompile the whole kernel, there is
compile-command line that tells you how you can compile just that
module. Once you have compiled the module, try "insmod ./3c59x.o"
as the root.

Here is the patch against 2.0.36 and after that comes the patch
against 2.0.37. Warning: since I do not have 3c905C card, I have
not been able to test these patches. All I know is someone has been
able to get 3c905C running with these patches.


--- linux-2.0.36/drivers/net/3c59x.cSun Nov 15 20:33:02 1998
+++ 3c59x.c Mon Aug 16 21:22:27 1999
@@ -166,7 +166,7 @@
 /* Caution!  These entries must be consistent. */
 static const int product_ids[] = {
0x5900, 0x5920, 0x5970, 0x5950, 0x5951, 0x5952, 0x9000, 0x9001,
-   0x9050, 0x9051, 0x9055, 0x5057, 0 };
+   0x9050, 0x9051, 0x9055, 0x9200, 0x5057, 0 };
 static const char *product_names[] = {
"3c590 Vortex 10Mbps",
"3c592 EISA 10mbps Demon/Vortex",
@@ -179,6 +179,7 @@
"3c905 Boomerang 100baseTx",
"3c905 Boomerang 100baseT4",
"3c905B Cyclone 100baseTx",
+   "3c905C Tornado 100baseTx",
"3c575",/* Cardbus 
Boomerang */
 };
 


--- linux-2.0.37/drivers/net/3c59x.cSun Jun 13 20:21:01 1999
+++ 3c59x.c Mon Aug 16 20:54:30 1999
@@ -267,6 +267,8 @@
 PCI_USES_IO|PCI_USES_MASTER, IS_CYCLONE|HAS_NWAY, 128, vortex_probe1},
{"3c905B-FX Cyclone 100baseFx", 0x10B7, 0x905A, 0x,
 PCI_USES_IO|PCI_USES_MASTER, IS_CYCLONE, 128, vortex_probe1},
+   {"3c905C Tornado",  0x10B7, 0x9200, 0x,
+PCI_USES_IO|PCI_USES_MASTER, IS_CYCLONE, 128, vortex_probe1},
{"3c980 Cyclone",   0x10B7, 0x9800, 0xfff0,
 PCI_USES_IO|PCI_USES_MASTER, IS_CYCLONE, 128, vortex_probe1},
{"3c575 Boomerang CardBus", 0x10B7, 0x5057, 0x,



> Th

// Heikki
-- 
Heikki Vatiainen  * [EMAIL PROTECTED]
Tampere University of Technology  * Tampere, Finland



Re: 3com509c not recognized

1999-08-16 Thread Heikki Vatiainen
I wrote:
> If this seems to be the case, then you have the 3c905C card, which
> is not recognized by the kernel (yet) but is known to work. See
> http://kernelnotes.org/lnxlists/linux-kernel/lk_9908_03/
> msg00191.html for more info. I have added a patch against 2.0.36
> and 2.0.37 in the bottom of this message for you convenience. It
> looks like you have to patch and recompile at least the 3Com driver
> in your kernel :-/

I'm following up myself since I just noticed that Donald Becker,
the driver author, already has support for 3c905C and 2.0.x kernels
in his latest driver. If you go to
http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html you can find
the link to the latest driver.

If you get the driver from there, you do not need to patch the
kernel sources. Just check the compile-command from the end of the
source file and compile a new module for your kernel.

// Heikki
-- 
Heikki Vatiainen  * [EMAIL PROTECTED]
Tampere University of Technology  * Tampere, Finland



RE: 3com509c not recognized

1999-08-16 Thread westk
>= Original Message From Heikki Vatiainen <[EMAIL PROTECTED]> =
>[EMAIL PROTECTED] wrote:
>> I've just done a clean install of Slink (2.0.36 kernel) on a Gateway 
PII-400,
>> but the installer doesn't install the 3c509c driver ("Installation
>> Failed...").
>
>You mean 3c905C, the twisted pair only 10/100Mbit/s Ethernet card
>and not 3c509, the 10Mbit/s card?

Oops, my bad. You're right; it's a 3c905c, not 509 (and to think, I know this 
is a common error and I did it anyway).

>Also, if you say "dmesg" after you try to install the module, is
>there something like "Unknown 3Com PCI ethernet adapter type 9200
>detected..." near the end of dmesg output?

I'm just trying to install it during the installation routine, and the 
installation of the module fails then, so I'm not sure about dmesg's output.

>If this seems to be the case, then you have the 3c905C card, which
>is not recognized by the kernel (yet) but is known to work. See
>http://kernelnotes.org/lnxlists/linux-kernel/lk_9908_03/
>msg00191.html for more info. I have added a patch against 2.0.36
>and 2.0.37 in the bottom of this message for you convenience. It
>looks like you have to patch and recompile at least the 3Com driver
>in your kernel :-/

Oh great. Another learning curve

>> I've searched the archives and the web in general, but can't find much on 
the
>> "c" card, except that it's a "Tornado" (as opposed to "Vornado" for the "b"
>> card, IIRC). I've gotten the "b" card to work before, but this box has a 
"c"
>> card, and I'm forbidden from swapping it out.
>
>I think the b model (3c905B) is called Cyclone and this new model
>(3c905C) is called Tornado.
>
>> Anyone have any suggestions? (BTW, I'm still pretty green in LinuxLand, so
>> talk
>> down to me.)
>
>What you should do is to decide if you want to upgrade to 2.0.37
>which is the latest of the 2.0.x series or if you want to stay with
>2.0.36. One of the differences between .36 and .37 kernels is that
>among other changes, .37 seems to have a more recent 3c59x driver
>that .36.

I was planning on upgrading to the 2.2 kernel as soon as I got the box on the 
network, but now it sounds like I might be better off to download a 2.2 kernel 
now in order to get the NIC working. In which case, maybe I should just forego 
slink and go straight to potato. Or am I just asking for trouble doing that?

>You can patch the driver by first unpacking the kernel source and
[doing the following...]




>// Heikki
>--
>Heikki Vatiainen  * [EMAIL PROTECTED]
>Tampere University of Technology  * Tampere, Finland
>


Thanks for the help. I really appreciate it.



Re: 3com509c not recognized

1999-08-17 Thread Heikki Vatiainen
westk <[EMAIL PROTECTED]> wrote:
> I was planning on upgrading to the 2.2 kernel as soon as I got the box on the 
> network, but now it sounds like I might be better off to download a 2.2 
> kernel 
> now in order to get the NIC working. In which case, maybe I should just 
> forego 
> slink and go straight to potato. Or am I just asking for trouble doing that?

Even if you did download 2.2.11 or 2.2.12 (which should be out
really soon now), your 3c905C would not work. 2.2.1[12] comes with
a little bit older version of the driver that does not recognize
the new 3c905C card. The reason I know that even 2.2.12 will not
work with your card, is that Alan Cox wrote that he will not take
the risk of putting a new version of the driver into 2.2.12. He did
wrote that 2.2.13pre1 should have support for 3c905C.

Also, potato has problems when upgraded from slink (bash gets 
removed) so you probably do not want to do that unless you have 
read about the workarounds to that problem.

If you are willing to trust me, you can download the 3c59x.o files
I compiled for 2.0.36 and 2.0.37 kernels. The driver modules have
been compiled with gcc 2.7.2.3 against the correct kernel headers.
If you decide to use the drivers I have compiled, you can put them
on e.g. floppy and install them from there. After installing the
module fails with the debian installer, mount the floppy and
install the module from the floppy drive. Later you can copy the
driver over the old driver on the hard disk. The modules can be
found under /lib/modules/

You can get the precompiled drivers from
   http://sunsite.tut.fi/~hessu/3c905C/


// Heikki
-- 
Heikki Vatiainen  * [EMAIL PROTECTED]
Tampere University of Technology  * Tampere, Finland