Validate power_state and entrypoint when executing PSCI calls
This patch allows the platform to validate the power_state and entrypoint information from the normal world early on in PSCI calls so that we can return the error safely. New optional pm_ops hooks `validate_power_state` and `validate_ns_entrypoint` are introduced to do this. As a result of these changes, all the other pm_ops handlers except the PSCI_ON handler are expected to be successful. Also, the PSCI implementation will now assert if a PSCI API is invoked without the corresponding pm_ops handler being registered by the platform. NOTE : PLATFORM PORTS WILL BREAK ON MERGE OF THIS COMMIT. The pm hooks have 2 additional optional callbacks and the return type of the other hooks have changed. Fixes ARM-Software/tf-issues#229 Change-Id: I036bc0cff2349187c7b8b687b9ee0620aa7e24dc
WIP_v2.3-LS
master
v2.2-LS
v2.4-LS
v2.3-rc2
v2.3-rc1
v2.3-rc0
v2.3
v2.2-rc2
v2.2-rc1
v2.2-rc0
v2.2
v2.1-rc1
v2.1-rc0
v2.1
v2.0-rc0
v2.0
v1.6-rc1
v1.6-rc0
v1.6
v1.5-rc3
v1.5-rc2
v1.5-rc1
v1.5-rc0
v1.5
v1.4-rc0
v1.4
v1.3_rc2
v1.3_rc1
v1.3-rc0
v1.3
v1.2-rc0
v1.2
v1.1-rc3
v1.1-rc2
v1.1-rc1
v1.1-rc0
v1.1-Juno-0.1
v1.1
|
---|
|
docs/porting-guide.md |
---|
include/bl31/services/psci.h |
---|
plat/fvp/fvp_pm.c |
---|
plat/juno/plat_pm.c |
---|
services/std_svc/psci/psci_afflvl_off.c |
---|
services/std_svc/psci/psci_afflvl_on.c |
---|
services/std_svc/psci/psci_afflvl_suspend.c |
---|
services/std_svc/psci/psci_common.c |
---|
services/std_svc/psci/psci_main.c |
---|
services/std_svc/psci/psci_private.h |
---|