Просмотр исходного кода

clocksource/drivers/timer-of: Add timer_of_exit function

The timer-of API does not provide a function to undo what has been done by
the timer_of_init() function.

Add a timer_of_exit() function.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Benjamin Gaignard 7 лет назад
Родитель
Сommit
f48729a999
2 измененных файлов с 15 добавлено и 0 удалено
  1. 12 0
      drivers/clocksource/timer-of.c
  2. 3 0
      drivers/clocksource/timer-of.h

+ 12 - 0
drivers/clocksource/timer-of.c

@@ -176,3 +176,15 @@ out_fail:
 		timer_base_exit(&to->of_base);
 	return ret;
 }
+
+void timer_of_exit(struct timer_of *to)
+{
+	if (to->flags & TIMER_OF_IRQ)
+		timer_irq_exit(&to->of_irq);
+
+	if (to->flags & TIMER_OF_CLOCK)
+		timer_clk_exit(&to->of_clk);
+
+	if (to->flags & TIMER_OF_BASE)
+		timer_base_exit(&to->of_base);
+}

+ 3 - 0
drivers/clocksource/timer-of.h

@@ -66,4 +66,7 @@ static inline unsigned long timer_of_period(struct timer_of *to)
 
 extern int __init timer_of_init(struct device_node *np,
 				struct timer_of *to);
+
+extern void timer_of_exit(struct timer_of *to);
+
 #endif