diff options
author | Tejun Heo <htejun@gmail.com> | 2008-03-24 23:22:47 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2008-04-17 15:44:16 -0400 |
commit | 358f9a77a668660729e705fde9c3cf69f013aa98 (patch) | |
tree | a249660fdd9f252925eff9eaac3ed7836c839f91 /drivers/ata/libata-sff.c | |
parent | c1bc899f5805771926c9198e2ab4d77122c356a1 (diff) |
libata: implement and use ata_noop_irq_clear()
->irq_clear() is used to clear IRQ bit of a SFF controller and isn't
useful for drivers which don't use libata SFF HSM implementation.
However, it's a required callback and many drivers implement their own
noop version as placeholder. This patch implements ata_noop_irq_clear
and use it to replace those custom placeholders.
Also, SFF drivers which don't support BMDMA don't need to use
ata_bmdma_irq_clear(). It becomes noop if BMDMA address isn't
initialized. Convert them to use ata_noop_irq_clear().
Signed-off-by: Tejun Heo <htejun@gmail.com>
Diffstat (limited to 'drivers/ata/libata-sff.c')
-rw-r--r-- | drivers/ata/libata-sff.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c index 20dc572fb45a..1cf03d41aa33 100644 --- a/drivers/ata/libata-sff.c +++ b/drivers/ata/libata-sff.c | |||
@@ -303,6 +303,14 @@ void ata_bmdma_irq_clear(struct ata_port *ap) | |||
303 | } | 303 | } |
304 | 304 | ||
305 | /** | 305 | /** |
306 | * ata_noop_irq_clear - Noop placeholder for irq_clear | ||
307 | * @ap: Port associated with this ATA transaction. | ||
308 | */ | ||
309 | void ata_noop_irq_clear(struct ata_port *ap) | ||
310 | { | ||
311 | } | ||
312 | |||
313 | /** | ||
306 | * ata_bmdma_status - Read PCI IDE BMDMA status | 314 | * ata_bmdma_status - Read PCI IDE BMDMA status |
307 | * @ap: Port associated with this ATA transaction. | 315 | * @ap: Port associated with this ATA transaction. |
308 | * | 316 | * |