aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorVarun Wadekar <vwadekar@nvidia.com>2018-06-25 11:36:47 -0700
committerVarun Wadekar <vwadekar@nvidia.com>2018-09-04 17:33:56 -0700
commitcf3ed0dcc7127e6e554ca14fc4c07dcfabb5dc8d (patch)
tree8272aa0347f110d04a1cb4acb99e5e4dc1a6cdef /lib
parent1593cae46e03eda613d50a0e1702729fbef9f79e (diff)
downloadplatform_external_arm-trusted-firmware-cf3ed0dcc7127e6e554ca14fc4c07dcfabb5dc8d.tar.gz
platform_external_arm-trusted-firmware-cf3ed0dcc7127e6e554ca14fc4c07dcfabb5dc8d.tar.bz2
platform_external_arm-trusted-firmware-cf3ed0dcc7127e6e554ca14fc4c07dcfabb5dc8d.zip
cpus: denver: reset power state to 'C1' on boot
Denver CPUs expect the power state field to be reset to 'C1' during boot. This patch updates the reset handler to reset the ACTLR_.PMSTATE field to 'C1' state during CPU boot. Change-Id: I7cb629627a4dd1a30ec5cbb3a5e90055244fe30c Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/cpus/aarch64/denver.S9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/cpus/aarch64/denver.S b/lib/cpus/aarch64/denver.S
index caf74d7b9..c873f2e3e 100644
--- a/lib/cpus/aarch64/denver.S
+++ b/lib/cpus/aarch64/denver.S
@@ -237,6 +237,15 @@ func denver_reset_func
#endif
/* ----------------------------------------------------
+ * Reset ACTLR.PMSTATE to C1 state
+ * ----------------------------------------------------
+ */
+ mrs x0, actlr_el1
+ bic x0, x0, #DENVER_CPU_PMSTATE_MASK
+ orr x0, x0, #DENVER_CPU_PMSTATE_C1
+ msr actlr_el1, x0
+
+ /* ----------------------------------------------------
* Enable dynamic code optimizer (DCO)
* ----------------------------------------------------
*/