diff options
| -rw-r--r-- | drivers/phy/freescale/phy-fsl-lynx-core.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/phy/freescale/phy-fsl-lynx-core.h b/drivers/phy/freescale/phy-fsl-lynx-core.h index d82e529fa65a..3d9508dfb2c1 100644 --- a/drivers/phy/freescale/phy-fsl-lynx-core.h +++ b/drivers/phy/freescale/phy-fsl-lynx-core.h @@ -93,7 +93,8 @@ static inline void lynx_rmw(struct lynx_priv *priv, unsigned long off, u32 val, orig = lynx_read(priv, off); tmp = orig & ~mask; tmp |= val; - lynx_write(priv, off, tmp); + if (orig != tmp) + lynx_write(priv, off, tmp); } #define lynx_lane_rmw(lane, reg, val, mask) \ |
