summaryrefslogtreecommitdiffstats
path: root/drivers/firmware/psci.c
diff options
context:
space:
mode:
authorLorenzo Pieralisi <lorenzo.pieralisi@arm.com>2015-05-26 18:06:21 +0200
committerLorenzo Pieralisi <lorenzo.pieralisi@arm.com>2015-10-02 15:35:16 +0200
commit5f004e0c9fb152a080b47d06dc48bdd29765a734 (patch)
tree89db88e5e9329508eb34ea6a81401cd1cac35926 /drivers/firmware/psci.c
parentdrivers: firmware: psci: move power_state handling to generic code (diff)
downloadlinux-5f004e0c9fb152a080b47d06dc48bdd29765a734.tar.xz
linux-5f004e0c9fb152a080b47d06dc48bdd29765a734.zip
drivers: firmware: psci: add PSCI_FEATURES call
PSCI v1.0 introduces a PSCI_FEATURES call that allows to probe for features related to a specific function identifier. This patch adds PSCI_FEATURES support to the PSCI firmware layer. Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Tested-by: Jisheng Zhang <jszhang@marvell.com> Cc: Mark Rutland <mark.rutland@arm.com>
Diffstat (limited to 'drivers/firmware/psci.c')
-rw-r--r--drivers/firmware/psci.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/firmware/psci.c b/drivers/firmware/psci.c
index 3157eb0ef300..cec948b4ccd5 100644
--- a/drivers/firmware/psci.c
+++ b/drivers/firmware/psci.c
@@ -197,6 +197,12 @@ static void psci_sys_poweroff(void)
invoke_psci_fn(PSCI_0_2_FN_SYSTEM_OFF, 0, 0, 0);
}
+static int __init psci_features(u32 psci_func_id)
+{
+ return invoke_psci_fn(PSCI_1_0_FN_PSCI_FEATURES,
+ psci_func_id, 0, 0);
+}
+
/*
* Detect the presence of a resident Trusted OS which may cause CPU_OFF to
* return DENIED (which would be fatal).