|
@@ -150,10 +150,8 @@ static int orion_mdio_write(struct mii_bus *bus, int mii_id,
|
|
|
mutex_lock(&dev->lock);
|
|
|
|
|
|
ret = orion_mdio_wait_ready(bus);
|
|
|
- if (ret < 0) {
|
|
|
- mutex_unlock(&dev->lock);
|
|
|
- return ret;
|
|
|
- }
|
|
|
+ if (ret < 0)
|
|
|
+ goto out;
|
|
|
|
|
|
writel(((mii_id << MVMDIO_SMI_PHY_ADDR_SHIFT) |
|
|
|
(regnum << MVMDIO_SMI_PHY_REG_SHIFT) |
|
|
@@ -161,9 +159,9 @@ static int orion_mdio_write(struct mii_bus *bus, int mii_id,
|
|
|
(value << MVMDIO_SMI_DATA_SHIFT)),
|
|
|
dev->regs);
|
|
|
|
|
|
+out:
|
|
|
mutex_unlock(&dev->lock);
|
|
|
-
|
|
|
- return 0;
|
|
|
+ return ret;
|
|
|
}
|
|
|
|
|
|
static int orion_mdio_reset(struct mii_bus *bus)
|