Re: [PATCH v2] phy: qcom-qmp: add support for display port voltage and pre-emphasis swing

From: Stephen Boyd
Date: Fri Sep 03 2021 - 15:16:42 EST


Quoting Dmitry Baryshkov (2021-09-03 12:09:14)
> On 28/08/2021 00:10, Kuogee Hsieh wrote:
> > Both voltage and pre-emphasis swing level are set during link training
> > negotiation between host and sink. There are totally four tables added.
> > A voltage swing table for both hbr and hbr1, a voltage table for both
> > hbr2 and hbr3, a pre-emphasis table for both hbr and hbr1 and a pre-emphasis
> > table for both hbr2 and hbr3. In addition, write 0x0a to TX_TX_POL_INV is
> > added to complete the sequence of configure dp phy base on HPG.
> >
> > Chnages in v2:
> > -- revise commit test
> > -- add Fixes tag
> > -- replaced voltage_swing_cfg with voltage
> > -- replaced pre_emphasis_cfg with emphasis
> > -- delete drv_lvl_reg and emp_post_reg parameters from qcom_qmp_v4_phy_configure_dp_swing()
> > -- delete drv_lvl_reg and emp_post_reg parameters from qcom_qmp_phy_configure_dp_swing()
> >
> > Fixes: aff188feb5e1 ("phy: qcom-qmp: add support for sm8250-usb3-dp phy")
> > Signed-off-by: Kuogee Hsieh <khsieh@xxxxxxxxxxxxxx>
> > ---
> > drivers/phy/qualcomm/phy-qcom-qmp.c | 117 ++++++++++++++++++++++++++----------
> > 1 file changed, 85 insertions(+), 32 deletions(-)
> >
> > diff --git a/drivers/phy/qualcomm/phy-qcom-qmp.c b/drivers/phy/qualcomm/phy-qcom-qmp.c
> > index 31036aa..021cbb0 100644
> > --- a/drivers/phy/qualcomm/phy-qcom-qmp.c
> > +++ b/drivers/phy/qualcomm/phy-qcom-qmp.c
> > @@ -3546,12 +3546,11 @@ static const u8 qmp_dp_v3_voltage_swing_hbr_rbr[4][4] = {
> > { 0x1f, 0xff, 0xff, 0xff }
> > };
> >
> > -static int qcom_qmp_phy_configure_dp_swing(struct qmp_phy *qphy,
> > - unsigned int drv_lvl_reg, unsigned int emp_post_reg)
> > +static int qcom_qmp_phy_configure_dp_swing(struct qmp_phy *qphy)
>
> As this becomes a v3-only function, could you please rename it to
> qcom_qmp_v3_phy_configure_dp_swing()

Can it be combined with the v4 version instead? The code structure is
essentially the same, modulo the tables used and the register offset
written to.