Thread (29 messages) 29 messages, 7 authors, 2020-02-10

Re: [PATCH v3 5/7] drivers: firmware: psci: Add hierarchical domain idle states converter

From: Ulf Hansson <hidden>
Date: 2020-02-05 15:55:55
Also in: linux-arm-msm, linux-pm, lkml

On Wed, 5 Feb 2020 at 15:06, Sudeep Holla [off-list ref] wrote:
On Wed, Feb 05, 2020 at 05:53:00PM +0530, Maulik Shah wrote:
quoted
On 2/4/2020 8:51 PM, Sudeep Holla wrote:
quoted
On Tue, Feb 04, 2020 at 10:22:42AM +0530, Maulik Shah wrote:
quoted
On 2/3/2020 10:38 PM, Sudeep Holla wrote:
quoted
On Mon, Feb 03, 2020 at 07:05:38PM +0530, Maulik Shah wrote:
quoted
From: Ulf Hansson <redacted>

If the hierarchical CPU topology is used, but the OS initiated mode isn't
supported, we need to rely solely on the regular cpuidle framework to
manage the idle state selection, rather than using genpd and its
governor.

For this reason, introduce a new PSCI DT helper function,
psci_dt_pm_domains_parse_states(), which parses and converts the
hierarchically described domain idle states from DT, into regular flattened
cpuidle states. The converted states are added to the existing cpuidle
driver's array of idle states, which make them available for cpuidle.
And what's the main motivation for this if OSI is not supported in the
firmware ?
Hi Sudeep,

Main motivation is to do last-man activities before the CPU cluster can
enter a deep idle state.
Details on those last-man activities will help the discussion. Basically
I am wondering what they are and why they need to done in OSPM ?
Hi Sudeep,

there are cases like,

Last cpu going to deepest idle mode need to lower various resoruce
requirements (for eg DDR freq).
In PC mode, only PSCI implementation knows the last man and there shouldn't
be any notion of it in OS. If you need it, you may need OSI. You are still
mixing up the things. NACK for any such approach, sorry.
Sudeep, I don't quite agree with your NACK to this. At least not yet. :-)

I do agree that the best suited solution seems to be OSI, as to
support this kind of SoC requirements.

However, if for some reason the PC mode is being used, we could still
allow Linux to control "last-man activities" as it knows what each CPU
has voted for when going idle. Yes, the PSCI FW decides in the end,
but that doesn't really matter. Or is there another technical reason
to why you object?

As a matter of fact, if we allow support for PC mode with
"last-man-activities", it would allow us to make a fair
performance/energy comparison between the two PSCI CPU suspend modes,
for the same SoC. I would be thrilled about looking into doing such
tests, I bet you are as well!?

Kind regards
Uffe

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help