From owner-freebsd-current@FreeBSD.ORG Sat Jun 27 14:44:09 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F411D1065676; Sat, 27 Jun 2009 14:44:08 +0000 (UTC) (envelope-from gary.jennejohn@freenet.de) Received: from mout5.freenet.de (mout5.freenet.de [IPv6:2001:748:100:40::2:7]) by mx1.freebsd.org (Postfix) with ESMTP id 8F0688FC26; Sat, 27 Jun 2009 14:44:08 +0000 (UTC) (envelope-from gary.jennejohn@freenet.de) Received: from [195.4.92.19] (helo=9.mx.freenet.de) by mout5.freenet.de with esmtpa (ID gary.jennejohn@freenet.de) (port 25) (Exim 4.69 #92) id 1MKZ8R-0007yj-9q; Sat, 27 Jun 2009 16:44:07 +0200 Received: from teb7a.t.pppool.de ([89.55.235.122]:49651 helo=ernst.jennejohn.org) by 9.mx.freenet.de with esmtpa (ID gary.jennejohn@freenet.de) (port 25) (Exim 4.69 #79) id 1MKZ8R-0005VD-0e; Sat, 27 Jun 2009 16:44:07 +0200 Date: Sat, 27 Jun 2009 16:44:06 +0200 From: Gary Jennejohn To: Alexander Motin Message-ID: <20090627164406.155f002d@ernst.jennejohn.org> In-Reply-To: <4A4517BE.9040504@FreeBSD.org> References: <4A4517BE.9040504@FreeBSD.org> X-Mailer: Claws Mail 3.7.1 (GTK+ 2.16.2; amd64-portbld-freebsd8.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: FreeBSD-Current Subject: Re: RFC: ATA to CAM integration patch X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: gary.jennejohn@freenet.de List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 27 Jun 2009 14:44:09 -0000 On Fri, 26 Jun 2009 21:47:26 +0300 Alexander Motin wrote: > Hi. > > I would like to present for testing and feedback present state of my and > Scott work on extending CAM subsystem to support ATA in addition to > SCSI. At this moment we have: > - CAM transport separated on common and SCSI-specific parts, last one > wrapped with small API that allows switching; > - implemented SATA-specific transport, that is automatically used when > controller reports SATA bus attached to it. It supports both single > drive and Port Multiplier modes. The only parts unfinished yet is the > automatic hot-plug (you have to do reset/rescan manually) and heavy > errors recovery; > - implemented ATA disk driver for CAM infrastructure to natively > operate ATA disks. It already supports most of required functionality: > identify, read, write, flush, dump, NCQ; > - ATAPI devices handled natively by existing SCSI peripherals drivers, > by tunneling SCSI commands over ATA bus by PACKET ATA extension; > - implemented AHCI controller driver, supporting most of tasty > hardware features (controller command queuing, NCQ, Port Multiplier, > MSI). Only some features from latest AHCI specifications for which I > have no hardware left unimplemented. > - camcontrol took minor changes to be able to report ATA devices. > > To test our work you should: > - have any AHCI compatible controller configured to native AHCI mode > (not a COMPATIBLE or RAID or whatever else) by BIOS; > - have some Serial ATA/ATAPI drives connected to AHCI controller; > - patch your recently updated 8-CURRENT with this patch: > http://people.freebsd.org/~mav/cam-ata.20090626.patch - remove atapicam from you kernel config file, otherwise the kernel pancis in xpt (at least, mine did) > - rebuild and install world and kernel; > - read new ahci man page; > - make sure that you will be able to boot if your SATA disk devices > name change from some ad4 to ada0; > - load ahci kernel module using loader prompt or loader.conf; > - boot. --- Gary Jennejohn