Commit f654a7e2 authored by Lars-Peter Clausen's avatar Lars-Peter Clausen Committed by Jonathan Cameron

staging:iio:ad799x: Do not return error code in interrupt handler

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: default avatarLars-Peter Clausen <lars@metafoo.de>
Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
parent a1bdeefd
...@@ -350,10 +350,10 @@ static irqreturn_t ad799x_event_handler(int irq, void *private) ...@@ -350,10 +350,10 @@ static irqreturn_t ad799x_event_handler(int irq, void *private)
ret = ad799x_i2c_read8(st, AD7998_ALERT_STAT_REG, &status); ret = ad799x_i2c_read8(st, AD7998_ALERT_STAT_REG, &status);
if (ret) if (ret)
return ret; goto done;
if (!status) if (!status)
return -EIO; goto done;
ad799x_i2c_write8(st, AD7998_ALERT_STAT_REG, AD7998_ALERT_STAT_CLEAR); ad799x_i2c_write8(st, AD7998_ALERT_STAT_REG, AD7998_ALERT_STAT_CLEAR);
...@@ -372,6 +372,7 @@ static irqreturn_t ad799x_event_handler(int irq, void *private) ...@@ -372,6 +372,7 @@ static irqreturn_t ad799x_event_handler(int irq, void *private)
iio_get_time_ns()); iio_get_time_ns());
} }
done:
return IRQ_HANDLED; return IRQ_HANDLED;
} }
......
...@@ -81,8 +81,6 @@ static irqreturn_t ad799x_trigger_handler(int irq, void *p) ...@@ -81,8 +81,6 @@ static irqreturn_t ad799x_trigger_handler(int irq, void *p)
ring->access->store_to(indio_dev->buffer, rxbuf, time_ns); ring->access->store_to(indio_dev->buffer, rxbuf, time_ns);
done: done:
kfree(rxbuf); kfree(rxbuf);
if (b_sent < 0)
return b_sent;
out: out:
iio_trigger_notify_done(indio_dev->trig); iio_trigger_notify_done(indio_dev->trig);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment