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/sata_inic162x.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/sata_inic162x.c')
-rw-r--r-- | drivers/ata/sata_inic162x.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/ata/sata_inic162x.c b/drivers/ata/sata_inic162x.c index 59e65edc5820..74f14369dc8d 100644 --- a/drivers/ata/sata_inic162x.c +++ b/drivers/ata/sata_inic162x.c | |||
@@ -266,11 +266,6 @@ static u8 inic_bmdma_status(struct ata_port *ap) | |||
266 | return ATA_DMA_INTR; | 266 | return ATA_DMA_INTR; |
267 | } | 267 | } |
268 | 268 | ||
269 | static void inic_irq_clear(struct ata_port *ap) | ||
270 | { | ||
271 | /* noop */ | ||
272 | } | ||
273 | |||
274 | static void inic_host_intr(struct ata_port *ap) | 269 | static void inic_host_intr(struct ata_port *ap) |
275 | { | 270 | { |
276 | void __iomem *port_base = inic_port_base(ap); | 271 | void __iomem *port_base = inic_port_base(ap); |
@@ -555,7 +550,7 @@ static struct ata_port_operations inic_port_ops = { | |||
555 | .bmdma_stop = inic_bmdma_stop, | 550 | .bmdma_stop = inic_bmdma_stop, |
556 | .bmdma_status = inic_bmdma_status, | 551 | .bmdma_status = inic_bmdma_status, |
557 | 552 | ||
558 | .irq_clear = inic_irq_clear, | 553 | .irq_clear = ata_noop_irq_clear, |
559 | .irq_on = ata_irq_on, | 554 | .irq_on = ata_irq_on, |
560 | 555 | ||
561 | .qc_prep = ata_qc_prep, | 556 | .qc_prep = ata_qc_prep, |