diff options
author | Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> | 2013-09-18 19:13:00 +0200 |
---|---|---|
committer | Jonathan Cameron <jic23@kernel.org> | 2013-10-01 17:19:08 +0200 |
commit | 7d3c192df0457195c4cdd5272b39c8db8334be81 (patch) | |
tree | fb18b97e957235413c167ce2efab648b1dbaf9ab /drivers | |
parent | HID: Delay opening HID device (diff) | |
download | linux-7d3c192df0457195c4cdd5272b39c8db8334be81.tar.xz linux-7d3c192df0457195c4cdd5272b39c8db8334be81.zip |
IIO: call sensor hub open close function
Call hid_sensor_hub_device_open when user space opens device and call
hid_sensor_hub_device_close when device is closed. This helps in
saving power.
Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/iio/common/hid-sensors/hid-sensor-trigger.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/iio/common/hid-sensors/hid-sensor-trigger.c b/drivers/iio/common/hid-sensors/hid-sensor-trigger.c index 87419c41b991..b6e77e0fc420 100644 --- a/drivers/iio/common/hid-sensors/hid-sensor-trigger.c +++ b/drivers/iio/common/hid-sensors/hid-sensor-trigger.c @@ -34,6 +34,12 @@ static int hid_sensor_data_rdy_trigger_set_state(struct iio_trigger *trig, struct hid_sensor_common *st = iio_trigger_get_drvdata(trig); int state_val; + if (state) { + if (sensor_hub_device_open(st->hsdev)) + return -EIO; + } else + sensor_hub_device_close(st->hsdev); + state_val = state ? 1 : 0; if (IS_ENABLED(CONFIG_HID_SENSOR_ENUM_BASE_QUIRKS)) ++state_val; |