Home > Computers and Internet > Get Marvell 88E8056 working on ESXi 4.1

Get Marvell 88E8056 working on ESXi 4.1

Updated at Jun 30th. 2011.
Today, I installed E8400 (VT supported, Preivous one E4600 doesn’t, so I can’t install 2008R2 on Esxi if with E4600) on Lenovo Think Centre M57e 9439B72.
Hardware profile as below:

CPU: E8400, 3.0 G
Mem: 2G
MotherBoard: G31
Network Interface Card:

Marvell 88E8056 PCI ID: 11ab:4364
Interl 82545GM PCI ID: 8086:1026

Disk: 80G SATA

Install Esxi 4.1 from cd. Booted but pervious installed NIC 82559 is not working anymore. Leared Esxi 4.x kicked out 100MB NICs. replaced with a 82545 1GB NIC, works. But can’t recognized my Marvell motherboard build in NIC.

Reference articals from http://www.vm-help.com, customize oem.tgz can solve this problem. It need to modify the install CD and installed Esxi. Finally I figured it out how to do it by only modify the installed Esxi.

Prepare:
Hardware PCI ID and driver.

Marvell 88E8056 PCI ID: 11ab:4364
Driver:Use this one, the build in driver sky2 doesn’t work. http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-esxi-4/2009/08/22/

1, Power on ESXi 4.1, ssh to login, backup /etc/vmware/sample.map and pci.ids file to a temp folder, such as the datastore folder. /bootbank folder  then power off
2, Power on machine and boot from live linux. I use puppy. Mount esxi disk, mine is /sdc5, copy simple.map and pic.ids to an a temp work folder.
3, In temp work folder, make folder structure as below:
/

etc/vmware/
usr/lib/vmware/vmkmod/

modify sample.map, add below line:

11ab:4364 0000:0000 network sky_2

put the sample.map and pci.ids under /etc/vmware/
put the driver file sky_2.o under /usr/lib/vmware/vmkmod/

then pack the folder using tar cvf oem.tgz etc usr
put oem.tgz back to /bootbank to replace old one.
put oem.tgz back to /sdc5/bootbank and replace old file.

4, reboot with normal ESXi 4 startup. It will recognize the NIC card.

About these ads
  1. OSOS
    December 1, 2010 at 9:50 PM | #1

    Hello! Thank you very much for guide!
    How do you “Mount esxi disk, mine is /sdc5″?
    Thank you a lot! :)

    • December 2, 2010 at 9:21 AM | #2

      Thanks for the comments.
      This step is going to mount the installed esxi disk to another OS, for example live linux.
      1, You connect the disk to another OS. I use Puppy Linux. when start Puppy, open a terminal window, check the disk partition layout (with root permission).
      “fdisk -l”
      you will get at lease two disk with partitions in it. for example, with my current OS and disk:
      Disk /dev/sda: 250.1 GB, 250058268160 bytes
      255 heads, 63 sectors/track, 30401 cylinders
      Units = cylinders of 16065 * 512 = 8225280 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      Disk identifier: 0xd586a730

      Device Boot Start End Blocks Id System
      /dev/sda1 * 1 1275 10241406 7 HPFS/NTFS
      /dev/sda2 1276 30401 233954595 f W95 Ext’d (LBA)
      /dev/sda5 1276 14023 102398278+ 7 HPFS/NTFS
      /dev/sda6 14024 21672 61440561 7 HPFS/NTFS
      /dev/sda7 21673 26771 40957686 7 HPFS/NTFS
      /dev/sda8 26772 30401 29157943+ 7 HPFS/NTFS

      Disk /dev/sdb: 160.0 GB, 160040803840 bytes
      255 heads, 63 sectors/track, 19457 cylinders
      Units = cylinders of 16065 * 512 = 8225280 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      Disk identifier: 0x0005288e

      Device Boot Start End Blocks Id System
      /dev/sdb1 * 1 64 512000 83 Linux
      Partition 1 does not end on cylinder boundary.
      /dev/sdb2 64 6438 51200000 83 Linux
      /dev/sdb3 6438 10263 30720000 83 Linux
      /dev/sdb4 10263 19458 73856000 5 Extended
      /dev/sdb5 10263 10646 3072000 82 Linux swap / Solaris

      Then you can finger out which partition is the esxi installed. Then mount it use the command.
      mount /dev/sdc5 /yourdestinationfoldername

  2. Smoove
    August 25, 2011 at 3:33 AM | #3

    Thanks for the help I used the steps to setup my Marvell 88E8050 works great so far setup as Vmkernel, Had to get my own ID from lspci -v while under Esxi. Glad there are guys like you that make these issues a little easier to figure out. Keep up the great work.

    Smoove G.

  3. Albert
    September 7, 2011 at 4:29 PM | #4

    Thanks for the tutorial. Yesterday I installed VMWare ESXi 5.0 and I tried to follow this guid to make VMware recognize the Marvell 88E8056 nic. The problem I found is that the file sample.map no longer exist in the new version of VMWare. Do you know how to get Marvell 88E8056 working on ESXi 5.0 ?

    Thanks

    • September 30, 2011 at 10:51 PM | #5

      Dear Albert,

      I didn’t install ESXi 5 yet. Sorry. I have no spare machine to test yet.

  4. DaveC
    November 20, 2011 at 6:50 AM | #6

    Hi Albert,
    Rather than one oem.tgz and the simple.map file, there are mutiple driver archives.
    You can find out a pretty good guide here:
    http://andysworld.org.uk/2011/09/20/tweaking-esxi-50-adding-un-supported-hardware-to-vmware-vsphere-esxi-50-adding-a-qle-220-to-esxi-50/
    The one thing the author misses out is that you need to use vmtar to conver the v00 files to tgz files, rather than just moving/copying them.

    using the above info, i managed to get the NIC’s working

  1. February 28, 2011 at 12:02 AM | #1
  2. May 25, 2011 at 1:43 PM | #2

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: