diff options
author | Jonathan Cameron <jic23@cam.ac.uk> | 2011-05-18 14:42:13 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-05-19 16:15:00 -0700 |
commit | d91a0ab06ca27ec552233b5225e80661125fe1b2 (patch) | |
tree | 24a1a6a0cdff5116185087d6ce6dbdd48d200a19 /drivers | |
parent | 41c775240a78fac3e2bd7f024c3cf0d61547249e (diff) | |
download | op-kernel-dev-d91a0ab06ca27ec552233b5225e80661125fe1b2.zip op-kernel-dev-d91a0ab06ca27ec552233b5225e80661125fe1b2.tar.gz |
staging:iio:adc:ad7150 fix event codes.
I won't guarantee I got these right, but they are certainly closer than
the abuse of buffer event codes that was perviously in here.
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/staging/iio/adc/ad7150.c | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/drivers/staging/iio/adc/ad7150.c b/drivers/staging/iio/adc/ad7150.c index cbd1f96..e23bb99 100644 --- a/drivers/staging/iio/adc/ad7150.c +++ b/drivers/staging/iio/adc/ad7150.c @@ -642,11 +642,6 @@ static const struct attribute_group ad7150_attribute_group = { * threshold events */ -#define IIO_EVENT_CODE_CH1_HIGH IIO_BUFFER_EVENT_CODE(0) -#define IIO_EVENT_CODE_CH1_LOW IIO_BUFFER_EVENT_CODE(1) -#define IIO_EVENT_CODE_CH2_HIGH IIO_BUFFER_EVENT_CODE(2) -#define IIO_EVENT_CODE_CH2_LOW IIO_BUFFER_EVENT_CODE(3) - static irqreturn_t ad7150_event_handler(int irq, void *private) { struct iio_dev *indio_dev = private; @@ -658,21 +653,33 @@ static irqreturn_t ad7150_event_handler(int irq, void *private) if ((int_status & AD7150_STATUS_OUT1) && !(chip->old_state & AD7150_STATUS_OUT1)) iio_push_event(indio_dev, 0, - IIO_EVENT_CODE_CH1_HIGH, + IIO_UNMOD_EVENT_CODE(IIO_EV_CLASS_IN, + 0, + IIO_EV_TYPE_THRESH, + IIO_EV_DIR_RISING), timestamp); else if ((!(int_status & AD7150_STATUS_OUT1)) && (chip->old_state & AD7150_STATUS_OUT1)) iio_push_event(indio_dev, 0, - IIO_EVENT_CODE_CH1_LOW, - timestamp); + IIO_UNMOD_EVENT_CODE(IIO_EV_CLASS_IN, + 0, + IIO_EV_TYPE_THRESH, + IIO_EV_DIR_FALLING), + timestamp); if ((int_status & AD7150_STATUS_OUT2) && !(chip->old_state & AD7150_STATUS_OUT2)) iio_push_event(indio_dev, 0, - IIO_EVENT_CODE_CH2_HIGH, - timestamp); + IIO_UNMOD_EVENT_CODE(IIO_EV_CLASS_IN, + 1, + IIO_EV_TYPE_THRESH, + IIO_EV_DIR_RISING), + timestamp); else if ((!(int_status & AD7150_STATUS_OUT2)) && (chip->old_state & AD7150_STATUS_OUT2)) iio_push_event(indio_dev, 0, - IIO_EVENT_CODE_CH2_LOW, - timestamp); + IIO_UNMOD_EVENT_CODE(IIO_EV_CLASS_IN, + 1, + IIO_EV_TYPE_THRESH, + IIO_EV_DIR_FALLING), + timestamp); return IRQ_HANDLED; } |