Commit Graph

139 Commits

Author SHA1 Message Date
Stephen Hemminger 302d12522a [PATCH] sky2: more conservative transmit locking
Be more careful about transmit locking, this solves a possible race
between tx_complete and transmit, that would cause a tx timeout.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:30 -05:00
Stephen Hemminger 28bd181a8e [PATCH] sky2: don't inline so much
Don't need to inline quite so many routines, let the compiler
decide

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:30 -05:00
Stephen Hemminger 6aad85d673 [PATCH] sky2: use kzalloc
Can use kzalloc here.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:30 -05:00
Stephen Hemminger 3be92a7023 [PATCH] sky2: ratelimit error messages
Make sure and rate limit all the error messages that might occur. If a problem
occurs then a few messages are enough.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:30 -05:00
Stephen Hemminger a036119f97 [PATCH] sky2: optimize for 32 bit dma
Small optimization, if dma addresses are 32 bits, then high
bits are always zero.

Signed-off-by: Stephen Hemminger <shemminger@osdl.or>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:30 -05:00
Stephen Hemminger dc4d5ea221 [PATCH] sky2: don't bother clearing status ring elements
Don't need to zero out the status ring entries after processing.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:29 -05:00
Stephen Hemminger 762c2de2e6 [PATCH] sky2: write barrier's
Be more careful about memory barriers. The only place we really
need them is before and after updating the chip's ring interface.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:29 -05:00
Stephen Hemminger 1c28f6ba60 [PATCH] sky2: fix ram buffer for Yukon FE rev 2
Fix problems with Yukon FE rev 2 chipset. Don't cut and paste bugs in from
sk98lin driver. Change how the ram buffer is divided up, and make the math
clearer. Also, set the thresholds where rx takes precedence. The threshold
values are just guesses at this point, it might be worth tuning them later.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:29 -05:00
Stephen Hemminger e0c94455ce [PATCH] sky2: version 0.12
Version update.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:29 -05:00
Stephen Hemminger d1f3d4dddd [PATCH] sky2: call pci_set_consistent_dma_mask
Need to call pci_set_consistent_dma_mask in the case of 64 bit
DMA.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:29 -05:00
Stephen Hemminger 82788c7a47 [PATCH] sky2: receive buffer alignment
Need to make sure that sky2 receive buffers are 64 bit
aligned. Also, don't need to start off with GFP_ATOMIC
on initial setup.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-17 19:27:28 -05:00
Stephen Hemminger c4c48d83e9 [PATCH] sky2: version 0.11
Version number change.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-24 09:38:35 -05:00
Stephen Hemminger 6e15b71249 [PATCH] sky2: handle hardware packet overrun
It is possible for hardware to get confused when an oversized frame
is received. In that case, just drop the packet and increment a counter.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-24 09:38:35 -05:00
Stephen Hemminger 6ed995bb29 [PATCH] sky2: don't lose multicast addresses
Don't lose multicast addresses when link goes down or ring
parameters change.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-24 09:38:35 -05:00
Stephen Hemminger 1b537565a8 [PATCH] sky2: handle out of memory on admin changes
Don't die if we run out of memory on mtu or ring parameter change.
For other admin operations, don't rebuild Rx ring, just restart the PHY.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-24 09:38:35 -05:00
Stephen Hemminger fed954dafc [PATCH] sky2: version 0.10
Change version number.  Still don't have enough history on this
to call it 1.0 yet.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:22 -05:00
Stephen Hemminger 75d070c56f [PATCH] sky2: disable rx checksum on Yukon XL
Under load, my SysKonnect SK-9S22 sees duplicate checksums from
earlier packets.  Doesn't happen on other platforms so just disable
receive checksum there.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:22 -05:00
Stephen Hemminger 585b56012f [PATCH] sky2: turn on tx flow control
Turn symmetric flow control on by default. This was an oversight
in the initial versions.

Signed-off-by: Stephen HEmminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:22 -05:00
Stephen Hemminger d70cd51ac0 [PATCH] sky2: prefetch tuning
Add a couple more prefetches to where we walk the rings.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:21 -05:00
Stephen Hemminger 8c463ef792 [PATCH] sky2: quiet ring full message in case of race
Don't print ring full message if we lose race.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:21 -05:00
Stephen Hemminger 8cc048e338 [PATCH] sky2: handle tx timeout
Put more logic in to try and handle transmit timeout recovery.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:21 -05:00
Stephen Hemminger 69634ee736 [PATCH] sky2: interrupt coalescing tuning
Adjust interrupt deferral values for better performance and avoid
starvation issues under stress.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:21 -05:00
Stephen Hemminger 3e4b32e116 [PATCH] sky2: interrupt/poll optimization
Optimize poll routine by not clearing interrupt till after
processing, and checking for more work before re-enable.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:21 -05:00
Stephen Hemminger af2a58acb1 [PATCH] sky2: transmit complete routine optimization
Hand optimize transmit completion routine.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:21 -05:00
Stephen Hemminger 13b97b74b9 [PATCH] sky2: transmit complete index optimization
Change transmit complete handling to use the status values
in the poll list because they are in-cache, rather than reading
non-cached memory for chips status.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-12 15:27:21 -05:00