|
@@ -284,7 +284,7 @@ out_bc:
|
|
|
*
|
|
|
* Called with interrupts disabled.
|
|
|
*/
|
|
|
-static void tick_handover_do_timer(int *cpup)
|
|
|
+void tick_handover_do_timer(int *cpup)
|
|
|
{
|
|
|
if (*cpup == tick_do_timer_cpu) {
|
|
|
int cpu = cpumask_first(cpu_online_mask);
|
|
@@ -301,7 +301,7 @@ static void tick_handover_do_timer(int *cpup)
|
|
|
* access the hardware device itself.
|
|
|
* We just set the mode and remove it from the lists.
|
|
|
*/
|
|
|
-static void tick_shutdown(unsigned int *cpup)
|
|
|
+void tick_shutdown(unsigned int *cpup)
|
|
|
{
|
|
|
struct tick_device *td = &per_cpu(tick_cpu_device, *cpup);
|
|
|
struct clock_event_device *dev = td->evtdev;
|
|
@@ -319,14 +319,14 @@ static void tick_shutdown(unsigned int *cpup)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-static void tick_suspend(void)
|
|
|
+void tick_suspend(void)
|
|
|
{
|
|
|
struct tick_device *td = &__get_cpu_var(tick_cpu_device);
|
|
|
|
|
|
clockevents_shutdown(td->evtdev);
|
|
|
}
|
|
|
|
|
|
-static void tick_resume(void)
|
|
|
+void tick_resume(void)
|
|
|
{
|
|
|
struct tick_device *td = &__get_cpu_var(tick_cpu_device);
|
|
|
int broadcast = tick_resume_broadcast();
|
|
@@ -341,48 +341,6 @@ static void tick_resume(void)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-/*
|
|
|
- * Called with clockevents_lock held and interrupts disabled
|
|
|
- */
|
|
|
-void tick_notify(unsigned long reason, void *dev)
|
|
|
-{
|
|
|
- switch (reason) {
|
|
|
-
|
|
|
- case CLOCK_EVT_NOTIFY_BROADCAST_ON:
|
|
|
- case CLOCK_EVT_NOTIFY_BROADCAST_OFF:
|
|
|
- case CLOCK_EVT_NOTIFY_BROADCAST_FORCE:
|
|
|
- tick_broadcast_on_off(reason, dev);
|
|
|
- break;
|
|
|
-
|
|
|
- case CLOCK_EVT_NOTIFY_BROADCAST_ENTER:
|
|
|
- case CLOCK_EVT_NOTIFY_BROADCAST_EXIT:
|
|
|
- tick_broadcast_oneshot_control(reason);
|
|
|
- break;
|
|
|
-
|
|
|
- case CLOCK_EVT_NOTIFY_CPU_DYING:
|
|
|
- tick_handover_do_timer(dev);
|
|
|
- break;
|
|
|
-
|
|
|
- case CLOCK_EVT_NOTIFY_CPU_DEAD:
|
|
|
- tick_shutdown_broadcast_oneshot(dev);
|
|
|
- tick_shutdown_broadcast(dev);
|
|
|
- tick_shutdown(dev);
|
|
|
- break;
|
|
|
-
|
|
|
- case CLOCK_EVT_NOTIFY_SUSPEND:
|
|
|
- tick_suspend();
|
|
|
- tick_suspend_broadcast();
|
|
|
- break;
|
|
|
-
|
|
|
- case CLOCK_EVT_NOTIFY_RESUME:
|
|
|
- tick_resume();
|
|
|
- break;
|
|
|
-
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
/**
|
|
|
* tick_init - initialize the tick control
|
|
|
*/
|