Commit 3e729974 authored by Archana Patni's avatar Archana Patni Committed by Jonathan Cameron

iio: hid-sensors: Set default unit of measure for report interval

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: default avatarArchana Patni <archana.patni@intel.com>
Signed-off-by: default avatarSubramony Sesha <subramony.sesha@intel.com>
Reviewed-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@intel.com>
Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
parent 758ee467
...@@ -343,15 +343,28 @@ int hid_sensor_format_scale(u32 usage_id, ...@@ -343,15 +343,28 @@ int hid_sensor_format_scale(u32 usage_id,
} }
EXPORT_SYMBOL(hid_sensor_format_scale); EXPORT_SYMBOL(hid_sensor_format_scale);
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, u32 usage_id,
struct hid_sensor_common *st) struct hid_sensor_common *st)
{ {
sensor_hub_input_get_attribute_info(hsdev, sensor_hub_input_get_attribute_info(hsdev,
HID_FEATURE_REPORT, usage_id, HID_FEATURE_REPORT, usage_id,
HID_USAGE_SENSOR_PROP_REPORT_INTERVAL, HID_USAGE_SENSOR_PROP_REPORT_INTERVAL,
&st->poll); &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, sensor_hub_input_get_attribute_info(hsdev,
HID_FEATURE_REPORT, usage_id, HID_FEATURE_REPORT, usage_id,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment