Problem with my Ethernet Card

Hi Gurus of Solaris.
I have a problem yesterday when I was installing solaris in a x86 equipement
I attached some log that I capture when I try to resolve the problem
Any guru that can help please.
Any command or procedure that I can run, please advice me
Regards
Andres

Your interface is not recognized by Solaris , it needs a driver. Can you post what type , what manufacturer and what model is this interface this might help in solving your problem

Dear h@foorsa.biz
How to do it?, exit any command to see my network board, or I need to open my cpu and see the card?

# /usr/X11/bin/scanpci

can help you identify you network card.

hth

Dear tamitot
when I put the following command # /usr/X11/bin/scanpci, appear
...........
...........
pci bus 0x0000 cardnum 0x04 function 0x00: vendor 0x139 device 0x0900
Silicom Integrated System [SiS] SiS900 PCI Fast Ethernet
...........
...........

After that I put this command prtconf
..........
..........
pci1039,900 (driver not attached)

How to install this driver?

Have a look at the sfe driver available in Free NIC drivers for OpenSolaris

Dear Jlliagre
In this link I select the Item:
2. sfe driver for DP83815/83816 and SiS900 fast ethernet chipset

And download the following driver: sfe-1.0.9.tar.gz
After that I follow the procedure that in README.txt recommend.

# cat README.txt
***************************************************************************
CAUTION: There is NO WARRANTY for this software.
As this software is loaded into the kernel, it might cause the kernel to
panic or hang.

                                            Masayuki Murayama
                                            [EMAIL="KHF04453@nifty.ne.jp"]KHF04453@nifty.ne.jp[/EMAIL]

***************************************************************************

  1. Introduction

This is the DP838915/SiS900 NIC driver of Solaris.
It is distributed under the BSD license.

  1. Specification of the driver
    File name of the driver: /kernel/drv/sfe

Special file name:
/dev/sfeN (where N is a unit number, typcally 0 for first card)

    For example
            % ifconfig sfe0

Tested OS version
Solaris8 x86 00/10, Solaris9 x86 00/10
Tested chips and cards
DP83815CVNG -- NETGEAR F311
SiS900 -- MELCO LGY-PCI-TXC
SiS900 built in SiS630ET chip set (thank to Rahul)

  1. Preparing for installation
    (1) Install your PCI card and boot Solaris.
    (2) If previous version of sfe driver is installed, uninstall it first
    and reboot the system.
    # rem_drv sfe (ignore error messages)
    # init 6

(3) Copy source and binary files.
# gunzip -cd sfe-x.x.x.tar.gz | tar xf -

(4) Add a hostname entry for the nic card into /etc/hosts file

(5) Create sfe.conf file to define ehternet address
(REQUIRED FOR ON-BOARD SIS900 NICS ONLY)

Make /kernel/drv/sfe.conf file which includes the following line defining
a MAC address for your NIC card.
sfeN-mac-addr="XX:XX:XX:XX:XX:XX";

Where N is an instance number for the NIC card, typically 0, and
XX:XX:XX:XX:XX is a MAC address like 00:01:12:23:34:ab. If you
don't know it for the NIC card, use "00:00:00:00:00:00".
It makes sfe driver to generate a local MAC address automatically.
But do not use it for long time because it isn't authorized.

(6) Make links to correct binary directory and Makefile according to your
configuration. i386 and gcc are default.

    % cd /.../sfe-x.x.x
    % rm obj Makefile

#KARCH=`isainfo -n`
#export KARCH
#COMPILER="gcc"
#export COMPILER
% ln -s Makefile.${KARCH}_${COMPILER} Makefile
% ln -s ${KARCH} obj

where ${KARCH} is the result of `isainfo -n`, and ${COMPILER} is
"gcc" or "suncc" which you want to use to make the driver.

(7) Making binaries (only for sparc platform)
Sfe driver is ready for 64bit and 32bit solaris8 10/00 sparc or later.
This distribution does not include sparc binaries. To make the binaries,
you need Sun C compiler or gcc version 3, and do following command.

    % /usr/ccs/bin/make
  1. Testing

     \# cd sfe-x.x.x
     \# /usr/ccs/bin/make install
     \# ./adddrv.sh
     \# /usr/ccs/bin/make uninstall \(for solaris7, do not remove the file\)        \# modload obj/sfe
     \# devfsadm -i sfe \(for solaris7, use drvconfig and then reboot with -r \)
     \# ifconfig sfeN plumb
     \# ifconfig -a       \(you will see an entry for sfeN, ensure MAC address\)
     \# ifconfig sfeN YOUR-HOSTNAME
     \# ifconfig sfeN     \(ensure IP address is correct\)
     \# ifconfig sfeN up  \(and then you can test with ping, telnet, ftp ...\)
    

CAUTION for on-board chips
If any error occurs, REMOVE THE DRIVER INSTANTLY BEFORE SHUTDOWN THE SYSTEM.
To remove, execute the following command:
# rem_drv sfe
And ensure that /etc/driver_aliases file does NOT include any
definitions for sfe.

  1. Installation
    It is recommended to ensure that sfe driver works for your box before
    installing it.

(1) install sfe driver into the kernel directory
# cd /.../sfe-x.x.x
# /usr/ccs/bin/make install

If you do not test sfe driver yet, execute following commands.
        \# ./adddrv.sh
        \# devfsadm -i sfe \(for solaris7, use drvconfig and reboot with -r \)

(2) Configure the network interface. Create and/or modify the following file.
/etc/hostname.sfeN (N is an unit number)
If your box is a dhcp client, you also need make an empty file named
/etc/dhcp.sfeN.

(3) Reboot the system.
# init 6

  1. Upgrade
    If you have installed the driver, do following to upgrade.

(1) install new sfe driver into the kernel directory
# cd /.../sfe-x.x.x
# /usr/ccs/bin/make install

(2) Reboot the system.
# init 6

  1. Troubleshooting

Q. The system didn't boot after the driver was installed.
A. Uninstall the nic card and reboot solaris. Then, unregister the driver.
# rem_drv sfe

Or boot solaris with -a option and use /etc/system.nosfe instead of
default [etc/system] to inhibit loading the driver.

/etc/system.nosfe will be automatically generated while executing 'make
install'

Q. Solaris booted, but the network interface didn't works.
A. Is the network interface detected?

Execute 'ifconfig -a'. If you see an entry for sfeN, the driver is loaded
and working correctly.
Please check the configuration on network interface showed by ifconfig.

Is an ethernet cable connected properly?

Please check if packets are receoved via the network interface.
% snoop -P -d sfeN

If Solaris panics while testing, please send me the following information:
(1) /var/adm/messages

(2) Output of prtconf -pv

(3) Output of prtconf -vD

(4) Output of adb
Solaris core dump consists of unix.N and vmcore.N which are created in
/var/crash/YOUR-HOST-NAME/ .

Execute 'adb -k unix.N vmcore.N' and type the following subcommands:
$c (stack trace back will be printed)
$<msgbuf (last messages are printed)
^D (To quit adb, type control-D)
#

But when reboot my Desktop (init 6) appear the following message:

# svcs -xv
svc:/network/physical:default (physical network interfaces)
State: maintenance since Wed Dec 31 03:44:59 2003
Reason: Start method exited with $SMF_EXIT_ERR_CONFIG.
See: http://sun.com/msg/SMF-8000-KS
See: man -M /usr/share/man -s 1M ifconfig
See: /etc/svc/volatile/network-physical:default.log
Impact: 3 dependent services are not running:
svc:/milestone/network:default
svc:/network/shares/group:default
svc:/network/ssh:default
# cat /etc/svc/volatile/network-physical:default.log
[ start + 1.88s Enabled. ]
[ Dec 31 03:44:54 Executing start method ("/lib/svc/method/net-physical") ]
[ Dec 31 03:44:54 Timeout override by svc.startd. Using infinite timeout ]
ifconfig: plumb: sfe0: No such file or directory
starting DHCP on primary interface sfe0
ifconfig: sfe0: interface does not exist or cannot be managed using DHCP
moving addresses from failed IPv4 interfaces: sfe0 (couldn't move, no alternative interface).
[ Dec 31 03:44:59 Method "start" exited with status 96 ]
#

What will the error that I could be do? or can any guru recomend me another option or precedure to configure my network board
Regards
Andres

You might have a better luck with the newer version instead of the older you picked.

Dear jlliagre
I was working in this problem and find the solution.
Every time that I want to use the new interface installed (sfe0) I was to put the following comand
ifconfig sfe0 plumb
ifconfig sfe0 auto-dhcp

and add a value in /etc/nsswitch.conf
hosts: files by hosts : files dns
Thats all,

create the file /etc/dhcp.interface. in your case,

# touch /etc/dhcp.sfe0

network service will look for this file to configure the interface for dhcp everytime you reboot the machine.

This documented in the readme file, step 5.2.