diff options
author | Johan Hovold <johan+linaro@kernel.org> | 2022-10-17 09:50:07 +0300 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2022-10-17 11:15:47 +0300 |
commit | 5b68d95c3fc72b4a89b9c7549e1ef638a01a3e15 (patch) | |
tree | dda32ad3543255380cae2007e9de5bc13117deab | |
parent | 6d5b1e2067aef151747b4ec1cd927d44b61e4293 (diff) | |
download | linux-5b68d95c3fc72b4a89b9c7549e1ef638a01a3e15.tar.xz |
phy: qcom-qmp-pcie: move power-down update
Move the power-down-control register update that powers on the PHY to
the power-on handler so that it matches the power-off handler.
Note that the power-on handler is currently always called directly
after init.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20221017065013.19647-6-johan+linaro@kernel.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
-rw-r--r-- | drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c b/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c index 1105d439828c..b42c5e185228 100644 --- a/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c +++ b/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c @@ -1976,7 +1976,6 @@ static int qmp_pcie_init(struct phy *phy) struct qmp_phy *qphy = phy_get_drvdata(phy); struct qcom_qmp *qmp = qphy->qmp; const struct qmp_phy_cfg *cfg = qphy->cfg; - void __iomem *pcs = qphy->pcs; int ret; /* turn on regulator supplies */ @@ -2002,9 +2001,6 @@ static int qmp_pcie_init(struct phy *phy) if (ret) goto err_assert_reset; - qphy_setbits(pcs, cfg->regs[QPHY_PCS_POWER_DOWN_CONTROL], - cfg->pwrdn_ctrl); - return 0; err_assert_reset: @@ -2041,6 +2037,9 @@ static int qmp_pcie_power_on(struct phy *phy) unsigned int mask, val, ready; int ret; + qphy_setbits(pcs, cfg->regs[QPHY_PCS_POWER_DOWN_CONTROL], + cfg->pwrdn_ctrl); + if (qphy->mode == PHY_MODE_PCIE_RC) mode_tables = cfg->tables_rc; else |