diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2009-12-01 19:36:28 -0500 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2009-12-03 02:46:36 -0500 |
commit | 294264a94215f5a16a92e8e6b05252ed22fed249 (patch) | |
tree | 77dc52ca9928e5d1321b858d592e4b53b7e986e2 | |
parent | 18f0f97850059303ed73b1f02084f55ca330a80c (diff) |
libata/sff: Use ops->bmdma_stop instead of ata_bmdma_stop()
In libata-sff, ata_sff_post_internal_cmd() directly calls ata_bmdma_stop()
instead of ap->ops->bmdma_stop(). This can be a problem for controllers
that use their own bmdma_stop for which the generic sff one isn't suitable
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
-rw-r--r-- | drivers/ata/libata-sff.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c index bbbb1fab1755..51eb1e298601 100644 --- a/drivers/ata/libata-sff.c +++ b/drivers/ata/libata-sff.c | |||
@@ -2384,7 +2384,7 @@ void ata_sff_post_internal_cmd(struct ata_queued_cmd *qc) | |||
2384 | ap->hsm_task_state = HSM_ST_IDLE; | 2384 | ap->hsm_task_state = HSM_ST_IDLE; |
2385 | 2385 | ||
2386 | if (ap->ioaddr.bmdma_addr) | 2386 | if (ap->ioaddr.bmdma_addr) |
2387 | ata_bmdma_stop(qc); | 2387 | ap->ops->bmdma_stop(qc); |
2388 | 2388 | ||
2389 | spin_unlock_irqrestore(ap->lock, flags); | 2389 | spin_unlock_irqrestore(ap->lock, flags); |
2390 | } | 2390 | } |