summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authordanh-arm <dan.handley@arm.com>2016-09-19 11:55:56 +0100
committerGitHub <noreply@github.com>2016-09-19 11:55:56 +0100
commit7a1b2794307bf18cdea975b8897f8cd7e0579fc9 (patch)
treeca6d2abfb9315c407c7dddb303c43a673ad447ee /docs
parent368d4ebfc1682bfeea1057f7f37c23ca531e9e91 (diff)
parent3cc17aae72287b993bcb2b626d7715ff9ed77790 (diff)
Merge pull request #702 from jeenu-arm/psci-node-hw-state
Support for PSCI NODE_HW_STATE
Diffstat (limited to 'docs')
-rw-r--r--docs/firmware-design.md2
-rw-r--r--docs/porting-guide.md14
2 files changed, 15 insertions, 1 deletions
diff --git a/docs/firmware-design.md b/docs/firmware-design.md
index 68cad2e3..90ce4b1b 100644
--- a/docs/firmware-design.md
+++ b/docs/firmware-design.md
@@ -716,7 +716,7 @@ required support.
|`PSCI_FEATURES` | Yes | |
|`CPU_FREEZE` | No | |
|`CPU_DEFAULT_SUSPEND` | No | |
-|`CPU_HW_STATE` | No | |
+|`NODE_HW_STATE` | Yes* | |
|`SYSTEM_SUSPEND` | Yes* | |
|`PSCI_SET_SUSPEND_MODE`| No | |
|`PSCI_STAT_RESIDENCY` | Yes* | |
diff --git a/docs/porting-guide.md b/docs/porting-guide.md
index 8dad4a05..195c9374 100644
--- a/docs/porting-guide.md
+++ b/docs/porting-guide.md
@@ -1832,6 +1832,20 @@ This function can also be used in case the platform wants to support local
power state encoding for `power_state` parameter of PSCI_STAT_COUNT/RESIDENCY
APIs as described in Section 5.18 of [PSCI].
+#### plat_psci_ops.get_node_hw_state()
+
+This is an optional function. If implemented this function is intended to return
+the power state of a node (identified by the first parameter, the `MPIDR`) in
+the power domain topology (identified by the second parameter, `power_level`),
+as retrieved from a power controller or equivalent component on the platform.
+Upon successful completion, the implementation must map and return the final
+status among `HW_ON`, `HW_OFF` or `HW_STANDBY`. Upon encountering failures, it
+must return either `PSCI_E_INVALID_PARAMS` or `PSCI_E_NOT_SUPPORTED` as
+appropriate.
+
+Implementations are not expected to handle `power_levels` greater than
+`PLAT_MAX_PWR_LVL`.
+
3.6 Interrupt Management framework (in BL31)
----------------------------------------------
BL31 implements an Interrupt Management Framework (IMF) to manage interrupts