clocksource/cadence_ttc: Call clockevents_update_freq() with IRQs enabled
The timer core takes care of serialization and IRQs. Hence the driver is no longer required to disable interrupts when calling clockevents_update_freq(). Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Acked-by: Michal Simek <michal.simek@xilinx.com>
This commit is contained in:
Родитель
fd3f1270d2
Коммит
5f0ba3b462
|
@ -321,25 +321,12 @@ static int ttc_rate_change_clockevent_cb(struct notifier_block *nb,
|
|||
|
||||
switch (event) {
|
||||
case POST_RATE_CHANGE:
|
||||
{
|
||||
unsigned long flags;
|
||||
|
||||
/*
|
||||
* clockevents_update_freq should be called with IRQ disabled on
|
||||
* the CPU the timer provides events for. The timer we use is
|
||||
* common to both CPUs, not sure if we need to run on both
|
||||
* cores.
|
||||
*/
|
||||
local_irq_save(flags);
|
||||
clockevents_update_freq(&ttcce->ce,
|
||||
ndata->new_rate / PRESCALE);
|
||||
local_irq_restore(flags);
|
||||
|
||||
/* update cached frequency */
|
||||
ttc->freq = ndata->new_rate;
|
||||
|
||||
clockevents_update_freq(&ttcce->ce, ndata->new_rate / PRESCALE);
|
||||
|
||||
/* fall through */
|
||||
}
|
||||
case PRE_RATE_CHANGE:
|
||||
case ABORT_RATE_CHANGE:
|
||||
default:
|
||||
|
|
Загрузка…
Ссылка в новой задаче