aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sky2.c
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] sky2: dont need to use dev_kfree_skb_anyStephen Hemminger2006-03-231-2/+2
| | | | | | | | Transmit buffers are always freed with interrupts enabled (softirq), so we can just call dev_kfree_skb. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: Fix RX statsStephen Hemminger2006-03-231-1/+1
| | | | | | | | Unicast packets are shown as multicast, real multicast packets are missing. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: typo in last stats patchStephen Hemminger2006-03-231-1/+1
| | | | | | | Typo in last stats patch. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: more ethtool statsStephen Hemminger2006-03-221-5/+22
| | | | | | | | Expose all the available hardware statistics via ethtool. And cleanup some of the statistics definitions. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2 version 1.1Stephen Hemminger2006-03-211-1/+1
| | | | | | | Set version to 1.1 Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: handle all error irqsStephen Hemminger2006-03-211-10/+45
| | | | | | | | The hardware has additional error trap interrupt bits. I have never seen them trigger, but if they do, it looks like this might be useful. Signed-off-by: Stephen Hemminger <shemminger@osdl.rog> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: transmit recoveryStephen Hemminger2006-03-211-6/+31
| | | | | | | | | This patch decodes state and revovers from any races in the transmit timeout and NAPI logic. It should never trigger, but if it does then do the right thing. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: whitespace fixesStephen Hemminger2006-03-211-5/+5
| | | | | | | Small whitespace fixes. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: add MSI supportStephen Hemminger2006-03-211-4/+77
| | | | | | | Add MSI support to sky2 driver. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: coalescing parametersStephen Hemminger2006-03-211-13/+6
| | | | | | | | Change default coalescing parameters slightly, and allow wider range of values. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: rework of NAPI and IRQ managementStephen Hemminger2006-03-211-169/+107
| | | | | | | | | | | | Redo the interupt handling of sky2 driver based on the IRQ mangement documentation. All interrupts are handled by the device0 NAPI poll routine. Don't need to adjust interrupt mask in IRQ context, done only when changing device under RTNL. Therefore don't need hwlock anymore. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: drop broken wake on lan supportStephen Hemminger2006-03-211-36/+0
| | | | | | | | | Remove wake on lan support for now. It doesn't work right, and I don't have a machine with working suspend/resume to test or fix it. It will be re-enabled later. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: remove support for untested Yukon EC/rev 0Stephen Hemminger2006-03-211-61/+32
| | | | | | | | | | | | The Yukon EC/rev0 (A1) chipset requires a bunch of workarounds. I copied these from sk98lin. But since they never got tested and add more cruft to the code; any attempt at using driver as is on this version will probably fail. It looks like this was a early engineering sample chip revision, if it ever shows up on a real system. Produce an error message. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* sky2: truncate oversize packetsStephen Hemminger2006-03-091-5/+11
| | | | | | | Turn on truncation to prevent getting choked by frames larger than expected. Without this fix, driver hangs after receiving an oversize packet. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
* sky2: force early transmit interruptsStephen Hemminger2006-03-091-4/+9
| | | | | | | | | | Avoid premature transmit ring full conditions. Force a transmit status interrupt if transmit ring gets nearly full and after a TSO send. Allow more entries in transmit ring to be used if dma_addr is 32 bits Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
* sky2: not random enoughStephen Hemminger2006-03-091-2/+1
| | | | | | | Don't use sky2 to seed random pool beacause the network packet arrival time will not be truly random due to NAPI and interrupt mitigation. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
* [PATCH] sky2: remove MSI supportStephen Hemminger2006-02-281-77/+0
| | | | | | | | | | | | Remove Message Signaled Interrupt support (for 2.6.16). MSI is inherently edge-triggered and that is incompatiable (without more work) with NAPI. In future, will replace with smarter lockless-IRQ handling like tg3.c Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sky2: close race on IRQ mask update.Stephen Hemminger2006-02-231-6/+15
| | | | | | | | Need to avoid race in updating IRQ mask. This can probably be replaced smarter use of the interrupt control registers (if/when chipset docs are available). Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
* [PATCH] sky2: use device iomem to access PCI configStephen Hemminger2006-02-231-48/+33
| | | | | | | | | | To avoid problems with PCI config access without ACPI (or busted ACPI tables), use the device's window into PCI config space. I know this probably will upset the purists, but I would rather have users than ACPI testers. It also generates less code. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
* [PATCH] sky2: force early transmit statusStephen Hemminger2006-02-231-8/+6
| | | | | | | | | | | Need to force a transmit coalesce timer restart after processing transmit packets. Otherwise, can get transmit status after last update and chip doesn't send the next one. Can go with the chip defaults for coalescing timers, except for Tx timer which needs to be bigger. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
* [PATCH] sky2: poke coalescing timer to fix hangStephen Hemminger2006-02-231-0/+11
| | | | | | | | | Need to restart the interrupt coalescing timer after clearing the interrupt, to avoid races with interrupt timer and processing. Patch from Carl-Daniel Halfinger Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
* [PATCH] sky2: limit coalescing values to ring sizeStephen Hemminger2006-02-231-3/+3
| | | | | | | | Don't allow coalescing values to be bigger than the transmit ring. Since if you set them that big, the interrupt never happens and driver livelocks. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
* [PATCH] sky2: yukon-ec-u chipset initializationStephen Hemminger2006-02-231-9/+41
| | | | | | | Add more complete setup code for Yukon EC_U chipset. Based on matching code in 8.31 code in SysKonnect vendor driver. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
* [PATCH] sky2: speed setting fixStephen Hemminger2006-02-171-1/+30
| | | | | | | | | | | | | | Users report problems w/ auto-negotiation disabled and the link set to 100/Half or 10/Half. Problems range from poor performance to no link at all. The current sky2 code does not set things properly on link up if autonegotiation is disabled. Plus it does not contemplate a 10Mbit setting at all. This patch corrects that. Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: version 0.15 updateStephen Hemminger2006-02-071-6/+1
| | | | | | | | Increase version, and get rid of out-dated comment. Speed setting has worked for quite a while. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: support msi interrupt (revised)Stephen Hemminger2006-02-071-0/+77
| | | | | | | | This hardware supports Message Signaled interrupts. When setting up, use software interrupt to check for bad hardware. Signed-off-by: Stephen Hemminger <shemminger @osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: add irq to entropy poolStephen Hemminger2006-02-071-1/+2
| | | | | | | The sky2 interrupt can be used to add entropy. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: clear irq raceStephen Hemminger2006-02-071-3/+3
| | | | | | | | Move the interrupt clear to before processing, this avoids a possible races with status delaying. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: set mac address fixStephen Hemminger2006-02-071-5/+10
| | | | | | | | | | | | | | | | | | | Using the sky2 driver with bonding can result in oopses related to reinitializing the PHY when the MAC address is changed (which bonding is wont to do). This patch changes sky2_set_mac_address to take less drastic measures. This is analagous to the skge patch here: http://lkml.org/lkml/2005/9/29/399 which fixed the issue here: http://bugzilla.kernel.org/show_bug.cgi?id=5271 Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: ethtool rx_coalesce settings fixStephen Hemminger2006-02-071-1/+1
| | | | | | | | | This fixes setting rx_coalesce_usecs_irq via ethtool in sky2. The write was directed to the wrong register. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: pci config space checkingStephen Hemminger2006-02-071-9/+22
| | | | | | | | | | | | There were bugs in mmconfig access to PCI space, up to and include 2.6.16-rc1. These prevented the sky2 driver from being able to clear PCI express errors. This patch makes the driver check (during probe), for errors in PCI config access and fail. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: power management fixStephen Hemminger2006-02-071-20/+25
| | | | | | | | | Fix suspend/resume for sky2. The status ring was getting reallocated and a bunch of other mistakes. Also, check return from power_state on resume. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: 0.13 versionStephen Hemminger2006-01-171-1/+1
| | | | Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: more conservative transmit lockingStephen Hemminger2006-01-171-12/+31
| | | | | | | | 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>
* [PATCH] sky2: don't inline so muchStephen Hemminger2006-01-171-6/+6
| | | | | | | | 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>
* [PATCH] sky2: use kzallocStephen Hemminger2006-01-171-2/+1
| | | | | | | Can use kzalloc here. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: ratelimit error messagesStephen Hemminger2006-01-171-17/+27
| | | | | | | | 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>
* [PATCH] sky2: optimize for 32 bit dmaStephen Hemminger2006-01-171-2/+2
| | | | | | | | 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>
* [PATCH] sky2: don't bother clearing status ring elementsStephen Hemminger2006-01-171-5/+2
| | | | | | | 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>
* [PATCH] sky2: write barrier'sStephen Hemminger2006-01-171-3/+2
| | | | | | | | 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>
* [PATCH] sky2: fix ram buffer for Yukon FE rev 2Stephen Hemminger2006-01-171-22/+30
| | | | | | | | | | 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>
* [PATCH] sky2: version 0.12Stephen Hemminger2006-01-171-1/+1
| | | | | | | Version update. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: call pci_set_consistent_dma_maskStephen Hemminger2006-01-171-6/+11
| | | | | | | | 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>
* [PATCH] sky2: receive buffer alignmentStephen Hemminger2006-01-171-7/+23
| | | | | | | | | 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>
* [PATCH] sky2: version 0.11Stephen Hemminger2005-12-241-1/+1
| | | | | | | Version number change. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] sky2: handle hardware packet overrunStephen Hemminger2005-12-241-0/+9
| | | | | | | | 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>
* [PATCH] sky2: don't lose multicast addressesStephen Hemminger2005-12-241-2/+2
| | | | | | | | 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>
* [PATCH] sky2: handle out of memory on admin changesStephen Hemminger2005-12-241-32/+52
| | | | | | | | 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>
* [PATCH] sky2: version 0.10Stephen Hemminger2005-12-121-1/+1
| | | | | | | | 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>
* [PATCH] sky2: disable rx checksum on Yukon XLStephen Hemminger2005-12-121-1/+7
| | | | | | | | | 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>