mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-11 23:24:22 -04:00
Merge "scsi:ufs: Keep UFS's high power mode when bkops enabled"
This commit is contained in:
commit
110a3de4c5
2 changed files with 12 additions and 10 deletions
|
|
@ -993,8 +993,7 @@ static int ufs_qcom_suspend(struct ufs_hba *hba, enum ufs_pm_op pm_op)
|
|||
err = ufs_qcom_disable_vreg(hba->dev,
|
||||
host->vddp_ref_clk);
|
||||
if (host->vccq_parent && !hba->auto_bkops_enabled)
|
||||
ufs_qcom_config_vreg(hba->dev,
|
||||
host->vccq_parent, false);
|
||||
ufs_qcom_disable_vreg(hba->dev, host->vccq_parent);
|
||||
if (!err)
|
||||
err = ufs_qcom_unvote_qos_all(hba);
|
||||
}
|
||||
|
|
@ -1011,8 +1010,9 @@ static int ufs_qcom_resume(struct ufs_hba *hba, enum ufs_pm_op pm_op)
|
|||
hba->spm_lvl > UFS_PM_LVL_3))
|
||||
ufs_qcom_enable_vreg(hba->dev,
|
||||
host->vddp_ref_clk);
|
||||
|
||||
if (host->vccq_parent)
|
||||
ufs_qcom_config_vreg(hba->dev, host->vccq_parent, true);
|
||||
ufs_qcom_enable_vreg(hba->dev, host->vccq_parent);
|
||||
|
||||
err = ufs_qcom_enable_lane_clks(host);
|
||||
if (err)
|
||||
|
|
@ -2588,9 +2588,9 @@ static int ufs_qcom_init(struct ufs_hba *hba)
|
|||
err = ufs_qcom_parse_reg_info(host, "qcom,vccq-parent",
|
||||
&host->vccq_parent);
|
||||
if (host->vccq_parent) {
|
||||
err = ufs_qcom_config_vreg(hba->dev, host->vccq_parent, true);
|
||||
err = ufs_qcom_enable_vreg(dev, host->vccq_parent);
|
||||
if (err) {
|
||||
dev_err(dev, "%s: failed vccq-parent set load: %d\n",
|
||||
dev_err(dev, "%s: failed enable vccq-parent err=%d\n",
|
||||
__func__, err);
|
||||
goto out_disable_vddp;
|
||||
}
|
||||
|
|
@ -2598,7 +2598,7 @@ static int ufs_qcom_init(struct ufs_hba *hba)
|
|||
|
||||
err = ufs_qcom_init_lane_clks(host);
|
||||
if (err)
|
||||
goto out_set_load_vccq_parent;
|
||||
goto out_disable_vccq_parent;
|
||||
|
||||
ufs_qcom_parse_pm_level(hba);
|
||||
ufs_qcom_parse_limits(host);
|
||||
|
|
@ -2642,9 +2642,9 @@ static int ufs_qcom_init(struct ufs_hba *hba)
|
|||
ufs_qcom_qos_init(hba);
|
||||
goto out;
|
||||
|
||||
out_set_load_vccq_parent:
|
||||
out_disable_vccq_parent:
|
||||
if (host->vccq_parent)
|
||||
ufs_qcom_config_vreg(hba->dev, host->vccq_parent, false);
|
||||
ufs_qcom_disable_vreg(dev, host->vccq_parent);
|
||||
out_disable_vddp:
|
||||
if (host->vddp_ref_clk)
|
||||
ufs_qcom_disable_vreg(dev, host->vddp_ref_clk);
|
||||
|
|
|
|||
|
|
@ -8573,8 +8573,10 @@ static int ufshcd_suspend(struct ufs_hba *hba, enum ufs_pm_op pm_op)
|
|||
ret = ufshcd_link_state_transition(hba, req_link_state, 1);
|
||||
if (ret)
|
||||
goto set_dev_active;
|
||||
|
||||
ufshcd_vreg_set_lpm(hba);
|
||||
#if defined(CONFIG_SCSI_UFSHCD_QTI)
|
||||
if (!hba->auto_bkops_enabled)
|
||||
#endif
|
||||
ufshcd_vreg_set_lpm(hba);
|
||||
|
||||
disable_clks:
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in a new issue