From: Haavard Skinnemoen Date: Sat, 23 Feb 2008 23:23:36 +0000 (-0800) Subject: atmel_serial: fix interrupt handler return value X-Git-Tag: v2.6.25-rc3~53 X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=0400b697ef20247d26427e4beb6a84ca5aa51f45;hp=98bcef56cadb4da138e2c1a2a0790f372382b236;p=linux-2.6-omap-h63xx.git atmel_serial: fix interrupt handler return value We should only return IRQ_HANDLED when we actually found something to handle. This is important since the USART interrupt handler may be shared with the timer interrupt on some chips. Pointed-out-by: michael Signed-off-by: Haavard Skinnemoen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/serial/atmel_serial.c b/drivers/serial/atmel_serial.c index fad245b064d..d57bf3e708d 100644 --- a/drivers/serial/atmel_serial.c +++ b/drivers/serial/atmel_serial.c @@ -549,7 +549,7 @@ static irqreturn_t atmel_interrupt(int irq, void *dev_id) atmel_handle_transmit(port, pending); } while (pass_counter++ < ATMEL_ISR_PASS_LIMIT); - return IRQ_HANDLED; + return pass_counter ? IRQ_HANDLED : IRQ_NONE; } /*