aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/ahci.c
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2010-02-25 22:41:00 -0500
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2010-02-25 22:41:00 -0500
commit874f2f997dbe041a6c6e509dae8656ed9022d65d (patch)
tree61898165882041ef7f9beaf2ef6663a1a4d3c29a /drivers/ata/ahci.c
parent071c06cb570d38efe23a124e885f2f3e643a9206 (diff)
parent6ebdc661b608671e9ca572af8bb42d58108cc008 (diff)
Merge commit 'origin/master' into next
Manual merge of: drivers/char/hvc_console.c drivers/char/hvc_console.h
Diffstat (limited to 'drivers/ata/ahci.c')
-rw-r--r--drivers/ata/ahci.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index b34390347c16..a6a736a7dbf2 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -3082,8 +3082,16 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
3082 ahci_save_initial_config(pdev, hpriv); 3082 ahci_save_initial_config(pdev, hpriv);
3083 3083
3084 /* prepare host */ 3084 /* prepare host */
3085 if (hpriv->cap & HOST_CAP_NCQ) 3085 if (hpriv->cap & HOST_CAP_NCQ) {
3086 pi.flags |= ATA_FLAG_NCQ | ATA_FLAG_FPDMA_AA; 3086 pi.flags |= ATA_FLAG_NCQ;
3087 /* Auto-activate optimization is supposed to be supported on
3088 all AHCI controllers indicating NCQ support, but it seems
3089 to be broken at least on some NVIDIA MCP79 chipsets.
3090 Until we get info on which NVIDIA chipsets don't have this
3091 issue, if any, disable AA on all NVIDIA AHCIs. */
3092 if (pdev->vendor != PCI_VENDOR_ID_NVIDIA)
3093 pi.flags |= ATA_FLAG_FPDMA_AA;
3094 }
3087 3095
3088 if (hpriv->cap & HOST_CAP_PMP) 3096 if (hpriv->cap & HOST_CAP_PMP)
3089 pi.flags |= ATA_FLAG_PMP; 3097 pi.flags |= ATA_FLAG_PMP;