staging:iio:adt7310: Do not return error code in interrupt handler
authorLars-Peter Clausen <lars@metafoo.de>
Wed, 4 Jul 2012 16:09:00 +0000 (17:09 +0100)
committerJonathan Cameron <jic23@kernel.org>
Sun, 8 Jul 2012 19:02:26 +0000 (20:02 +0100)
The interrupt handler should only ever return one of the three irqreturn_t
constants and not an error code. Also make sure to always call
iio_trigger_notify_done before leaving the trigger handler.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/staging/iio/adc/adt7310.c

index 44dcf632f54d686e450c5bc88aeb5066157a8d4c..72460b6dc2f4d27d7f4c1326ca0dbde045417d27 100644 (file)
@@ -397,7 +397,7 @@ static irqreturn_t adt7310_event_handler(int irq, void *private)
 
        ret = adt7310_spi_read_byte(chip, ADT7310_STATUS, &status);
        if (ret)
-               return ret;
+               goto done;
 
        if (status & ADT7310_STAT_T_HIGH)
                iio_push_event(indio_dev,
@@ -417,6 +417,8 @@ static irqreturn_t adt7310_event_handler(int irq, void *private)
                                                    IIO_EV_TYPE_THRESH,
                                                    IIO_EV_DIR_RISING),
                        timestamp);
+
+done:
        return IRQ_HANDLED;
 }