summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDeepak Sikri <deepak.sikri@st.com>2012-12-17 16:02:34 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2012-12-17 17:15:21 -0800
commitc9f5c7e7a84f1b7e274566851a1fb3531629343e (patch)
tree84ebe843895d13f4306f96d5170eb32e3e0fcdf6
parent93d78394ac5ec72315e7f9a7193c6649d817a9eb (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.c2
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);