On Fri, 14 Jun 2019 14:26:01 +0200 Sean Nyekjaer <sean@xxxxxxxxxx> 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? 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(+) >