diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2009-12-01 09:36:28 -0500 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2009-12-09 01:09:27 -0500 |
commit | f0353813afe784330622596ff141e7525ccd99de (patch) | |
tree | f1d2fd76b98026b4a6d524b640c18dd379532d26 /drivers/ata | |
parent | d58b0c39e32f1b410af4d070f9d1a1416057c166 (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>
Acked-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/ata')
-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 | } |