xVM with Marvell Yukon Ethernet Driver

I have days problem with enabling my Marvell Yukon Ethernet Driver (in may case, I’m using 88E8056) working with Sun xVM VirtualBox and xVM in either Solaris 10 or Nevada B80/B93. I used driver comes from Marvell, I have test 2 versions of drivers, but no luck. All version, when I issued dladm show-dev command. it always indicate that the status is UNKNOWN.

After searching around just realize that xVM needs GLD v3 network drivers that is not provided by Marvell, this link is very useful for me, so I replicated from that site become newer version:

  • Obtain ON source here and extract it
  • Obtain driver source here (in this case I’m using version 2.6.1, or you can get newer version) and extract it
  • Make sure that skge (from Solaris/OpenSolaris Installer) or yukonx (from Marvell) were removed
  • Do this thing:

$ gzcat myk-2.6.1.tar.gz | tar xf -
$ cd myk-2.6.1
$ rm Makefile.config
$ ln -s Makefile.config_gld3 Makefile.config
$ vi Makefile.config

Edit the line like this (appropriate with your ON source extracted location):
ONUTSDIR = /root/Download/opensolaris/usr/src/uts

  • Build and install the driver (in this case I’m using GCC)

$ export PATH=$PATH:/usr/sfw/bin
$ gmake
$ su
# gmake install
# ./adddrv.sh
# dladm show-link
LINK CLASS MTU STATE OVER
myk0 phys 1500 up --

Now you can start your Sun xVM VirtualBox and xVM network bridge is working fine…

Advertisements