|
@@ -229,6 +229,10 @@ static int brcmstb_waketmr_probe(struct platform_device *pdev)
|
|
|
if (IS_ERR(timer->base))
|
|
|
return PTR_ERR(timer->base);
|
|
|
|
|
|
+ timer->rtc = devm_rtc_allocate_device(dev);
|
|
|
+ if (IS_ERR(timer->rtc))
|
|
|
+ return PTR_ERR(timer->rtc);
|
|
|
+
|
|
|
/*
|
|
|
* Set wakeup capability before requesting wakeup interrupt, so we can
|
|
|
* process boot-time "wakeups" (e.g., from S5 soft-off)
|
|
@@ -261,11 +265,11 @@ static int brcmstb_waketmr_probe(struct platform_device *pdev)
|
|
|
timer->reboot_notifier.notifier_call = brcmstb_waketmr_reboot;
|
|
|
register_reboot_notifier(&timer->reboot_notifier);
|
|
|
|
|
|
- timer->rtc = rtc_device_register("brcmstb-waketmr", dev,
|
|
|
- &brcmstb_waketmr_ops, THIS_MODULE);
|
|
|
- if (IS_ERR(timer->rtc)) {
|
|
|
+ timer->rtc->ops = &brcmstb_waketmr_ops;
|
|
|
+
|
|
|
+ ret = rtc_register_device(timer->rtc);
|
|
|
+ if (ret) {
|
|
|
dev_err(dev, "unable to register device\n");
|
|
|
- ret = PTR_ERR(timer->rtc);
|
|
|
goto err_notifier;
|
|
|
}
|
|
|
|
|
@@ -288,7 +292,6 @@ static int brcmstb_waketmr_remove(struct platform_device *pdev)
|
|
|
struct brcmstb_waketmr *timer = dev_get_drvdata(&pdev->dev);
|
|
|
|
|
|
unregister_reboot_notifier(&timer->reboot_notifier);
|
|
|
- rtc_device_unregister(timer->rtc);
|
|
|
|
|
|
return 0;
|
|
|
}
|