Porting driver from Linux
Page 1 of 2

Author:  babaroga [ Tue May 26, 2009 6:30 am ]
Post subject:  Porting driver from Linux


Still talking about Sil3132 drivers and here is link to Linux source


Can somebody help me on compiling those and porting for ESXi 4.0 ?

Has anybody got experience with porting drives from Linux?


Author:  mn0 [ Tue Jun 02, 2009 9:41 am ]
Post subject:  Re: Porting driver from Linux

I looked into adapting sata_sil24 for VMware ESXi 4; however, I need a recent version (included in RHEL5 kernel 2.6.18-92 or newer). The version of libata used by ESX is older than that included in 2.6.18-92, so the version of the driver I'm interested in won't work without significant effort. (The newer driver provides port multiplier support.)

I decided it would be cheaper to run two separate systems, buy a VT-d compatible system board, or buy a compatible controller.

Author:  Dave.Mishchenko [ Tue Jun 02, 2009 10:03 pm ]
Post subject:  Re: Porting driver from Linux

If you decide to proceed with this, you'll want to take a look at this site - http://open-vdrivers.wiki.sourceforge.n ... ng_Started and note that there are new download links for ESXi 4.0's open source.

Author:  babaroga [ Wed Jun 03, 2009 1:54 am ]
Post subject:  Re: Porting driver from Linux


I'll be reading this once I get home tonight...


Author:  babaroga [ Thu Jun 04, 2009 2:00 am ]
Post subject:  Re: Porting driver from Linux

hmm, seems to be a "slightly" tougher than expected.... :(

Here is what people have tested so far http://www.avsforum.com/avs-vb/archive/index.php/t-869763.html

What is says there that support for port multipliers in Linux has been officially introduced in Kernel v2.6.24 and later versions.

I looked around and there are a few conrollers that support SATAII port multipliers. ICH9, Sil3132, Sil3124, JMB36x, and those are the ones that are mentioned on avsforum as well.

Would CentOS v5.3 x64 be of any help ? Centos v5.2 has v.2.6.18-92.1.18.el15 Kernel

Does anyone know of a SATAII PCIe card that is supported by ESXi and that supports Port Multipliers ?

Don't believe there are add on cards with AHCI ICH9 controllers available, and that seems to leaves us in a grim land, unless someone knows otherwise.


I have never mentioned that I'm running HP ML115 with LSI SAS3014e as a basic config, and then got external storage box for 8 drives, however, that was based on Sil3726 port multiplier and came with Sil3132 eSATA PCIe 1x card.

Author:  mn0 [ Mon Jun 08, 2009 8:41 am ]
Post subject:  Re: Porting driver from Linux

The RHEL/CentOS kernel has the libata port multiplier support backported to 2.6.18, but the version of libata used by ESXi 4.0 is only libata 2.00 and does not have support for port multipliers. Linux 2.6.18 came with libata 2.00 originally, and Red Hat backported libata 3.00 for RHEL 5.2 (2.6.18-92 and newer).

That avsforum link is quite old.

ICH9R port multiplier support is limited in performance on any operating system because it is not compatible with FIS switching - meaning it's slow when using more than one drive at the same time. I was unable to write more than 30 MB/sec striped across five drives when using the ICH9R and a port multiplier. I have not tried to use a port multiplier with the ICH9R/ICH10R and VMware ESXi; I'm not sure if the driver is compatible.

If you want to use port multipliers on a system running VMware ESXi 4, you might need to get VMDirectPath compatible hardware.

Author:  babaroga [ Tue Jun 09, 2009 2:18 am ]
Post subject:  Re: Porting driver from Linux

All speed I might be interested is to stream media files around house, hence the need for a lot of space.

I might be thinking now into using base OS like Ubuntu....or play with XEN or Hyper-V Server before final decision....

Thanks for all your help...

Author:  bphinz [ Sun Mar 14, 2010 11:16 am ]
Post subject:  Re: Porting driver from Linux

In case anyone is interested, here's basic port of the 2.6.19 sata_sil24 module to ESXi 4. No idea if the port multiplier functions work, I don't have the hardware to test it, but the card does at least show up as an HBA. I chose 2.6.19 because it appeared to be the same kernel version that the sata_sil.c module came from. Looks to me like you could advance to at least 2.6.21 without too much trouble though. Also, I compiled it on CentOS 5.4 using this link as a guide:

http://www.kernelcrash.com/blog/using-a ... 009/08/22/

I had to add the controller ID to simple.map but pci.id already had an entry.


File comment: from 2.6.19 kernel source
sata_sil24.c [36.4 KiB]
Downloaded 722 times

Author:  TomSme [ Thu Apr 01, 2010 1:55 am ]
Post subject:  Re: Porting driver from Linux

Hello bphinz,

I've already got through my problem of unsupported ethernet card but it seems that actually I'm facing the same problem you had some days ago, about the installation of ESXi 4.

I have a sil3132 SATA PCIe 1x card and would be really interested in your sata_sil24.o compiled version. I actually have no possibility to build a dev platform to compile the source on.

Would it be possible for you to post it here and make it available to all the community ?

Thanks in advance for you answer !

Best regards.


Author:  bphinz [ Sun Aug 08, 2010 6:46 am ]
Post subject:  Re: Porting driver from Linux

Hi Tom,

Sorry, I just now saw your post. Here's the compiled module.


sata_sil24.o [1.06 MiB]
Downloaded 881 times

Page 1 of 2 All times are UTC - 8 hours
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group