alarmtimer: Provide accessor to alarmtimer rtc device
John Stultz [Sat, 10 Dec 2011 02:44:02 +0000 (18:44 -0800)]
The Android alarm interface provides a settime call that sets both
the alarmtimer RTC device and CLOCK_REALTIME to the same value.

Since there may be multiple rtc devices, provide a hook to access the
one the alarmtimer infrastructure is using.

Signed-off-by: John Stultz <john.stultz@linaro.org>

include/linux/alarmtimer.h
kernel/time/alarmtimer.c

index 975009e..efbf678 100644 (file)
@@ -76,4 +76,11 @@ static inline int alarmtimer_callback_running(struct alarm *timer)
 }
 
 
+/* Provide way to access the rtc device being used by alarmtimers */
+#ifdef CONFIG_RTC_CLASS
+struct rtc_device *alarmtimer_get_rtcdev(void);
+#else
+#define alarmtimer_get_rtcdev() (0)
+#endif
+
 #endif
index 8a46f5d..76ae34e 100644 (file)
@@ -59,7 +59,7 @@ static DEFINE_SPINLOCK(rtcdev_lock);
  * If one has not already been chosen, it checks to see if a
  * functional rtc device is available.
  */
-static struct rtc_device *alarmtimer_get_rtcdev(void)
+struct rtc_device *alarmtimer_get_rtcdev(void)
 {
        unsigned long flags;
        struct rtc_device *ret;
@@ -110,7 +110,7 @@ static void alarmtimer_rtc_interface_remove(void)
        class_interface_unregister(&alarmtimer_rtc_interface);
 }
 #else
-static inline struct rtc_device *alarmtimer_get_rtcdev(void)
+struct rtc_device *alarmtimer_get_rtcdev(void)
 {
        return NULL;
 }