diff options
author | Andy Gross <andy.gross@linaro.org> | 2016-06-03 18:25:24 -0500 |
---|---|---|
committer | Andy Gross <andy.gross@linaro.org> | 2016-06-24 13:33:59 -0500 |
commit | 11bdcee4a6b9ff0b09144a81a6b903cbfa599be7 (patch) | |
tree | 4eaa6e63a52bd7d03bcd8131be9876d34a423272 /drivers/firmware/qcom_scm.h | |
parent | 13e77747800ef71224a12f787ebd26b27c16ff12 (diff) | |
download | linux-11bdcee4a6b9ff0b09144a81a6b903cbfa599be7.tar.bz2 |
firmware: qcom: scm: Generalize shared error map
This patch moves the qcom_scm_remap_error function to the include file
where can be used by both the 32 and 64 bit versions of the code.
Reviewed-by: Stephen Boyd <sboyd@codeaurora.org>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <agross@codeaurora.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
Diffstat (limited to 'drivers/firmware/qcom_scm.h')
-rw-r--r-- | drivers/firmware/qcom_scm.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/firmware/qcom_scm.h b/drivers/firmware/qcom_scm.h index 2cce75c08b99..7dcc73381b7a 100644 --- a/drivers/firmware/qcom_scm.h +++ b/drivers/firmware/qcom_scm.h @@ -44,4 +44,20 @@ extern int __qcom_scm_hdcp_req(struct qcom_scm_hdcp_req *req, u32 req_cnt, #define QCOM_SCM_ERROR -1 #define QCOM_SCM_INTERRUPTED 1 +static inline int qcom_scm_remap_error(int err) +{ + switch (err) { + case QCOM_SCM_ERROR: + return -EIO; + case QCOM_SCM_EINVAL_ADDR: + case QCOM_SCM_EINVAL_ARG: + return -EINVAL; + case QCOM_SCM_EOPNOTSUPP: + return -EOPNOTSUPP; + case QCOM_SCM_ENOMEM: + return -ENOMEM; + } + return -EINVAL; +} + #endif |