Re: [RFC PATCH 0/3] io: imu: st_lsm6dsx: wake on acc event

Jonathan Cameron
2019-06-16T13:27:12Z

On Sun, 16 Jun 2019 14:24:31 +0100
Jonathan Cameron <jic23@kernel.org> wrote:

> On Fri, 14 Jun 2019 14:26:01 +0200
> Sean Nyekjaer <sean@geanix.com> wrote:
>
> > Hi,
> >
> > The first patch enables the wake event creation in the suspend function,
> > it hardcodes the accelerometer to low power mode and the gyro is powered down.
> >
> > The second and third patch is where I have some questions.
> > Is it okay to create an sysfs entry that can enable and disable the wake
> > events from the accelerometer?
>
> On that I'm not sure - is there a standard way of configuring wake up events
> outside of IIO?
>
> >
> > The third patch is enabling us to set the threshold value.
> > Obviously this will need to be changed to represent a real value instead
> > of the raw register value.
> > Maybe I need to add a threshold avaliable sysfs entry?
> > Do I set it to a raw value calculated from the scale value or is some have
> > a better idea?
> Yes, if a device is providing a _raw channel reading then threshold
> values should also be raw.
>
> Available sysfs attribute makes sense if it helps a user, or userspace
> program to set the value.
>
> >
> > Finally is this the right approach to enable wake on accelerometer
> > events?
> > Please provide some idea's to how we could do it in the best and most
> > generic way.
>
> It's not something I've come across before, so hopefully someone else
> can provide guidance on this!
>
> My only immediate thought is that perhaps this should be a device tree
> thing rather than userspace controlled?
doh. Should have read the patches first rather than just replying to the
cover letter ;) Ignore this bit!

> There also seems to be some existing infrastructure to control this
> in the power directory for a device.
>
> Documentation/ABI/testing/sysfs-devices-power
>
> Thanks,
>
> Jonathan
>
> >
> > /Sean
> >
> > Sean Nyekjaer (3):
> > iio: imu: st_lsm6dsx: add wake on accelerometer threshold
> > iio: imu: st_lsm6dsx: add wake on accelerometer enable hook in sysfs
> > iio: imu: st_lsm6dsx: add wake on accelerometer threshold hook in
> > sysfs
> >
> > drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h | 2 +
> > drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c | 135 +++++++++++++++++++
> > 2 files changed, 137 insertions(+)
> >
>