Re: CPUIdle for Exynos5422 Odroid-XU3/XU4 boards.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[adding Kevin Hilman as cc who was also interested in CPUidle for Exynos]

Hello Krzysztof,

On 08/23/2015 03:26 AM, Krzysztof Kozlowski wrote:

[snip]

> 2015-08-21 16:21 GMT+09:00 Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>:
> 
> The big.LITTLE cpuidle driver is not a typical Exynos cpuidle driver.
> It only executes CPU suspend on a cluster which essentially is a power
> down operation.
>

You are correct, looking at the the big.LITTLE CPUidle driver I see that
it only has two C-states: C0 (normal WFI) and C1 (single CPU power-down)
which as you said, places the CPU into power-down mode by using the MCPM
infrastructure so it's basically a CPU suspend AFAIU.

So what you are saying is that there are deeper C-states supported by the
Exynos 542x SoC family but these are not handled by the b.L CPUidle driver.
 
> When we talk about cpuidle on Exynos, we have in mind one of sleep
> modes: AFTR or LPA (sometimes instead of LPA there is LPD or W-AFTR).
> Actually this is more like a system idle mode, not CPU idle. The power
> savings are much bigger than disabling only one cluster.
>

Interesting, I was not aware of AFTR and LPA but I looked in the manual now.
Thanks a lot for the information.

I see that the Exynos CPUidle driver (drivers/cpuidle/cpuidle-exynos.c) also
has only two C-states (WFI and C1) but C1 makes the system to enter in AFTR
(system-level power gating).

This is similar to what the downstream ChromiumOS 3.8 kernel CPUidle driver
does IIUC [0].

> So the question is still valid - whether someone wants or plans to
> implement cpuidle for Exynos 542x family. Odroid XU3 is not a priority
> here because energy consumption is not an issue there. This is not a
> mobile device.
>

That's true but it will be interesting for the 5420 and 5800 based
Chromebooks since optimizing power consumption would be useful there.

I thought that big.LITTLE platforms were encouraged to use the generic b.L
CPUidle driver just like DT platforms should use the generic CPUFreq DT
driver but I guess I misunderstood.

So the b.L CPUidle driver is only to have minimum CPUidle support but a SoC
specific driver is needed to fine tune and get most out of the platform?

Or should the b.L CPUidle driver be extended to add per platform C-states?

> Best regards,
> Krzysztof
>

[0]: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-3.8/arch/arm/mach-exynos/cpuidle.c

Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  Powered by Linux