Skip to content

Commit

Permalink
qlge: Add disable/enable firmare irqs to handler.
Browse files Browse the repository at this point in the history
This was accidentally omitted from one of the previous patches for firmware event
handling.  The handler needs to the enable firmware irq mask when it's done
processing or it may not get any more events interrupts.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Ron Mercer authored and David S. Miller committed Oct 9, 2009
1 parent 2cd6dba commit efd7d26
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions drivers/net/qlge/qlge_mpi.c
Original file line number Diff line number Diff line change
Expand Up @@ -965,6 +965,8 @@ void ql_mpi_work(struct work_struct *work)
int err = 0;

rtnl_lock();
/* Begin polled mode for MPI */
ql_write32(qdev, INTR_MASK, (INTR_MASK_PI << 16));

while (ql_read32(qdev, STS) & STS_PI) {
memset(mbcp, 0, sizeof(struct mbox_params));
Expand All @@ -977,6 +979,8 @@ void ql_mpi_work(struct work_struct *work)
break;
}

/* End polled mode for MPI */
ql_write32(qdev, INTR_MASK, (INTR_MASK_PI << 16) | INTR_MASK_PI);
rtnl_unlock();
ql_enable_completion_interrupt(qdev, 0);
}
Expand Down

0 comments on commit efd7d26

Please sign in to comment.