LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 07-14-2003, 06:26 PM   #1
fatter
LQ Newbie
 
Registered: Jan 2003
Location: Bergen, Norway
Distribution: Mandrake 9.1
Posts: 7

Rep: Reputation: 0
3C940 won't work on Mandrake 9.1


Hi,

first of all, I'm a real newbie to Linux and yes, I have searched and read all the threads concerning this subject.

Unfortunately I'm stupid, so I did not understand a thing of what I was supposed to do to get this card to work with Mandrake (same problem with RedHat).

My hope is that someone can help me from scratch.

First of all, the network card is integrated in my Asus P4P800DX (the 3Com 3c940 Gigabit chip) and is not autodetected during the install. If I follow the instructions in the driver package (downloaded the 0.44 version from Asus) I can't Make because my kernel is not where Asus wants it to be.

Also tried the Jan Hugo Prins thread, but as I understand I have to build the driver before moving it into the right folder, which seems to be impossible at this stage.

Could someone who's had the same problem help me? Cannot submit to defeat by installing a card that works automatically!

Would really appreciate all help, at the end I might understand how this whole thing works

Best regards Joakim
 
Old 07-15-2003, 03:13 AM   #2
jhaprins
Member
 
Registered: Jun 2003
Distribution: RedHat
Posts: 48

Rep: Reputation: 15
3C940 Driver

Hi,

Well, here me again. First you tell me you don't know how to copy a driver after it has been compiled. I can't figure a way to copy a uncompiled driver to the /lib/modules/'uname -r'/ directory tree, because you don't have a driver before compile and there are only compiled drivers in the /lib/modules directory tree.

So, just unpack the driver source in your homedirectory by first unzipping the .zip file and after that you go into the Linux directory that is created and you do:

tar xvzf 3c2000.tar.gz

Next you go into the 3c2000 directory that gets created and you do:

make

If you have the kernel development packages installed and the /usr/src/linux points to you current kernel source tree the build should function properly.

After that you copy the 3c2000.o file that gets created to the directory:

/lib/modules/'uname -r'/kernel/drivers/net

to your modules.conf file you at the line:

alias eth0 3c2000

Now you run:

depmod -a

The rest should be explained in the documentation of your distribution. Things like configuring a network adapter etc.

Jan Hugo
 
Old 07-15-2003, 05:26 AM   #3
fatter
LQ Newbie
 
Registered: Jan 2003
Location: Bergen, Norway
Distribution: Mandrake 9.1
Posts: 7

Original Poster
Rep: Reputation: 0
Thanks for your answer, but I probably didn't make myself clear...sorry about that. The problem is that I only get a lot of strange messages when I try to compile - that's the main problem.

There is no kernel in my usr/src/ folder, only a folder named RPM,
so that's probably why the makefile can't find anything (I guess).

The rest is ok.


Regards Joakim, still learning.
 
Old 07-15-2003, 06:35 AM   #4
geoff_f
Member
 
Registered: May 2003
Location: Canberra, Australia
Distribution: openSUSE 11.3
Posts: 445

Rep: Reputation: 31
You first need the kernel sources installed to be able to compile your driver. Start Mandrake Control Center, select Software Management->RPMDrake (with the green 'plus' sign), click in the Search box, type 'kernel' and click on Search. This should show you a list of packages that could be installed, with the letters 'kernel' in their name. Select the one named 'kernel-source-2.4.21-0.18mdk'. It would be a good idea to select the one named 'kernel-doc-2.4.21-0.18mdk' as well, if it is listed. Then click on the 'Install' button. Once the packages are installed, you should find that the 'make' command will now find the things it is looking for and you should get fewer error messages.
 
Old 07-15-2003, 04:11 PM   #5
fatter
LQ Newbie
 
Registered: Jan 2003
Location: Bergen, Norway
Distribution: Mandrake 9.1
Posts: 7

Original Poster
Rep: Reputation: 0
Thanks! I'm now posting this using the 3c2000 driver!

Wasn't hard at all!

Thanks a lot!


Joakim, happy newbie linux user
 
Old 08-05-2003, 08:26 PM   #6
Space_Balls
Member
 
Registered: Aug 2003
Location: El Paso, Tx
Distribution: Debian Sid, SuSe 9.1 Pro
Posts: 33

Rep: Reputation: 15
OK, I have the same network chip, on an Abit IS-7 board.
I did everything as described here, compiled just fine and I changed the modules file. But now when I try to acces the network configuration, that window hangs, and when I shut down, it also stops at eth0.
Any suggestions?
 
Old 08-05-2003, 11:05 PM   #7
Space_Balls
Member
 
Registered: Aug 2003
Location: El Paso, Tx
Distribution: Debian Sid, SuSe 9.1 Pro
Posts: 33

Rep: Reputation: 15
as I side note, since I was running the 9.2 beta, I will get the 9.1 final, and hope it works out!
 
Old 01-14-2004, 07:19 AM   #8
Briotti
LQ Newbie
 
Registered: Oct 2003
Location: Rome
Distribution: Mandrake9.1
Posts: 21

Rep: Reputation: 16
Hi to all,

I have a Pc with Linux (Mandrake 9.1 kernel 2.4.21) with a Gigabit Ethernet LOM named 3C940, based on a chipset by SysKonnect.

Because I need a driver (not available on my Linux distribution) I checked on SysKonnect web pages and I downloaded the Linux InstallPackage (incl. driver v.6.21) for Kernel 2.4.13 and above.

I followed the step as stated in the readme document (both the user and expert mode) but I obtained the following error:

============== LOG (BEGIN) ===========================
Create tmp dir (/tmp/Sk98IcpChpoKaQoabCnMaMEId) passed
Check user id (0) passed
Check host type (done) passed
Check architecture (found) passed
Set architecture (i386) passed
Check compiler (/usr/bin/gcc) passed
Check mcmodel flags (32bit) passed
Check module support (/sbin/insmod) passed
Check make (/usr/bin/make) passed
Check archive file (sk98lin) passed
Check kernel version (2.4.21-0.13mdkenterprise) passed
Check kernel gcc version (3.2.2) (Kernel:3.2.2 == gcc:3.2.2) passed
Check sk98lin driver availability (not loaded) passed
Check kernel header files (/usr/src/linux) passed
Unpack the sources (done) passed
Save old version.h file (done) passed
Save old autoconf.h file (done) passed
Check sources for .config file (/usr/src/linux/.config) passed
Copy and check .config file (done) passed
Execute: make config (done) passed
Execute: make dep (done) passed
Check kernel functions (Changed: nothing) passed
Check kernel header version (Kernel:2.4.21-0.13mdkenterprise != Header:2.4.21-0.13mdpassed )
Save old version.h (saved) passed
Check and create new version.h (created) passed
Compile the driver (done) passed
Restore old version.h (done) passed
Restore old autoconf.h (done) passed
Copy driver man page into /usr/share/man/man4/ (done) passed
Check the driver (error) failed
An error has occurred during the check proces which prevented
the installation from completing.
It's not possible to build a standalone sk98lin driver on this
host. The kernel don't export a neccesary symbols for the
device driver and we aren't able to load the driver.

Please compile the kernel and the driver manually.
The new driver has been installed in the /usr/src/linux
directory.

1.) Go to the directory /usr/src/linux
2.) For the console mode, run the command: make menuconfig
3.) Select the options you want to compile into the kernel
4.) Select the menu "Network Device Support"
5.) Select "Ethernet (1000 Mbit)".
5.) Mark "Marvell Yukon/SysKonnect SK-98xx/SK-95xx Gigabit
Ethernet Adapter support" with (M)
6.) Execute the command:
make dep clean bzImage modules modules_install
7.) Install the new kernel
Installation of sk98lin driver module failed.
Copying driver (done) passed
Make dependency (done) passed
Restore old version.h (done) passed
Restore old autoconf.h (done) passed
Delete temp directories (done) passed
All done. Driver installed and loaded.

============== LOG (END) ===========================

If I try a modprob I have the following error:

/lib/modules/2.4.21-0.13mdkenterprise/kernel/drivers/net/sk98lin/sk98lin.o: unresolved symbol skb_padto
modprobe: insmod /lib/modules/2.4.21-0.13mdkenterprise/kernel/drivers/net/sk98lin/sk98lin.o failed
/lib/modules/2.4.21-0.13mdkenterprise/kernel/drivers/net/sk98lin/sk98lin.o.gz: init_module: No such device
Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
You may find more information in syslog or the output from dmesg
modprobe: insmod /lib/modules/2.4.21-0.13mdkenterprise/kernel/drivers/net/sk98lin/sk98lin.o.gz failed
modprobe: insmod sk98lin failed

Any suggestion?

Thanks in advance

Giuseppe Briotti

PS the 3c2000 (both 044 and 046) didn't work (i.e. web sites such google are unavailable)
 
Old 01-14-2004, 01:40 PM   #9
TheBlackUnicorn
Member
 
Registered: Jan 2004
Distribution: Debian and Gentoo
Posts: 39

Rep: Reputation: 15
You may want to try upgrading your kernel to 2.4.23 or later. It has support for the 3c940. Use the sk98lin driver from the kernel
 
Old 04-16-2004, 06:09 PM   #10
ivoletra
LQ Newbie
 
Registered: Apr 2004
Posts: 6

Rep: Reputation: 0
I have an Asus P4P800 motherboard and Red Hat 9.0.
To install my driver 3c2000/3c940, the readme file tells me that the kernel source should be in /usr/src/linux but is not there.
When i execute "make load" a huge quantity of messages appear.
What should i do?
Should i change the Makefile? And how?
Or, is there another way?

Thanks,

Ivo Letra
 
Old 04-16-2004, 07:15 PM   #11
Briotti
LQ Newbie
 
Registered: Oct 2003
Location: Rome
Distribution: Mandrake9.1
Posts: 21

Rep: Reputation: 16
Quote:
Originally posted by ivoletra
I have an Asus P4P800 motherboard and Red Hat 9.0.
To install my driver 3c2000/3c940, the readme file tells me that the kernel source should be in /usr/src/linux but is not there.
When i execute "make load" a huge quantity of messages appear.
What should i do?
Should i change the Makefile? And how?
Or, is there another way?

Thanks,

Ivo Letra
Well, did you installed the kernel source? It seems that the make didn't find it! This is basically for two reasons:

1. you didn't install the kernel sources

2. the sources are in the wrong location or the Makefile check in the wrong location :-)

Bye

G
 
Old 04-17-2004, 04:16 PM   #12
ivoletra
LQ Newbie
 
Registered: Apr 2004
Posts: 6

Rep: Reputation: 0
So, can you tell me how do i make the Makefile to check in the correct location. Or, how do i install the kernel sorces in the correct location.

Thanks,
Ivo Letra
 
Old 04-17-2004, 06:43 PM   #13
WhatsHisName
Senior Member
 
Registered: Oct 2003
Location: /earth/usa/nj (UTC-5)
Distribution: RHEL, AltimaLinux, Rocky
Posts: 1,151

Rep: Reputation: 46
Briotti: Regarding the sk98lin driver for the 3C940/3c2000, do you have the kernel source loaded on your system? It is required for the manual installation, even as a module.

From http://www.syskonnect.com/syskonnect...02_driver.html

“Marvell Yukon/SysKonnect SK-98xx Gigabit Ethernet Adapter family driver for LINUX installation instructions:
...
2 Required Files

The linux kernel source.
No additional files required.
...”

It worked for me first try (installed as a module) using the linux InstallPackage for Kernel 2.4.13 and above.

--------------------


Just in case someone reading this post doesn’t know this, stop trying to use the 3com drivers (044 and 046) for the 3C940/3C2000. Almost everyone is having or has had trouble with the drivers. Just go to the above web site and download the linux drivers for the SysKonnect SK-98xx. The drivers are also present in later versions of the 2.4 kernel (SysKonnect SK-98xx adapter).

Or said a different way:

SysKonnect SK-98xx adapter = 3com 3C940/3c200 adapter, but with drivers that work.

Hope that helps.

Thank you SysKonnect!

Last edited by WhatsHisName; 04-17-2004 at 07:29 PM.
 
Old 04-17-2004, 07:27 PM   #14
ivoletra
LQ Newbie
 
Registered: Apr 2004
Posts: 6

Rep: Reputation: 0
Hi WhatsHisName.

I can´t access web site http://www.syskonnect.com/syskonnec...02_driver.html:
can you mail the driver to ivoletra@portugalmail.pt

Thanks for your help,
Ivo Letra
 
Old 04-17-2004, 07:34 PM   #15
WhatsHisName
Senior Member
 
Registered: Oct 2003
Location: /earth/usa/nj (UTC-5)
Distribution: RHEL, AltimaLinux, Rocky
Posts: 1,151

Rep: Reputation: 46
ivoletra: You are absolutely right. I made a mistake when I put a “:” at the end of the address and it got consolidated into the address. The address is corrected in my original post and listed here.

http://www.syskonnect.com/syskonnect...02_driver.html

It takes you to a driver page. Select "gigabit ethernet", select "SK-98xx gigabit...", scroll down and select "linux open source", read the "read me", download the "InstallPackage" (i.e., install-624.tar.bz2) for kernel 2.4.13 and above and follow the instructions for installation as a module (in the "read me"). For some reason, I couldn't download the InstallPackage in mozilla and had to use microsoft internet explorer to do it (and, yes, I crossed myself after using MIE).

A google search gives this address http://www.cs.duke.edu/~albert/ for install-624.tar.bz2, which is what you are looking for.

Sorry about that. It’s always the simple stuff that gets us.

Last edited by WhatsHisName; 04-17-2004 at 09:32 PM.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
can't get my 3Com 3c940 network card to work c31c Slackware 2 11-03-2004 09:40 PM
Mandrake 10.0 eth0 failure (3COM gigabit - 3C940) barrel Linux - Newbie 0 04-04-2004 05:06 AM
3c940 + Mandrake 9.2 + (NEED HELLLPPP) hjd17 Linux - Hardware 3 02-29-2004 07:39 PM
Possible solution to 3c940 onboard lan and mandrake Vibrato Linux - Hardware 1 01-07-2004 06:21 AM
3c940 + Mandrake Letifo Linux - Hardware 6 12-08-2003 11:06 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 09:38 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration