On Sat, 14 Sep 2024 23:42:42 +0530
Abhash Jha <abhashkumarjha123@gmail.com> wrote:
> Hello,
>
> The first patch adds support for configuring the Sampling frequency of
> the sensor. The available values for the sampling freqeuncy are provided
> by the `read_avail` callback and they are in miliHertz.
>
> Then the second patch adds support for suspending and resuming
> the sensor by providing the necessary callbacks. And registering
> the ops with the driver.
>
> The third patch in the series adds support for Threshold events and interrupts.
> Exposed rising and falling threshold events for both the channels. The events
> can be configured via the write_event_config callback. The desired rising or falling
> threshold value can be written to from userspace.
>
> The fourth patch adds support for threshold interrupt persistance.
> It triggers when the UVS/ALS data is out of thresholds for a specific number
> of consecutive measurements.
> Exposed the IIO_EV_INFO_PERIOD attribute by which userspace can set the persistance
> value in miliseconds. The persistance period should be greater than or equal
> to the sampling period.
Applied with tweaks to the testing branch of iio.git which will be rebased
on rc1 once available.
Thanks,
Jonathan
>
> Changes in v3:
> - Replace hardcoded mask values with GENMASK()
> - Minor refactoring
> - Code formatting changes
>
> Changes in v2:
> - Added "linux/irq.h" include to fix `-Wimplicit-function-declaration`.
> - The above error was pointed during testing by kernel-test-robot
>
> Thanks,
> Abhash
>
>
> Abhash Jha (4):
> iio: light: ltr390: Added configurable sampling frequency support
> iio: light: ltr390: Suspend and Resume support
> iio: light: ltr390: Interrupts and threshold event support
> iio: light: ltr390: Add interrupt persistance support
>
> drivers/iio/light/ltr390.c | 361 ++++++++++++++++++++++++++++++++++++-
> 1 file changed, 357 insertions(+), 4 deletions(-)
>