From fad6849f475dcdadf6031b85e8010880591e31f0 Mon Sep 17 00:00:00 2001 From: AmadeusGhost <42570690+AmadeusGhost@users.noreply.github.com> Date: Wed, 14 Apr 2021 11:23:05 +0800 Subject: [PATCH] Revert "ramips: mt7530 swconfig: fix race condition in register access" This reverts commit a5b9ff72cff3f25516b9c8142da9c875eb41e044. Fix: #359 --- .../drivers/net/ethernet/mediatek/mt7530.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mt7530.c b/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mt7530.c index 959c777d62..7003f3efe4 100644 --- a/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mt7530.c +++ b/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mt7530.c @@ -323,11 +323,9 @@ mt7530_r32(struct mt7530_priv *priv, u32 reg) if (priv->bus) { u16 high, low; - mutex_lock(&priv->bus->mdio_lock); - __mdiobus_write(priv->bus, 0x1f, 0x1f, (reg >> 6) & 0x3ff); - low = __mdiobus_read(priv->bus, 0x1f, (reg >> 2) & 0xf); - high = __mdiobus_read(priv->bus, 0x1f, 0x10); - mutex_unlock(&priv->bus->mdio_lock); + mdiobus_write(priv->bus, 0x1f, 0x1f, (reg >> 6) & 0x3ff); + low = mdiobus_read(priv->bus, 0x1f, (reg >> 2) & 0xf); + high = mdiobus_read(priv->bus, 0x1f, 0x10); return (high << 16) | (low & 0xffff); } @@ -342,11 +340,9 @@ static void mt7530_w32(struct mt7530_priv *priv, u32 reg, u32 val) { if (priv->bus) { - mutex_lock(&priv->bus->mdio_lock); - __mdiobus_write(priv->bus, 0x1f, 0x1f, (reg >> 6) & 0x3ff); - __mdiobus_write(priv->bus, 0x1f, (reg >> 2) & 0xf, val & 0xffff); - __mdiobus_write(priv->bus, 0x1f, 0x10, val >> 16); - mutex_unlock(&priv->bus->mdio_lock); + mdiobus_write(priv->bus, 0x1f, 0x1f, (reg >> 6) & 0x3ff); + mdiobus_write(priv->bus, 0x1f, (reg >> 2) & 0xf, val & 0xffff); + mdiobus_write(priv->bus, 0x1f, 0x10, val >> 16); return; }