]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
phy: qcom-qmp-ufs: Remove qmp_ufs_exit() and Inline qmp_ufs_com_exit()
authorNitin Rawat <quic_nitirawa@quicinc.com>
Mon, 26 May 2025 15:38:19 +0000 (21:08 +0530)
committerVinod Koul <vkoul@kernel.org>
Sun, 15 Jun 2025 14:23:24 +0000 (19:53 +0530)
qmp_ufs_exit() is a wrapper function. It only calls qmp_ufs_com_exit().
Remove it to simplify the ufs phy driver.

Additonally partial Inline(dropping the reset assert) qmp_ufs_com_exit
into qmp_ufs_power_off function to avoid unnecessary function call
and to align with the Phy programming guide.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Nitin Rawat <quic_nitirawa@quicinc.com>
Link: https://lore.kernel.org/r/20250526153821.7918-9-quic_nitirawa@quicinc.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/phy/qualcomm/phy-qcom-qmp-ufs.c

index e0dc5fa43dee3300b36804cfc8f6a026d51c0277..00bde65733cbf84840ab7f6664288e08c374fdab 100644 (file)
@@ -1758,19 +1758,6 @@ 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_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);
@@ -1849,7 +1836,9 @@ static int qmp_ufs_power_off(struct phy *phy)
        qphy_clrbits(qmp->pcs, cfg->regs[QPHY_PCS_POWER_DOWN_CONTROL],
                        SW_PWRDN);
 
-       qmp_ufs_com_exit(qmp);
+       clk_bulk_disable_unprepare(qmp->num_clks, qmp->clks);
+
+       regulator_bulk_disable(cfg->num_vregs, qmp->vregs);
 
        return 0;
 }