summaryrefslogtreecommitdiff
path: root/drivers/clocksource
diff options
context:
space:
mode:
authorLucas Stach <dev@lynxeye.de>2015-10-25 18:40:30 +0300
committerDaniel Lezcano <daniel.lezcano@linaro.org>2015-12-15 11:41:06 +0300
commita3a8908fb02bfa2514750734bfd3afc6c1daeb89 (patch)
tree94b5e6b4f2256ddd37543331c9705150bcd9cc7b /drivers/clocksource
parent11faa20eb43997baae0c72916d8a959efcb6f8c4 (diff)
downloadlinux-a3a8908fb02bfa2514750734bfd3afc6c1daeb89.tar.xz
clocksource/drivers/tegra: Allow timer irq affinity change
Allow the timer core to change the smp affinity of the broadcast timer irq by setting CLOCK_EVT_FEAT_DYNIRQ flag. This reduces interrupt pressure and wakeups on CPU0 as well as vastly reducing the number of timer broadcast IPIs. Signed-off-by: Lucas Stach <dev@lynxeye.de> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Diffstat (limited to 'drivers/clocksource')
-rw-r--r--drivers/clocksource/tegra20_timer.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/clocksource/tegra20_timer.c b/drivers/clocksource/tegra20_timer.c
index 6ebda1177e79..38333aba3055 100644
--- a/drivers/clocksource/tegra20_timer.c
+++ b/drivers/clocksource/tegra20_timer.c
@@ -96,7 +96,8 @@ static struct clock_event_device tegra_clockevent = {
.name = "timer0",
.rating = 300,
.features = CLOCK_EVT_FEAT_ONESHOT |
- CLOCK_EVT_FEAT_PERIODIC,
+ CLOCK_EVT_FEAT_PERIODIC |
+ CLOCK_EVT_FEAT_DYNIRQ,
.set_next_event = tegra_timer_set_next_event,
.set_state_shutdown = tegra_timer_shutdown,
.set_state_periodic = tegra_timer_set_periodic,