Message ID | 7665c54a8da0d4338d5935ab272952ea6547d815.1485288602.git-series.gregory.clement@free-electrons.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, On mar., janv. 24 2017, Gregory CLEMENT <gregory.clement@free-electrons.com> wrote: > From: Romain Perier <romain.perier@free-electrons.com> > > Some Marvell ethernet switches have internal ethernet transceivers with > hardcoded phy addresses. These addresses can be greater than the number > of ports or its value might be different than the associated port number. > This is for example the case for MV88E6341 that has 6 ports and internal > Port 1 to Port4 PHYs mapped at SMI addresses from 0x11 to 0x14. > > This commits fixes the issue by removing the condition in MDIO callbacks. > > Signed-off-by: Romain Perier <romain.perier@free-electrons.com> > Reviewed-by: Andrew Lunn <andrew@lunn.ch> This flag is missing: Reviewed-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Actually I added during an interactive rebase, but I had to abort it and it was lost. Gregory > Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com> > --- > drivers/net/dsa/mv88e6xxx/chip.c | 6 ------ > 1 file changed, 6 deletions(-) > > diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c > index c7e08e13bb54..7d942f8a42a7 100644 > --- a/drivers/net/dsa/mv88e6xxx/chip.c > +++ b/drivers/net/dsa/mv88e6xxx/chip.c > @@ -2882,9 +2882,6 @@ static int mv88e6xxx_mdio_read(struct mii_bus *bus, int phy, int reg) > u16 val; > int err; > > - if (phy >= mv88e6xxx_num_ports(chip)) > - return 0xffff; > - > mutex_lock(&chip->reg_lock); > err = mv88e6xxx_phy_read(chip, phy, reg, &val); > mutex_unlock(&chip->reg_lock); > @@ -2897,9 +2894,6 @@ static int mv88e6xxx_mdio_write(struct mii_bus *bus, int phy, int reg, u16 val) > struct mv88e6xxx_chip *chip = bus->priv; > int err; > > - if (phy >= mv88e6xxx_num_ports(chip)) > - return 0xffff; > - > mutex_lock(&chip->reg_lock); > err = mv88e6xxx_phy_write(chip, phy, reg, val); > mutex_unlock(&chip->reg_lock); > -- > git-series 0.9.1
diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c index c7e08e13bb54..7d942f8a42a7 100644 --- a/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c @@ -2882,9 +2882,6 @@ static int mv88e6xxx_mdio_read(struct mii_bus *bus, int phy, int reg) u16 val; int err; - if (phy >= mv88e6xxx_num_ports(chip)) - return 0xffff; - mutex_lock(&chip->reg_lock); err = mv88e6xxx_phy_read(chip, phy, reg, &val); mutex_unlock(&chip->reg_lock); @@ -2897,9 +2894,6 @@ static int mv88e6xxx_mdio_write(struct mii_bus *bus, int phy, int reg, u16 val) struct mv88e6xxx_chip *chip = bus->priv; int err; - if (phy >= mv88e6xxx_num_ports(chip)) - return 0xffff; - mutex_lock(&chip->reg_lock); err = mv88e6xxx_phy_write(chip, phy, reg, val); mutex_unlock(&chip->reg_lock);