Tejun Heo wrote:
Make sure the controller has no pending commands and ready for command
before issuing SRST.
Signed-off-by: Tejun Heo <htejun@xxxxxxxxx>
---
drivers/scsi/sata_sil24.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
538d286b508e9d611eeb1acdfeb0bfde395a0027
diff --git a/drivers/scsi/sata_sil24.c b/drivers/scsi/sata_sil24.c
index 722b287..fed47cf 100644
--- a/drivers/scsi/sata_sil24.c
+++ b/drivers/scsi/sata_sil24.c
@@ -475,6 +475,12 @@ static int sil24_softreset(struct ata_po
irq_enable = readl(port + PORT_IRQ_ENABLE_SET);
writel(irq_enable, port + PORT_IRQ_ENABLE_CLR);
+ /* put the port into known state */
+ if (sil24_init_port(ap)) {
+ reason ="port not ready";
+ goto err;
This was actually split up a little too much. Unless the implementation
of a new function is rather large, or using the new function requires
updating multiple files, better to keep the function addition and usage
in the same patch.
Minor complaint though, it turns out OK in the end.
Jeff
-
: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html