Re: [PATCH 1/3] iio: adxl372: Provide validate_trigger and validate_device callbacks

From: Lars-Peter Clausen
Date: Mon Aug 20 2018 - 11:47:18 EST


On 08/20/2018 04:53 PM, Stefan Popa wrote:
> This patch provides a validate_device callback for the trigger which makes
> sure that other devices are rejected.
>
> Signed-off-by: Stefan Popa <stefan.popa@xxxxxxxxxx
> ---
> drivers/iio/accel/adxl372.c | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/drivers/iio/accel/adxl372.c b/drivers/iio/accel/adxl372.c
> index d2fdc75..5a039ba 100644
> --- a/drivers/iio/accel/adxl372.c
> +++ b/drivers/iio/accel/adxl372.c
> @@ -762,11 +762,24 @@ static int adxl372_dready_trig_set_state(struct iio_trigger *trig,
> return adxl372_set_interrupts(st, mask, 0);
> }
>
> +static int adxl372_validate_trigger(struct iio_dev *indio_dev,
> + struct iio_trigger *trig)
> +{
> + struct adxl372_state *st = iio_priv(indio_dev);
> +
> + if (st->dready_trig != trig)
> + return -EINVAL;
> +
> + return 0;
> +}
> +
> static const struct iio_trigger_ops adxl372_trigger_ops = {
> + .validate_device = &iio_trigger_validate_own_device,
> .set_trigger_state = adxl372_dready_trig_set_state,
> };
>
> static const struct iio_info adxl372_info = {
> + .validate_trigger = &adxl372_validate_trigger,

I wonder, if the device only works with the trigger and the trigger only
works with the device should we actually register a trigger?

Seems to be just extra hassle when setting up the device without any extra
benefits.