From 030eefbcba9499b2aa24171895881afe6c385fd9 Mon Sep 17 00:00:00 2001
From: Mac Lin <mkl0301@gmail.com>
Date: Mon, 10 Jan 2011 22:37:57 +0800
Subject: [PATCH] libahci: Fixup for softwreset failures with direct connected disks with CONFIG_SATA_PMP enabled
---
drivers/ata/libahci.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
@@ -1302,10 +1302,15 @@ static int ahci_softreset(struct ata_link *link, unsigned int *class,
unsigned long deadline)
{
int pmp = sata_srst_pmp(link);
+ int ret;
DPRINTK("ENTER\n");
- return ahci_do_softreset(link, class, pmp, deadline, ahci_check_ready);
+ ret = ahci_do_softreset(link, class, pmp, deadline, ahci_check_ready);
+ if (ret && pmp)
+ return ahci_do_softreset(link, class, 0, deadline,
+ ahci_check_ready);
+ return ret;
}
EXPORT_SYMBOL_GPL(ahci_do_softreset);
--
1.7.3