Most recent kernel where this bug did not occur: NA Distribution: Gentoo Hardware Environment: 939Dual-SATA2 (m526x + rtl8201cl) Software Environment: Linux localhost 2.6.22-gentoo-r9 #18 SMP Tue Dec 11 03:59:33 EET 2007 x86_64 AMD Athlon(tm) 64 FX-60 Dual Core Processor AuthenticAMD GNU/Linux, m526x v0.9.3 (latest) Problem Description: After resuming from sleep mode link may not be established. Steps to reproduce: 1) echo -n standby > /sys/power/state 2) Resmue the PC I will attach the debug printouts from m526x driver. I see that the DCR8 register is not zero after resume. And driver decide to restart the controller because of that. I assume DCR8 is some kind of Tx timeout. I have not found and DS for that chip :( It seems to me that restart of PHY should be sufficient to alive the link. For me it looks more like a HW problem.
Created attachment 13963 [details] m526x debug printouts
The fix adding the suspend/resume handling for this driver went in after 2.6.23. The patch is available here: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=b6aec32a7774a398c4a194ad6b6392528b5a7a5b;hp=917270c6ed7a99d4300ce57508246813ea8613b0#patch1 but I'm not sure if it will apply to your kernel. Anyway, I have the same mainboard as you do and I can't reproduce the problem with a recent kernel (2.6.24-rc4-190-g94545ba to be exact).
I tried "Linux localhost 2.6.24-rc4-git6 #7 SMP Sat Dec 15 18:55:32 EET 2007 x86_64 AMD Athlon(tm) 64 FX-60 Dual Core Processor AuthenticAMD GNU/Linux" and it works fine for me Here is the log: Dec 15 21:16:55 localhost uli526x 0000:00:11.0: LATE suspend Dec 15 21:16:55 localhost uli526x 0000:00:11.0: EARLY resume Dec 15 21:16:55 localhost uli526x 0000:00:11.0: resuming Dec 15 21:16:55 localhost uli526x: uli526x_resume 0 Dec 15 21:16:55 localhost uli526x: uli526x_init() 0 Dec 15 21:16:55 localhost uli526x: uli526x_descriptor_init() 0 Dec 15 21:16:55 localhost uli526x: send_filter_frame() 0 Dec 15 21:16:55 localhost uli526x: Link Failed 0 Dec 15 21:16:55 localhost uli526x: eth1 NIC Link is Down Dec 15 21:16:55 localhost uli526x: uli526x_get_stats 0 Dec 15 21:16:55 localhost uli526x: Link link OK 3 Dec 15 21:16:55 localhost uli526x: Link Failed : 7849 Dec 15 21:16:55 localhost uli526x: Link link OK 3 Dec 15 21:16:55 localhost uli526x: eth1 NIC Link is Up 100 Mbps Full duplex Dec 15 21:16:55 localhost uli526x: uli526x_get_stats 0 Dec 15 21:16:55 localhost Restarting tasks ... <3>uli526x: uli526x_start_xmit 0 Dec 15 21:16:55 localhost uli526x: uli526x_start_xmit 0 Dec 15 21:16:55 localhost uli526x: uli526x_start_xmit 0 Dec 15 21:16:55 localhost uli526x: uli526x_start_xmit 0 Dec 15 21:16:55 localhost uli526x: uli526x_start_xmit 0