mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 18:51:56 -04:00
rtc: s5m: enable IRQ wake during suspend
Add PM suspend/resume ops to rtc-s5m driver and enable IRQ wake during suspend so the RTC would act like a wake up source. This allows waking up from suspend to RAM on RTC alarm interrupt. Signed-off-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Cc: Mark Brown <[email protected]> Acked-by: Sangbeom Kim <[email protected]> Cc: Samuel Ortiz <[email protected]> Cc: Lee Jones <[email protected]> Cc: Liam Girdwood <[email protected]> Cc: Alessandro Zummo <[email protected]> Cc: Marek Szyprowski <[email protected]> Cc: Geert Uytterhoeven <[email protected]> Cc: Kyungmin Park <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
d73238d4a6
commit
222ead7fd8
1 changed files with 25 additions and 0 deletions
|
|
@ -639,6 +639,30 @@ static void s5m_rtc_shutdown(struct platform_device *pdev)
|
|||
s5m_rtc_enable_smpl(info, false);
|
||||
}
|
||||
|
||||
static int s5m_rtc_resume(struct device *dev)
|
||||
{
|
||||
struct s5m_rtc_info *info = dev_get_drvdata(dev);
|
||||
int ret = 0;
|
||||
|
||||
if (device_may_wakeup(dev))
|
||||
ret = disable_irq_wake(info->irq);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int s5m_rtc_suspend(struct device *dev)
|
||||
{
|
||||
struct s5m_rtc_info *info = dev_get_drvdata(dev);
|
||||
int ret = 0;
|
||||
|
||||
if (device_may_wakeup(dev))
|
||||
ret = enable_irq_wake(info->irq);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static SIMPLE_DEV_PM_OPS(s5m_rtc_pm_ops, s5m_rtc_suspend, s5m_rtc_resume);
|
||||
|
||||
static const struct platform_device_id s5m_rtc_id[] = {
|
||||
{ "s5m-rtc", 0 },
|
||||
};
|
||||
|
|
@ -647,6 +671,7 @@ static struct platform_driver s5m_rtc_driver = {
|
|||
.driver = {
|
||||
.name = "s5m-rtc",
|
||||
.owner = THIS_MODULE,
|
||||
.pm = &s5m_rtc_pm_ops,
|
||||
},
|
||||
.probe = s5m_rtc_probe,
|
||||
.shutdown = s5m_rtc_shutdown,
|
||||
|
|
|
|||
Loading…
Reference in a new issue