Re: Nokia N900: Proper C-states
From: Tony Lindgren
Date: Tue Feb 09 2016 - 10:56:27 EST
* Daniel Lezcano <daniel.lezcano@xxxxxxxxxx> [160102 14:01]:
> On 01/02/2016 03:26 PM, Pali RohÃr wrote:
> >Hello,
> >
> >due to this Daniel Lezcano commit (ARM: OMAP3: cpuidle - remove rx51
> >cpuidle parameters table)
> >
> >https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=231900afba52d6faddfb480cde4132d4edc089bc
> >
> >we need patch cpuidle34xx.c code to fix commit for Nokia N900. See:
> >
> >https://github.com/pali/linux-n900/commit/e147fd4b678f1f3d7a5235287910960bd41e04dc
> >
> >As Nokia N900 code is converting from legacy board code to DST, I would
> >like to know how to patch correctly omap3_idle_driver in DTS with
> >correct values measured for Nokia N900. Thanks!
I'm almost certain those values are not n900 specific but should be
used for omap3430 in general.
> the conversion to the DT based arm cpuidle driver could be a bit complex
> with one issue (index 0 != cpu_do_idle()) and one performance regression
> (cpu_pm_enter/exit will be called in retention mode, even if this is not
> needed).
>
> It will result in a PM code only on one side and on the other side, the
> generic cpuidle-arm.c driver will be used instead with the DT definition. It
> is worth to the conversion because the result will be nice IMO.
>
> Added Lorenzo who is initially author of the arm generic driver. We already
> discussed in the past about those two issues above and I think this is
> something we should improve.
While this conversion process is going on, we could just add
omap3430_idle_driver and set that based on cpu_is_omap3430()
in omap3_idle_init().
This is assuming it really is 3430 specific. The only thing that
could potentially make it n900 specific is the fact that Nokia had
their own bootrom. But AFAIK these latencies are hardware specific
and should not be related to the bootrom.
Regards,
Tony