aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/mv643xx_eth.c
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] mv643xx_eth: Whitespace cleanupDale Farnsworth2006-01-271-48/+46
| | | | | Signed-off-by: Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Update dev->last_rx on packet receivePaolo Galtieri2006-01-271-0/+1
| | | | | | | | | | Update dev->last_rx on packet receive This fix corrects errors seen during configuration of the bonding driver. Signed-off-by: Paolo Galtieri <pgaltieri@mvista.com> Signed-off-by: Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Fix spinlock recursion bugDale Farnsworth2006-01-271-13/+0
| | | | | | | | | This patch eliminates a spinlock recursion bug introduced recently. Since eth_port_send() is always called with the lock held, we simply remove the locking inside the function itself. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Remove needless mask of extended intr registerDale Farnsworth2006-01-171-55/+26
| | | | | | | | | | | | All interrupts controlled by the extended mask register are also masked by a bit in the main mask register, so there is no need to directly manipulate the extended mask register. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 81 ++++++++++++++++++---------------------------------------- 1 file changed, 26 insertions(+), 55 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Merge open and stop helper functionsDale Farnsworth2006-01-171-64/+45
| | | | | | | | | | | | Move code from helper functions mv643xx_eth_real_open and mv643xx_eth_real_stop as they are no longer needed. Signed-off-by Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 109 +++++++++++++++++++++++----------------------------------- 1 file changed, 45 insertions(+), 64 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Fix transmit skb accountingDale Farnsworth2006-01-171-2/+5
| | | | | | | | Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Request HW checksum generation only for IPv4Wolfram Joost2006-01-171-8/+11
| | | | | | | | | | | | | | This patch removes the NETIF_F_HW_CSUM flag to be able to use other protocols than IPv4. Hardware checksums for IPv4 should continue to work because NETIF_F_IP_CSUM is still set. The sanity-check has been enhanced to check the used protocol and to not access skb->iph for non-ipv4-packets. Signed-off-by: Wolfram Joost <pegasos@frokaschwei.de> Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Hold spinlocks only where neededDale Farnsworth2006-01-171-80/+90
| | | | | | | | | | | | | This driver has historically held a spin_lock during the entire open and stop functions and while receiving multiple packets. This is unecessarily long and holds locks during calls that may sleep. This patch reduces the size of windows where locks are held. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 172 ++++++++++++++++++++++++++++++---------------------------- 1 file changed, 91 insertions(+), 81 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: iounmap the correct SRAM bufferDale Farnsworth2006-01-171-1/+1
| | | | | | | | Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Fix handling of small, unaligned fragmentsPaul Janzen2006-01-171-23/+31
| | | | | | | | | | | | Fix handling of small, unaligned fragments. It also solves a potential deadlock if skb_linearize() returns -ENOMEM. Signed-off-by: Paul Janzen <pcj@linux.sez.to> Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 54 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 31 insertions(+), 23 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Receive buffers require 8 byte alignmentDale Farnsworth2006-01-171-3/+9
| | | | | | | | | | | | | | | | The Marvell mv643xx ethernet hardware requires that DMA buffers be aligned to 8-byte boundaries. This patch satisfies this requirement. Buffers allocated by dev_alloc_skb() only have 4-byte alignment when slab debugging is enabled. Also, document that the 2-byte offset to align the IP packets on receive is a hardware feature and is not tied to NET_IP_ALIGN. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Add multicast supportDale Farnsworth2006-01-171-4/+197
| | | | | | | | | | This code is adapted from code in a ppc-specific version of the driver. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 201 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 197 insertions(+), 4 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Fix a NULL pointer dereferencePaolo Galtieri2006-01-171-0/+2
| | | | | | | | | | | | | | Fix a NULL pointer dereference. Fill in the buf_ptr and byte_cnt fields of pkt_info in eth_tx_return_desc(). Signed-off-by: Paolo Galtieri <pgaltieri@mvista.com> Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 51 +++++++++++++++++++++------------------------------ 1 file changed, 21 insertions(+), 30 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: Fix dma_map/dma_unmap relationsPaolo Galtieri2006-01-171-30/+19
| | | | | | | | | | | | If you do a dma_map_single you must do dma_unmap_single and if you do a dma_map_page you must do a dma_unmap_page. Signed-off-by: Paolo Galtieri <pgaltieri@mvista.com> Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 51 +++++++++++++++++++++------------------------------ 1 file changed, 21 insertions(+), 30 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx_eth: 2.6.16 needs ip.h and in.hOlaf Hering2006-01-171-0/+2
| | | | | | | | | Signed-off-by: Olaf Hering <olh@suse.de> Signed-off-by: Dale Farnsworth <dale@farnsworth.org> mv643xx_eth.c | 2 ++ 1 file changed, 2 insertions(+) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] remove bouncing mail address of mv643xx_eth maintainerOlaf Hering2006-01-091-1/+1
| | | | | | | | | Remove bouncing mail address of mv643xx maintainer. Signed-off-by: Olaf Hering <olh@suse.de> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [DRIVER MODEL] Convert platform drivers to use struct platform_driverRussell King2005-11-091-20/+20
| | | | | | | | | This allows us to eliminate the casts in the drivers, and eventually remove the use of the device_driver function pointer methods for platform device drivers. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
* Merge master.kernel.org:/home/rmk/linux-2.6-drvmodelLinus Torvalds2005-10-311-0/+2
|\ | | | | | | Manual #include fixups for clashes - there may be some unnecessary
| * Create platform_device.h to contain all the platform device details.Russell King2005-10-291-0/+2
| | | | | | | | | | | | | | | | Convert everyone who uses platform_bus_type to include linux/platform_device.h. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
* | [PATCH] mv643xx_eth_showsram: Added information message when using the SRAMNicolas DET2005-10-291-0/+3
|/ | | | | | | | | Added information message when using the SRAM in mv643xx_eth_probe() Signed-off-by: Nicolas DET <det.nicolas@free.fr> Signed-off-by: Sven Luther <sl@bplan-gmbh.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] more SPIN_LOCK_UNLOCKED -> DEFINE_SPINLOCK conversionsIngo Molnar2005-09-091-1/+1
| | | | | | | | | This converts the final 20 DEFINE_SPINLOCK holdouts. (another 580 places are already using DEFINE_SPINLOCK). Build tested on x86. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] mv643xx: add netpoll api supportDale Farnsworth2005-09-051-2/+42
| | | | | | | Add support for the netpoll api for use by netconsole, kgdb, etc. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx: Fix promiscuous mode handlingDale Farnsworth2005-09-051-58/+4
| | | | | | | | | | | | | | mv643xx_eth_get_config_reg() was reading the wrong register. mv643xx_eth_set_config_reg() was or'ing instead of setting the register. These functions are trivial and both are called only from mv643xx_eth_set_rx_mode() when changing to/from promiscuous mode. Remove both functions and do the operations directly in mv643xx_eth_set_rx_mode(). Also, maintain promiscuous mode setting across port resets. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx: Disable per port bandwidth limitsDale Farnsworth2005-09-051-0/+3
| | | | | | | | The mv643xx chips support per port bandwith limits. This patch disables the bandwidth limits by clearing the MTU register. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx: fix outstanding tx skb counterDale Farnsworth2005-09-051-15/+9
| | | | | | | | | This patch corrects the accounting of outstanding tx skbs. It fixes a bug that causes "Error on Queue Full" messages seen since scatter-gather was enabled by using the hardware tcp/udp checksum generator. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx: fix skb memory leakDale Farnsworth2005-09-051-4/+2
| | | | | | | | | This patch fixes an skb memory leak under heavy receive load (whenever the more packets have been received than the NAPI budget allows to be processed). Signed-off-by: Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] mv643xx: add workaround for HW checksum generation bugDale Farnsworth2005-08-231-11/+18
| | | | | | | | | | | [PATCH] [NET] mv643xx: add workaround for HW checksum generation bug The hardware checksum generator on the mv64xxx occasionally generates an incorrect checksum. This patch works around the issue and enables hardware checksum generation. Signed-off-by: Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* [PATCH] ppc iomem annotations: mv643xx_ethAl Viro2005-04-251-2/+2
| | | | | | | void * __iomem replaced with intended void __iomem *. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] ppc32: MV643XX ethernet is an option for PegasosBenjamin Herrenschmidt2005-04-161-1/+1
| | | | | | | | | | | | This patch allows Kconfig to build the MV643xx ethernet driver on Pegasos (CONFIG_PPC_MULTIPLATFORM) and adds what I think is a missing fix from Dale's batch, that is remove SA_INTERRUPT and add SA_SHIRQ in there as the interrupt is shared if I understand things correctly. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Fabio Massimo Di Nitto <fabbione@ubuntu.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Linux-2.6.12-rc2Linus Torvalds2005-04-161-0/+3033
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!