aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/libata-eh.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ata/libata-eh.c')
-rw-r--r--drivers/ata/libata-eh.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c
index 21687bbd9a70..d8c4a45dcf26 100644
--- a/drivers/ata/libata-eh.c
+++ b/drivers/ata/libata-eh.c
@@ -2276,6 +2276,11 @@ int ata_eh_reset(struct ata_link *link, int classify,
2276 return rc; 2276 return rc;
2277 2277
2278 fail: 2278 fail:
2279 /* if SCR isn't accessible on a fan-out port, PMP needs to be reset */
2280 if (!ata_is_host_link(link) &&
2281 sata_scr_read(link, SCR_STATUS, &sstatus))
2282 rc = -ERESTART;
2283
2279 if (rc == -ERESTART || try >= max_tries) 2284 if (rc == -ERESTART || try >= max_tries)
2280 goto out; 2285 goto out;
2281 2286