On Wed, Mar 20, 2013 at 09:04:30AM -0700, Nithin Nayak Sujir wrote: > From: Nithin Sujir <nsujir@xxxxxxxxxxxx> > > Hi Greg, > Resubmitting this patch for the stable 3.4.y and 3.8.y trees. > It is now in Linus's tree. > > Upstream commit id: 7c6cdead7cc9a99650d15497aae47d7472217eb1 > > The upstream patch has been modified to compile on 3.4 and 3.8. > Specifically tg3_asic_rev() has been changed to GET_ASIC_REV(). I'm queuing this for 3.5 kernel as well. Cheers, -- Luis > > ========================= > > Commit d13ba512cbba7de5d55d7a3b2aae7d83c8921457 ("tg3: Remove > SPEED_UNKNOWN checks") 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@xxxxxxxxx> > Reviewed-by: Benjamin Li <benli@xxxxxxxxxxxx> > Signed-off-by: Nithin Nayak Sujir <nsujir@xxxxxxxxxxxx> > Signed-off-by: Michael Chan <mchan@xxxxxxxxxxxx> > Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> > --- > drivers/net/ethernet/broadcom/tg3.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c > index bdb0869..054e5ee 100644 > --- a/drivers/net/ethernet/broadcom/tg3.c > +++ b/drivers/net/ethernet/broadcom/tg3.c > @@ -4097,6 +4097,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 (GET_ASIC_REV(tp->pci_chip_rev_id) == 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: > -- > 1.8.1.4 > > > -- > To unsubscribe from this list: send the line "unsubscribe stable" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html