[PATCH] sky2: 88E803X transmit lockup
authorStephen Hemminger <shemminger@osdl.org>
Sat, 21 Oct 2006 00:06:11 +0000 (17:06 -0700)
committerJeff Garzik <jeff@garzik.org>
Sat, 21 Oct 2006 18:08:24 +0000 (14:08 -0400)
commit470ea7eba4aaa517533f9b02ac9a104e77264548
tree2726cf596e46f72e7ab54860a0589b2f858c5f21
parent7347b03d25ad7d7f001373cf64f709457c6af618
[PATCH] sky2: 88E803X transmit lockup

The reason sky2 driver was locking up on transmit on the Yukon-FE chipset
is that it was misconfiguring the internal RAM buffer so the transmitter
and receiver were sharing the same space.

The code assumed there was 16K of RAM on Yukon-FE (taken from vendor driver
sk98lin which is even more f*cked up on this). Then it assigned based on that.
The giveaway was that the registers would only hold 9bits so both RX/TX
had 0..1ff for space. It is a wonder it worked at all!

This patch addresses this, and fixes an easily reproducible hang on Transmit.
Only the Yukon-FE chip is Marvell 88E803X (10/100 only) are affected.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/net/sky2.c