aboutsummaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorMarcos Marado <mmarado@cyngn.com>2016-04-11 15:58:08 +0100
committerMister Oyster <oysterized@gmail.com>2017-04-13 12:35:33 +0200
commitb3756c597975eb25a8299306bc523749b064e66f (patch)
treec397b7de9f704a37e431d1beee58c98cdc682744 /drivers
parenta693d055f901f0c269bc4228c854db6366cf56c1 (diff)
Fix ANDROID_ALARM_POWER_ON on stop/start sequence
The POWER_ON alarm structures must be initialized as ALARM_REALTIME timers, not hrtimers. Change-Id: Ib3a7e8cb8fe4f5dfabb6af47eddadac92ebadbc1 Ticket: PORRIDGE-12
Diffstat (limited to 'drivers')
-rw-r--r--drivers/staging/android/alarm-dev.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/staging/android/alarm-dev.c b/drivers/staging/android/alarm-dev.c
index a670aa287..0324a4ea7 100644
--- a/drivers/staging/android/alarm-dev.c
+++ b/drivers/staging/android/alarm-dev.c
@@ -75,7 +75,8 @@ static struct devalarm alarms[ANDROID_ALARM_TYPE_COUNT];
static int is_wakeup(enum android_alarm_type type)
{
return type == ANDROID_ALARM_RTC_WAKEUP ||
- type == ANDROID_ALARM_ELAPSED_REALTIME_WAKEUP;
+ type == ANDROID_ALARM_ELAPSED_REALTIME_WAKEUP ||
+ type == ANDROID_ALARM_POWER_ON;
}
static void devalarm_start(struct devalarm *alrm, ktime_t exp)
@@ -499,6 +500,8 @@ static int __init alarm_dev_init(void)
ALARM_REALTIME, devalarm_alarmhandler);
hrtimer_init(&alarms[ANDROID_ALARM_RTC].u.hrt,
CLOCK_REALTIME, HRTIMER_MODE_ABS);
+ alarm_init(&alarms[ANDROID_ALARM_POWER_ON].u.alrm,
+ ALARM_REALTIME, devalarm_alarmhandler);
alarm_init(&alarms[ANDROID_ALARM_ELAPSED_REALTIME_WAKEUP].u.alrm,
ALARM_BOOTTIME, devalarm_alarmhandler);
hrtimer_init(&alarms[ANDROID_ALARM_ELAPSED_REALTIME].u.hrt,