[PATCH v3 04/14] phy: qcom: qmp-usbc: Add USBC PHY type enum
Xiangxu Yin
xiangxu.yin at oss.qualcomm.com
Wed Aug 20 09:34:46 UTC 2025
Introduce qmp_phy_usbc_type enum and a 'type' field in qmp_phy_cfg to
differentiate between USB-only PHYs and USB/DP switchable PHYs.
Signed-off-by: Xiangxu Yin <xiangxu.yin at oss.qualcomm.com>
---
drivers/phy/qualcomm/phy-qcom-qmp-usbc.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-usbc.c b/drivers/phy/qualcomm/phy-qcom-qmp-usbc.c
index e484caec2be20121cfe287c507b17af28fb9f211..5afe090b546977a11265bbffa7c355feb8c72dfa 100644
--- a/drivers/phy/qualcomm/phy-qcom-qmp-usbc.c
+++ b/drivers/phy/qualcomm/phy-qcom-qmp-usbc.c
@@ -284,6 +284,11 @@ static const struct qmp_phy_init_tbl qcm2290_usb3_pcs_tbl[] = {
QMP_PHY_INIT_CFG(QPHY_V3_PCS_RX_SIGDET_LVL, 0x88),
};
+enum qmp_phy_usbc_type {
+ QMP_PHY_USBC_USB3_ONLY,
+ QMP_PHY_USBC_USB3_DP,
+};
+
struct qmp_usbc_offsets {
u16 serdes;
u16 pcs;
@@ -298,6 +303,7 @@ struct qmp_usbc_offsets {
/* struct qmp_phy_cfg - per-PHY initialization config */
struct qmp_phy_cfg {
const struct qmp_usbc_offsets *offsets;
+ const enum qmp_phy_usbc_type type;
/* Init sequence for PHY blocks - serdes, tx, rx, pcs */
const struct qmp_phy_init_tbl *serdes_tbl;
@@ -408,6 +414,7 @@ static const struct qmp_usbc_offsets qmp_usbc_offsets_v3_qcm2290 = {
static const struct qmp_phy_cfg msm8998_usb3phy_cfg = {
.offsets = &qmp_usbc_offsets_v3_qcm2290,
+ .type = QMP_PHY_USBC_USB3_ONLY,
.serdes_tbl = msm8998_usb3_serdes_tbl,
.serdes_tbl_num = ARRAY_SIZE(msm8998_usb3_serdes_tbl),
@@ -424,6 +431,7 @@ static const struct qmp_phy_cfg msm8998_usb3phy_cfg = {
static const struct qmp_phy_cfg qcm2290_usb3phy_cfg = {
.offsets = &qmp_usbc_offsets_v3_qcm2290,
+ .type = QMP_PHY_USBC_USB3_ONLY,
.serdes_tbl = qcm2290_usb3_serdes_tbl,
.serdes_tbl_num = ARRAY_SIZE(qcm2290_usb3_serdes_tbl),
@@ -440,6 +448,7 @@ static const struct qmp_phy_cfg qcm2290_usb3phy_cfg = {
static const struct qmp_phy_cfg sdm660_usb3phy_cfg = {
.offsets = &qmp_usbc_offsets_v3_qcm2290,
+ .type = QMP_PHY_USBC_USB3_ONLY,
.serdes_tbl = qcm2290_usb3_serdes_tbl,
.serdes_tbl_num = ARRAY_SIZE(qcm2290_usb3_serdes_tbl),
--
2.34.1
More information about the Freedreno
mailing list