On 02/10/14 14:43, Daniel Baluta wrote: > From: Irina Tirdea <irina.tirdea@xxxxxxxxx> > > One of the functionalities of a pedometer is a step counter. > The step counter needs to be enabled and then it will count the steps > in its hardware register. Whenever the applications need to check > the step count, they will read the step counter register. > > To support this functionality we need a steps attribute that > will export the number of steps. > > For more information on the pedometer requirements for Android see > http://source.android.com/devices/sensors/composite_sensors.html#counter. > > A device that has the pedometer functionality this interface needs to > support is Freescale's MMA9553L: > http://www.freescale.com/files/sensors/doc/ref_manual/MMA9553LSWRM.pdf > > Signed-off-by: Irina Tirdea <irina.tirdea@xxxxxxxxx> > Signed-off-by: Daniel Baluta <daniel.baluta@xxxxxxxxx> I'm not keen on multiplexing different types of data onto a single activity type. Steps is well enough defined on it's own to have it's own channel type. in_steps_input would be fine by me. I suppose steps might mean something else though... > --- > Documentation/ABI/testing/sysfs-bus-iio | 7 +++++++ > drivers/iio/industrialio-core.c | 1 + > include/linux/iio/types.h | 1 + > 3 files changed, 9 insertions(+) > > diff --git a/Documentation/ABI/testing/sysfs-bus-iio b/Documentation/ABI/testing/sysfs-bus-iio > index 070346d..feacb45 100644 > --- a/Documentation/ABI/testing/sysfs-bus-iio > +++ b/Documentation/ABI/testing/sysfs-bus-iio > @@ -949,6 +949,13 @@ Description: > and the relevant _type attributes to establish the data storage > format. > > +What: /sys/.../iio:deviceX/in_activity_steps_raw > +KernelVersion: 3.17 > +Contact: linux-iio@xxxxxxxxxxxxxxx > +Description: > + This attribute is used to read the number of steps taken by the user > + since the last reboot while activated. > + > What: /sys/.../iio:deviceX/in_anglvel_z_quadrature_correction_raw > KernelVersion: 2.6.38 > Contact: linux-iio@xxxxxxxxxxxxxxx > diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c > index e453ef9..935a8a1 100644 > --- a/drivers/iio/industrialio-core.c > +++ b/drivers/iio/industrialio-core.c > @@ -96,6 +96,7 @@ static const char * const iio_modifier_names[] = { > [IIO_MOD_JOGGING] = "jogging", > [IIO_MOD_WALKING] = "walking", > [IIO_MOD_STILL] = "still", > + [IIO_MOD_PED_STEPS] = "steps", > }; > > /* relies on pairs of these shared then separate */ > diff --git a/include/linux/iio/types.h b/include/linux/iio/types.h > index 003638d..ae51780 100644 > --- a/include/linux/iio/types.h > +++ b/include/linux/iio/types.h > @@ -65,6 +65,7 @@ enum iio_modifier { > IIO_MOD_JOGGING, > IIO_MOD_WALKING, > IIO_MOD_STILL, > + IIO_MOD_PED_STEPS, > }; > > enum iio_event_type { > -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html