diff options
author | Bjorn Andersson <andersson@kernel.org> | 2023-01-19 01:59:54 +0300 |
---|---|---|
committer | Bjorn Andersson <andersson@kernel.org> | 2023-01-19 01:59:54 +0300 |
commit | 62ebb045f029b252d0f7d16ae61a735bd9e88636 (patch) | |
tree | 7762d3d9b8bbf59e301e40035d61d68807b77700 /drivers/soc/qcom | |
parent | c525e181fda7f18b694dffb0f22686a4cb407cee (diff) | |
parent | 6049aae52392539e505bfb8ccbcff3c26f1d2f0b (diff) | |
download | linux-62ebb045f029b252d0f7d16ae61a735bd9e88636.tar.xz |
Merge tag 'qcom-driver-fixes-for-6.2' into drivers-for-6.3
Qualcomm driver fixes for v6.2
Updated error handling in the async packer router driver made an
optional property required, fix this. Also improve error handling in the
probe function of the CPR driver.
Diffstat (limited to 'drivers/soc/qcom')
-rw-r--r-- | drivers/soc/qcom/apr.c | 3 | ||||
-rw-r--r-- | drivers/soc/qcom/cpr.c | 6 |
2 files changed, 7 insertions, 2 deletions
diff --git a/drivers/soc/qcom/apr.c b/drivers/soc/qcom/apr.c index cd44f17dad3d..d51abb462ae5 100644 --- a/drivers/soc/qcom/apr.c +++ b/drivers/soc/qcom/apr.c @@ -461,9 +461,10 @@ static int apr_add_device(struct device *dev, struct device_node *np, goto out; } + /* Protection domain is optional, it does not exist on older platforms */ ret = of_property_read_string_index(np, "qcom,protection-domain", 1, &adev->service_path); - if (ret < 0) { + if (ret < 0 && ret != -EINVAL) { dev_err(dev, "Failed to read second value of qcom,protection-domain\n"); goto out; } diff --git a/drivers/soc/qcom/cpr.c b/drivers/soc/qcom/cpr.c index e9b854ed1bdf..144ea68e0920 100644 --- a/drivers/soc/qcom/cpr.c +++ b/drivers/soc/qcom/cpr.c @@ -1708,12 +1708,16 @@ static int cpr_probe(struct platform_device *pdev) ret = of_genpd_add_provider_simple(dev->of_node, &drv->pd); if (ret) - return ret; + goto err_remove_genpd; platform_set_drvdata(pdev, drv); cpr_debugfs_init(drv); return 0; + +err_remove_genpd: + pm_genpd_remove(&drv->pd); + return ret; } static int cpr_remove(struct platform_device *pdev) |