aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/sata_inic162x.c
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2008-03-24 23:22:47 -0400
committerJeff Garzik <jgarzik@redhat.com>2008-04-17 15:44:16 -0400
commit358f9a77a668660729e705fde9c3cf69f013aa98 (patch)
treea249660fdd9f252925eff9eaac3ed7836c839f91 /drivers/ata/sata_inic162x.c
parentc1bc899f5805771926c9198e2ab4d77122c356a1 (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.c7
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
269static void inic_irq_clear(struct ata_port *ap)
270{
271 /* noop */
272}
273
274static void inic_host_intr(struct ata_port *ap) 269static 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,