On Fri, Sep 19, 2025 at 10:24:29PM +0800, Xiangxu Yin wrote:
> Add QCS615-specific configuration for USB/DP PHY, including DP init
> routines, voltage swing tables, and platform data. Add compatible
> "qcs615-qmp-usb3-dp-phy".
> 
> Signed-off-by: Xiangxu Yin <xiangxu....@oss.qualcomm.com>
> ---
>  drivers/phy/qualcomm/phy-qcom-qmp-usbc.c | 395 
> +++++++++++++++++++++++++++++++
>  1 file changed, 395 insertions(+)
> 
> +
> +     writel(0x3f, qmp->dp_tx + QSERDES_V2_TX_TRANSCEIVER_BIAS_EN);
> +     writel(0x10, qmp->dp_tx + QSERDES_V2_TX_HIGHZ_DRVR_EN);
> +     writel(0x0a, qmp->dp_tx + QSERDES_V2_TX_TX_POL_INV);
> +     writel(0x3f, qmp->dp_tx2 + QSERDES_V2_TX_TRANSCEIVER_BIAS_EN);
> +     writel(0x10, qmp->dp_tx2 + QSERDES_V2_TX_HIGHZ_DRVR_EN);
> +     writel(0x0a, qmp->dp_tx2 + QSERDES_V2_TX_TX_POL_INV);

Are you sure that these don't need to be adjusted based on
qmp->orientation or selected lanes count?

In fact... I don't see orientation handling for DP at all. Don't we need
it?

> +
> +     writel(0x18, qmp->dp_dp_phy + QSERDES_DP_PHY_CFG);
> +     writel(0x19, qmp->dp_dp_phy + QSERDES_DP_PHY_CFG);
> +
> +     if (readl_poll_timeout(qmp->dp_dp_phy + QSERDES_V2_DP_PHY_STATUS,
> +                            status,
> +                            ((status & BIT(1)) > 0),
> +                            500,
> +                            10000)){
> +             dev_err(qmp->dev, "PHY_READY not ready\n");
> +             return -ETIMEDOUT;
> +     }
> +
> +     return 0;
> +}
> +

-- 
With best wishes
Dmitry

Reply via email to