mirror of
https://github.com/torvalds/linux.git
synced 2026-09-24 06:24:02 +02:00
net: dsa: mt7530: check bus->read() error in core_rmw()
core_rmw() accesses the MMD core registers directly rather than through the regmap and has the same unchecked bus->read() as the one just fixed in the MDIO regmap backend: a negative errno is consumed as register data, modified and written back to the switch. Check the read and bail out like the surrounding bus accesses do. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Link: https://patch.msgid.link/48bb9f0b311a9efeda2a6b24a7e05d4792393a3b.1785811140.git.daniel@makrotopia.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
5cc65c01cd
commit
573d6e3afe
|
|
@ -124,8 +124,12 @@ core_rmw(struct mt7530_priv *priv, u32 reg, u32 mask, u32 set)
|
|||
goto err;
|
||||
|
||||
/* Read the content of the MMD's selected register */
|
||||
val = bus->read(bus, MT753X_CTRL_PHY_ADDR(priv->mdiodev->addr),
|
||||
ret = bus->read(bus, MT753X_CTRL_PHY_ADDR(priv->mdiodev->addr),
|
||||
MII_MMD_DATA);
|
||||
if (ret < 0)
|
||||
goto err;
|
||||
val = ret;
|
||||
|
||||
val &= ~mask;
|
||||
val |= set;
|
||||
/* Write the data into MMD's selected register */
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user