From owner-freebsd-stable@FreeBSD.ORG Wed Jun 30 17:12:41 2010 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 497841065670 for ; Wed, 30 Jun 2010 17:12:41 +0000 (UTC) (envelope-from jdc@koitsu.dyndns.org) Received: from qmta03.emeryville.ca.mail.comcast.net (qmta03.emeryville.ca.mail.comcast.net [76.96.30.32]) by mx1.freebsd.org (Postfix) with ESMTP id 317F88FC23 for ; Wed, 30 Jun 2010 17:12:40 +0000 (UTC) Received: from omta19.emeryville.ca.mail.comcast.net ([76.96.30.76]) by qmta03.emeryville.ca.mail.comcast.net with comcast id cGim1e0031eYJf8A3HCgHW; Wed, 30 Jun 2010 17:12:40 +0000 Received: from koitsu.dyndns.org ([98.248.46.159]) by omta19.emeryville.ca.mail.comcast.net with comcast id cHCf1e00M3S48mS01HCgux; Wed, 30 Jun 2010 17:12:40 +0000 Received: by icarus.home.lan (Postfix, from userid 1000) id 676FD9B425; Wed, 30 Jun 2010 10:12:39 -0700 (PDT) Date: Wed, 30 Jun 2010 10:12:39 -0700 From: Jeremy Chadwick To: Paul Mather Message-ID: <20100630171239.GA65888@icarus.home.lan> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Cc: FreeBSD Stable Subject: Re: Problems with ATA_CAM support in RELENG_8 X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Jun 2010 17:12:41 -0000 On Wed, Jun 30, 2010 at 12:07:54PM -0400, Paul Mather wrote: > I am running FreeBSD/amd64 RELENG_8 on a Dell Optiplex 745. The hard drive in the system is SATA and I have "Normal", not "Legacy" SATA support enabled in the BIOS. (BIOS is V2.6.4.) I am assuming this will enable native AHCI mode for the drive. That isn't correct. Some Dell OptiPlex systems explicitly have an AHCI option in their BIOS for enabling/disabling AHCI. I do not believe the 745 offers this capability, which means no AHCI is available. (We use these OptiPlex models at my workplace so I'm familiar with them) > I built a kernel with ATA_CAM support, but for some reason the SATA drive is probing at slow, UDMA2, speeds: I don't know anything about this option, but the "common" way to get ATA to utilise SCSI CAM is to enable AHCI in one's system BIOS and load the ahci.ko (not ataahci.ko) driver using /boot/loader.conf (ahci_load="yes") or "load ahci" from the loader "OK" prompt. That's literally all you need. In your case since you don't have AHCI available, you're probably going to have to stick to using standard ata(4) (read: remove ATA_CAM and ahci from your kernel configuration). Be aware ahci.ko IS NOT the same thing as ataahci.ko. The latter adds AHCI support but via the classic ata(4) layer (meaning: AHCI without SCSI CAM. This also lacks NCQ support, but does gain you hot-swap capability). > Does my problem lie with my kernel config or is the Dell Optiplex 745 > BIOS brain dead when it comes to AHCI native support? The only option > it appears to have in the BIOS is "Normal" and "Legacy" when it comes > to the SATA controller mode. It's not "brain dead". "Normal" is not the same thing as AHCI. "Normal" tells the controller to run in standard SATA mode, "Legacy" causes the controller to emulate classic PATA (literally you'll see PATA controllers show up on IRQs 14 and 15, etc.). Validation that your system doesn't have AHCI enabled/doesn't have AHCI available is here: > atapci0: port 0xfe00-0xfe07,0xfe10-0xfe13,0xfe20-0xfe27,0xfe30-0xfe33,0xfec0-0xfecf,0xecc0-0xeccf irq 20 at device 31.2 on pci0 > atapci0: [ITHREAD] > ata2: on atapci0 > ata2: [ITHREAD] > ata3: on atapci0 > ata3: [ITHREAD] > atapci1: port 0xfe40-0xfe47,0xfe50-0xfe53,0xfe60-0xfe67,0xfe70-0xfe73,0xfed0-0xfedf,0xecd0-0xecdf irq 20 at device 31.5 on pci0 > atapci1: [ITHREAD] > ata4: on atapci1 > ata4: [ITHREAD] > ata5: on atapci1 > ata5: [ITHREAD] An AHCI-enabled controller, with a system using ahci.ko, will look like this: ahci0: port 0x1c50-0x1c57,0x1c44-0x1c47,0x1c48-0x1c4f,0x1c40-0x1c43,0x18e0-0x18ff mem 0xdc000800-0xdc000fff irq 17 at device 31.2 on pci0 ahci0: [ITHREAD] ahci0: AHCI v1.20 with 6 3Gbps ports, Port Multiplier supported ahcich0: at channel 0 on ahci0 ahcich0: [ITHREAD] ahcich1: at channel 1 on ahci0 ahcich1: [ITHREAD] ahcich2: at channel 2 on ahci0 ahcich2: [ITHREAD] ahcich3: at channel 3 on ahci0 ahcich3: [ITHREAD] ahcich4: at channel 4 on ahci0 ahcich4: [ITHREAD] ahcich5: at channel 5 on ahci0 ahcich5: [ITHREAD] -- | Jeremy Chadwick jdc@parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB |