Subject: Re: SATA-II directions
To: Manuel Bouyer <bouyer@antioche.eu.org>
From: Jonathan A. Kollasch <jakllsch@kollasch.net>
List: tech-kern
Date: 08/09/2007 00:23:37
--cf0hFtnykp6aONGL
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Wed, Aug 08, 2007 at 08:00:17PM +0200, Manuel Bouyer wrote:
> On Mon, Jul 23, 2007 at 09:31:25PM -0500, Jonathan A. Kollasch wrote:
> > >=20
> > > >
> > > > They support NCQ and ATAPI already.  On the other hand, I'm not sur=
e if
> > > > this would allow for SMART and whatnot to be used.
> > > >
> > > > Anyone think porting these would be a good idea?
> > > >
> > > > Or, would writing a proper SATA framework be much better?
> > >=20
> > >  Well, ATA and SATA use the same command set.  Only the transport is=
=20
> > >  different.  You also have the problem of what to do with SATA-I cont=
rollers=20
> > >  That basically behave like a legacy WDC-type controller.
> > >
> > >=20
> >=20
> > ATAPI should just be a matter of writing new glue code for the
> > non-WDC-type controllers.
>=20
> Yes. Doing it for AHCI should be a matter of a few lines, but I lack
> the hardware to test it.

I found ATAPI support was relatively easy to do for my driver.

I don't have a AHCI to work with really, otherwise I'd try doing=20
ATAPI for it.

I used one of those PATA-device to SATA-host adapter modules to do
most of my initial development with ATA and ATAPI devices.  Sadly,
I couldn't play with NCQ with that.  But it's still going to be used
for more ATAPI testing, I don't need another optical drive at this point.

>=20
> >=20
> > I guess SATA port multipliers could eventually be supported by
> > wedging some sort of new piece into the ATA stack somewhere.
> >=20
> > Also, hot-swap could probably be fit in somehow too.
>=20
> Yes, I had all of this in mind when I wrote the AHCI support, and the
> ATA part already more or less supports it (wdc is the problem, but for
> non-wdc controller it shouldn't be too hard). I have hot-plug capable har=
dware
> with ACHI controllers, but I didn't have the time to get my hands on this=
 yet
> (nor in NCQ).

Well, hopefully if you can't find all that time you can at least find time
to give me a few pointers :) .

In any case, I have some code that could probably use some looking
over sometime.

	Jonathan Kollasch

--cf0hFtnykp6aONGL
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (NetBSD)

iD8DBQFGuqTXOjx1ye3hmokRAtMMAJ4ofAzeYFjo4ZM1A36vAz+YTB37EgCfb6yc
oOqC4BYsci1colCNAaDhSSA=
=4iGa
-----END PGP SIGNATURE-----

--cf0hFtnykp6aONGL--