timers: Fix alarmtimer build issues when CONFIG_RTC_CLASS=n
Ingo pointed out that the alarmtimers won't build if CONFIG_RTC_CLASS=n. This patch adds proper ifdefs to the alarmtimer code to disable the rtc usage if it is not built in. Reported-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
7068b7a162
commit
472647dcd7
@ -42,9 +42,11 @@ static struct alarm_base {
|
||||
clockid_t base_clockid;
|
||||
} alarm_bases[ALARM_NUMTYPE];
|
||||
|
||||
#ifdef CONFIG_RTC_CLASS
|
||||
/* rtc timer and device for setting alarm wakeups at suspend */
|
||||
static struct rtc_timer rtctimer;
|
||||
static struct rtc_device *rtcdev;
|
||||
#endif
|
||||
|
||||
/* freezer delta & lock used to handle clock_nanosleep triggered wakeups */
|
||||
static ktime_t freezer_delta;
|
||||
@ -148,7 +150,7 @@ static enum hrtimer_restart alarmtimer_fired(struct hrtimer *timer)
|
||||
|
||||
}
|
||||
|
||||
|
||||
#ifdef CONFIG_RTC_CLASS
|
||||
/**
|
||||
* alarmtimer_suspend - Suspend time callback
|
||||
* @dev: unused
|
||||
@ -206,7 +208,12 @@ static int alarmtimer_suspend(struct device *dev)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#else
|
||||
static int alarmtimer_suspend(struct device *dev)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
static void alarmtimer_freezerset(ktime_t absexp, enum alarmtimer_type type)
|
||||
{
|
||||
@ -631,6 +638,7 @@ static int __init alarmtimer_init(void)
|
||||
}
|
||||
device_initcall(alarmtimer_init);
|
||||
|
||||
#ifdef CONFIG_RTC_CLASS
|
||||
/**
|
||||
* has_wakealarm - check rtc device has wakealarm ability
|
||||
* @dev: current device
|
||||
@ -675,4 +683,12 @@ static int __init alarmtimer_init_late(void)
|
||||
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
static int __init alarmtimer_init_late(void)
|
||||
{
|
||||
printk(KERN_WARNING "Kernel not built with RTC support, ALARM timers"
|
||||
" will not wake from suspend");
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
late_initcall(alarmtimer_init_late);
|
||||
|
Loading…
Reference in New Issue
Block a user