[PATCH] phy: qcom-qusb2: Add support for SDM630/660
From: kholk11
Date: Sat Sep 26 2020 - 09:12:04 EST
From: Konrad Dybcio <konradybcio@xxxxxxxxx>
QUSB on these SoCs actually uses *almost* the same
configuration that msm8996 does, so we can reuse
the phy_cfg from there with just a single change
(se clock scheme).
Signed-off-by: Konrad Dybcio <konradybcio@xxxxxxxxx>
Signed-off-by: AngeloGioacchino Del Regno <kholk11@xxxxxxxxx>
---
Documentation/devicetree/bindings/phy/qcom,qusb2-phy.yaml | 1 +
drivers/phy/qualcomm/phy-qcom-qusb2.c | 7 ++++++-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/phy/qcom,qusb2-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,qusb2-phy.yaml
index ccda92859eca..97dae24752b4 100644
--- a/Documentation/devicetree/bindings/phy/qcom,qusb2-phy.yaml
+++ b/Documentation/devicetree/bindings/phy/qcom,qusb2-phy.yaml
@@ -21,6 +21,7 @@ properties:
- qcom,ipq8074-qusb2-phy
- qcom,msm8996-qusb2-phy
- qcom,msm8998-qusb2-phy
+ - qcom,sdm660-qusb2-phy
- items:
- enum:
- qcom,sc7180-qusb2-phy
diff --git a/drivers/phy/qualcomm/phy-qcom-qusb2.c b/drivers/phy/qualcomm/phy-qcom-qusb2.c
index 557547dabfd5..a4d706b361b9 100644
--- a/drivers/phy/qualcomm/phy-qcom-qusb2.c
+++ b/drivers/phy/qualcomm/phy-qcom-qusb2.c
@@ -702,7 +702,8 @@ static int qusb2_phy_init(struct phy *phy)
usleep_range(150, 160);
/* Default is single-ended clock on msm8996 */
- qphy->has_se_clk_scheme = true;
+ if (!of_device_is_compatible(phy->dev.of_node, "qcom,sdm660-qusb2-phy"))
+ qphy->has_se_clk_scheme = true;
/*
* read TCSR_PHY_CLK_SCHEME register to check if single-ended
* clock scheme is selected. If yes, then disable differential
@@ -818,6 +819,10 @@ static const struct of_device_id qusb2_phy_of_match_table[] = {
}, {
.compatible = "qcom,msm8998-qusb2-phy",
.data = &msm8998_phy_cfg,
+ }, {
+ .compatible = "qcom,sdm660-qusb2-phy",
+ /* sdm630/660 use the same config as msm8996. */
+ .data = &msm8996_phy_cfg,
}, {
/*
* Deprecated. Only here to support legacy device
--
2.28.0