On Wed, Mar 20, 2013 at 09:04:30AM -0700, Nithin Nayak Sujir wrote:
> From: Nithin Sujir <[email protected]>
>
> 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 <[email protected]>
> Reviewed-by: Benjamin Li <[email protected]>
> Signed-off-by: Nithin Nayak Sujir <[email protected]>
> Signed-off-by: Michael Chan <[email protected]>
> Signed-off-by: David S. Miller <[email protected]>
> ---
> 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 [email protected]
> 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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html