* [PATCH] iio: hid-sensors: Set default unit of measure for report interval
@ 2014-05-08 13:36 Archana Patni
2014-05-10 10:45 ` Jonathan Cameron
0 siblings, 1 reply; 2+ messages in thread
From: Archana Patni @ 2014-05-08 13:36 UTC (permalink / raw)
To: jic23
Cc: jkosina, linux-iio, srinivas.pandruvada, Archana Patni,
Archana Patni, Subramony Sesha
For PROP_REPORT_INTERVAL, the spec does not mandate the presence
of the report interval unit in the feature report and expects the
default unit of measure to be used as milliseconds.
Currently, when the unit is not present, it gets set as zero leading
to issues in sampling frequency.
This patch sets the unit of measure to the default unit if it
is not defined by firmware.
Signed-off-by: Archana Patni <archana.patni@intel.com>
Signed-off-by: Subramony Sesha <subramony.sesha@intel.com>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@intel.com>
---
.../iio/common/hid-sensors/hid-sensor-attributes.c | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/drivers/iio/common/hid-sensors/hid-sensor-attributes.c b/drivers/iio/common/hid-sensors/hid-sensor-attributes.c
index 75b5473..55047af 100644
--- a/drivers/iio/common/hid-sensors/hid-sensor-attributes.c
+++ b/drivers/iio/common/hid-sensors/hid-sensor-attributes.c
@@ -209,15 +209,28 @@ int hid_sensor_write_raw_hyst_value(struct hid_sensor_common *st,
}
EXPORT_SYMBOL(hid_sensor_write_raw_hyst_value);
-int hid_sensor_parse_common_attributes(struct hid_sensor_hub_device *hsdev,
+int hid_sensor_get_reporting_interval(struct hid_sensor_hub_device *hsdev,
u32 usage_id,
struct hid_sensor_common *st)
{
-
sensor_hub_input_get_attribute_info(hsdev,
HID_FEATURE_REPORT, usage_id,
HID_USAGE_SENSOR_PROP_REPORT_INTERVAL,
&st->poll);
+ /* Default unit of measure is milliseconds */
+ if (st->poll.units == 0)
+ st->poll.units = HID_USAGE_SENSOR_UNITS_MILLISECOND;
+ return 0;
+
+}
+
+int hid_sensor_parse_common_attributes(struct hid_sensor_hub_device *hsdev,
+ u32 usage_id,
+ struct hid_sensor_common *st)
+{
+
+
+ hid_sensor_get_reporting_interval(hsdev, usage_id, st);
sensor_hub_input_get_attribute_info(hsdev,
HID_FEATURE_REPORT, usage_id,
--
1.7.9.5
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH] iio: hid-sensors: Set default unit of measure for report interval
2014-05-08 13:36 [PATCH] iio: hid-sensors: Set default unit of measure for report interval Archana Patni
@ 2014-05-10 10:45 ` Jonathan Cameron
0 siblings, 0 replies; 2+ messages in thread
From: Jonathan Cameron @ 2014-05-10 10:45 UTC (permalink / raw)
To: Archana Patni
Cc: jkosina, linux-iio, srinivas.pandruvada, Archana Patni,
Subramony Sesha
On 08/05/14 14:36, Archana Patni wrote:
> For PROP_REPORT_INTERVAL, the spec does not mandate the presence
> of the report interval unit in the feature report and expects the
> default unit of measure to be used as milliseconds.
>
> Currently, when the unit is not present, it gets set as zero leading
> to issues in sampling frequency.
>
> This patch sets the unit of measure to the default unit if it
> is not defined by firmware.
>
> Signed-off-by: Archana Patni <archana.patni@intel.com>
> Signed-off-by: Subramony Sesha <subramony.sesha@intel.com>
> Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@intel.com>
Applied to the togreg branch of iio.git
Thanks,
> ---
> .../iio/common/hid-sensors/hid-sensor-attributes.c | 17 +++++++++++++++--
> 1 file changed, 15 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/iio/common/hid-sensors/hid-sensor-attributes.c b/drivers/iio/common/hid-sensors/hid-sensor-attributes.c
> index 75b5473..55047af 100644
> --- a/drivers/iio/common/hid-sensors/hid-sensor-attributes.c
> +++ b/drivers/iio/common/hid-sensors/hid-sensor-attributes.c
> @@ -209,15 +209,28 @@ int hid_sensor_write_raw_hyst_value(struct hid_sensor_common *st,
> }
> EXPORT_SYMBOL(hid_sensor_write_raw_hyst_value);
>
> -int hid_sensor_parse_common_attributes(struct hid_sensor_hub_device *hsdev,
> +int hid_sensor_get_reporting_interval(struct hid_sensor_hub_device *hsdev,
> u32 usage_id,
> struct hid_sensor_common *st)
> {
> -
> sensor_hub_input_get_attribute_info(hsdev,
> HID_FEATURE_REPORT, usage_id,
> HID_USAGE_SENSOR_PROP_REPORT_INTERVAL,
> &st->poll);
> + /* Default unit of measure is milliseconds */
> + if (st->poll.units == 0)
> + st->poll.units = HID_USAGE_SENSOR_UNITS_MILLISECOND;
> + return 0;
> +
> +}
> +
> +int hid_sensor_parse_common_attributes(struct hid_sensor_hub_device *hsdev,
> + u32 usage_id,
> + struct hid_sensor_common *st)
> +{
> +
> +
> + hid_sensor_get_reporting_interval(hsdev, usage_id, st);
>
> sensor_hub_input_get_attribute_info(hsdev,
> HID_FEATURE_REPORT, usage_id,
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-05-10 10:44 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-08 13:36 [PATCH] iio: hid-sensors: Set default unit of measure for report interval Archana Patni
2014-05-10 10:45 ` Jonathan Cameron
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.