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.p...@analog.com
> ---
>  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.

Reply via email to