netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Krzysztof Olędzki" <ole@ans.pl>
To: Matt Carlson <mcarlson@broadcom.com>
Cc: Jean-Louis Dupond <info@dupondje.be>,
	Michael Chan <mchan@broadcom.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	David Christensen <davidch@broadcom.com>
Subject: Re: tg3 driver not advertising 1000mbit
Date: Wed, 24 Nov 2010 21:09:52 +0100	[thread overview]
Message-ID: <4CED7110.9030801@ans.pl> (raw)
In-Reply-To: <20090702164212.GA8430@xw6200.broadcom.net>

On 2009-07-02 18:42, Matt Carlson wrote:
> On Tue, Jun 30, 2009 at 02:20:45AM -0700, Jean-Louis Dupond wrote:
>> # ethtool -i eth0
>> driver: tg3
>> version: 3.97
>> firmware-version: 5722-v3.08, ASFIPMI v6.02
>> bus-info: 0000:01:00.0
>>
>> Kernel version 2.6.29.4
>
> Rats.  I mirrored your setup here, but I still can't reproduce the
> problem.  I still suspect this is a bad driver<=>  firmware interaction.
>
> Can you apply the following patch and show me the resulting syslog
> entries?  The patch is just making sure the firmware request to shutdown
> really goes through.
>
>
> diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c
> index 46a3f86..900e28b 100644
> --- a/drivers/net/tg3.c
> +++ b/drivers/net/tg3.c
> @@ -1124,6 +1124,9 @@ static void tg3_wait_for_event_ack(struct tg3 *tp)
>   			break;
>   		udelay(8);
>   	}
> +
> +	if (i == delay_cnt)
> +		printk( KERN_WARNING "Firmware didn't ack driver event!\n" );
>   }
>
>   /* tp->lock is held. */
> @@ -6330,12 +6333,16 @@ static void tg3_stop_fw(struct tg3 *tp)
>   		/* Wait for RX cpu to ACK the previous event. */
>   		tg3_wait_for_event_ack(tp);
>
> +		printk( KERN_NOTICE "%s: Stopping firmware.\n", tp->dev->name );
> +
>   		tg3_write_mem(tp, NIC_SRAM_FW_CMD_MBOX, FWCMD_NICDRV_PAUSE_FW);
>
>   		tg3_generate_fw_event(tp);
>
>   		/* Wait for RX cpu to ACK this event. */
>   		tg3_wait_for_event_ack(tp);
> +
> +		printk( KERN_NOTICE "%s: Operation completed.\n", tp->dev->name );
>   	}
>   }
>
> @@ -7537,6 +7544,8 @@ static void tg3_timer(unsigned long __opaque)
>   		    !(tp->tg3_flags3&  TG3_FLG3_ENABLE_APE)) {
>   			tg3_wait_for_event_ack(tp);
>
> +			printk( KERN_NOTICE "%s: Sending keepalive event.\n", tp->dev->name );
> +
>   			tg3_write_mem(tp, NIC_SRAM_FW_CMD_MBOX,
>   				      FWCMD_NICDRV_ALIVE3);
>   			tg3_write_mem(tp, NIC_SRAM_FW_CMD_LEN_MBOX, 4);

Hello,

Have you been able to solve this issue? I have a similar problem with 
Dell PowerEdge R300 servers connected to HP2610 100Mbps switches. The 
servers contain two BCM5722 NICs and after a reboot, with probability 
about 70%, I end up with 10Mbps HD mainly on the first NIC.

I discovered that it is enough to run:
  /sbin/mii-tool -R eth0
  /sbin/mii-tool -R eth1
to trigger renegotiation that brings expected 100Mbps FD. For now, I 
added this to my startups scripts as a workaround.

This problem exists in 2.6.30-stable, 2.6.31-stable and 2.6.34-stable 
which I'm currently running.

Best regards,

			Krzysztof Olędzki

  reply	other threads:[~2010-11-24 20:28 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-12 14:05 tg3 driver not advertising 1000mbit Jean-Louis Dupond
2009-06-12 18:37 ` Michael Chan
2009-06-12 21:51   ` Jean-Louis Dupond
2009-06-12 22:01     ` Michael Chan
2009-06-12 22:16       ` Jean-Louis Dupond
2009-06-13  1:31         ` Michael Chan
2009-06-23 18:21           ` Igor Widlinski
2009-06-24 17:36         ` Matt Carlson
2009-06-26 21:33           ` Jean-Louis Dupond
2009-06-27  2:26             ` Matt Carlson
2009-06-27  9:58               ` Jean-Louis Dupond
2009-06-29 18:50                 ` Matt Carlson
2009-06-30  9:20                   ` Jean-Louis Dupond
2009-07-02 16:42                     ` Matt Carlson
2010-11-24 20:09                       ` Krzysztof Olędzki [this message]
2010-11-24 22:27                         ` Jean-Louis Dupond

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4CED7110.9030801@ans.pl \
    --to=ole@ans.pl \
    --cc=davidch@broadcom.com \
    --cc=info@dupondje.be \
    --cc=mcarlson@broadcom.com \
    --cc=mchan@broadcom.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).