aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAchin Gupta <achin.gupta@arm.com>2013-12-02 16:23:12 +0000
committerDan Handley <dan.handley@arm.com>2013-12-05 12:28:50 +0000
commit3140a9e5c7d524eb1ea1648ae7c26e61fe7d740c (patch)
tree185f44232a24972a0e0f2ff7c560c691161d4582
parent2d94d4a0bea2c2419efda7fdd821542f6c0bff4b (diff)
downloadarm-trusted-firmware-3140a9e5c7d524eb1ea1648ae7c26e61fe7d740c.tar.gz
psci: rework cpu_off assertion and minor cleanups
This patch: 1. removes a duplicate assertion to check that the only error condition that can be returned while turning a cpu off is PSCI_E_DENIED. Having this assertion after calling psci_afflvl_off() is sufficient. 2. corrects some incorrect usage of 'its' vs 'it is' 3. removes some unwanted white spaces Change-Id: Icf014e269b54f5be5ce0b9fbe6b41258e4ebf403
-rw-r--r--common/psci/psci_afflvl_off.c11
-rw-r--r--common/psci/psci_afflvl_on.c2
-rw-r--r--common/psci/psci_afflvl_suspend.c8
-rw-r--r--common/psci/psci_common.c10
-rw-r--r--common/psci/psci_main.c8
-rw-r--r--include/runtime_svc.h2
6 files changed, 16 insertions, 25 deletions
diff --git a/common/psci/psci_afflvl_off.c b/common/psci/psci_afflvl_off.c
index fea2b7e..b62ae29 100644
--- a/common/psci/psci_afflvl_off.c
+++ b/common/psci/psci_afflvl_off.c
@@ -91,13 +91,6 @@ static int psci_afflvl0_off(unsigned long mpidr, aff_map_node *cpu_node)
plat_state);
}
- /*
- * The only error cpu_off can return is E_DENIED. So check if that's
- * indeed the case. The caller will simply 'eret' in case of an error.
- */
- if (rc != PSCI_E_SUCCESS)
- assert(rc == PSCI_E_DENIED);
-
return rc;
}
@@ -123,7 +116,7 @@ static int psci_afflvl1_off(unsigned long mpidr, aff_map_node *cluster_node)
dcsw_op_all(DCCISW);
/*
- * Plat. Management. Allow the platform to do it's cluster
+ * Plat. Management. Allow the platform to do its cluster
* specific bookeeping e.g. turn off interconnect coherency,
* program the power controller etc.
*/
@@ -152,7 +145,7 @@ static int psci_afflvl2_off(unsigned long mpidr, aff_map_node *system_node)
/* No arch. and generic bookeeping to do here currently */
/*
- * Plat. Management : Allow the platform to do it's bookeeping
+ * Plat. Management : Allow the platform to do its bookeeping
* at this affinity level
*/
if (psci_plat_pm_ops->affinst_off)
diff --git a/common/psci/psci_afflvl_on.c b/common/psci/psci_afflvl_on.c
index c118cab..81d46bf 100644
--- a/common/psci/psci_afflvl_on.c
+++ b/common/psci/psci_afflvl_on.c
@@ -333,7 +333,7 @@ static unsigned int psci_afflvl0_on_finish(unsigned long mpidr,
/*
* Generic management: Now we just need to retrieve the
* information that we had stashed away during the cpu_on
- * call to set this cpu on it's way. First get the index
+ * call to set this cpu on its way. First get the index
* for restoring the re-entry info
*/
index = cpu_node->data;
diff --git a/common/psci/psci_afflvl_suspend.c b/common/psci/psci_afflvl_suspend.c
index 05b0aad..810075b 100644
--- a/common/psci/psci_afflvl_suspend.c
+++ b/common/psci/psci_afflvl_suspend.c
@@ -153,7 +153,7 @@ static int psci_afflvl1_suspend(unsigned long mpidr,
dcsw_op_all(DCCISW);
/*
- * Plat. Management. Allow the platform to do it's cluster
+ * Plat. Management. Allow the platform to do its cluster
* specific bookeeping e.g. turn off interconnect coherency,
* program the power controller etc.
*/
@@ -166,7 +166,6 @@ static int psci_afflvl1_suspend(unsigned long mpidr,
* platform handler prototype the same.
*/
psci_entrypoint = (unsigned long) psci_aff_suspend_finish_entry;
-
rc = psci_plat_pm_ops->affinst_suspend(mpidr,
psci_entrypoint,
ns_entrypoint,
@@ -198,7 +197,7 @@ static int psci_afflvl2_suspend(unsigned long mpidr,
plat_state = psci_get_aff_phys_state(system_node);
/*
- * Plat. Management : Allow the platform to do it's bookeeping
+ * Plat. Management : Allow the platform to do its bookeeping
* at this affinity level
*/
if (psci_plat_pm_ops->affinst_suspend) {
@@ -210,7 +209,6 @@ static int psci_afflvl2_suspend(unsigned long mpidr,
* platform handler prototype the same.
*/
psci_entrypoint = (unsigned long) psci_aff_suspend_finish_entry;
-
rc = psci_plat_pm_ops->affinst_suspend(mpidr,
psci_entrypoint,
ns_entrypoint,
@@ -387,7 +385,7 @@ static unsigned int psci_afflvl0_suspend_finish(unsigned long mpidr,
/*
* Generic management: Now we just need to retrieve the
* information that we had stashed away during the suspend
- * call to set this cpu on it's way.
+ * call to set this cpu on its way.
*/
psci_get_ns_entry_info(index);
diff --git a/common/psci/psci_common.c b/common/psci/psci_common.c
index 8eb0213..ba0a379 100644
--- a/common/psci/psci_common.c
+++ b/common/psci/psci_common.c
@@ -196,7 +196,7 @@ int psci_change_state(unsigned long mpidr,
/*******************************************************************************
* This routine does the heavy lifting for psci_change_state(). It examines the
* state of each affinity instance at the next lower affinity level and decides
- * it's final state accordingly. If a lower affinity instance is ON then the
+ * its final state accordingly. If a lower affinity instance is ON then the
* higher affinity instance is ON. If all the lower affinity instances are OFF
* then the higher affinity instance is OFF. If atleast one lower affinity
* instance is SUSPENDED then the higher affinity instance is SUSPENDED. If only
@@ -210,7 +210,7 @@ unsigned int psci_calculate_affinity_state(aff_map_node *aff_node)
unsigned long tempidr;
aff_map_node *lo_aff_node;
- /* Cannot calculate lowest affinity state. It's simply assigned */
+ /* Cannot calculate lowest affinity state. It is simply assigned */
assert(aff_node->level > MPIDR_AFFLVL0);
/*
@@ -248,7 +248,7 @@ unsigned int psci_calculate_affinity_state(aff_map_node *aff_node)
/*
* At least one X-1 needs to be suspended for X to be suspended
- * but it's effectively on for the affinity_info call.
+ * but it is effectively on for the affinity_info call.
* SUSPEND > ON_PENDING > OFF.
*/
case PSCI_STATE_SUSPEND:
@@ -424,8 +424,8 @@ int psci_set_ns_entry_info(unsigned int index,
/*******************************************************************************
* An affinity level could be on, on_pending, suspended or off. These are the
- * logical states it can be in. Physically either it's off or on. When it's in
- * the state on_pending then it's about to be turned on. It's not possible to
+ * logical states it can be in. Physically either it is off or on. When it is in
+ * the state on_pending then it is about to be turned on. It is not possible to
* tell whether that's actually happenned or not. So we err on the side of
* caution & treat the affinity level as being turned off.
******************************************************************************/
diff --git a/common/psci/psci_main.c b/common/psci/psci_main.c
index b1aa899..fbf864b 100644
--- a/common/psci/psci_main.c
+++ b/common/psci/psci_main.c
@@ -122,9 +122,11 @@ int psci_cpu_off(void)
*/
rc = psci_afflvl_off(mpidr, target_afflvl, MPIDR_AFFLVL0);
- if (rc != PSCI_E_SUCCESS) {
- assert(rc == PSCI_E_DENIED);
- }
+ /*
+ * The only error cpu_off can return is E_DENIED. So check if that's
+ * indeed the case.
+ */
+ assert (rc == PSCI_E_SUCCESS || rc == PSCI_E_DENIED);
return rc;
}
diff --git a/include/runtime_svc.h b/include/runtime_svc.h
index 61c2d27..8fb5f4d 100644
--- a/include/runtime_svc.h
+++ b/include/runtime_svc.h
@@ -171,6 +171,4 @@ CASSERT(GPREGS_FP_OFF == __builtin_offsetof(gp_regs, fp), \
extern void runtime_svc_init(unsigned long mpidr);
#endif /*__ASSEMBLY__*/
-
-
#endif /* __RUNTIME_SVC_H__ */