summaryrefslogtreecommitdiffstats
path: root/drivers/remoteproc
diff options
context:
space:
mode:
authorWei Yongjun <weiyongjun1@huawei.com>2018-10-10 03:59:39 +0000
committerBjorn Andersson <bjorn.andersson@linaro.org>2018-10-09 23:08:07 -0700
commit6e6b1ada0c6a745b0190016b1f50b699a625a944 (patch)
tree07c57ecde75f3d7742ad0e24cc26685788f4a403 /drivers/remoteproc
parentffa5f9c84810ea175226863f66a51bb2d4502f5b (diff)
downloadlinux-6e6b1ada0c6a745b0190016b1f50b699a625a944.tar.gz
linux-6e6b1ada0c6a745b0190016b1f50b699a625a944.tar.bz2
linux-6e6b1ada0c6a745b0190016b1f50b699a625a944.zip
remoteproc: qcom: qcom_q6v5_adsp: Fix some return value check
In case of error, the functions devm_kcalloc() and devm_ioremap() returns NULL pointer not ERR_PTR(). The IS_ERR() test in the return value check should be replaced with NULL test. Also removed -EPROBE_DEFER check since devm_kcalloc never return this error. Fixes: dc160e449122 ("remoteproc: qcom: Introduce Non-PAS ADSP PIL driver") Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Diffstat (limited to 'drivers/remoteproc')
-rw-r--r--drivers/remoteproc/qcom_q6v5_adsp.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/remoteproc/qcom_q6v5_adsp.c b/drivers/remoteproc/qcom_q6v5_adsp.c
index 3285a8b333c4..79374d1de311 100644
--- a/drivers/remoteproc/qcom_q6v5_adsp.c
+++ b/drivers/remoteproc/qcom_q6v5_adsp.c
@@ -295,12 +295,8 @@ static int adsp_init_clock(struct qcom_adsp *adsp)
adsp->num_clks = ARRAY_SIZE(adsp_clk_id);
adsp->clks = devm_kcalloc(adsp->dev, adsp->num_clks,
sizeof(*adsp->clks), GFP_KERNEL);
- if (IS_ERR(adsp->clks)) {
- ret = PTR_ERR(adsp->clks);
- if (ret != -EPROBE_DEFER)
- dev_err(adsp->dev, "failed to get adsp clock");
- return ret;
- }
+ if (!adsp->clks)
+ return -ENOMEM;
for (i = 0; i < adsp->num_clks; i++)
adsp->clks[i].id = adsp_clk_id[i];
@@ -337,9 +333,9 @@ static int adsp_init_mmio(struct qcom_adsp *adsp,
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
adsp->qdsp6ss_base = devm_ioremap(&pdev->dev, res->start,
resource_size(res));
- if (IS_ERR(adsp->qdsp6ss_base)) {
+ if (!adsp->qdsp6ss_base) {
dev_err(adsp->dev, "failed to map QDSP6SS registers\n");
- return PTR_ERR(adsp->qdsp6ss_base);
+ return -ENOMEM;
}
syscon = of_parse_phandle(pdev->dev.of_node, "qcom,halt-regs", 0);