From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756971AbbA2Sjg (ORCPT ); Thu, 29 Jan 2015 13:39:36 -0500 Received: from saturn.retrosnub.co.uk ([178.18.118.26]:45209 "EHLO saturn.retrosnub.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932065AbbA2Sje (ORCPT ); Thu, 29 Jan 2015 13:39:34 -0500 Message-ID: <54CA7E63.5010403@kernel.org> Date: Thu, 29 Jan 2015 18:39:31 +0000 From: Jonathan Cameron User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Irina Tirdea , linux-iio@vger.kernel.org CC: linux-kernel@vger.kernel.org, Daniel Baluta , Hartmut Knaack , Lars-Peter Clausen , Peter Meerwald Subject: Re: [PATCH v3 1/3] iio: core: Introduce IIO_CHAN_INFO_DEBOUNCE_COUNT and _TIME References: <1422384114-23392-1-git-send-email-irina.tirdea@intel.com> <1422384114-23392-2-git-send-email-irina.tirdea@intel.com> In-Reply-To: <1422384114-23392-2-git-send-email-irina.tirdea@intel.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 27/01/15 18:41, Irina Tirdea wrote: > The pedometer needs to filter out false steps that might be generated by > tapping the foot, sitting, etc. To do that it computes the number of > steps that occur in a given time and decides the user is moving only > if this value is over a threshold. E.g.: the user starts moving only > if he takes 4 steps in 3 seconds. This filter is applied only when > the user starts moving. > > A device that has such pedometer functionality is Freescale's MMA9553L: > http://www.freescale.com/files/sensors/doc/ref_manual/MMA9553LSWRM.pdf. > > To export this feature, this patch introduces IIO_CHAN_INFO_DEBOUNCE_COUNT > and IIO_CHAN_INFO_DEBOUNCE_TIME. For the pedometer, in_steps_debounce_count > will specify the number of steps that need to occur in > in_steps_debounce_time seconds so that the pedometer decides the user is > moving. > > Signed-off-by: Irina Tirdea Applied to the togreg branch of iio.git - initially pushed out as testing. Thanks, Jonathan > --- > Documentation/ABI/testing/sysfs-bus-iio | 15 +++++++++++++++ > drivers/iio/industrialio-core.c | 2 ++ > include/linux/iio/iio.h | 2 ++ > 3 files changed, 19 insertions(+) > > diff --git a/Documentation/ABI/testing/sysfs-bus-iio b/Documentation/ABI/testing/sysfs-bus-iio > index c03a140..b4ea9c5 100644 > --- a/Documentation/ABI/testing/sysfs-bus-iio > +++ b/Documentation/ABI/testing/sysfs-bus-iio > @@ -1193,3 +1193,18 @@ Description: > This attribute is used to read the current speed value of the > user (which is the norm or magnitude of the velocity vector). > Units after application of scale are m/s. > + > +What: /sys/.../iio:deviceX/in_steps_debounce_count > +KernelVersion: 3.20 > +Contact: linux-iio@vger.kernel.org > +Description: > + Specifies the number of steps that must occur within > + in_steps_filter_debounce_time for the pedometer to decide the > + consumer is making steps. > + > +What: /sys/.../iio:deviceX/in_steps_debounce_time > +KernelVersion: 3.20 > +Contact: linux-iio@vger.kernel.org > +Description: > + Specifies number of seconds in which we compute the steps > + that occur in order to decide if the consumer is making steps. > diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c > index 4ee6fdf..aaba9d3 100644 > --- a/drivers/iio/industrialio-core.c > +++ b/drivers/iio/industrialio-core.c > @@ -126,6 +126,8 @@ static const char * const iio_chan_info_postfix[] = { > [IIO_CHAN_INFO_ENABLE] = "en", > [IIO_CHAN_INFO_CALIBHEIGHT] = "calibheight", > [IIO_CHAN_INFO_CALIBWEIGHT] = "calibweight", > + [IIO_CHAN_INFO_DEBOUNCE_COUNT] = "debounce_count", > + [IIO_CHAN_INFO_DEBOUNCE_TIME] = "debounce_time", > }; > > /** > diff --git a/include/linux/iio/iio.h b/include/linux/iio/iio.h > index 51f1643..80d8550 100644 > --- a/include/linux/iio/iio.h > +++ b/include/linux/iio/iio.h > @@ -41,6 +41,8 @@ enum iio_chan_info_enum { > IIO_CHAN_INFO_ENABLE, > IIO_CHAN_INFO_CALIBHEIGHT, > IIO_CHAN_INFO_CALIBWEIGHT, > + IIO_CHAN_INFO_DEBOUNCE_COUNT, > + IIO_CHAN_INFO_DEBOUNCE_TIME, > }; > > enum iio_shared_by { >