summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Hovold <johan+linaro@kernel.org>2022-11-05 17:59:30 +0300
committerVinod Koul <vkoul@kernel.org>2022-11-10 10:04:54 +0300
commitf8b641146484b6be33c291fa8279ffe423e169d9 (patch)
tree92a5b20469826159434ae28edc6981777975f94a
parent63bf101ae1912570260912087bfd7b1cf420c3dc (diff)
downloadlinux-f8b641146484b6be33c291fa8279ffe423e169d9.tar.xz
phy: qcom-qmp-pcie: clean up PHY lane init
Clean up the PHY lane initialisation somewhat by adding further temporary variables and programming both tx and rx for the second lane after the first lane. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Johan Hovold <johan+linaro@kernel.org> Link: https://lore.kernel.org/r/20221105145939.20318-8-johan+linaro@kernel.org Signed-off-by: Vinod Koul <vkoul@kernel.org>
-rw-r--r--drivers/phy/qualcomm/phy-qcom-qmp-pcie.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c b/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c
index bd946438e3c3..dd7e72424fc0 100644
--- a/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c
+++ b/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c
@@ -1835,18 +1835,19 @@ static void qmp_pcie_lanes_init(struct qmp_pcie *qmp, const struct qmp_phy_cfg_t
const struct qmp_phy_cfg *cfg = qmp->cfg;
void __iomem *tx = qmp->tx;
void __iomem *rx = qmp->rx;
+ void __iomem *tx2 = qmp->tx2;
+ void __iomem *rx2 = qmp->rx2;
if (!tables)
return;
qmp_pcie_configure_lane(tx, tables->tx, tables->tx_num, 1);
-
- if (cfg->lanes >= 2)
- qmp_pcie_configure_lane(qmp->tx2, tables->tx, tables->tx_num, 2);
-
qmp_pcie_configure_lane(rx, tables->rx, tables->rx_num, 1);
- if (cfg->lanes >= 2)
- qmp_pcie_configure_lane(qmp->rx2, tables->rx, tables->rx_num, 2);
+
+ if (cfg->lanes >= 2) {
+ qmp_pcie_configure_lane(tx2, tables->tx, tables->tx_num, 2);
+ qmp_pcie_configure_lane(rx2, tables->rx, tables->rx_num, 2);
+ }
}
static void qmp_pcie_pcs_init(struct qmp_pcie *qmp, const struct qmp_phy_cfg_tables *tables)