Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

phy: qcom: qmp: Add SC8180x USB/DP combo

The two USB QMPs are USB/DP compbo PHYs, add the compatible for this
combination to allow DP output.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20210721225630.3035861-2-bjorn.andersson@linaro.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>

authored by

Bjorn Andersson and committed by
Vinod Koul
1633802c 1a00d130

+47
+47
drivers/phy/qualcomm/phy-qcom-qmp.c
··· 3536 3536 .pwrdn_delay_max = 1005, /* us */ 3537 3537 }; 3538 3538 3539 + static const struct qmp_phy_cfg sc8180x_dpphy_cfg = { 3540 + .type = PHY_TYPE_DP, 3541 + .nlanes = 1, 3542 + 3543 + .serdes_tbl = qmp_v4_dp_serdes_tbl, 3544 + .serdes_tbl_num = ARRAY_SIZE(qmp_v4_dp_serdes_tbl), 3545 + .tx_tbl = qmp_v4_dp_tx_tbl, 3546 + .tx_tbl_num = ARRAY_SIZE(qmp_v4_dp_tx_tbl), 3547 + 3548 + .serdes_tbl_rbr = qmp_v4_dp_serdes_tbl_rbr, 3549 + .serdes_tbl_rbr_num = ARRAY_SIZE(qmp_v4_dp_serdes_tbl_rbr), 3550 + .serdes_tbl_hbr = qmp_v4_dp_serdes_tbl_hbr, 3551 + .serdes_tbl_hbr_num = ARRAY_SIZE(qmp_v4_dp_serdes_tbl_hbr), 3552 + .serdes_tbl_hbr2 = qmp_v4_dp_serdes_tbl_hbr2, 3553 + .serdes_tbl_hbr2_num = ARRAY_SIZE(qmp_v4_dp_serdes_tbl_hbr2), 3554 + .serdes_tbl_hbr3 = qmp_v4_dp_serdes_tbl_hbr3, 3555 + .serdes_tbl_hbr3_num = ARRAY_SIZE(qmp_v4_dp_serdes_tbl_hbr3), 3556 + 3557 + .clk_list = qmp_v3_phy_clk_l, 3558 + .num_clks = ARRAY_SIZE(qmp_v3_phy_clk_l), 3559 + .reset_list = sc7180_usb3phy_reset_l, 3560 + .num_resets = ARRAY_SIZE(sc7180_usb3phy_reset_l), 3561 + .vreg_list = qmp_phy_vreg_l, 3562 + .num_vregs = ARRAY_SIZE(qmp_phy_vreg_l), 3563 + .regs = qmp_v3_usb3phy_regs_layout, 3564 + 3565 + .has_phy_dp_com_ctrl = true, 3566 + .is_dual_lane_phy = true, 3567 + 3568 + .dp_aux_init = qcom_qmp_v4_phy_dp_aux_init, 3569 + .configure_dp_tx = qcom_qmp_v4_phy_configure_dp_tx, 3570 + .configure_dp_phy = qcom_qmp_v4_phy_configure_dp_phy, 3571 + .calibrate_dp_phy = qcom_qmp_v4_dp_phy_calibrate, 3572 + }; 3573 + 3574 + static const struct qmp_phy_combo_cfg sc8180x_usb3dpphy_cfg = { 3575 + .usb_cfg = &sm8150_usb3phy_cfg, 3576 + .dp_cfg = &sc8180x_dpphy_cfg, 3577 + }; 3578 + 3539 3579 static const struct qmp_phy_cfg sm8150_usb3_uniphy_cfg = { 3540 3580 .type = PHY_TYPE_USB3, 3541 3581 .nlanes = 1, ··· 5418 5378 .compatible = "qcom,sc8180x-qmp-usb3-phy", 5419 5379 .data = &sm8150_usb3phy_cfg, 5420 5380 }, { 5381 + .compatible = "qcom,sc8180x-qmp-usb3-dp-phy", 5382 + /* It's a combo phy */ 5383 + }, { 5421 5384 .compatible = "qcom,sdm845-qhp-pcie-phy", 5422 5385 .data = &sdm845_qhp_pciephy_cfg, 5423 5386 }, { ··· 5496 5453 { 5497 5454 .compatible = "qcom,sm8250-qmp-usb3-dp-phy", 5498 5455 .data = &sm8250_usb3dpphy_cfg, 5456 + }, 5457 + { 5458 + .compatible = "qcom,sc8180x-qmp-usb3-dp-phy", 5459 + .data = &sc8180x_usb3dpphy_cfg, 5499 5460 }, 5500 5461 { } 5501 5462 };