ATA_PERIODIC_POLL on ATA_I82801HBM_S1 causes lockups

Alexander Motin mav at FreeBSD.org
Tue Jun 14 13:27:15 UTC 2011


Hi.

Rick van der Zwet wrote:
> The ICH8M found in the MacBookPro4,1 has an known issue [1] which
> locks up when enabling the periodic poll using sidpr (introduced a
> ``little'' while ago in r214016), making it impossible to boot.
> 
> Attached patch disables the polling and thus fixes the issue.
> 
> Br. /Rick
> [1] http://www.spinics.net/lists/linux-ide/msg23487.html

Thank you for reminder, but your patch is not exactly right. Could you
test this one:

Index: ata-intel.c
===================================================================
--- ata-intel.c (revision 223019)
+++ ata-intel.c (working copy)
@@ -288,7 +288,9 @@
                        ATA_OUTL(ctlr->r_res2, 0x0C,
                            ATA_INL(ctlr->r_res2, 0x0C) | 0xf);
                }
-       } else {
+       /* Skip BAR(5) on ICH8M Apples, system locks up on access. */
+       } else if (ctlr->chip->chipid != ATA_I82801HBM_S1 ||
+           pci_get_subvendor(dev) != 0x106b) {
                ctlr->r_type2 = SYS_RES_IOPORT;
                ctlr->r_rid2 = PCIR_BAR(5);
                ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2,


-- 
Alexander Motin


More information about the freebsd-current mailing list