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....@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

Reply via email to