Message ID | 1299512987-11152-1-git-send-email-jacmet@sunsite.dk |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
On Mon, Mar 07, 2011 at 04:49:47PM +0100, Peter Korsgaard wrote: > The mv88e6060 uses either the lower 16 or upper 16 mii addresses, > depending on the value of the EE_CLK/ADDR4 pin. Support both > configurations by using the sw_addr setting as base address. > > Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> Looks good! Acked-by: Lennert Buytenhek <buytenh@wantstofly.org> -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Lennert Buytenhek <buytenh@wantstofly.org> Date: Mon, 7 Mar 2011 19:24:13 +0100 > On Mon, Mar 07, 2011 at 04:49:47PM +0100, Peter Korsgaard wrote: > >> The mv88e6060 uses either the lower 16 or upper 16 mii addresses, >> depending on the value of the EE_CLK/ADDR4 pin. Support both >> configurations by using the sw_addr setting as base address. >> >> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> > > Looks good! > > Acked-by: Lennert Buytenhek <buytenh@wantstofly.org> Applied, thanks. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/net/dsa/mv88e6060.c b/net/dsa/mv88e6060.c index 83277f4..8f4ff5a 100644 --- a/net/dsa/mv88e6060.c +++ b/net/dsa/mv88e6060.c @@ -18,7 +18,7 @@ static int reg_read(struct dsa_switch *ds, int addr, int reg) { - return mdiobus_read(ds->master_mii_bus, addr, reg); + return mdiobus_read(ds->master_mii_bus, ds->pd->sw_addr + addr, reg); } #define REG_READ(addr, reg) \ @@ -34,7 +34,8 @@ static int reg_read(struct dsa_switch *ds, int addr, int reg) static int reg_write(struct dsa_switch *ds, int addr, int reg, u16 val) { - return mdiobus_write(ds->master_mii_bus, addr, reg, val); + return mdiobus_write(ds->master_mii_bus, ds->pd->sw_addr + addr, + reg, val); } #define REG_WRITE(addr, reg, val) \ @@ -50,7 +51,7 @@ static char *mv88e6060_probe(struct mii_bus *bus, int sw_addr) { int ret; - ret = mdiobus_read(bus, REG_PORT(0), 0x03); + ret = mdiobus_read(bus, sw_addr + REG_PORT(0), 0x03); if (ret >= 0) { ret &= 0xfff0; if (ret == 0x0600)
The mv88e6060 uses either the lower 16 or upper 16 mii addresses, depending on the value of the EE_CLK/ADDR4 pin. Support both configurations by using the sw_addr setting as base address. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> --- net/dsa/mv88e6060.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-)