Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Mar 2010 09:09:36 -0800
From:      Jeremy Chadwick <freebsd@jdc.parodius.com>
To:        Pierre Beyssac <pb@freebsd.org>
Cc:        mav@freebsd.org, freebsd-stable@freebsd.org
Subject:   Re: (fixed) Re: 8-STABLE interrupt storm on atapci(?), Dell Inspiron 580
Message-ID:  <20100312170936.GA59343@icarus.home.lan>
In-Reply-To: <20100312165744.GA86971@fasterix.frmug.org>
References:  <20100312121409.GA79294@fasterix.frmug.org> <20100312131832.GA54731@icarus.home.lan> <20100312165744.GA86971@fasterix.frmug.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Mar 12, 2010 at 05:57:44PM +0100, Pierre Beyssac wrote:
> > Possibly this is the source of the problem (specifically, it looks like
> > FreeBSD doesn't have proper device ID knowledge of what this controller
> > is.  I believe that's because this system is *very* new, a Core i3/i5/i7
> > system)?
> 
> I didn't notice that, you're right! The system is brand new, got
> it delivered on Tuesday. Another odd thing is that the controllers
> have differents IDs, 0x3b208086 vs 0x3b268086.
> 
> I added the IDs to ata-intel.c and it fixes the problem.
> 
> Preparing a patch. Thanks for the hint!
> -- 
> Pierre Beyssac	      	    		pb@fasterix.frmug.org

> --- ata-intel.c.orig	2010-03-12 17:02:00.680011011 +0100
> +++ ata-intel.c	2010-03-12 16:55:54.773702505 +0100
> @@ -156,6 +156,8 @@
>       { 0x3a2d8086,       0, INTEL_AHCI, 0, ATA_SA300, "PCH" },
>       { 0x3a2e8086,       0, INTEL_AHCI, 0, ATA_SA300, "PCH" },
>       { 0x3a2f8086,       0, INTEL_AHCI, 0, ATA_SA300, "PCH" },
> +     { 0x3b208086,       0, INTEL_AHCI, 0, ATA_SA300, "PCH" },
> +     { 0x3b268086,       0, INTEL_AHCI, 0, ATA_SA300, "PCH" },
>       { ATA_I31244,       0,          0, 2, ATA_SA150, "31244" },
>       { ATA_ISCH,         0,          0, 1, ATA_UDMA5, "SCH" },
>       { 0, 0, 0, 0, 0, 0}};

I had a chance to review the Intel 5 Series and 3400 Series Chipset
document, which is specific to the PCH.  The breakdown for those
two Device IDs, under Vendor ID 0x8086 (Intel), is:

Device ID 0x3b20
	- PCH SATA controller
	- Desktop revision, non-AHCI and non-RAID Mode
	- Ports 0,1,2,3

Device ID 0x3b26
	- PCH SATA controller
	- Desktop revision, non-AHCI and non-RAID mode
	- Ports 4,5

So I'm not sure the setting of the INTEL_AHCI flag there is correct
for these controllers.  mav@ will need to chime in here.

Regarding the "dual device IDs": what this means is that ports 0-3 are
tied to one device on the PCI bus, and ports 4-5 are tied to another
device on the PCI bus.  They might have chosen to do this so they could
segregate which ports do what or operate differently somehow.

mav@ may also want to review the specification since it mentions a bunch
of other Device IDs which don't appear to be in the above list:

http://www.intel.com/Assets/PDF/specupdate/322170.pdf

-- 
| 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 |




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100312170936.GA59343>