mirror of https://lore.kernel.org/linux-amlogic/
 help / color / mirror / Atom feed
* Follow-up: How to deal with weird SCPI firmware and invalid DVFS frequencies
@ 2017-10-05 20:32 Heiner Kallweit
  2017-10-06 15:33 ` Sudeep Holla
  0 siblings, 1 reply; 2+ messages in thread
From: Heiner Kallweit @ 2017-10-05 20:32 UTC (permalink / raw)
  To: linus-amlogic

Few months ago we discussed how to deal with the Amlogic Meson SCPI
DVFS cpu frequencies. To recap:
SCPI DVFS provides some high frequencies which are usable only if
just one CPU core is used. Else the system will just crash
(even w/o being thermally loaded).

See also:
https://patchwork.kernel.org/patch/9557349/
https://patchwork.kernel.org/patch/9555761/

One idea was to introduce a DT param for the CPU nodes to configure
a max frequency, and all DVFS freq's above this threashold would be
ignored. However we didn't come to an agreement.

Now, when dealing with SCPI again, another idea came to my mind:
Still it would be about introducing such a DT parameter, however
we would not completely ignore higher frequencies but just set
the "turbo" flag of the opp.
This way cpufreq would ignore these frequencies, however we still
had the option to manually enable these frequencies via sysfs and
use them on systems where just one CPU core is used.
(or more general: manually enable the boost frequencies if system
macthes certain criteria)

Does this sound better or would you still consider this to be too
hacky?

Rgds, Heiner

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Follow-up: How to deal with weird SCPI firmware and invalid DVFS frequencies
  2017-10-05 20:32 Follow-up: How to deal with weird SCPI firmware and invalid DVFS frequencies Heiner Kallweit
@ 2017-10-06 15:33 ` Sudeep Holla
  0 siblings, 0 replies; 2+ messages in thread
From: Sudeep Holla @ 2017-10-06 15:33 UTC (permalink / raw)
  To: linus-amlogic



On 05/10/17 21:32, Heiner Kallweit wrote:
> Few months ago we discussed how to deal with the Amlogic Meson SCPI
> DVFS cpu frequencies. To recap:
> SCPI DVFS provides some high frequencies which are usable only if
> just one CPU core is used. Else the system will just crash
> (even w/o being thermally loaded).
>

It simply can't be solved in kernel. The SCP firmware is the only place
where you can sanely solve the issue.

IIUC this system uses PSCI for CPU ON/OFF/SUSPEND. Even if you manage to
track CPU state in Linux, you simply can't manage what's happening in
higher exceptions(EL3 in this case). Some another CPU can brought/woken
up when Linux has set highest OPP, the system will still crash.

IMO, this can't be solved just in Linux alone that's impossible because
of the races I mentioned above.It should be solved it in the firmware.
I know the standard issue there is that you can't change the firmware.
But that's not a reason to create unusable system ever after adding lots
of code to deal with that in Linux as Linux is not in full control of this.

SCP is the one bringing/waking up other cores and can workaround this
issueby dropping the OPP when it's about to bring/wakeup second core.

> See also:
> https://patchwork.kernel.org/patch/9557349/
> https://patchwork.kernel.org/patch/9555761/
> 
> One idea was to introduce a DT param for the CPU nodes to configure
> a max frequency, and all DVFS freq's above this threashold would be
> ignored. However we didn't come to an agreement.
> 

NAK for that idea for reasons given above.

> Now, when dealing with SCPI again, another idea came to my mind:
> Still it would be about introducing such a DT parameter, however
> we would not completely ignore higher frequencies but just set
> the "turbo" flag of the opp.
> This way cpufreq would ignore these frequencies, however we still
> had the option to manually enable these frequencies via sysfs and
> use them on systems where just one CPU core is used.> (or more > general: manually enable the boost frequencies if system
> macthes certain criteria)
> 
> Does this sound better or would you still consider this to be too
> hacky?
> 

Unfortunately still hacky and yet not complete solution as it just
renders unstable system. System with reduced performance is better
compared to unstable system :)

-- 
Regards,
Sudeep

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-10-06 15:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-05 20:32 Follow-up: How to deal with weird SCPI firmware and invalid DVFS frequencies Heiner Kallweit
2017-10-06 15:33 ` Sudeep Holla

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®