Commit 69c90cb5 authored by Johan Hovold's avatar Johan Hovold Committed by Vinod Koul

phy: qcom-qmp-pcie: drop unused legacy DT workaround

Commit 5e17b95d ("phy: qcom-qmp: Utilize fully-specified DT
registers") added a workaround for legacy devicetrees which did not
specify register regions for the second lane of some dual-lane PHYs.

At the time, the only two dual-lane PHYs supported by mainline were
"qcom,sdm845-qmp-usb3-phy" and "qcom,sdm845-qmp-ufs-phy", neither
of which is a PCIe PHY.

Drop the workaround for malformed devicetrees, which should no longer be
needed since the QMP driver split.
Signed-off-by: default avatarJohan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20220916102340.11520-9-johan+linaro@kernel.orgSigned-off-by: default avatarVinod Koul <vkoul@kernel.org>
parent 79a03925
...@@ -38,9 +38,6 @@ ...@@ -38,9 +38,6 @@
#define PHY_INIT_COMPLETE_TIMEOUT 10000 #define PHY_INIT_COMPLETE_TIMEOUT 10000
/* Define the assumed distance between lanes for underspecified device trees. */
#define QMP_PHY_LEGACY_LANE_STRIDE 0x400
struct qmp_phy_init_tbl { struct qmp_phy_init_tbl {
unsigned int offset; unsigned int offset;
unsigned int val; unsigned int val;
...@@ -2270,28 +2267,16 @@ static int qmp_pcie_create(struct device *dev, struct device_node *np, int id, ...@@ -2270,28 +2267,16 @@ static int qmp_pcie_create(struct device *dev, struct device_node *np, int id,
if (IS_ERR(qphy->pcs)) if (IS_ERR(qphy->pcs))
return PTR_ERR(qphy->pcs); return PTR_ERR(qphy->pcs);
/*
* If this is a dual-lane PHY, then there should be registers for the
* second lane. Some old device trees did not specify this, so fall
* back to old legacy behavior of assuming they can be reached at an
* offset from the first lane.
*/
if (cfg->is_dual_lane_phy) { if (cfg->is_dual_lane_phy) {
qphy->tx2 = devm_of_iomap(dev, np, 3, NULL); qphy->tx2 = devm_of_iomap(dev, np, 3, NULL);
qphy->rx2 = devm_of_iomap(dev, np, 4, NULL); if (IS_ERR(qphy->tx2))
if (IS_ERR(qphy->tx2) || IS_ERR(qphy->rx2)) { return PTR_ERR(qphy->tx2);
dev_warn(dev,
"Underspecified device tree, falling back to legacy register regions\n");
/* In the old version, pcs_misc is at index 3. */ qphy->rx2 = devm_of_iomap(dev, np, 4, NULL);
qphy->pcs_misc = qphy->tx2; if (IS_ERR(qphy->rx2))
qphy->tx2 = qphy->tx + QMP_PHY_LEGACY_LANE_STRIDE; return PTR_ERR(qphy->rx2);
qphy->rx2 = qphy->rx + QMP_PHY_LEGACY_LANE_STRIDE;
} else {
qphy->pcs_misc = devm_of_iomap(dev, np, 5, NULL); qphy->pcs_misc = devm_of_iomap(dev, np, 5, NULL);
}
} else { } else {
qphy->pcs_misc = devm_of_iomap(dev, np, 3, NULL); qphy->pcs_misc = devm_of_iomap(dev, np, 3, NULL);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment