Commit 2cd0ebc8 authored by Francesco VIRLINZI's avatar Francesco VIRLINZI Committed by Paul Mundt

sh: Fixed the TMU0 reload value on resume

This patch fixes the TMU0 interrupt frequency on suspend/resume.
During the resume the kernel reprograms the TMU0.ClockEvent mode
but if the mode is periodic than the TMU0.TCOR is updated with
a random wrong value without taking care latest valid saved value.

There was no problem with No_HZ system where TMU0.TCOR isn't used.
Signed-off-by: default avatarFrancesco M. Virlinzi <francesco.virlinzi@st.com>
Signed-off-by: default avatarStuart Menefy <stuart.menefy@st.com>
Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent 10840f03
...@@ -120,7 +120,7 @@ static void tmu_set_mode(enum clock_event_mode mode, ...@@ -120,7 +120,7 @@ static void tmu_set_mode(enum clock_event_mode mode,
{ {
switch (mode) { switch (mode) {
case CLOCK_EVT_MODE_PERIODIC: case CLOCK_EVT_MODE_PERIODIC:
ctrl_outl(ctrl_inl(TMU0_TCNT), TMU0_TCOR); ctrl_outl(tmu_latest_interval[TMU0], TMU0_TCOR);
break; break;
case CLOCK_EVT_MODE_ONESHOT: case CLOCK_EVT_MODE_ONESHOT:
ctrl_outl(0, TMU0_TCOR); ctrl_outl(0, TMU0_TCOR);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment