[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20180825091658.0e4f7cf6@archlinux>
Date: Sat, 25 Aug 2018 09:16:58 +0100
From: Jonathan Cameron <jic23@...23.retrosnub.co.uk>
To: Lars-Peter Clausen <lars@...afoo.de>
Cc: Stefan Popa <stefan.popa@...log.com>, Michael.Hennerich@...log.com,
knaack.h@....de, pmeerw@...erw.net, linux-iio@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/3] iio: adxl372: Provide validate_trigger and
validate_device callbacks
On Mon, 20 Aug 2018 17:37:08 +0100
jic23@...nel.org wrote:
> On 20.08.2018 16:47, Lars-Peter Clausen wrote:
> > 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@...log.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.
>
> I wondered the same, but there is a reason to do this if we think we
> will eventually have support for other triggers (which looks possible
> for
> this device as we can bypass the fifo). Then we want to do it in order
> to avoid a breaking ABI change. There is a way around that by setting
> a default trigger so that it'll still use this one unless it is
> explicitly
> set but that is rather ugly!
>
> Jonathan
Hi Lars, Stefan,
I'll apply this as is, but if we continue this debate and reach another
conclusion we can always make a change during this cycle.
Plenty of time left!
Thanks,
Jonathan
Powered by blists - more mailing lists