[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190226092421.13440-1-embedded24@evers-fischer.de>
Date: Tue, 26 Feb 2019 10:24:21 +0100
From: Rolf Evers-Fischer <embedded24@...rs-fischer.de>
To: kishon@...com, linux-kernel@...r.kernel.org
Cc: Rolf Evers-Fischer <rolf.evers.fischer@...iv.com>
Subject: [PATCH] phy: ti-pipe3: Do not overwrite the whole PROGRAMMABILITY register
From: Rolf Evers-Fischer <rolf.evers.fischer@...iv.com>
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.
Signed-off-by: Rolf Evers-Fischer <rolf.evers.fischer@...iv.com>
---
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);
--
2.21.0
Powered by blists - more mailing lists