X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=drivers%2Fphy%2Fqualcomm%2Fphy-qcom-qmp-pcie-msm8996.c;h=0c603bc06e0998a95a0853072a10fffba87958ff;hb=e42f110700ed7293700c26145e1ed07ea05ac3f6;hp=09824be088c96c0b6354ff0488068b17e573a34b;hpb=90031bc33f7525f0cc7a9ef0b1df62a1a4463382;p=platform%2Fkernel%2Flinux-starfive.git diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-pcie-msm8996.c b/drivers/phy/qualcomm/phy-qcom-qmp-pcie-msm8996.c index 09824be0..0c603bc 100644 --- a/drivers/phy/qualcomm/phy-qcom-qmp-pcie-msm8996.c +++ b/drivers/phy/qualcomm/phy-qcom-qmp-pcie-msm8996.c @@ -379,7 +379,7 @@ static int qmp_pcie_msm8996_com_init(struct qmp_phy *qphy) ret = regulator_bulk_enable(cfg->num_vregs, qmp->vregs); if (ret) { dev_err(qmp->dev, "failed to enable regulators, err=%d\n", ret); - goto err_unlock; + goto err_decrement_count; } ret = reset_control_bulk_assert(cfg->num_resets, qmp->resets); @@ -409,7 +409,8 @@ err_assert_reset: reset_control_bulk_assert(cfg->num_resets, qmp->resets); err_disable_regulators: regulator_bulk_disable(cfg->num_vregs, qmp->vregs); -err_unlock: +err_decrement_count: + qmp->init_count--; mutex_unlock(&qmp->phy_mutex); return ret;