Solved

How do I install tg3 driver in SUSE 10.1

Posted on 2007-03-21
6
1,536 Views
Last Modified: 2013-12-16
I have a Dell Precision with a NetExtreme NIC.  I need to use SUSE 10.1 for my VMWare setup.  SUSE 10.1 does not support this NIC.  SUSE 10.2 has the tg3 included but VMWare does not support SUSE 10.2.

I have downloaded the tg3 driver and followed the rpm instructions to install.  The install fails during the make process as shown below.

I suspect the problem may be with actual pathnames being different than those which are found in the premade Makefile which came with the driver.

After lots of research and testing I have conclude my best route is to just install the driver the old fashion way using configure, make and other commands I read about but not certain how to use them.

Question 1: I have downloaded the tar files which included tg3-3.71b.tar.gz and tg3_sup-3.71b.tar.gz.  What is the difference between these two?

Question 2: How do I install this NIC driver?  I need the step by step process to compile, link, load and whatever else to make it happen.

LNX1305:/usr/src/packages # rpmbuild -bb SPECS/tg3.spec
+ umask 022
+ cd /usr/src/packages/BUILD
+ cd /usr/src/packages/BUILD
+ rm -rf tg3-3.71b
+ /usr/bin/bzip2 -dc /usr/src/packages/SOURCES/tg3-3.71b.tar.bz2
+ tar -xvvf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd tg3-3.71b
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chown -Rhf root .
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chgrp -Rhf root .
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
+ umask 022
+ cd /usr/src/packages/BUILD
+ /bin/rm -rf /var/tmp/tg3-buildroot
++ dirname /var/tmp/tg3-buildroot
+ /bin/mkdir -p /var/tmp
+ /bin/mkdir /var/tmp/tg3-buildroot
+ cd tg3-3.71b
+ value=
+ '[' -z '' ']'
++ uname -r
+ KVER=2.6.16.13-4-bigsmp
+ make KVER=2.6.16.13-4-bigsmp
make[1]: *** No rule to make target `modules'.  Stop.
make: *** [default] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.67784 (%build)
    Bad exit status from /var/tmp/rpm-tmp.67784 (%build)
PCLNX1305:/usr/src/packages # ll
total 4
drwxrwxrwt 3 root root  80 Mar 21 11:37 BUILD
drwxrwxrwt 8 root root 192 Mar 21 09:28 RPMS
drwxrwxrwt 2 root root  88 Mar 21 11:27 SOURCES
drwxrwxrwt 2 root root  72 Mar 21 11:27 SPECS
drwxrwxrwt 2 root root  48 Apr 22  2006 SRPMS
-rw-r--r-- 1 root root 911 Mar 21 11:37 out.txt
PCLNX1305:/usr/src/packages # vi out.txt


0
Comment
Question by:dalva
  • 2
  • 2
  • 2
6 Comments
 
LVL 27

Accepted Solution

by:
Nopius earned 400 total points
ID: 18768971
Hi, dalva.
I'll not answer to your questions (since I have no SuSE 10.1). But I try to help you :-)

As I know, NetXtreme uses broadcom network driver available from here: http://www.broadcom.com/support/ethernet_nic/downloaddrivers.php
Probably you get your files there.

What about files, tg3-3.71b.tar.gz is a real kernel driver, tg3_sup-3.71b.tar.gz is a set of scripts to register NetXreme pci id on your system and associate it with that driver + it has image files for system installation process for suse 10.0  and rhel.

Now what I guess you already have required driver, but it is either outdated or doesnt associated with required pci ids. To see if you have this driver already installed in your system run:
'ls -al /lib/modules/`uname -r`/kernel/drivers/net/tg3*'
If you have this file there, you can try to reguster it with 'yast' and associate with required pci id. This procedure is described here: http://www.novell.com/documentation/suse101/pdfdoc/suse_101_start_up/suse_101_start_up.pdf
page 57. PCI vendor and device IDs you may find in tg3_sup-3.71b.tar.gz in bin/pci.updates file. After registering a device try command 'insmod tg3'. If it woks, fine.

Now if you have no tg3 in kernel modules directory or 'insmod' doesn't work (outdated drver).
To build new kernel module you _should_ have kernel sources in a directory /usr/src/linux (if you have another directory, create a link with name 'linux' pointing there). Only then that described procedure for compiling sources should work.

Good luck.




0
 
LVL 35

Assisted Solution

by:ShineOn
ShineOn earned 100 total points
ID: 18787053
You say you downloaded the RPM - did you make sure it was a SuSE 10.x RPM, made for your architechture?

RPM-packaged installs (except source RPM's, IIRC) need to be distro-specific.  A redhat/fedora RPM often work for SuSE.

Follow Nopius' recommendation to build your kernel module from the tarball you downloaded, and then make sure to register it with YaST so any future patches will recognize what version you've got.
0
 
LVL 1

Author Comment

by:dalva
ID: 18820271
Still lost on how to install the driver.
So far this is where I am at.

Installed SUSE 10.1
Confirmed the file tg3.ko is located in /lib/modules/2.6.16.13-4-bigsmp/kernel/drivers/net
Performed the command lsmod | grep tg3* and got no hits
Performed the command insmod /lib/modules/2.6.16.13-4-bigsmp/kernel/drivers/net/tg3.ko
Again performed the command lsmod | grep tg3* and got a hit

Now I am suppose to register the module using YaST?  How is that done?  Please be specific since this is all new to me.

Thanks
Dave

0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 35

Expert Comment

by:ShineOn
ID: 18820517
Nopius gave you a link to the suse 10.1 documentation pdf, but, what Nopius is saying is you should tell YaST what the PCI ID information for the device is, so it's in the YaST database of devices.

It has a hex code for Vendor, Device, Subvendor, Subdevice, etc... as well as the card name.  Hopefully, you can glean that info from the file Nopius suggested you look in.

Once you get that info gathered, then to register the device:

In YaST, go into System, PCI Device Drivers.

Select "ADD" and "Manually"

Plug in the details for the driver's PCI ID.
 
Click OK...

After you add it in, you'll be able to see the NIC in the selection criteria for the network setup.  
0
 
LVL 27

Expert Comment

by:Nopius
ID: 18833777
Next run a command 'scanpci -v' and post results here.
0
 
LVL 1

Author Comment

by:dalva
ID: 18845169
*************** IMPORTANT - Please read *******************

The actual answer is found at the link below which I also opened and was answered by Nopius.  I have split points on this question since Nopius and ShineOn contributed clues which finally lead to the solution posted on the link below.

http://www.experts-exchange.com/OS/Linux/Q_22484147.html

Thanks,
dalva
0

Featured Post

Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

Join & Write a Comment

Daily system administration tasks often require administrators to connect remote systems. But allowing these remote systems to accept passwords makes these systems vulnerable to the risk of brute-force password guessing attacks. Furthermore there ar…
How many times have you wanted to quickly do the same thing to a list but found yourself typing it again and again? I first figured out a small time saver with the up arrow to recall the last command but that can only get you so far if you have a bi…
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now