Add support for the "qcom,shikra-qusb2-phy" compatible by introducing
the required PHY configuration data and binding it to the QUSB2 PHY
driver.

This allows USB2 PHY initialization on Qualcomm Shikra platforms.

Signed-off-by: Aswin Murugan <[email protected]>
---
 drivers/phy/qcom/phy-qcom-qusb2.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/drivers/phy/qcom/phy-qcom-qusb2.c 
b/drivers/phy/qcom/phy-qcom-qusb2.c
index 6278171b100..f5214bffc52 100644
--- a/drivers/phy/qcom/phy-qcom-qusb2.c
+++ b/drivers/phy/qcom/phy-qcom-qusb2.c
@@ -310,6 +310,18 @@ static const struct qusb2_phy_cfg qusb2_v2_phy_cfg = {
        .update_tune1_with_efuse = true,
 };
 
+static const struct qusb2_phy_cfg shikra_phy_cfg = {
+       .tbl = qcs615_init_tbl,
+       .tbl_num = ARRAY_SIZE(qcs615_init_tbl),
+       .regs = ipq6018_regs_layout,
+
+       .has_pll_test = true,
+       .se_clk_scheme_default = true,
+       .disable_ctrl = (CLAMP_N_EN | FREEZIO_N | POWER_DOWN),
+       .mask_core_ready = PLL_LOCKED,
+       .autoresume_en = BIT(3),
+};
+
 /**
  * struct qusb2_phy - structure holding qusb2 phy attributes
  *
@@ -505,6 +517,8 @@ static const struct udevice_id qusb2phy_ids[] = {
          .data = (ulong)&sm6115_phy_cfg },
        { .compatible = "qcom,qcs615-qusb2-phy",
          .data = (ulong)&qcs615_phy_cfg },
+       { .compatible = "qcom,shikra-qusb2-phy",
+         .data = (ulong)&shikra_phy_cfg },
        { .compatible = "qcom,sdm660-qusb2-phy",
          .data = (ulong)&sdm660_phy_cfg },
        { .compatible = "qcom,sm6115-qusb2-phy",
-- 
2.34.1

Reply via email to