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: Francesco M. Virlinzi <francesco.virlinzi@st.com>
Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
Francesco VIRLINZI 2008-10-15 11:58:24 +02:00 committed by Paul Mundt
parent 10840f034e
commit 2cd0ebc83d

View File

@ -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);