Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 4b2c1e0e authored by Mahesh Sivasubramanian's avatar Mahesh Sivasubramanian
Browse files

msm: spm: Support cold booting cpus in a different cluster



When a cpu in another cluster is cold-booted, the cluster could be two
different states described below. This patch identifies the state of the
cluster and performs the necessary voltage and configurations.

1) All cores in the cluster are in reset. To enable the higher level cluster
to enter low power mode, when all cores are in reset, the Q2S of the cluster
L2 has to be configured for legacy low power mode. When the L2 is configured
as such, it initiates a handshake with the SPM and it indefinitely waits for
an interrupt. Any PMIC requests that are made through the SPM end up in a
waiting state because the PMIC and low power state machines are mutually
exclusive. In these cases, disable Q2S so the low power state machine isn't
triggered and SPM can handle any VCTL requests.

2) One of the cpus in cluster was cold booted using step 1 and the cluster has
entered a low power mode as a part of idle/hotplug. The L2 of the cluster
needs to be brought out of the reset before releasing the core from reset.L2
is woken out sleep by toggling a secure chicken bit before bringing the core
out of reset.

Change-Id: Ie8da36c1341b03a26a2621250402321c9376f324
Signed-off-by: default avatarMahesh Sivasubramanian <msivasub@codeaurora.org>
Signed-off-by: default avatarRohit Vaswani <rvaswani@codeaurora.org>
Signed-off-by: default avatarPraveen Chidambaram <pchidamb@codeaurora.org>
parent 384894c9
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment