Subject: Re: HELP w/SATA addon controller
To: None <netbsd-help@netbsd.org>
From: Dieter <netbsd@sopwith.solgatos.com>
List: netbsd-help
Date: 02/25/2007 09:43:33
> >> the SilI 3124 or later chipsets are  better, but not great.
> > 
> > I've been told that the 3124 is good.  What's wrong with it?
> 
> I don't think there is anything wrong with the 3124 or 3132 chips-- I've got a 
> MSI-7220 MB in one machine and I didn't see a significant performance 
> difference between the chipset's "nForce4 SLI x16 MCP" based SATA and the 
> extra SiliconI 3132 2-port SATA under Windows against a single 250GB SATA-2 
> drive.  The CPU load seemed to be higher when using the SilI 3132.

I have an nForce4 Ultra and it will do 65-70MB/s per drive.  My 3512 (on a
different machine) only does 37 MB/s with one drive, or 40 MB/s with two drives.
The nForce4 is limited by the drive, at least with 7200 rpm drives, I don't have
any of the 10K rpm drives.

My complaint with these controllers is that as far as I can tell, BSD doesn't
support NCQ on either of them.  We need NCQ support.

There is a sample implementation for nvidia:

http://www.kernel.org/pub/linux/kernel/people/jgarzik/libata/archive/2.6.17-nv-adma.patch.bz2

A press release for the 3512 claimed NCQ support, but I didn't find anything
in the datasheet.  The 3124 datasheet does have NCQ info.

Overview:
        http://www.siliconimage.com/products/product.aspx?id=27
Datasheet:
        http://www.siliconimage.com/docs/SiI-DS-0160-C.pdf
Another, longer, datasheet
        http://gkernel.sourceforge.net/specs/sii/

> I don't have comparable numbers under a BSD system, as I believe there is a 
> driver but it is proprietary...?
> 
> > Does NetBSD support it?
> 
> I am not entirely sure; about 2-3 months ago, someone wrote:
> 
> > In message <20051219105220.GA24011@vaasje.org>, Frank van der Linden writes:
> > [ ... ]
> >>Having written an SiI3124 driver for NetBSD (which won't be open-sourced as
> >>far as I know) in my previous job, I can tell you that the SiI3124 interface
> >>and the AHCI interface are different.

Adriaan de Groot is working on a driver for FreeBSD.
http://lists.freebsd.org/pipermail/freebsd-drivers/2007-February/000375.html
Soren Schmidt is willing to write a driver for FreeBSD.
http://lists.freebsd.org/pipermail/freebsd-hackers/2007-February/019603.html

I believe there are 3124 drivers for OpenSolaris and Linux.

Are there any SATA controllers that NetBSD or FreeBSD support NCQ on?