diff mbox

[net] tg3: 5715 does not link up when autoneg off

Message ID 1363138368-10651-1-git-send-email-nsujir@broadcom.com
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Nithin Sujir March 13, 2013, 1:32 a.m. UTC
From: Nithin Sujir <nsujir@broadcom.com>

Commit d13ba512cbba7de5d55d7a3b2aae7d83c8921457 cleaned up the autoneg
advertisement by removing some dead code. One effect of this change was that
the advertisement register would not be updated if autoneg is turned off.

This exposed a bug on the 5715 device w.r.t linking. The 5715 defaults
to advertise only 10Mb Full duplex. But with autoneg disabled, it needs
the configured speed enabled in the advertisement register to link up.

This patch adds the work around to advertise all speeds on the 5715 when
autoneg is disabled.

Reported-by: Marcin Miotk <marcinmiotk81@gmail.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
---
 drivers/net/ethernet/broadcom/tg3.c | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

David Miller March 13, 2013, 2 p.m. UTC | #1
From: "Nithin Nayak Sujir" <nsujir@broadcom.com>
Date: Tue, 12 Mar 2013 18:32:48 -0700

> From: Nithin Sujir <nsujir@broadcom.com>
> 
> Commit d13ba512cbba7de5d55d7a3b2aae7d83c8921457 cleaned up the autoneg
> advertisement by removing some dead code. One effect of this change was that
> the advertisement register would not be updated if autoneg is turned off.
> 
> This exposed a bug on the 5715 device w.r.t linking. The 5715 defaults
> to advertise only 10Mb Full duplex. But with autoneg disabled, it needs
> the configured speed enabled in the advertisement register to link up.
> 
> This patch adds the work around to advertise all speeds on the 5715 when
> autoneg is disabled.
> 
> Reported-by: Marcin Miotk <marcinmiotk81@gmail.com>
> Reviewed-by: Benjamin Li <benli@broadcom.com>
> Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com>
> Signed-off-by: Michael Chan <mchan@broadcom.com>

Applied.
--
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 mbox

Patch

diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
index 93729f9..67d2663 100644
--- a/drivers/net/ethernet/broadcom/tg3.c
+++ b/drivers/net/ethernet/broadcom/tg3.c
@@ -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: