On 10/01/13 17:22, Srinivas Pandruvada wrote: > Open sensor hub when module is loaded and close when module is removed. > This helps saving power by opening HID transport only when there is an > user. > > Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx> > Acked-by: Alessandro Zummo <a.zummo@xxxxxxxxxxxx> Applied to the togreg branch of iio.git Thanks > --- > drivers/rtc/rtc-hid-sensor-time.c | 15 ++++++++++++++- > 1 file changed, 14 insertions(+), 1 deletion(-) > > diff --git a/drivers/rtc/rtc-hid-sensor-time.c b/drivers/rtc/rtc-hid-sensor-time.c > index 4e2a818..45560ff 100644 > --- a/drivers/rtc/rtc-hid-sensor-time.c > +++ b/drivers/rtc/rtc-hid-sensor-time.c > @@ -275,6 +275,12 @@ static int hid_time_probe(struct platform_device *pdev) > return ret; > } > > + ret = sensor_hub_device_open(hsdev); > + if (ret) { > + dev_err(&pdev->dev, "failed to open sensor hub device!\n"); > + goto err_open; > + } > + > time_state->rtc = devm_rtc_device_register(&pdev->dev, > "hid-sensor-time", &hid_time_rtc_ops, > THIS_MODULE); > @@ -282,17 +288,24 @@ static int hid_time_probe(struct platform_device *pdev) > if (IS_ERR_OR_NULL(time_state->rtc)) { > ret = time_state->rtc ? PTR_ERR(time_state->rtc) : -ENODEV; > time_state->rtc = NULL; > - sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_TIME); > dev_err(&pdev->dev, "rtc device register failed!\n"); > + goto err_rtc; > } > > return ret; > + > +err_rtc: > + sensor_hub_device_close(hsdev); > +err_open: > + sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_TIME); > + return ret; > } > > static int hid_time_remove(struct platform_device *pdev) > { > struct hid_sensor_hub_device *hsdev = pdev->dev.platform_data; > > + sensor_hub_device_close(hsdev); > sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_TIME); > > return 0; > -- 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