diff options
author | Rob Clark <robdclark@gmail.com> | 2017-03-14 16:18:03 +0100 |
---|---|---|
committer | Andy Gross <andy.gross@linaro.org> | 2017-03-28 23:03:21 +0200 |
commit | a2c680c6ce386e9ca6cdf362e8b01789126c9bf7 (patch) | |
tree | 6506d9c5d25e4a9d25f8075b59c925a755c3ee64 /drivers/firmware/qcom_scm-64.c | |
parent | Linux 4.11-rc1 (diff) | |
download | linux-a2c680c6ce386e9ca6cdf362e8b01789126c9bf7.tar.xz linux-a2c680c6ce386e9ca6cdf362e8b01789126c9bf7.zip |
firmware/qcom: add qcom_scm_restore_sec_cfg()
Signed-off-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
Diffstat (limited to 'drivers/firmware/qcom_scm-64.c')
-rw-r--r-- | drivers/firmware/qcom_scm-64.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/firmware/qcom_scm-64.c b/drivers/firmware/qcom_scm-64.c index c9332590e8c6..550e3a34e260 100644 --- a/drivers/firmware/qcom_scm-64.c +++ b/drivers/firmware/qcom_scm-64.c @@ -381,3 +381,19 @@ int __qcom_scm_set_remote_state(struct device *dev, u32 state, u32 id) return ret ? : res.a1; } + +int __qcom_scm_restore_sec_cfg(struct device *dev, u32 device_id, u32 spare) +{ + struct qcom_scm_desc desc = {0}; + struct arm_smccc_res res; + int ret; + + desc.args[0] = device_id; + desc.args[1] = spare; + desc.arginfo = QCOM_SCM_ARGS(2); + + ret = qcom_scm_call(dev, QCOM_SCM_SVC_MP, QCOM_SCM_RESTORE_SEC_CFG, + &desc, &res); + + return ret ? : res.a1; +} |