From owner-freebsd-stable@FreeBSD.ORG Wed Jun 30 20:52:54 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 B40061065674; Wed, 30 Jun 2010 20:52:54 +0000 (UTC) (envelope-from paul@gromit.dlib.vt.edu) Received: from lennier.cc.vt.edu (lennier.cc.vt.edu [198.82.162.213]) by mx1.freebsd.org (Postfix) with ESMTP id 2350F8FC1C; Wed, 30 Jun 2010 20:52:54 +0000 (UTC) Received: from dagger.cc.vt.edu (dagger.cc.vt.edu [198.82.163.114]) by lennier.cc.vt.edu (8.13.8/8.13.8) with ESMTP id o5UKqNUt024852; Wed, 30 Jun 2010 16:52:23 -0400 Received: from auth3.smtp.vt.edu (EHLO auth3.smtp.vt.edu) ([198.82.161.152]) by dagger.cc.vt.edu (MOS 4.1.8-GA FastPath queued) with ESMTP id JYN40265; Wed, 30 Jun 2010 16:52:23 -0400 (EDT) Received: from gromit.tower.lib.vt.edu (gromit.tower.lib.vt.edu [128.173.51.22]) (authenticated bits=0) by auth3.smtp.vt.edu (8.13.8/8.13.8) with ESMTP id o5UKqN1h022895 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Wed, 30 Jun 2010 16:52:23 -0400 Mime-Version: 1.0 (Apple Message framework v1081) Content-Type: text/plain; charset=us-ascii From: Paul Mather In-Reply-To: <4C2B8103.6010409@FreeBSD.org> Date: Wed, 30 Jun 2010 16:52:22 -0400 Content-Transfer-Encoding: quoted-printable Message-Id: <1CD8E4CC-53C6-4594-9FF4-CDD57A6B51AC@gromit.dlib.vt.edu> References: <4C2B8103.6010409@FreeBSD.org> To: FreeBSD Stable X-Mailer: Apple Mail (2.1081) X-Mirapoint-Received-SPF: 198.82.161.152 auth3.smtp.vt.edu paul@gromit.dlib.vt.edu 5 none X-Mirapoint-IP-Reputation: reputation=neutral-1, source=Fixed, refid=n/a, actions=MAILHURDLE SPF TAG X-Junkmail-Status: score=10/50, host=dagger.cc.vt.edu X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A020206.4C2BAE87.017E,ss=1,fgs=0, ip=0.0.0.0, so=2009-09-22 00:05:22, dmn=2009-09-10 00:05:08, mode=single engine X-Junkmail-IWF: false Cc: Alexander Motin 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 20:52:54 -0000 On Jun 30, 2010, at 1:38 PM, Alexander Motin wrote: >> To enable ATA_CAM AHCI support, I included this in my kernel config = file: >>=20 >> # ATA and ATAPI devices >> options ATA_CAM >> device ahci >> device atacore >> device atapci >> options ATA_STATIC_ID # Static device numbering >>=20 >> Is this the correct way to enable ATA_CAM AHCI support? I tried >> initially including just "options ATA_CAM" and "device ahci" but the >> resultant kernel would not probe my disk drive as ada0. >=20 > Your controller seems to not report AHCI support. In such case legacy > mode driver attaches to it. But as soon as you have no `device = ataintel` > line, only generic driver was there, limited by UDMA2 mode. >=20 > PS: ATA_STATIC_ID is useless when ATA_CAM option enabled. Thank you (and Jeremy Chadwick) for the help and information. The = kernel configuration options I used above were taken from a VirtualBox = FreeBSD/amd64 install I have that I converted over to ATA_CAM when the = code first went into RELENG_8 and it wasn't exactly clear at the time = what options were absolutely required. (I'm not even sure that "options = ATA_CAM" is needed any more, given "device ahci" implies it.) >> 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. >=20 > Your controller is not identified as AHCI: >=20 >> atapci0: port >> = 0xfe00-0xfe07,0xfe10-0xfe13,0xfe20-0xfe27,0xfe30-0xfe33,0xfec0-0xfecf,0xec= c0-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,0xec= d0-0xecdf >> irq 20 at device 31.5 on pci0 >> atapci1: [ITHREAD] >> ata4: on atapci1 >> ata4: [ITHREAD] >> ata5: on atapci1 >> ata5: [ITHREAD] >=20 > You may check `pciconf -lvcb` output. For ICH8 with AHCI you should = see > there something like: > ahci0@pci0:0:31:2: class=3D0x010601 card=3D0xa00c14ff = chip=3D0x28298086 > rev=3D0x03 hdr=3D0x00 > vendor =3D 'Intel Corporation' > device =3D 'Mobile SATA AHCI Controller' > class =3D mass storage > subclass =3D SATA > bar [10] =3D type I/O Port, range 32, base 0xe880, size 8, = enabled > bar [14] =3D type I/O Port, range 32, base 0xe800, size 4, = enabled > bar [18] =3D type I/O Port, range 32, base 0xe480, size 8, = enabled > bar [1c] =3D type I/O Port, range 32, base 0xe400, size 4, = enabled > bar [20] =3D type I/O Port, range 32, base 0xe080, size 32, = enabled > bar [24] =3D type Memory, range 32, base 0xfeaff800, size 2048, = enabled > cap 05[80] =3D MSI supports 4 messages enabled with 4 messages > cap 01[70] =3D powerspec 3 supports D0 D3 current D0 > cap 12[a8] =3D SATA Index-Data Pair >=20 > Pay attention to "subclass =3D SATA". Then that's where my problem lies: atapci0@pci0:0:31:2: class=3D0x01018f card=3D0x01da1028 = chip=3D0x28208086 rev=3D0x02 hdr=3D0x00 vendor =3D 'Intel Corporation' device =3D 'SATA IDE Controller:4 port (82801HB/HR/HH/HO)' class =3D mass storage subclass =3D ATA bar [10] =3D type I/O Port, range 32, base 0xfe00, size 8, = enabled bar [14] =3D type I/O Port, range 32, base 0xfe10, size 4, = enabled bar [18] =3D type I/O Port, range 32, base 0xfe20, size 8, = enabled bar [1c] =3D type I/O Port, range 32, base 0xfe30, size 4, = enabled bar [20] =3D type I/O Port, range 32, base 0xfec0, size 16, = enabled bar [24] =3D type I/O Port, range 32, base 0xecc0, size 16, = enabled cap 01[70] =3D powerspec 3 supports D0 D3 current D0 atapci1@pci0:0:31:5: class=3D0x010185 card=3D0x01da1028 = chip=3D0x28258086 rev=3D0x02 hdr=3D0x00 vendor =3D 'Intel Corporation' device =3D '82801H (ICH8 Family) 2 port SATA Controller' class =3D mass storage subclass =3D ATA bar [10] =3D type I/O Port, range 32, base 0xfe40, size 8, = enabled bar [14] =3D type I/O Port, range 32, base 0xfe50, size 4, = enabled bar [18] =3D type I/O Port, range 32, base 0xfe60, size 8, = enabled bar [1c] =3D type I/O Port, range 32, base 0xfe70, size 4, = enabled bar [20] =3D type I/O Port, range 32, base 0xfed0, size 16, = enabled bar [24] =3D type I/O Port, range 32, base 0xecd0, size 16, = enabled cap 01[70] =3D powerspec 3 supports D0 D3 current D0 I thought ICH8 supported AHCI, but maybe it's only ICH8R that does? I'm = assuming that "subclass =3D ATA" means the controller can't operate in = AHCI mode. The BIOS setting is also confusing. It has two options, = "Normal" and "Legacy." "Normal" mode says, "The hard drive controller = is configured for native mode. This mode provides the highest drive = performance and most flexibility." I guess I misinterpreted "native = mode" to be AHCI mode. Thanks again for the help and for clearing things up. Cheers, Paul.=