drivers/char/ip2: separate polling and irq-driven work entry points
Polling currently calls the irq handler, which loops through all the
boards, calling the work function for all polling boards with work.
irq handling loops through all the boards, finding the specific board
that applies to us, and calling the work just for that one board.
The two logics are sufficiently different to warrant different
functions, rather than being slack and calling the same function in two
different ways.
This serves to make the interrupt handler a -lot- more efficient.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>