linux/drivers
Stephen Hemminger 798fdd07fc sky2: RX lockup fix
I'm using a Marvell 88E8062 on a custom PPC64 blade and ran into RX
lockups while validating the sky2 driver.  The receive MAC FIFO would
become stuck during testing with high traffic.  One port of the 88E8062
would lockup, while the other port remained functional.  Re-inserting
the sky2 module would not fix the problem - only a power cycle would.

I looked over Marvell's most recent sk98lin driver and it looks like
they had a "workaround" for the Yukon XL that the sky2 doesn't have yet.
The sk98lin driver disables the RX MAC FIFO flush feature for all
revisions of the Yukon XL.

According to skgeinit.c of the sk98lin driver, "Flushing must be enabled
(needed for ASF see dev. #4.29), but the flushing mask should be
disabled (see dev. #4.115)".  Nice. I implemented this same change in
the sky2 driver and verified that the RX lockup I was seeing was
resolved.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-14 15:25:47 -05:00
..
acorn/char
acpi ACPI: move timer broadcast before busmaster disable 2007-12-07 19:16:17 +01:00
amba
ata libata: kill spurious NCQ completion detection 2007-12-07 15:27:54 -05:00
atm [ATM]: [he] initialize lock and tasklet earlier 2007-11-27 11:03:16 +08:00
auxdisplay
base create /sys/.../power when CONFIG_PM is set 2007-11-28 13:53:53 -08:00
block Fix NULL dereference in umem.c 2007-12-10 19:43:55 -08:00
bluetooth
cdrom
char Pull apm-freeze-fix into release branch 2007-12-06 16:51:29 -05:00
clocksource
connector [CONNECTOR]: Fix a spurious kfree_skb() call 2007-10-30 21:29:47 -07:00
cpufreq
cpuidle cpuidle: remove unused exports 2007-10-29 17:27:50 -04:00
crypto uml: add !UML dependencies 2007-12-03 08:13:17 -08:00
dca
dio
dma dmaengine: correct invalid assumptions in the Kconfig text 2007-11-29 09:24:53 -08:00
edac i5000_edac: no need to __stringify() KBUILD_BASENAME 2007-11-14 18:45:41 -08:00
eisa
firewire firewire: OHCI 1.0 Isochronous Receive support 2007-12-10 21:55:19 +01:00
firmware
hid HID: Don't access input_dev->private directly 2007-10-31 13:30:35 +01:00
hwmon HWMON: coretemp, suspend fix 2007-12-04 01:35:32 -05:00
i2c i2c/isp1301_omap: Build fix 2007-12-12 13:45:25 +01:00
ide ide: More TSST drives with broken cable detection 2007-11-27 21:35:57 +01:00
ieee1394 ieee1394: iso and async streams: s/g list fix 2007-11-04 14:31:16 +01:00
infiniband IB/ehca: Fix static rate if path faster than link 2007-11-30 16:19:41 -08:00
input spi: use simplified spi_sync() calling convention 2007-12-05 09:21:19 -08:00
isdn I4L: fix isdn_ioctl memory overrun vulnerability 2007-12-03 08:13:17 -08:00
kvm KVM: SVM: Fix FPU leak while emulating clts 2007-11-27 15:38:18 +02:00
leds leds: Fix led trigger locking bugs 2007-12-07 09:06:53 +00:00
lguest virtio: fix module/device unloading 2007-11-19 11:20:42 +11:00
macintosh [POWERPC] windfarm: Fix windfarm thread freezer interaction 2007-11-08 14:15:34 +11:00
mca
md raid5: fix unending write sequence 2007-11-14 18:45:39 -08:00
media V4L/DVB (6609): Re-adds lock safe videobuf_read_start 2007-12-12 08:21:37 -02:00
message i2o: debug messages corrected 2007-11-05 15:12:31 -08:00
mfd MFD: SM501 debug typo fix 2007-11-29 09:24:53 -08:00
misc Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2007-11-27 14:20:35 -08:00
mmc spi: use simplified spi_sync() calling convention 2007-12-05 09:21:19 -08:00
mtd
net sky2: RX lockup fix 2007-12-14 15:25:47 -05:00
nubus
of
oprofile oProfile: oops when profile_pc() returns ~0LU 2007-11-14 18:45:37 -08:00
parisc [PARISC] lba_pci: pci_claim_resources disabled expansion roms 2007-12-06 09:38:26 -08:00
parport
pci Revert "PCI: fix IDE legacy mode resources" 2007-12-10 07:40:54 -08:00
pcmcia pcmcia: fix kernel-doc comments 2007-12-10 19:43:54 -08:00
pnp drivers/pnp/resource.c: Add missing pci_dev_put 2007-11-29 09:24:52 -08:00
power
ps3 ps3: prefix all ps3-specific kernel modules with `ps3-' 2007-11-29 09:24:51 -08:00
rapidio
rtc spi: use simplified spi_sync() calling convention 2007-12-05 09:21:19 -08:00
s390 [S390]: Fix use of skb after netif_rx 2007-12-11 02:45:29 -08:00
sbus
scsi esp_scsi: fix reset cleanup spinlock recursion 2007-12-10 19:43:55 -08:00
serial [SERIAL] sparc: Infrastructure to fix section mismatch bugs. 2007-12-12 07:36:34 -08:00
sh superhyway: Handle device_register() retval properly. 2007-11-07 11:13:55 +09:00
sn
spi atmel_spi: reload RCR before TCR 2007-12-10 19:43:55 -08:00
ssb ssb: Fix PCMCIA-host lowlevel bus access 2007-11-10 22:01:53 -08:00
tc
telephony telephony: phonedev panics if unregistering device not registered [Bug 9266] 2007-11-05 15:12:33 -08:00
uio
usb revert "keyspan: init termios properly" 2007-11-29 09:24:54 -08:00
video x86_64 EFI boot support: EFI frame buffer driver 2007-11-29 09:24:54 -08:00
virtio virtio: fix module/device unloading 2007-11-19 11:20:42 +11:00
w1 W1: fix memset size error 2007-11-14 18:45:36 -08:00
watchdog Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog 2007-11-02 19:36:26 -07:00
xen
zorro Amiga zorro bus: Add missing zorro_device_remove() 2007-11-26 19:15:31 -08:00
Kconfig
Makefile