Commit de68d9b173ee657115dd0e584c2365b7954253a5

Authored by Thomas Gleixner
Committed by Thomas Gleixner
1 parent 7f8033b76c

clockevents: Allow build w/o run-tine usage for migration purposes

Migration aid to allow preparatory patches which introduce not yet
used parts of clock events code.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>

Showing 4 changed files with 14 additions and 4 deletions Side-by-side Diff

include/linux/clockchips.h
... ... @@ -8,7 +8,7 @@
8 8 #ifndef _LINUX_CLOCKCHIPS_H
9 9 #define _LINUX_CLOCKCHIPS_H
10 10  
11   -#ifdef CONFIG_GENERIC_CLOCKEVENTS
  11 +#ifdef CONFIG_GENERIC_CLOCKEVENTS_BUILD
12 12  
13 13 #include <linux/clocksource.h>
14 14 #include <linux/cpumask.h>
15 15  
16 16  
... ... @@ -126,9 +126,13 @@
126 126 extern int clockevents_program_event(struct clock_event_device *dev,
127 127 ktime_t expires, ktime_t now);
128 128  
  129 +#ifdef CONFIG_GENERIC_CLOCKEVENTS
129 130 extern void clockevents_notify(unsigned long reason, void *arg);
130   -
131 131 #else
  132 +# define clockevents_notify(reason, arg) do { } while (0)
  133 +#endif
  134 +
  135 +#else /* CONFIG_GENERIC_CLOCKEVENTS_BUILD */
132 136  
133 137 #define clockevents_notify(reason, arg) do { } while (0)
134 138  
... ... @@ -22,4 +22,9 @@
22 22 This option enables high resolution timer support. If your
23 23 hardware is not capable then this option only increases
24 24 the size of the kernel image.
  25 +
  26 +config GENERIC_CLOCKEVENTS_BUILD
  27 + bool
  28 + default y
  29 + depends on GENERIC_CLOCKEVENTS || GENERIC_CLOCKEVENTS_MIGR
kernel/time/Makefile
1 1 obj-y += timekeeping.o ntp.o clocksource.o jiffies.o timer_list.o
2 2  
3   -obj-$(CONFIG_GENERIC_CLOCKEVENTS) += clockevents.o
  3 +obj-$(CONFIG_GENERIC_CLOCKEVENTS_BUILD) += clockevents.o
4 4 obj-$(CONFIG_GENERIC_CLOCKEVENTS) += tick-common.o
5 5 obj-$(CONFIG_GENERIC_CLOCKEVENTS_BROADCAST) += tick-broadcast.o
6 6 obj-$(CONFIG_TICK_ONESHOT) += tick-oneshot.o
kernel/time/clockevents.c
... ... @@ -194,6 +194,7 @@
194 194 local_irq_restore(flags);
195 195 }
196 196  
  197 +#ifdef CONFIG_GENERIC_CLOCKEVENTS
197 198 /**
198 199 * clockevents_notify - notification about relevant events
199 200 */
... ... @@ -222,4 +223,5 @@
222 223 spin_unlock(&clockevents_lock);
223 224 }
224 225 EXPORT_SYMBOL_GPL(clockevents_notify);
  226 +#endif