Message ID | 20250515162722.6933-6-quic_nitirawa@quicinc.com |
---|---|
State | New |
Headers | show |
Series | Refactor ufs phy powerup sequence | expand |
On 5/21/2025 7:00 PM, Manivannan Sadhasivam wrote: > On Thu, May 15, 2025 at 09:57:16PM +0530, Nitin Rawat wrote: >> The qmp_ufs_power_on() function acts as a wrapper, solely invoking >> qmp_ufs_com_init(). Additionally, the code within qmp_ufs_com_init() >> does not correspond well with its name. >> >> Therefore, to enhance the readability and eliminate unnecessary >> function call inline qmp_ufs_com_init() into qmp_ufs_power_on(). >> >> There is no change to the functionality. >> >> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> >> Signed-off-by: Nitin Rawat <quic_nitirawa@quicinc.com> >> --- >> drivers/phy/qualcomm/phy-qcom-qmp-ufs.c | 43 ++++++++++--------------- >> 1 file changed, 17 insertions(+), 26 deletions(-) >> >> diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c b/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c >> index 33d238cf49aa..d3f9ee490a32 100644 >> --- a/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c >> +++ b/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c >> @@ -1758,12 +1758,28 @@ static void qmp_ufs_init_registers(struct qmp_ufs *qmp, const struct qmp_phy_cfg >> qmp_ufs_init_all(qmp, &cfg->tbls_hs_b); >> } >> >> -static int qmp_ufs_com_init(struct qmp_ufs *qmp) >> +static int qmp_ufs_com_exit(struct qmp_ufs *qmp) > > Since there is no qmp_ufs_com_init() now, qmp_ufs_com_exit() lacks symmetry. > Maybe you should rename it too. Yes this is already taken care in differnt patch of this series. > >> { >> const struct qmp_phy_cfg *cfg = qmp->cfg; >> + >> + reset_control_assert(qmp->ufs_reset); >> + >> + clk_bulk_disable_unprepare(qmp->num_clks, qmp->clks); >> + >> + regulator_bulk_disable(cfg->num_vregs, qmp->vregs); >> + >> + return 0; >> +} >> + >> +static int qmp_ufs_power_on(struct phy *phy) >> +{ >> + struct qmp_ufs *qmp = phy_get_drvdata(phy); >> + const struct qmp_phy_cfg *cfg = qmp->cfg; >> void __iomem *pcs = qmp->pcs; >> int ret; >> >> + dev_vdbg(qmp->dev, "Initializing QMP phy\n"); > > Now, this debug print doesn't make sense. You can drop it. Sure, wil remove. > > - Mani >
diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c b/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c index 33d238cf49aa..d3f9ee490a32 100644 --- a/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c +++ b/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c @@ -1758,12 +1758,28 @@ static void qmp_ufs_init_registers(struct qmp_ufs *qmp, const struct qmp_phy_cfg qmp_ufs_init_all(qmp, &cfg->tbls_hs_b); } -static int qmp_ufs_com_init(struct qmp_ufs *qmp) +static int qmp_ufs_com_exit(struct qmp_ufs *qmp) { const struct qmp_phy_cfg *cfg = qmp->cfg; + + reset_control_assert(qmp->ufs_reset); + + clk_bulk_disable_unprepare(qmp->num_clks, qmp->clks); + + regulator_bulk_disable(cfg->num_vregs, qmp->vregs); + + return 0; +} + +static int qmp_ufs_power_on(struct phy *phy) +{ + struct qmp_ufs *qmp = phy_get_drvdata(phy); + const struct qmp_phy_cfg *cfg = qmp->cfg; void __iomem *pcs = qmp->pcs; int ret; + dev_vdbg(qmp->dev, "Initializing QMP phy\n"); + ret = regulator_bulk_enable(cfg->num_vregs, qmp->vregs); if (ret) { dev_err(qmp->dev, "failed to enable regulators, err=%d\n", ret); @@ -1775,35 +1791,10 @@ static int qmp_ufs_com_init(struct qmp_ufs *qmp) goto err_disable_regulators; qphy_setbits(pcs, cfg->regs[QPHY_PCS_POWER_DOWN_CONTROL], SW_PWRDN); - return 0; err_disable_regulators: regulator_bulk_disable(cfg->num_vregs, qmp->vregs); - - return ret; -} - -static int qmp_ufs_com_exit(struct qmp_ufs *qmp) -{ - const struct qmp_phy_cfg *cfg = qmp->cfg; - - reset_control_assert(qmp->ufs_reset); - - clk_bulk_disable_unprepare(qmp->num_clks, qmp->clks); - - regulator_bulk_disable(cfg->num_vregs, qmp->vregs); - - return 0; -} - -static int qmp_ufs_power_on(struct phy *phy) -{ - struct qmp_ufs *qmp = phy_get_drvdata(phy); - int ret; - dev_vdbg(qmp->dev, "Initializing QMP phy\n"); - - ret = qmp_ufs_com_init(qmp); return ret; }