From: Johan Hovold <[email protected]>
Subject: rtc: omap: fix missing wakealarm attribute
The platform device must be registered as wakeup capable before
registering the class device, or the wakealarm attribute will not be
created.
Also make sure to unregister the wakeup source on probe errors.
Fixes: 1d2e2b65d098 ("rtc: omap: restore back (hard-code) wakeup support")
Signed-off-by: Johan Hovold <[email protected]>
Reviewed-by: Felipe Balbi <[email protected]>
Tested-by: Felipe Balbi <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Cc: Tony Lindgren <[email protected]>
Cc: Benot Cousson <[email protected]>
Cc: Lokesh Vutla <[email protected]>
Cc: Guenter Roeck <[email protected]>
Cc: Sekhar Nori <[email protected]>
Cc: Tero Kristo <[email protected]>
Cc: Keerthy J <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
---
drivers/rtc/rtc-omap.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff -puN drivers/rtc/rtc-omap.c~rtc-omap-fix-missing-wakealarm-attribute
drivers/rtc/rtc-omap.c
--- a/drivers/rtc/rtc-omap.c~rtc-omap-fix-missing-wakealarm-attribute
+++ a/drivers/rtc/rtc-omap.c
@@ -416,6 +416,8 @@ static int __init omap_rtc_probe(struct
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
* 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
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);
_
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html