* Re: [PATCH] clk: ti: clkctrl: Fix failed to enable error with double udelay timeout
[not found] ` <20191010140519.GV5610@atomide.com>
@ 2019-10-24 8:00 ` Tero Kristo
0 siblings, 0 replies; 2+ messages in thread
From: Tero Kristo @ 2019-10-24 8:00 UTC (permalink / raw)
To: Tony Lindgren, Keerthy
Cc: Michael Turquette, Stephen Boyd, devicetree, linux-clk, linux-omap
On 10/10/2019 17:05, Tony Lindgren wrote:
> * Keerthy <j-keerthy@ti.com> [191007 00:57]:
>>
>>
>> On 30/09/19 9:10 PM, Tony Lindgren wrote:
>>> Commit 3d8598fb9c5a ("clk: ti: clkctrl: use fallback udelay approach if
>>> timekeeping is suspended") added handling for cases when timekeeping is
>>> suspended. But looks like we can still get occasional "failed to enable"
>>> errors on the PM runtime resume path with udelay() returning faster than
>>> expected.
>>>
>>> With ti-sysc interconnect target module driver this leads into device
>>> failure with PM runtime failing with "failed to enable" clkctrl error.
>>>
>>> Let's fix the issue with a delay of two times the desired delay as in
>>> often done for udelay() to account for the inaccuracy.
>>
>> Tested for DS0 and rtc+ddr modes on am43 and ds0 on am33.
>>
>> Tested-by: Keerthy <j-keerthy@ti.com>
>
> Thanks for testing. This one should be applied into v5.4-rc series
> please if no more comments.
Queued up for 5.4 fixes, thanks.
-Tero
>
> Regards,
>
> Tony
>
>>> Fixes: 3d8598fb9c5a ("clk: ti: clkctrl: use fallback udelay approach if timekeeping is suspended")
>>> Cc: Keerthy <j-keerthy@ti.com>
>>> Cc: Tero Kristo <t-kristo@ti.com>
>>> Signed-off-by: Tony Lindgren <tony@atomide.com>
>>> ---
>>> drivers/clk/ti/clkctrl.c | 5 +++--
>>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/clk/ti/clkctrl.c b/drivers/clk/ti/clkctrl.c
>>> --- a/drivers/clk/ti/clkctrl.c
>>> +++ b/drivers/clk/ti/clkctrl.c
>>> @@ -100,11 +100,12 @@ static bool _omap4_is_timeout(union omap4_timeout *time, u32 timeout)
>>> * can be from a timer that requires pm_runtime access, which
>>> * will eventually bring us here with timekeeping_suspended,
>>> * during both suspend entry and resume paths. This happens
>>> - * at least on am43xx platform.
>>> + * at least on am43xx platform. Account for flakeyness
>>> + * with udelay() by multiplying the timeout value by 2.
>>> */
>>> if (unlikely(_early_timeout || timekeeping_suspended)) {
>>> if (time->cycles++ < timeout) {
>>> - udelay(1);
>>> + udelay(1 * 2);
>>> return false;
>>> }
>>> } else {
>>>
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] clk: ti: clkctrl: Fix failed to enable error with double udelay timeout
[not found] <20190930154001.46581-1-tony@atomide.com>
[not found] ` <93a6448d-cece-a903-5c7e-ade793d62063@ti.com>
@ 2019-11-04 17:57 ` Stephen Boyd
1 sibling, 0 replies; 2+ messages in thread
From: Stephen Boyd @ 2019-11-04 17:57 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Tero Kristo, Tony Lindgren
Cc: devicetree, linux-clk, linux-omap, Keerthy
Quoting Tony Lindgren (2019-09-30 08:40:01)
> Commit 3d8598fb9c5a ("clk: ti: clkctrl: use fallback udelay approach if
> timekeeping is suspended") added handling for cases when timekeeping is
> suspended. But looks like we can still get occasional "failed to enable"
> errors on the PM runtime resume path with udelay() returning faster than
> expected.
>
> With ti-sysc interconnect target module driver this leads into device
> failure with PM runtime failing with "failed to enable" clkctrl error.
>
> Let's fix the issue with a delay of two times the desired delay as in
> often done for udelay() to account for the inaccuracy.
>
> Fixes: 3d8598fb9c5a ("clk: ti: clkctrl: use fallback udelay approach if timekeeping is suspended")
> Cc: Keerthy <j-keerthy@ti.com>
> Cc: Tero Kristo <t-kristo@ti.com>
> Signed-off-by: Tony Lindgren <tony@atomide.com>
> ---
Applied to clk-fixes
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-11-04 17:57 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20190930154001.46581-1-tony@atomide.com>
[not found] ` <93a6448d-cece-a903-5c7e-ade793d62063@ti.com>
[not found] ` <20191010140519.GV5610@atomide.com>
2019-10-24 8:00 ` [PATCH] clk: ti: clkctrl: Fix failed to enable error with double udelay timeout Tero Kristo
2019-11-04 17:57 ` Stephen Boyd
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).