*************************************************************************** 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 KHF04453@nifty.ne.jp *************************************************************************** 1. Introduction This is the VIA Rhine family NIC driver for Solaris. Rh will work with VT86C100 (Rhine I), DL10030 (Rhine I), VT6102 (Rhine II), VT6105 (Rhine III), built-in Rhine II ethernet mac in VT8235 and VT8237 south bridges. It is distributed under the BSD license. 2. Specification of the driver File name of the driver: /kernel/drv/rh /kernel/drv/sparcv9/rh (for sparc 64bit kernel) Special file name: /dev/rhN (where N is a unit number, typcally 0 for first card) For example % ifconfig rh0 Tested OS version Solaris8 00/10 x86, Solaris9 12/02 x86 Solaris8 sparc Tested chips and cards VT6102(Rhine II rev 43) -- Planex communications Inc.(Japan) FNW-9702-T3 VT6102(Rhine II rev 47) DL10030(Rhine I rev 6) -- Corega Inc.(Japan) FEtherII PCI TX VT6105(Rhine III rev 85) -- Corega Inc.(Japan) FEther PCI-TXA This driver is ready for VT6105M (Rhine-III management adaptor) but not tested. 3. Prepare for installation (1) Install your PCI card and boot Solaris. (2) Copy source and binary files. # gunzip -cd rh-x.x.x.tar.gz | tar xf - (3) Add hostname for the NIC card into the /etc/hosts file (4) Make links to correct binary directory and Makefile according to your configuration. i386 and gcc are default. % cd /.../rh-x.x.x % rm obj Makefile % 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. (5) Making binaries (only for sparc platform) Gani driver is ready for 64bit and 32bit solaris8 10/00 sparc or later. (But currently it is unstable on sparc platforms.) This distribution does not include sparc binaries. To make the binaries, you need Sun C compiler or gcc version 3, and do the following operations. % /usr/ccs/bin/make 4. Testing # cd /.../rh-x.x.x # /usr/ccs/bin/make install # ./adddrv.sh # /usr/ccs/bin/make uninstall (don`t do this for Solaris7) # modload obj/rh # devfsadm -i rh ( for solaris7, use drvconfig and reboot with -r option ) # ifconfig rhN plumb ( where N is unit number, typcally 0 for first card) # ifconfig -a ( you will see an entry for rh0, ensure ethernet address is correct) # ifconfig rhN HOSTNAME # ifconfig rhN ( ensure IP address is correct) # ifconfig rhN up ( and then you can test with ping, telnet, ftp ...) 5. Installation After you ensure that the rh driver is fully functional, install it. (1) install the rh driver into kernel directory # cd /.../rh-x.x.x # /usr/ccs/bin/make install If you did not test rh driver yet, execute the following commands: # ./adddrv.sh # devfsadm -i rh ( for Solaris7 use drvconfig and reboot with -r option ) (2) Configure the network interface. Create and/or modify the following files: /etc/hostname.rhN (3) Reboot the system. # init 6 6. Troubleshooting Q. Following message is printed in the /var/adm/messages file NOTE: rhN: link up but auto-negotiation failed. A. This massage appears for Rhine I chips when the link partner does not have auto negotiation capability. Please disable auto negotiation capability for your NIC card by specifying the correct media mode in /kernel/drv/rh.conf with the following syntax: rhN-duplex=["full"|"half"] rhN-speed=[100|10]; # where N is a unit number For example rh0-duplex="full" rh0-speed=100; # full-duplex 100Mbps for rh0 rh0-duplex="half" rh0-speed=10; # half-duplex 10Mbps for rh0 Q. The driver cannot be unloaded because the device is busy, and the following message appears in /var/adm/messages file: NOTICE: rhN: rh_detach: buffer is busy A. Wait for a little while until some modules in the kernel release receive buffers which were allocated by the rh driver. Q. The system does not boot after the driver is installed. A. Uninstall the NIC card and reboot solaris. Then, unregister the driver: # rem_drv rh Or boot solaris with -a option and use /etc/system.norh instead of default [etc/system]. This inhibits loading the driver. /etc/system.norh is automatically generated when executing 'make install' or 'make test' Q. Solaris boots, but the network interface does not work. A. Is the network interface running? Execute 'ifconfig -a'. If you see an entry for rhN, the driver is loaded and working correctly. Please check the configuration of the network interface. Is an ethernet cable connected properly? Please check if the network interface is receiving packets. % snoop -P -d rhN 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)Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.