Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 Jun 2011 20:30:16 +0000 (UTC)
From:      Alexander Motin <mav@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r223097 - head/sys/dev/ata/chipsets
Message-ID:  <201106142030.p5EKUGuI050437@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mav
Date: Tue Jun 14 20:30:15 2011
New Revision: 223097
URL: http://svn.freebsd.org/changeset/base/223097

Log:
  Skip BAR(5) usage for SATA registers access on ICH8M Apples, because for
  some reason it causes system lock up. Linux does the same.
  
  MFC after:	1 week

Modified:
  head/sys/dev/ata/chipsets/ata-intel.c

Modified: head/sys/dev/ata/chipsets/ata-intel.c
==============================================================================
--- head/sys/dev/ata/chipsets/ata-intel.c	Tue Jun 14 20:04:23 2011	(r223096)
+++ head/sys/dev/ata/chipsets/ata-intel.c	Tue Jun 14 20:30:15 2011	(r223097)
@@ -288,7 +288,9 @@ ata_intel_chipinit(device_t dev)
 			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,



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