aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/pata_bf54x.c
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2008-04-07 12:46:56 -0400
committerJeff Garzik <jgarzik@redhat.com>2008-04-17 15:44:25 -0400
commit45db2f6c95eee7c6622ea1b3edb9abafba58e3ab (patch)
tree1c57efcf3e118b177dd7c9c1070b8af70694aff3 /drivers/ata/pata_bf54x.c
parent2a0c15ca39f5881aa1b472ca856bb7a2e584ece7 (diff)
libata: move link onlineness check out of softreset methods
Currently, SATA softresets should do link onlineness check before actually performing SRST protocol but it doesn't really belong to softreset. This patch moves onlineness check in softreset to ata_eh_reset() and ata_eh_followup_srst_needed() to clean up code and help future sata_mv changes which need clear separation between SCR and TF accesses. sata_fsl is peculiar in that its softreset really isn't softreset but combination of hardreset and softreset. This patch adds dummy private ->prereset to keep the current behavior but the driver really should implement separate hard and soft resets and return -EAGAIN from hardreset if it should be follwed by softreset. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/ata/pata_bf54x.c')
-rw-r--r--drivers/ata/pata_bf54x.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/drivers/ata/pata_bf54x.c b/drivers/ata/pata_bf54x.c
index d98bd7455e6b..0a5ad98635b1 100644
--- a/drivers/ata/pata_bf54x.c
+++ b/drivers/ata/pata_bf54x.c
@@ -1103,11 +1103,6 @@ static int bfin_softreset(struct ata_link *link, unsigned int *classes,
1103 unsigned int devmask = 0, err_mask; 1103 unsigned int devmask = 0, err_mask;
1104 u8 err; 1104 u8 err;
1105 1105
1106 if (ata_link_offline(link)) {
1107 classes[0] = ATA_DEV_NONE;
1108 goto out;
1109 }
1110
1111 /* determine if device 0/1 are present */ 1106 /* determine if device 0/1 are present */
1112 if (bfin_devchk(ap, 0)) 1107 if (bfin_devchk(ap, 0))
1113 devmask |= (1 << 0); 1108 devmask |= (1 << 0);
@@ -1132,7 +1127,6 @@ static int bfin_softreset(struct ata_link *link, unsigned int *classes,
1132 classes[1] = ata_sff_dev_classify(&ap->link.device[1], 1127 classes[1] = ata_sff_dev_classify(&ap->link.device[1],
1133 devmask & (1 << 1), &err); 1128 devmask & (1 << 1), &err);
1134 1129
1135 out:
1136 return 0; 1130 return 0;
1137} 1131}
1138 1132