All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] rtc: OMAP: Add external 32k clock feature
@ 2015-03-03  9:42 ` Keerthy
  0 siblings, 0 replies; 19+ messages in thread
From: Keerthy @ 2015-03-03  9:42 UTC (permalink / raw)
  To: a.zummo; +Cc: rtc-linux, linux-kernel, linux-omap, j-keerthy

Add external 32k clock feature. The internal clock will be gated during suspend.
Hence make use of the external 32k clock so that rtc is functional accross
suspend/resume.

Signed-off-by: Keerthy <j-keerthy@ti.com>
---

Tested on DRA7-EVM.

 drivers/rtc/rtc-omap.c | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/drivers/rtc/rtc-omap.c b/drivers/rtc/rtc-omap.c
index 8e5851a..4f803ca 100644
--- a/drivers/rtc/rtc-omap.c
+++ b/drivers/rtc/rtc-omap.c
@@ -107,6 +107,8 @@
 
 /* OMAP_RTC_OSC_REG bit fields: */
 #define OMAP_RTC_OSC_32KCLK_EN		BIT(6)
+#define OMAP_RTC_OSC_OSC32K_GZ		BIT(4)
+#define OMAP_RTC_OSC_EXT_32K		BIT(3)
 
 /* OMAP_RTC_IRQWAKEEN bit fields: */
 #define OMAP_RTC_IRQWAKEEN_ALARM_WAKEEN	BIT(1)
@@ -120,6 +122,7 @@
 
 struct omap_rtc_device_type {
 	bool has_32kclk_en;
+	bool has_osc_ext_32k;
 	bool has_kicker;
 	bool has_irqwakeen;
 	bool has_pmic_mode;
@@ -446,6 +449,7 @@ static const struct omap_rtc_device_type omap_rtc_default_type = {
 
 static const struct omap_rtc_device_type omap_rtc_am3352_type = {
 	.has_32kclk_en	= true,
+	.has_osc_ext_32k = true,
 	.has_kicker	= true,
 	.has_irqwakeen	= true,
 	.has_pmic_mode	= true,
@@ -543,7 +547,16 @@ static int __init omap_rtc_probe(struct platform_device *pdev)
 	if (rtc->type->has_32kclk_en) {
 		reg = rtc_read(rtc, OMAP_RTC_OSC_REG);
 		rtc_writel(rtc, OMAP_RTC_OSC_REG,
-				reg | OMAP_RTC_OSC_32KCLK_EN);
+			   reg | OMAP_RTC_OSC_32KCLK_EN);
+	}
+
+	/* Enable External clock as the source */
+
+	if (rtc->type->has_osc_ext_32k) {
+		rtc_writel(rtc, OMAP_RTC_OSC_REG,
+			   (OMAP_RTC_OSC_EXT_32K |
+			   rtc_read(rtc, OMAP_RTC_OSC_REG)) &
+			   (~OMAP_RTC_OSC_OSC32K_GZ));
 	}
 
 	/* clear old status */
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2015-04-10 22:24 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-03  9:42 [PATCH] rtc: OMAP: Add external 32k clock feature Keerthy
2015-03-03  9:42 ` Keerthy
2015-03-17  4:15 ` Keerthy
2015-03-17  4:15   ` Keerthy
2015-03-24 22:59 ` [rtc-linux] " Andrew Morton
2015-03-24 22:59   ` Andrew Morton
2015-04-07  3:29   ` Keerthy
2015-04-07  3:29     ` Keerthy
2015-04-07  3:29     ` Keerthy
2015-04-07  7:06     ` Igor Grinberg
2015-04-07  7:06       ` Igor Grinberg
2015-04-10  8:26       ` Keerthy
2015-04-10  8:26         ` Keerthy
2015-04-10  8:26         ` Keerthy
2015-04-10 20:37         ` Andrew Morton
2015-04-10 20:37           ` Andrew Morton
2015-04-10 20:37           ` Andrew Morton
2015-04-10 22:23           ` Alexandre Belloni
2015-04-10 22:23             ` Alexandre Belloni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.