aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAchin Gupta <achin.gupta@arm.com>2013-11-05 11:10:38 +0000
committerDan Handley <dan.handley@arm.com>2013-12-05 12:28:50 +0000
commit2d94d4a0bea2c2419efda7fdd821542f6c0bff4b (patch)
tree6ff3e18b16c9f8022b9a3af0d906f0ac326d7baf
parentc2b43afc547b390d0b45aae0802af0479edaf0e5 (diff)
remove check on non-secure entrypoint parameter
In fvp_affinst_on/suspend, the non-secure entrypoint is always expected to lie in the DRAM. This check will not be valid if non-secure code executes directly out of flash e.g. a baremetal test. This patch removes this check. Change-Id: I0436e1138fc394aae8ff1ea59ebe38b46a440b61
-rw-r--r--docs/change-log.md3
-rw-r--r--plat/fvp/fvp_pm.c12
2 files changed, 3 insertions, 12 deletions
diff --git a/docs/change-log.md b/docs/change-log.md
index 8be7a51..5a9bdb3 100644
--- a/docs/change-log.md
+++ b/docs/change-log.md
@@ -56,6 +56,9 @@ Detailed changes since last release
is powered on, if a non zero context id parameter was passed in the PSCI
CPU_ON and CPU_SUSPEND api calls has been corrected.
+* A restriction in the FVP code which did not allow the non-secure entrypoint
+ to lie outside the DRAM has been removed.
+
ARM Trusted Firmware - version 0.2
==================================
diff --git a/plat/fvp/fvp_pm.c b/plat/fvp/fvp_pm.c
index 658a285..d3abe1d 100644
--- a/plat/fvp/fvp_pm.c
+++ b/plat/fvp/fvp_pm.c
@@ -58,11 +58,6 @@ int fvp_affinst_on(unsigned long mpidr,
mailbox *fvp_mboxes;
unsigned int psysr;
- if (ns_entrypoint < DRAM_BASE) {
- rc = PSCI_E_INVALID_PARAMS;
- goto exit;
- }
-
/*
* It's possible to turn on only affinity level 0 i.e. a cpu
* on the FVP. Ignore any other affinity level.
@@ -193,12 +188,6 @@ int fvp_affinst_suspend(unsigned long mpidr,
unsigned long cpu_setup, cci_setup, linear_id;
mailbox *fvp_mboxes;
- /* Cannot allow NS world to execute trusted firmware code */
- if (ns_entrypoint < DRAM_BASE) {
- rc = PSCI_E_INVALID_PARAMS;
- goto exit;
- }
-
switch (afflvl) {
case MPIDR_AFFLVL1:
if (state == PSCI_STATE_OFF) {
@@ -260,7 +249,6 @@ int fvp_affinst_suspend(unsigned long mpidr,
assert(0);
}
-exit:
return rc;
}