[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e3637f0f-1e72-db3a-f744-ade0e878cfc5@linaro.org>
Date: Mon, 11 Feb 2019 12:23:20 +0100
From: Daniel Lezcano <daniel.lezcano@...aro.org>
To: Marek Szyprowski <m.szyprowski@...sung.com>,
Stuart Menefy <stuart.menefy@...hembedded.com>,
linux-samsung-soc@...r.kernel.org,
Thomas Gleixner <tglx@...utronix.de>,
Kukjin Kim <kgene@...nel.org>,
Krzysztof Kozlowski <krzk@...nel.org>,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH 0/2] Subject: [PATCH 0/2] clocksource: exynos_mct: Clear
timer interrupt when shutting down
On 11/02/2019 08:14, Marek Szyprowski wrote:
> Hi Stuart
>
> On 2019-02-10 23:51, Stuart Menefy wrote:
>> When debugging suspend problems on Exynos 5260, I had a large number
>> of debugging prints going to the serial port after interrupts
>> had been disabled but before the timer interrupt was shutdown. This
>> was long enough for a timer tick to occur, but as interrupts were
>> disabled the ISR didn't run, and so the interrupt wasn't cleared.
>> Later when the timer was shutdown the interrupt was left asserted and
>> so the wfi at the heart of the suspend code didn't wait, causing
>> the suspend to fail.
>>
>> Currently the code which stops the timer when it is on one-shot mode
>> and the interrupt occurs is in exynos4_mct_tick_clear(), meaning if we
>> called this from the shutdown code exynos4_mct_tick_stop() could be
>> called twice. So first restructure the existing code, so the check for
>> one-shot mode and stopping the timer is moved to the ISR, leaving
>> exynos4_mct_tick_clear() just clearing the interrupt flag.
>>
>> Once this has been done simply call exynos4_mct_tick_clear() from
>> set_state_shutdown().
>
> This also fixes mysterious suspend failures on Odroid XU3/XU4/HC1 :)
>
> Tested-by: Marek Szyprowski <m.szyprowski@...sung.com>
Applied. Shall I add the stable@ tag?
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
Powered by blists - more mailing lists