]> Pileus Git - ~andy/linux/blobdiff - drivers/net/ethernet/broadcom/tg3.c
tg3: 5715 does not link up when autoneg off
[~andy/linux] / drivers / net / ethernet / broadcom / tg3.c
index 93729f9423588de05fa4d5e25dbcef99438fd17d..67d2663b3974aeaf03acfeb9500704ee5659ab8a 100644 (file)
@@ -4130,6 +4130,14 @@ static void tg3_phy_copper_begin(struct tg3 *tp)
                tp->link_config.active_speed = tp->link_config.speed;
                tp->link_config.active_duplex = tp->link_config.duplex;
 
+               if (tg3_asic_rev(tp) == ASIC_REV_5714) {
+                       /* With autoneg disabled, 5715 only links up when the
+                        * advertisement register has the configured speed
+                        * enabled.
+                        */
+                       tg3_writephy(tp, MII_ADVERTISE, ADVERTISE_ALL);
+               }
+
                bmcr = 0;
                switch (tp->link_config.speed) {
                default: