aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBaolin Wang <baolin.wang@linaro.org>2018-10-18 04:52:28 -0400
committerAlexandre Belloni <alexandre.belloni@bootlin.com>2018-10-24 20:35:39 -0400
commitb2ddc48582efa157635f7ef815c9d4a657e2cabd (patch)
tree75e45229469995cf98a4d716856109ef1d8c63cf
parent7db5adfa63167dac548022c973e00da7f56ffb72 (diff)
rtc: sc27xx: Remove interrupts disable and clear in probe()
When registering one rtc device, it will check to see if there is an alarm already set in rtc hardware by issuing __rtc_read_alarm(). So we should not disable the RTC interrupts and clear the interrupts status in probe() function. Signed-off-by: Baolin Wang <baolin.wang@linaro.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
-rw-r--r--drivers/rtc/rtc-sc27xx.c20
1 files changed, 0 insertions, 20 deletions
diff --git a/drivers/rtc/rtc-sc27xx.c b/drivers/rtc/rtc-sc27xx.c
index 6ac56538682e..4ecabe6c9429 100644
--- a/drivers/rtc/rtc-sc27xx.c
+++ b/drivers/rtc/rtc-sc27xx.c
@@ -129,19 +129,6 @@ static int sprd_rtc_clear_alarm_ints(struct sprd_rtc *rtc)
129 SPRD_RTC_ALM_INT_MASK); 129 SPRD_RTC_ALM_INT_MASK);
130} 130}
131 131
132static int sprd_rtc_disable_ints(struct sprd_rtc *rtc)
133{
134 int ret;
135
136 ret = regmap_update_bits(rtc->regmap, rtc->base + SPRD_RTC_INT_EN,
137 SPRD_RTC_INT_MASK, 0);
138 if (ret)
139 return ret;
140
141 return regmap_write(rtc->regmap, rtc->base + SPRD_RTC_INT_CLR,
142 SPRD_RTC_INT_MASK);
143}
144
145static int sprd_rtc_lock_alarm(struct sprd_rtc *rtc, bool lock) 132static int sprd_rtc_lock_alarm(struct sprd_rtc *rtc, bool lock)
146{ 133{
147 int ret; 134 int ret;
@@ -609,13 +596,6 @@ static int sprd_rtc_probe(struct platform_device *pdev)
609 rtc->dev = &pdev->dev; 596 rtc->dev = &pdev->dev;
610 platform_set_drvdata(pdev, rtc); 597 platform_set_drvdata(pdev, rtc);
611 598
612 /* clear all RTC interrupts and disable all RTC interrupts */
613 ret = sprd_rtc_disable_ints(rtc);
614 if (ret) {
615 dev_err(&pdev->dev, "failed to disable RTC interrupts\n");
616 return ret;
617 }
618
619 /* check if RTC time values are valid */ 599 /* check if RTC time values are valid */
620 ret = sprd_rtc_check_power_down(rtc); 600 ret = sprd_rtc_check_power_down(rtc);
621 if (ret) { 601 if (ret) {