diff options
author | Jeff Garzik <jeff@garzik.org> | 2008-04-18 19:22:52 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-04-25 10:52:30 -0400 |
commit | e19166d5df10be0ea404c4e346cf6be93bfb1d63 (patch) | |
tree | 43004d05713dc50a2fcb732b6514b5aa297f6347 /drivers/scsi/u14-34f.c | |
parent | 8911c9e3343c647b59727b47b10feca7ee9ac9c3 (diff) |
[SCSI] aha152x, eata, u14-34f: minor irq handler cleanups
- remove pointless casts from void*
- remove needless references to 'irq' function argument, when that
information is already stored somewhere in a driver-private struct.
- where the 'irq' function argument is known never to be used, rename
it to 'dummy' to make this more obvious
- remove always-false tests for dev_id==NULL
- remove always-true tests for 'irq == host_struct->irq'
- replace per-irq lookup functions and tables with a direct reference
to data object obtained via 'dev_id' function argument, passed from
request_irq()
This change's main purpose is to prepare for the patchset in
jgarzik/misc-2.6.git#irq-remove, that explores removal of the
never-used 'irq' argument in each interrupt handler.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/u14-34f.c')
-rw-r--r-- | drivers/scsi/u14-34f.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/scsi/u14-34f.c b/drivers/scsi/u14-34f.c index 58d7eee4fe81..640333b1e75c 100644 --- a/drivers/scsi/u14-34f.c +++ b/drivers/scsi/u14-34f.c | |||
@@ -1715,13 +1715,12 @@ static void flush_dev(struct scsi_device *dev, unsigned long cursec, unsigned in | |||
1715 | 1715 | ||
1716 | } | 1716 | } |
1717 | 1717 | ||
1718 | static irqreturn_t ihdlr(int irq, unsigned int j) { | 1718 | static irqreturn_t ihdlr(unsigned int j) |
1719 | { | ||
1719 | struct scsi_cmnd *SCpnt; | 1720 | struct scsi_cmnd *SCpnt; |
1720 | unsigned int i, k, c, status, tstatus, reg, ret; | 1721 | unsigned int i, k, c, status, tstatus, reg, ret; |
1721 | struct mscp *spp, *cpp; | 1722 | struct mscp *spp, *cpp; |
1722 | 1723 | int irq = sh[j]->irq; | |
1723 | if (sh[j]->irq != irq) | ||
1724 | panic("%s: ihdlr, irq %d, sh[j]->irq %d.\n", BN(j), irq, sh[j]->irq); | ||
1725 | 1724 | ||
1726 | /* Check if this board need to be serviced */ | 1725 | /* Check if this board need to be serviced */ |
1727 | if (!((reg = inb(sh[j]->io_port + REG_SYS_INTR)) & IRQ_ASSERTED)) goto none; | 1726 | if (!((reg = inb(sh[j]->io_port + REG_SYS_INTR)) & IRQ_ASSERTED)) goto none; |
@@ -1935,7 +1934,7 @@ static irqreturn_t do_interrupt_handler(int irq, void *shap) { | |||
1935 | if ((j = (unsigned int)((char *)shap - sha)) >= num_boards) return IRQ_NONE; | 1934 | if ((j = (unsigned int)((char *)shap - sha)) >= num_boards) return IRQ_NONE; |
1936 | 1935 | ||
1937 | spin_lock_irqsave(sh[j]->host_lock, spin_flags); | 1936 | spin_lock_irqsave(sh[j]->host_lock, spin_flags); |
1938 | ret = ihdlr(irq, j); | 1937 | ret = ihdlr(j); |
1939 | spin_unlock_irqrestore(sh[j]->host_lock, spin_flags); | 1938 | spin_unlock_irqrestore(sh[j]->host_lock, spin_flags); |
1940 | return ret; | 1939 | return ret; |
1941 | } | 1940 | } |