diff --git a/[refs] b/[refs] index 15b51c8bb448..fe66b6943f62 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a3882b7814fb3a5b7ea211e421451b1c4685f8f9 +refs/heads/master: 21d27ed4616c9a7f2886c4159b4c409f73f96e76 diff --git a/trunk/drivers/ipack/devices/ipoctal.c b/trunk/drivers/ipack/devices/ipoctal.c index 09e3a8e63e22..9cd5572457ff 100644 --- a/trunk/drivers/ipack/devices/ipoctal.c +++ b/trunk/drivers/ipack/devices/ipoctal.c @@ -223,14 +223,14 @@ static irqreturn_t ipoctal_irq_handler(void *arg) unsigned int i; struct ipoctal *ipoctal = (struct ipoctal *) arg; - /* Check all channels */ - for (i = 0; i < NR_CHANNELS; i++) - ipoctal_irq_channel(&ipoctal->channel[i]); - /* Clear the IPack device interrupt */ readw(ipoctal->int_space + ACK_INT_REQ0); readw(ipoctal->int_space + ACK_INT_REQ1); + /* Check all channels */ + for (i = 0; i < NR_CHANNELS; i++) + ipoctal_irq_channel(&ipoctal->channel[i]); + return IRQ_HANDLED; }