[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1433235862-1638-2-git-send-email-xlpang@126.com>
Date: Tue, 2 Jun 2015 17:04:20 +0800
From: Xunlei Pang <xlpang@....com>
To: linux-kernel@...r.kernel.org
Cc: rtc-linux@...glegroups.com,
Alessandro Zummo <a.zummo@...ertech.it>,
Alexandre Belloni <alexandre.belloni@...e-electrons.com>,
John Stultz <john.stultz@...aro.org>,
Arnd Bergmann <arnd@...db.de>,
Xunlei Pang <pang.xunlei@...aro.org>
Subject: [PATCH v2 2/4] rtc/lib: Introduce rtc_tm_subtract() helper function
From: Xunlei Pang <pang.xunlei@...aro.org>
There're many sites need comparing the two rtc_time variants for many
rtc drivers, especially in the instances of rtc_class_ops::set_alarm().
So add this common helper function to make things easy.
Suggested-by: Arnd Bergmann <arnd@...db.de>
Signed-off-by: Xunlei Pang <pang.xunlei@...aro.org>
---
drivers/rtc/rtc-lib.c | 9 +++++++++
include/linux/rtc.h | 2 ++
2 files changed, 11 insertions(+)
diff --git a/drivers/rtc/rtc-lib.c b/drivers/rtc/rtc-lib.c
index e6bfb9c..fdb94cc 100644
--- a/drivers/rtc/rtc-lib.c
+++ b/drivers/rtc/rtc-lib.c
@@ -124,6 +124,15 @@ time64_t rtc_tm_to_time64(struct rtc_time *tm)
EXPORT_SYMBOL(rtc_tm_to_time64);
/*
+ * rtc_tm_subtract - Return the difference in seconds.
+ */
+time64_t rtc_tm_subtract(struct rtc_time *minuend, struct rtc_time *subtrahend)
+{
+ return rtc_tm_to_time64(minuend) - rtc_tm_to_time64(subtrahend);
+}
+EXPORT_SYMBOL_GPL(rtc_tm_subtract);
+
+/*
* Convert rtc_time to ktime
*/
ktime_t rtc_tm_to_ktime(struct rtc_time tm)
diff --git a/include/linux/rtc.h b/include/linux/rtc.h
index 8dcf682..13e4138 100644
--- a/include/linux/rtc.h
+++ b/include/linux/rtc.h
@@ -21,6 +21,8 @@ extern int rtc_year_days(unsigned int day, unsigned int month, unsigned int year
extern int rtc_valid_tm(struct rtc_time *tm);
extern time64_t rtc_tm_to_time64(struct rtc_time *tm);
extern void rtc_time64_to_tm(time64_t time, struct rtc_time *tm);
+extern time64_t rtc_tm_subtract(struct rtc_time *minuend,
+ struct rtc_time *subtrahend);
ktime_t rtc_tm_to_ktime(struct rtc_time tm);
struct rtc_time rtc_ktime_to_tm(ktime_t kt);
--
1.9.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists