diff options
author | Deepak Sikri <deepak.sikri@st.com> | 2012-12-17 16:02:34 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-12-17 17:15:21 -0800 |
commit | c9f5c7e7a84f1b7e274566851a1fb3531629343e (patch) | |
tree | 84ebe843895d13f4306f96d5170eb32e3e0fcdf6 | |
parent | 93d78394ac5ec72315e7f9a7193c6649d817a9eb (diff) |
rtc: rtc-spear: Provide flag for no support of UIE mode
The applications can set the RTC hardware to trigger interrupts in one
of three modes:
* AIE: Alarm interrupt
* UIE: Update interrupt (ie: once per second)
* PIE: Periodic interrupt (sub-second irqs)
The above defined 3 modes are to be supported in the RTC HW in form of
interrupts. The SPEAr RTC hardware does not support the later two modes.
There have been refinements in the RTC core in mainline related to
use of timer queue infrastructure to manage events in RTC. Please refer
the below mentioned patch for details:
* RTC: Rework RTC code to use timerqueue for events
* SHA ID: 6610e0893b8bc6f59b14fed7f089c5997f035f88
There have been provisions added to support hardware that do not have
support the UIE mode. Please refer the following patch.
* rtc: Provide flag for rtc devices that don't support UIE
* SHA ID: 4a649903f91232d02284d53724b0a45728111767
The patch makes use of the provision defined in the above patch to
update the hardware status of UIE mode.
Signed-off-by: Deepak Sikri <deepak.sikri@st.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | drivers/rtc/rtc-spear.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/rtc/rtc-spear.c b/drivers/rtc/rtc-spear.c index c96f56cfc1d8..141fc945295f 100644 --- a/drivers/rtc/rtc-spear.c +++ b/drivers/rtc/rtc-spear.c @@ -411,6 +411,8 @@ static int __devinit spear_rtc_probe(struct platform_device *pdev) goto err_disable_clock; } + config->rtc->uie_unsupported = 1; + if (!device_can_wakeup(&pdev->dev)) device_init_wakeup(&pdev->dev, 1); |