Skip to content

Commit

Permalink
[SCSI] sym53c416: kill pointless irq handler loop and test
Browse files Browse the repository at this point in the history
- kill pointless irq handler loop to find base address, it is already
  passed to irq handler via Scsi_Host.

- kill now-pointless !base test.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
  • Loading branch information
Jeff Garzik authored and James Bottomley committed Jan 12, 2008
1 parent baa9aac commit 736f77d
Showing 1 changed file with 1 addition and 15 deletions.
16 changes: 1 addition & 15 deletions drivers/scsi/sym53c416.c
Original file line number Diff line number Diff line change
Expand Up @@ -328,27 +328,13 @@ static __inline__ unsigned int sym53c416_write(int base, unsigned char *buffer,
static irqreturn_t sym53c416_intr_handle(int irq, void *dev_id)
{
struct Scsi_Host *dev = dev_id;
int base = 0;
int base = dev->io_port;
int i;
unsigned long flags = 0;
unsigned char status_reg, pio_int_reg, int_reg;
struct scatterlist *sg;
unsigned int tot_trans = 0;

/* We search the base address of the host adapter which caused the interrupt */
/* FIXME: should pass dev_id sensibly as hosts[i] */
for(i = 0; i < host_index && !base; i++)
if(irq == hosts[i].irq)
base = hosts[i].base;
/* If no adapter found, we cannot handle the interrupt. Leave a message */
/* and continue. This should never happen... */
if(!base)
{
printk(KERN_ERR "sym53c416: No host adapter defined for interrupt %d\n", irq);
return IRQ_NONE;
}
/* Now we have the base address and we can start handling the interrupt */

spin_lock_irqsave(dev->host_lock,flags);
status_reg = inb(base + STATUS_REG);
pio_int_reg = inb(base + PIO_INT_REG);
Expand Down

0 comments on commit 736f77d

Please sign in to comment.