Re: [PATCH] phy: ti-pipe3: Do not overwrite the whole PROGRAMMABILITY register

From: Rolf Evers-Fischer
Date: Tue Feb 26 2019 - 04:45:39 EST


Kishon,

On Tue, 26 Feb 2019, Kishon Vijay Abraham I wrote:

> Rolf,
>
> On 26/02/19 2:54 PM, Rolf Evers-Fischer wrote:
> > From: Rolf Evers-Fischer <rolf.evers.fischer@xxxxxxxxx>
> >
> > Previously, ti_pipe3_calibrate() wrote all bits in the
> > PCIEPHYRX_ANA_PROGRAMMABILITY register, thus overwriting bits,
> > which should not be modified.
> > Fix ti_pipe3_calibrate() so that it only modifies LOSD and
> > INTERFACE bits.
>
> A patch to fix this was sent a week earlier by Colin
> https://lkml.org/lkml/2019/2/19/459
>
> Thanks
> Kishon
> >
> > Signed-off-by: Rolf Evers-Fischer <rolf.evers.fischer@xxxxxxxxx>
> > ---
> > drivers/phy/ti/phy-ti-pipe3.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/phy/ti/phy-ti-pipe3.c b/drivers/phy/ti/phy-ti-pipe3.c
> > index 68ce4a082b9b..693acc167351 100644
> > --- a/drivers/phy/ti/phy-ti-pipe3.c
> > +++ b/drivers/phy/ti/phy-ti-pipe3.c
> > @@ -303,7 +303,7 @@ static void ti_pipe3_calibrate(struct ti_pipe3 *phy)
> >
> > val = ti_pipe3_readl(phy->phy_rx, PCIEPHYRX_ANA_PROGRAMMABILITY);
> > val &= ~(INTERFACE_MASK | LOSD_MASK | MEM_PLLDIV);
> > - val = (0x1 << INTERFACE_SHIFT | 0xA << LOSD_SHIFT);
> > + val |= (0x1 << INTERFACE_SHIFT | 0xA << LOSD_SHIFT);
> > ti_pipe3_writel(phy->phy_rx, PCIEPHYRX_ANA_PROGRAMMABILITY, val);
> >
> > val = ti_pipe3_readl(phy->phy_rx, PCIEPHYRX_DIGITAL_MODES);
> >
>
please excuse me. I must have missed that one.
Therefore please forget about my previous mail.

Thanks
Rolf