Commit 406bf318 authored by Alexander Holler's avatar Alexander Holler Committed by Linus Torvalds

drivers/rtc/rtc-hid-sensor-time.c: enable HID input processing early

Enable the processing of HID input records before the RTC will be
registered, in order to allow the RTC register function to read clock.
Without doing that the clock can only be read after the probe function
has finished.
Signed-off-by: default avatarAlexander Holler <holler@ahsoftware.de>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent d5ceede8
...@@ -281,11 +281,18 @@ static int hid_time_probe(struct platform_device *pdev) ...@@ -281,11 +281,18 @@ static int hid_time_probe(struct platform_device *pdev)
goto err_open; goto err_open;
} }
/*
* Enable HID input processing early in order to be able to read the
* clock already in devm_rtc_device_register().
*/
hid_device_io_start(hsdev->hdev);
time_state->rtc = devm_rtc_device_register(&pdev->dev, time_state->rtc = devm_rtc_device_register(&pdev->dev,
"hid-sensor-time", &hid_time_rtc_ops, "hid-sensor-time", &hid_time_rtc_ops,
THIS_MODULE); THIS_MODULE);
if (IS_ERR_OR_NULL(time_state->rtc)) { if (IS_ERR_OR_NULL(time_state->rtc)) {
hid_device_io_stop(hsdev->hdev);
ret = time_state->rtc ? PTR_ERR(time_state->rtc) : -ENODEV; ret = time_state->rtc ? PTR_ERR(time_state->rtc) : -ENODEV;
time_state->rtc = NULL; time_state->rtc = NULL;
dev_err(&pdev->dev, "rtc device register failed!\n"); dev_err(&pdev->dev, "rtc device register failed!\n");
......
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