[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ad09e651b944f56ddb167b20cd9995f6@agner.ch>
Date: Tue, 09 Jan 2018 14:22:45 +0100
From: Stefan Agner <stefan@...er.ch>
To: Dong Aisheng <dongas86@...il.com>
Cc: shawnguo@...nel.org, kernel@...gutronix.de, fabio.estevam@....com,
robh+dt@...nel.org, mark.rutland@....com,
linux-arm-kernel@...ts.infradead.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, Anson Huang <anson.huang@....com>,
linux-imx@....com
Subject: Re: [PATCH 1/7] ARM: imx: add timer stop flag to ARM power off state
On 2018-01-09 10:22, Dong Aisheng wrote:
> On Tue, Jan 02, 2018 at 05:42:17PM +0100, Stefan Agner wrote:
>> When the CPU is in ARM power off state the ARM architected
>> timers are stopped. The flag is already present in the higher
>> power WAIT mode.
>>
>> This allows to use the ARM generic timer on i.MX 6UL/6ULL SoC.
>> Without the flag the kernel freezes when the timer enters the
>> first time ARM power off mode.
>>
>> Cc: Anson Huang <anson.huang@....com>
>> Signed-off-by: Stefan Agner <stefan@...er.ch>
>
> It seems ok at my side.
> Did you meet the real issue? If yes, how to reproduce?
Enable the timer added with Patch 5, use a U-Boot with this patchset
applied:
https://www.mail-archive.com/u-boot@lists.denx.de/msg273287.html
And boot... For me it freezed somewhere early during systemd boot phase,
presumably the first time the CPU got into this idle mode.
--
Stefan
>
> Both mx6sx and mx6ul are using GPT which do not need that flag, suppose
> we should remove it, right?
> Anson can help confirm it.
>
> Regards
> Dong Aisheng
>
>> ---
>> arch/arm/mach-imx/cpuidle-imx6sx.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/arch/arm/mach-imx/cpuidle-imx6sx.c b/arch/arm/mach-imx/cpuidle-imx6sx.c
>> index c5a5c3a70ab1..d0f14b761ff7 100644
>> --- a/arch/arm/mach-imx/cpuidle-imx6sx.c
>> +++ b/arch/arm/mach-imx/cpuidle-imx6sx.c
>> @@ -89,6 +89,7 @@ static struct cpuidle_driver imx6sx_cpuidle_driver = {
>> */
>> .exit_latency = 300,
>> .target_residency = 500,
>> + .flags = CPUIDLE_FLAG_TIMER_STOP,
>> .enter = imx6sx_enter_wait,
>> .name = "LOW-POWER-IDLE",
>> .desc = "ARM power off",
>> --
>> 2.15.1
>>
Powered by blists - more mailing lists