OSDN Git Service

net: dsa: b53: Don't assign autonegotiation enabled
authorFlorian Fainelli <f.fainelli@gmail.com>
Fri, 21 Sep 2018 22:30:05 +0000 (15:30 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 22 Sep 2018 02:57:03 +0000 (19:57 -0700)
PHYLINK takes care of filing the right information into
state->an_enabled, get rid of the read from the SerDes's BMCR register.

Fixes: 0e01491de646 ("net: dsa: b53: Add SerDes support")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/b53/b53_serdes.c

index b45c55e..629bf14 100644 (file)
@@ -100,15 +100,13 @@ int b53_serdes_link_state(struct b53_device *dev, int port,
                          struct phylink_link_state *state)
 {
        u8 lane = b53_serdes_map_lane(dev, port);
-       u16 dig, bmcr, bmsr;
+       u16 dig, bmsr;
 
        if (lane == B53_INVALID_LANE)
                return 1;
 
        dig = b53_serdes_read(dev, lane, B53_SERDES_DIGITAL_STATUS,
                              SERDES_DIGITAL_BLK);
-       bmcr = b53_serdes_read(dev, lane, B53_SERDES_MII_REG(MII_BMCR),
-                              SERDES_MII_BLK);
        bmsr = b53_serdes_read(dev, lane, B53_SERDES_MII_REG(MII_BMSR),
                               SERDES_MII_BLK);
 
@@ -129,7 +127,6 @@ int b53_serdes_link_state(struct b53_device *dev, int port,
        }
 
        state->duplex = dig & DUPLEX_STATUS ? DUPLEX_FULL : DUPLEX_HALF;
-       state->an_enabled = !!(bmcr & BMCR_ANENABLE);
        state->an_complete = !!(bmsr & BMSR_ANEGCOMPLETE);
        state->link = !!(dig & LINK_STATUS);
        if (dig & PAUSE_RESOLUTION_RX_SIDE)