timers: Introduce in-kernel alarm-timer interface
authorJohn Stultz <john.stultz@linaro.org>
Tue, 11 Jan 2011 17:42:13 +0000 (09:42 -0800)
committerJohn Stultz <john.stultz@linaro.org>
Tue, 26 Apr 2011 21:01:44 +0000 (14:01 -0700)
commitff3ead96d17f47ee70c294a5cc2cce9b61e82f0f
treee87fc16e1fc4a80b9591c2b1d02c99459254aa95
parent88d19cf37952a7e1e38b2bf87a00f0e857e63180
timers: Introduce in-kernel alarm-timer interface

This provides the in kernel interface and infrastructure for
alarm-timers.

Alarm-timers are a hybrid style timer, similar to hrtimers,
but when the system is suspended, the RTC device is set to
fire and wake the system for when the soonest alarm-timer
expires.

The concept for Alarm-timers was inspired by the Android Alarm
driver (by Arve Hjønnevåg) found in the Android kernel tree.

See: http://android.git.kernel.org/?p=kernel/common.git;a=blob;f=drivers/rtc/alarm.c;h=1250edfbdf3302f5e4ea6194847c6ef4bb7beb1c;hb=android-2.6.36

This in-kernel interface should be fairly compatible with the
Android alarm driver in-kernel interface, but has the advantage
of utilizing the new RTC timerqueue code instead of doing direct
RTC manipulation.

CC: Arve Hjønnevåg <arve@android.com>
CC: Thomas Gleixner <tglx@linutronix.de>
CC: Alessandro Zummo <a.zummo@towertech.it>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: John Stultz <john.stultz@linaro.org>
include/linux/alarmtimer.h [new file with mode: 0644]
kernel/time/Makefile
kernel/time/alarmtimer.c [new file with mode: 0644]