aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntonio Nino Diaz <antonio.ninodiaz@arm.com>2018-07-14 01:22:43 +0100
committerAntonio Nino Diaz <antonio.ninodiaz@arm.com>2018-07-16 15:56:42 +0100
commit6297d6feb0117d2c680e5d4f17dc1857a02ad217 (patch)
tree50fc3a88e3a5ab6b7bece70a7889cca47e3e8682
parent1aad932ce684ec0586bd272f6080b0ef970a2d61 (diff)
downloadplatform_external_arm-trusted-firmware-6297d6feb0117d2c680e5d4f17dc1857a02ad217.tar.gz
platform_external_arm-trusted-firmware-6297d6feb0117d2c680e5d4f17dc1857a02ad217.tar.bz2
platform_external_arm-trusted-firmware-6297d6feb0117d2c680e5d4f17dc1857a02ad217.zip
rpi3: Fix warm entrypoint setup for PSCI_CPU_ON
Remove unused variable and set the secure entrypoint correctly. Change-Id: I7447ea62771092de6be35704077ae28c519d6993 Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
-rw-r--r--plat/rpi3/include/platform_def.h2
-rw-r--r--plat/rpi3/rpi3_pm.c10
2 files changed, 4 insertions, 8 deletions
diff --git a/plat/rpi3/include/platform_def.h b/plat/rpi3/include/platform_def.h
index 5b84aa617..52b06b4b8 100644
--- a/plat/rpi3/include/platform_def.h
+++ b/plat/rpi3/include/platform_def.h
@@ -117,9 +117,11 @@
*/
#define PLAT_RPI3_TRUSTED_MAILBOX_BASE SHARED_RAM_BASE
+/* The secure entry point to be used on warm reset by all CPUs. */
#define PLAT_RPI3_TM_ENTRYPOINT PLAT_RPI3_TRUSTED_MAILBOX_BASE
#define PLAT_RPI3_TM_ENTRYPOINT_SIZE ULL(8)
+/* Hold entries for each CPU. */
#define PLAT_RPI3_TM_HOLD_BASE (PLAT_RPI3_TM_ENTRYPOINT + \
PLAT_RPI3_TM_ENTRYPOINT_SIZE)
#define PLAT_RPI3_TM_HOLD_ENTRY_SIZE ULL(8)
diff --git a/plat/rpi3/rpi3_pm.c b/plat/rpi3/rpi3_pm.c
index 96948580e..b6adc8a53 100644
--- a/plat/rpi3/rpi3_pm.c
+++ b/plat/rpi3/rpi3_pm.c
@@ -15,11 +15,6 @@
#include "rpi3_hw.h"
-/*
- * The secure entry point to be used on warm reset.
- */
-static uintptr_t secure_entrypoint;
-
/* Make composite power state parameter till power level 0 */
#if PSCI_EXTENDED_STATE_ID
@@ -220,10 +215,9 @@ static const plat_psci_ops_t plat_rpi3_psci_pm_ops = {
int plat_setup_psci_ops(uintptr_t sec_entrypoint,
const plat_psci_ops_t **psci_ops)
{
- uintptr_t *mailbox = (void *)PLAT_RPI3_TRUSTED_MAILBOX_BASE;
+ uintptr_t *entrypoint = (void *) PLAT_RPI3_TM_ENTRYPOINT;
- *mailbox = sec_entrypoint;
- secure_entrypoint = (uintptr_t)sec_entrypoint;
+ *entrypoint = sec_entrypoint;
*psci_ops = &plat_rpi3_psci_pm_ops;
return 0;