diff options
author | Jeff Garzik <jeff@garzik.org> | 2007-08-15 05:38:46 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-10-12 14:55:34 -0400 |
commit | 6d32d30f55020d766388df7515f771f68c973033 (patch) | |
tree | ec0efe48460b5b3f177fed2698ccd04b7964359b /drivers/ata/pata_scc.c | |
parent | cb94c1cf5a6beffbd8935eb91227df0dd1987644 (diff) |
[libata] Remove ->irq_ack() hook, and ata_dummy_irq_on()
* ->irq_ack() is redundant to what the irq handler already
performs... chk-status + irq-clear. Furthermore, it is only
called in one place, when screaming-irq-debugging is enabled,
so we don't want to bother with a hook just for that.
* ata_dummy_irq_on() is only ever used in drivers that have
no callpath reaching ->irq_on(). Remove .irq_on hook from
those drivers, and the now-unused ata_dummy_irq_on()
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/ata/pata_scc.c')
-rw-r--r-- | drivers/ata/pata_scc.c | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/drivers/ata/pata_scc.c b/drivers/ata/pata_scc.c index 63fe99a10cd1..95f04b81352f 100644 --- a/drivers/ata/pata_scc.c +++ b/drivers/ata/pata_scc.c | |||
@@ -839,38 +839,6 @@ static u8 scc_irq_on (struct ata_port *ap) | |||
839 | } | 839 | } |
840 | 840 | ||
841 | /** | 841 | /** |
842 | * scc_irq_ack - Acknowledge a device interrupt. | ||
843 | * @ap: Port on which interrupts are enabled. | ||
844 | * | ||
845 | * Note: Original code is ata_irq_ack(). | ||
846 | */ | ||
847 | |||
848 | static u8 scc_irq_ack (struct ata_port *ap, unsigned int chk_drq) | ||
849 | { | ||
850 | unsigned int bits = chk_drq ? ATA_BUSY | ATA_DRQ : ATA_BUSY; | ||
851 | u8 host_stat, post_stat, status; | ||
852 | |||
853 | status = ata_busy_wait(ap, bits, 1000); | ||
854 | if (status & bits) | ||
855 | if (ata_msg_err(ap)) | ||
856 | printk(KERN_ERR "abnormal status 0x%X\n", status); | ||
857 | |||
858 | /* get controller status; clear intr, err bits */ | ||
859 | host_stat = in_be32(ap->ioaddr.bmdma_addr + SCC_DMA_STATUS); | ||
860 | out_be32(ap->ioaddr.bmdma_addr + SCC_DMA_STATUS, | ||
861 | host_stat | ATA_DMA_INTR | ATA_DMA_ERR); | ||
862 | |||
863 | post_stat = in_be32(ap->ioaddr.bmdma_addr + SCC_DMA_STATUS); | ||
864 | |||
865 | if (ata_msg_intr(ap)) | ||
866 | printk(KERN_INFO "%s: irq ack: host_stat 0x%X, new host_stat 0x%X, drv_stat 0x%X\n", | ||
867 | __FUNCTION__, | ||
868 | host_stat, post_stat, status); | ||
869 | |||
870 | return status; | ||
871 | } | ||
872 | |||
873 | /** | ||
874 | * scc_bmdma_freeze - Freeze BMDMA controller port | 842 | * scc_bmdma_freeze - Freeze BMDMA controller port |
875 | * @ap: port to freeze | 843 | * @ap: port to freeze |
876 | * | 844 | * |
@@ -1047,7 +1015,6 @@ static const struct ata_port_operations scc_pata_ops = { | |||
1047 | 1015 | ||
1048 | .irq_clear = scc_bmdma_irq_clear, | 1016 | .irq_clear = scc_bmdma_irq_clear, |
1049 | .irq_on = scc_irq_on, | 1017 | .irq_on = scc_irq_on, |
1050 | .irq_ack = scc_irq_ack, | ||
1051 | 1018 | ||
1052 | .port_start = scc_port_start, | 1019 | .port_start = scc_port_start, |
1053 | .port_stop = scc_port_stop, | 1020 | .port_stop = scc_port_stop, |