|
@@ -416,6 +416,8 @@ static int __init omap_rtc_probe(struct platform_device *pdev)
|
|
|
rtc_writel(KICK1_VALUE, OMAP_RTC_KICK1_REG);
|
|
|
}
|
|
|
|
|
|
+ device_init_wakeup(&pdev->dev, true);
|
|
|
+
|
|
|
rtc = devm_rtc_device_register(&pdev->dev, pdev->name,
|
|
|
&omap_rtc_ops, THIS_MODULE);
|
|
|
if (IS_ERR(rtc)) {
|
|
@@ -484,8 +486,6 @@ static int __init omap_rtc_probe(struct platform_device *pdev)
|
|
|
* is write-only, and always reads as zero...)
|
|
|
*/
|
|
|
|
|
|
- device_init_wakeup(&pdev->dev, true);
|
|
|
-
|
|
|
if (new_ctrl & (u8) OMAP_RTC_CTRL_SPLIT)
|
|
|
pr_info("%s: split power mode\n", pdev->name);
|
|
|
|
|
@@ -495,6 +495,7 @@ static int __init omap_rtc_probe(struct platform_device *pdev)
|
|
|
return 0;
|
|
|
|
|
|
fail0:
|
|
|
+ device_init_wakeup(&pdev->dev, false);
|
|
|
if (id_entry->driver_data & OMAP_RTC_HAS_KICKER)
|
|
|
rtc_writel(0, OMAP_RTC_KICK0_REG);
|
|
|
pm_runtime_put_sync(&pdev->dev);
|