Discussion:
nic driver added but not attached.
(too old to reply)
nix
2012-01-22 18:39:38 UTC
Permalink
I couldn't install my nic in solaris 10. I compiled and added
the driver but failed to attach the driver and ifconfig output
shows only loopback dev. Please see the following output and tell
me whether my nic has been detected and why the driver failed to
attach?

My nic is detected in linux as (#lspci output)
01:09.0 Ethernet controller: D-Link System Inc RTL8139 Ethernet (rev
10)

but getting the following output from my solaris 10;

/etc/path_to_inst file shows
"/***@0,0/pci8086,***@1e/pci1186,***@9" 0 "rf"

and #prtconf -v shows
pci1186,1300 (driver not attached)
Hardware properties:
name='assigned-addresses' type=int items=10
[OUTPUT SHORTENED]
pci1186,1300 (driver not attached)
value='pci1186,1300.1186.1300.10' + 'pci1186,1300.1186.1300' +
'pci1186,1300' + 'pci1186,1300.10' + 'pci1186,1300' + 'pciclass,
020000' + 'pciclass,0200'
value=00001300
value=00001300

My solaris 10 version is slightly old.
#uname -a
SunOS 5.10 Generic_118844-26 i86pc i386 i86pc
Copyright 1983-2005.

Does the earlier version fit for the driver? Oracle's HCL
page asked us to download the nic driver by it's respective
pci id from http://homepage2.nifty.com/mrym3/taiyodo/eng/

(NOTE about the drivers:-It will likely work with
D-Link DFE-530TX+, DFE-538TX and other
RTL8139 based low cost NIC cards.))

so the pci id 1300 points the link and i downloaded,
compiled both rf-1.1.0.tar.gz and rf-2.6.3.tar.gz
but got the same result in spite of successful compilation
and addition as /kernel/drv/rf but it's supposed to
be rf0. Isn't it?
So the net problem is two. Not sure whether nic's been detected
and driver installed but not attached.
I even once replaced this nic with purly realtek 8139 nic but got the
same result.

What do i do now? replace with latest solaris 10/nic?
Regards..
P.S You may find the same post in other forum of different site so
please don't mind if you find it somewhere else. Jus lookin around.
John D Groenveld
2012-01-23 13:08:22 UTC
Permalink
Post by nix
so the pci id 1300 points the link and i downloaded,
compiled both rf-1.1.0.tar.gz and rf-2.6.3.tar.gz
but got the same result in spite of successful compilation
and addition as /kernel/drv/rf but it's supposed to
be rf0. Isn't it?
# grep rf /etc/driver_aliases
# ifconfig -a plumb

John
***@acm.org
vectrum
2012-01-30 17:50:25 UTC
Permalink
Post by John D Groenveld
Post by nix
so the pci id 1300 points the link and i downloaded,
compiled both rf-1.1.0.tar.gz and rf-2.6.3.tar.gz
but got the same result in spite of successful compilation
and addition as /kernel/drv/rf but it's supposed to
be rf0. Isn't it?
# grep rf /etc/driver_aliases
# ifconfig -a plumb
John
Thank you very much for your help but the problem persists.
My nic hasn't been detected. The following is the outpur I got while
compiling and installing the driver rf-2.6.3.
------------------------------------------
# /usr/ccs/bin/make install
/usr/sbin/install -f /kernel/drv -m 755 -u root -g sys i386/rf
new owner is root
i386/rf installed as /kernel/drv/rf
# ./adddrv.sh
exit status = 0
System configuration files modified but rf driver not loaded or
attached.
Driver (rf) installed.
#
# grep rf /etc/driver_aliases
rf "pci10ec,8129"
rf "pci10ec,8138"
rf "pci1186,1300"
rf "pci1113,1211"
rf "pci18a,106"
rf "pci21b,8139"
rf "pci1259,a11e"

# ifconfig -a plumb
# ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu
8232 index 1
inet 127.0.0.1 netmask ff000000
# grep rf /etc/path_to_inst
"/***@0,0/pci8086,***@1e/pci1186,***@9" 0 "rf"
vectrum
2012-01-30 17:53:03 UTC
Permalink
Post by John D Groenveld
Post by nix
so the pci id 1300 points the link and i downloaded,
compiled both rf-1.1.0.tar.gz and rf-2.6.3.tar.gz
but got the same result in spite of successful compilation
and addition as /kernel/drv/rf but it's supposed to
be rf0. Isn't it?
# grep rf /etc/driver_aliases
# ifconfig -a plumb
John
==========================
Here is the content of adddrv.sh
---------------------------------
#! /bin/csh -f
#
# rf: rtl8129/8139 driver
set DEVLIST = ( )

#
# Tested PCI cards
#
# NDC100TX-E, pci10ec,8129 (RTL8129)
set DEVLIST = ( $DEVLIST '"pci10ec,8129"' )

# Corega Inc, pci10ec,8139 (RTL8139C)
set DEVLIST = ( $DEVLIST '"pci10ec,8139"' )

#
# Untested PCI cards
#
# RTL8138B
set DEVLIST = ( $DEVLIST '"pci10ec,8138"' )

# DLink 530TX+
# DLink 538TX
set DEVLIST = ( $DEVLIST '"pci1186,1300"' )

# SMC1211TX
# Accton MPX5030
set DEVLIST = ( $DEVLIST '"pci1113,1211"' )

# LevelOne FPC-0106TX
set DEVLIST = ( $DEVLIST '"pci18a,106"' )

# Compaq HNE-300
set DEVLIST = ( $DEVLIST '"pci21b,8139"' )

# Corega Inc,
set DEVLIST = ( $DEVLIST '"pci1259,a11e"' )

#echo $DEVLIST

set DEVLIST2 = ( )
foreach i ($DEVLIST)
set pcidev = `grep $i /etc/driver_aliases`
if ("$pcidev" == "") then
set DEVLIST2 = ( $DEVLIST2 "$i" )
endif
end

#echo $DEVLIST2
if ("$DEVLIST2" == "") then
echo nothing to do.
exit 1
endif

set existing = `grep "rf " /etc/driver_aliases`
echo $existing
if ("$existing" == "") then
/usr/sbin/add_drv -n -v -m '* 0600 root sys' -i "$DEVLIST2" rf
else
/usr/sbin/update_drv -a -v -m '* 0600 root sys' -i "$DEVLIST2" rf
endif
sync
vectrum
2012-01-30 17:55:00 UTC
Permalink
Post by John D Groenveld
Post by nix
so the pci id 1300 points the link and i downloaded,
compiled both rf-1.1.0.tar.gz and rf-2.6.3.tar.gz
but got the same result in spite of successful compilation
and addition as /kernel/drv/rf but it's supposed to
be rf0. Isn't it?
# grep rf /etc/driver_aliases
# ifconfig -a plumb
John
==============================
Here is the content of adddrv.sh
---------------------------------
#! /bin/csh -f
#
# rf: rtl8129/8139 driver
set DEVLIST = ( )

#
# Tested PCI cards
#
# NDC100TX-E, pci10ec,8129 (RTL8129)
set DEVLIST = ( $DEVLIST '"pci10ec,8129"' )

# Corega Inc, pci10ec,8139 (RTL8139C)
set DEVLIST = ( $DEVLIST '"pci10ec,8139"' )

#
# Untested PCI cards
#
# RTL8138B
set DEVLIST = ( $DEVLIST '"pci10ec,8138"' )

# DLink 530TX+
# DLink 538TX
set DEVLIST = ( $DEVLIST '"pci1186,1300"' )

# SMC1211TX
# Accton MPX5030
set DEVLIST = ( $DEVLIST '"pci1113,1211"' )

# LevelOne FPC-0106TX
set DEVLIST = ( $DEVLIST '"pci18a,106"' )

# Compaq HNE-300
set DEVLIST = ( $DEVLIST '"pci21b,8139"' )

# Corega Inc,
set DEVLIST = ( $DEVLIST '"pci1259,a11e"' )

#echo $DEVLIST

set DEVLIST2 = ( )
foreach i ($DEVLIST)
set pcidev = `grep $i /etc/driver_aliases`
if ("$pcidev" == "") then
set DEVLIST2 = ( $DEVLIST2 "$i" )
endif
end

#echo $DEVLIST2
if ("$DEVLIST2" == "") then
echo nothing to do.
exit 1
endif

set existing = `grep "rf " /etc/driver_aliases`
echo $existing
if ("$existing" == "") then
/usr/sbin/add_drv -n -v -m '* 0600 root sys' -i "$DEVLIST2" rf
else
/usr/sbin/update_drv -a -v -m '* 0600 root sys' -i "$DEVLIST2" rf
endif
sync

Loading...