Re: mcp55 forcedeth woes
From: Yan Seiner
Date: Tue Apr 14 2009 - 10:37:01 EST
Gene Heskett wrote:
On Monday 13 April 2009, Yan Seiner wrote:
Gene Heskett wrote:
On Monday 13 April 2009, Yan Seiner wrote:
I have a few Asus M2N-SLI deluxe mobos. These mobos have the MCP55
chipset and two 1gb ethernet ports. Occasionally, and for no reason that
I can figure out, these ports will die. There are various ways to try
and fix these; they seem to be about 50% effective, and approach
something akin to voodoo.
Based on this discussion here:
http://patchwork.kernel.org/patch/16212/
I've gotten the ability to turn the ports on and off somewhat.
For port 0,
ethtool -s eth0 autoneg off speed 10 duplex full
turns on the link, and gets me half-duplex, 10mb/sec. Not much, granted.
ethtool -s eth0 autoneg off speed 100 duplex full
causes the link to go up and down on about a 2 second cycle.
ethtool -s eth0 autoneg on
causes the link to drop.
For port 1, the behavior is similar, except that I can get a stable 100
mbit connection.
So the problem is in the autoneg code. It's a driver issue as this is
reported widely to work under windows of various flavors.
I'm running 2.6.29.1; I'm ok with patching and building kernels, but I'm
not a kernel hacker.
What, if anything, can I provide and do to fix this?
It was in 2.6.29-rc8 or 9 that they finally got the ability to turn them
back on on my identical mobo. Through most of the 29-rcx series we had
the choice of rebooting with the reset button, or powering everything
associated with the ports down for about 2 minutes so they would forget
they were turned off by a graceful shutdown. Now they are turned off (and
I've still NDI why) and back on like they are supposed to be. I called
that a PIMA.
Yeah, I've been fighting this for a while.... The boards are rock-solid
under load, which is why I like them.... But this is a PITA.
This board worked fine, then I shutdown and the ports have not come back
since. I'm running 2.6.29.1 - no joy on the ports.
Shut it down, including removing the power cord, and unplug all ethernet
cables attached, give it time to fully discharge all stored power in the caps,
at least 30 secs, I usually go make a cup of tea in the microwave, so its
about 3 minutes. Plug everything back in and power it up, they should work
again.
However, I've been running 2.6.29.1-rc2, and that has not been a problem, I
can see the leds on the ports go plumb dark at it runs the shutdown, and come
back on about 15 seconds before the init.d/network script runs as it boots up.
I'm building forcedeth from .30-rc1 - we'll see if that helps.
Something like 15% of the driver changed, so it's still in very heavy
development.
Wow! Like you, I'm using forcedeth. 2.6.29.1-rc1 did have a short uptime for
forcedeth bug IIRC, but so far, -rc2 has lasted longer than KDE-4.2.1 on this
F10 system will, I had an 8 day uptime at first, and I'm in the 5th day again.
I killed it the first time screwing with some worthless bluetooth dongles I
got from USBGear. Locked it up tighter than a Nebraska bulls ass in flytime.
Had to use the reset button. :(
I followed Gene's advice and got some progress....
port 0 is now fully functional. Port 1, however, remains in its
semi-zombie state. Maybe I'll take the machine off-line longer next
time. Maybe I'll sacrifice a black and white chicken at the same time.
I also back-ported 2.9.30-rc1 forcedeth.c to my 2.6.29.1 kernel; no
difference whatsoever.
One other observation:
On the switch, the status LEDs glow with half-brightness when I enable
port 1 using ethtool... This leads me to suspect that the voltage
levels on the port aren't normal. Not being a hardware engineer, I have
no idea what importance this has; I am offering this as an observation.
--Yan
--
Yan Seiner
Support my bid for the 4J School Board.
Visit http://www.seiner.com/schoolboard
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/