Date: Thu, 28 Apr 2011 07:34:37 +0000 (UTC) From: Alexander Motin <mav@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r221156 - in stable/8/sys/dev/ata: . chipsets Message-ID: <201104280734.p3S7Ybq7011587@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: mav Date: Thu Apr 28 07:34:37 2011 New Revision: 221156 URL: http://svn.freebsd.org/changeset/base/221156 Log: MFC r220920: - Fix mapping of the last two SATA ports on 6-port Intel controllers. This improves hard-reset and hot-plug on these ports. - Device with ID 0x29218086 is a 2-port variant of ICH9 in legacy mode. Skip probing for nonexistent slave devices there. Modified: stable/8/sys/dev/ata/ata-pci.h stable/8/sys/dev/ata/chipsets/ata-intel.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/amd64/include/xen/ (props changed) stable/8/sys/cddl/contrib/opensolaris/ (props changed) stable/8/sys/contrib/dev/acpica/ (props changed) stable/8/sys/contrib/pf/ (props changed) Modified: stable/8/sys/dev/ata/ata-pci.h ============================================================================== --- stable/8/sys/dev/ata/ata-pci.h Thu Apr 28 07:33:14 2011 (r221155) +++ stable/8/sys/dev/ata/ata-pci.h Thu Apr 28 07:34:37 2011 (r221156) @@ -187,7 +187,7 @@ struct ata_pci_controller { #define ATA_I82801HBM_S2 0x28298086 #define ATA_I82801HBM_S3 0x282a8086 #define ATA_I82801IB_S1 0x29208086 -#define ATA_I82801IB_AH2 0x29218086 +#define ATA_I82801IB_S3 0x29218086 #define ATA_I82801IB_AH6 0x29228086 #define ATA_I82801IB_AH4 0x29238086 #define ATA_I82801IB_R1 0x29258086 Modified: stable/8/sys/dev/ata/chipsets/ata-intel.c ============================================================================== --- stable/8/sys/dev/ata/chipsets/ata-intel.c Thu Apr 28 07:33:14 2011 (r221155) +++ stable/8/sys/dev/ata/chipsets/ata-intel.c Thu Apr 28 07:34:37 2011 (r221156) @@ -140,7 +140,7 @@ ata_intel_probe(device_t dev) { ATA_I82801HBM_S3, 0, INTEL_AHCI, 0, ATA_SA300, "ICH8M" }, { ATA_I82801IB_S1, 0, INTEL_6CH, 0, ATA_SA300, "ICH9" }, { ATA_I82801IB_S2, 0, INTEL_6CH2, 0, ATA_SA300, "ICH9" }, - { ATA_I82801IB_AH2, 0, INTEL_AHCI, 0, ATA_SA300, "ICH9" }, + { ATA_I82801IB_S3, 0, INTEL_6CH2, 0, ATA_SA300, "ICH9" }, { ATA_I82801IB_AH4, 0, INTEL_AHCI, 0, ATA_SA300, "ICH9" }, { ATA_I82801IB_AH6, 0, INTEL_AHCI, 0, ATA_SA300, "ICH9" }, { ATA_I82801IB_R1, 0, INTEL_AHCI, 0, ATA_SA300, "ICH9" }, @@ -336,7 +336,7 @@ ata_intel_ch_attach(device_t dev) } else if (ctlr->chip->cfg1 & INTEL_6CH2) { ch->flags |= ATA_SATA; ch->flags |= ATA_NO_SLAVE; - smap[0] = (ch->unit == 0) ? 4 : 5; + smap[0] = (ch->unit == 0) ? 0 : 1; smap[1] = 0; } else { map &= 0x03;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201104280734.p3S7Ybq7011587>