aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/rtc/rtc-hid-sensor-time.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/rtc/rtc-hid-sensor-time.c b/drivers/rtc/rtc-hid-sensor-time.c
index 31c5728ef629..63024505dddc 100644
--- a/drivers/rtc/rtc-hid-sensor-time.c
+++ b/drivers/rtc/rtc-hid-sensor-time.c
@@ -255,8 +255,9 @@ static int hid_time_probe(struct platform_device *pdev)
255 return ret; 255 return ret;
256 } 256 }
257 257
258 time_state->rtc = rtc_device_register("hid-sensor-time", 258 time_state->rtc = devm_rtc_device_register(&pdev->dev,
259 &pdev->dev, &hid_time_rtc_ops, THIS_MODULE); 259 "hid-sensor-time", &hid_time_rtc_ops,
260 THIS_MODULE);
260 261
261 if (IS_ERR(time_state->rtc)) { 262 if (IS_ERR(time_state->rtc)) {
262 dev_err(&pdev->dev, "rtc device register failed!\n"); 263 dev_err(&pdev->dev, "rtc device register failed!\n");
@@ -269,9 +270,7 @@ static int hid_time_probe(struct platform_device *pdev)
269static int hid_time_remove(struct platform_device *pdev) 270static int hid_time_remove(struct platform_device *pdev)
270{ 271{
271 struct hid_sensor_hub_device *hsdev = pdev->dev.platform_data; 272 struct hid_sensor_hub_device *hsdev = pdev->dev.platform_data;
272 struct hid_time_state *time_state = platform_get_drvdata(pdev);
273 273
274 rtc_device_unregister(time_state->rtc);
275 sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_TIME); 274 sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_TIME);
276 275
277 return 0; 276 return 0;