diff options
author | Stuart Menefy <stuart.menefy@mathembedded.com> | 2019-02-10 22:51:14 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-03-23 13:19:46 +0100 |
commit | c7a897a6c1b2d512c705ce29fa004544c5477e8e (patch) | |
tree | 31db2d35b42dd29e762f20a09d1cb81c56adb70a | |
parent | c83aa58ceae2d67776c2700f7d8f40320eba106f (diff) | |
download | linux-stable-c7a897a6c1b2d512c705ce29fa004544c5477e8e.tar.gz linux-stable-c7a897a6c1b2d512c705ce29fa004544c5477e8e.tar.bz2 linux-stable-c7a897a6c1b2d512c705ce29fa004544c5477e8e.zip |
clocksource/drivers/exynos_mct: Clear timer interrupt when shutdown
commit d2f276c8d3c224d5b493c42b6cf006ae4e64fb1c upstream.
When shutting down the timer, ensure that after we have stopped the
timer any pending interrupts are cleared. This fixes a problem when
suspending, as interrupts are disabled before the timer is stopped,
so the timer interrupt may still be asserted, preventing the system
entering a low power state when the wfi is executed.
Signed-off-by: Stuart Menefy <stuart.menefy@mathembedded.com>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: <stable@vger.kernel.org> # v4.3+
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/clocksource/exynos_mct.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/clocksource/exynos_mct.c b/drivers/clocksource/exynos_mct.c index 13bab972c827..fb0cf8b74516 100644 --- a/drivers/clocksource/exynos_mct.c +++ b/drivers/clocksource/exynos_mct.c @@ -411,6 +411,7 @@ static int set_state_shutdown(struct clock_event_device *evt) mevt = container_of(evt, struct mct_clock_event_device, evt); exynos4_mct_tick_stop(mevt); + exynos4_mct_tick_clear(mevt); return 0; } |