iio: Add event enums for running period and count
There are devices (such as Murata IRS-D200 PIR proximity sensor) that check the data signal with a running period. I.e. for a specified time, they count the number of conditions that have occurred, and then signal if that is more than a specified amount. `IIO_EV_INFO_PERIOD` resets when the condition no longer is true and is therefore not suitable for these devices. Add a new `iio_event_info` `IIO_EV_INFO_RUNNING_PERIOD` that can be used as a running period. Also add a new `IIO_EV_INFO_RUNNING_COUNT` that can be used to specify the number of conditions that must occur during this running period. Signed-off-by: Waqar Hameed <waqar.hameed@axis.com> Link: https://lore.kernel.org/r/ee4a801ae9b9c4716c7bd23d8f79f232351df8bd.1689753076.git.waqar.hameed@axis.com Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
parent
67060927aa
commit
5e1cd3e97e
|
@ -2163,3 +2163,19 @@ Contact: linux-iio@vger.kernel.org
|
|||
Description:
|
||||
An example format is 16-bytes, 2-digits-per-byte, HEX-string
|
||||
representing the sensor unique ID number.
|
||||
|
||||
What: /sys/.../events/in_proximity_thresh_either_runningperiod
|
||||
KernelVersion: 6.6
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
A running period of time (in seconds) for which
|
||||
in_proximity_thresh_either_runningcount amount of conditions
|
||||
must occur before an event is generated. If direction is not
|
||||
specified then this period applies to both directions.
|
||||
|
||||
What: /sys/.../events/in_proximity_thresh_either_runningcount
|
||||
KernelVersion: 6.6
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Number of conditions that must occur, during a running
|
||||
period, before an event is generated.
|
||||
|
|
|
@ -252,6 +252,8 @@ static const char * const iio_ev_info_text[] = {
|
|||
[IIO_EV_INFO_TIMEOUT] = "timeout",
|
||||
[IIO_EV_INFO_RESET_TIMEOUT] = "reset_timeout",
|
||||
[IIO_EV_INFO_TAP2_MIN_DELAY] = "tap2_min_delay",
|
||||
[IIO_EV_INFO_RUNNING_PERIOD] = "runningperiod",
|
||||
[IIO_EV_INFO_RUNNING_COUNT] = "runningcount",
|
||||
};
|
||||
|
||||
static enum iio_event_direction iio_ev_attr_dir(struct iio_dev_attr *attr)
|
||||
|
|
|
@ -19,6 +19,8 @@ enum iio_event_info {
|
|||
IIO_EV_INFO_TIMEOUT,
|
||||
IIO_EV_INFO_RESET_TIMEOUT,
|
||||
IIO_EV_INFO_TAP2_MIN_DELAY,
|
||||
IIO_EV_INFO_RUNNING_PERIOD,
|
||||
IIO_EV_INFO_RUNNING_COUNT,
|
||||
};
|
||||
|
||||
#define IIO_VAL_INT 1
|
||||
|
|
Loading…
Reference in New Issue