- 23 7月, 2008 5 次提交
-
-
由 Dhananjay Phadke 提交于
Add initialization code in pci probe for new chip and retain compatibility with old revisions. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Dhananjay Phadke 提交于
New revision of netxen chip has 2MB PCI memory. Older chips had 128MB addressable PCI memory. To retain compatibility, this patch adds function pointers based on pci bar0 size. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Dhananjay Phadke 提交于
Add macros for new chip revision and board configurations. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Dhananjay Phadke 提交于
Enable multicast address filtering capabilities in the hardware. Upto 16 multicast addresses can be programmed for each physical port. Support "allmulti" mode, if enabled. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Dhananjay Phadke 提交于
o Reduce access to global arrays in data path. o Remove duplicate/unused variables, unecessary alignment constraints. o Use correct pci_dev instead of fallback device for consistent allocations. o Disable ethtool set_eeprom functionality for now, it was only used for flashing firmware. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
- 27 6月, 2008 1 次提交
-
-
由 Al Viro 提交于
PCI_DEVICE_CLASS sets .device and .vendor to PCI_ANY_DEV, which overrides the effect of preceding PCI_DEVICE() and makes all elements of netxen_pci_tbl[] identical. Introduced in the commit dcd56fdb. Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
- 18 6月, 2008 4 次提交
-
-
由 Dhananjay Phadke 提交于
Downloading firmware in pci probe allows recovery in case of firmware failure by reloading the driver. Also reduced delays in firmware load. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Dhananjay Phadke 提交于
o Remove unnecessary debug prints and functions. o Explicitly specify pci class (0x020000) to avoid enabling management function. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Dhananjay Phadke 提交于
Store physical port number in netxen_adapter structure. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Dhananjay Phadke 提交于
This fixes a the issue where logical port number is set incorrectly for HP blade mezz cards. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
- 17 4月, 2008 1 次提交
-
-
由 Adrian Bunk 提交于
netxen_workq can now become static. Signed-off-by: NAdrian Bunk <bunk@kernel.org> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
- 26 3月, 2008 4 次提交
-
-
由 Jeff Garzik 提交于
Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Dhananjay Phadke 提交于
o eliminate tx lock in netxen adapter struct, instead pound on netdev tx lock appropriately. o remove old "concurrent transmit" code that unnecessarily drops and reacquires tx lock in hard_xmit_frame(), this is already serialized the netdev xmit lock. o reduce scope of tx lock in tx cleanup. tx cleanup operates on different section of the ring than transmitting cpus and is guarded by producer and consumer indices. This fixes a race caused by rx softirq preemption on realtime kernels. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Tested-by: NVernon Mauery <mauery@us.ibm.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 Dhananjay Phadke 提交于
o separate and simpler irq handler for msi interrupts, avoids few checks than legacy mode. o avoid redudant tx_has_work() and rx_has_work() checks in interrupt and napi, which can uncork irq based on racy (lockless) access to tx and rx ring indices. If we get interrupt, there's sufficient reason to schedule napi. o replenish rx ring more often, remove self-imposed threshold rcv_free that prevents posting rx desc to card. This improves performance in low memory. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Tested-by: NVernon Mauery <mauery@us.ibm.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 Dhananjay Phadke 提交于
Recent netxen firmware has new scheme of generating MSI interrupts, it raises interrupt and blocks itself, waiting for driver to unmask. This reduces chance of spurious interrupts. The driver will be able to deal with older firmware as well. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Tested-by: NVernon Mauery <mauery@us.ibm.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
- 29 1月, 2008 5 次提交
-
-
由 Al Viro 提交于
Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 Al Viro 提交于
Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk> Signed-off-by: NJeff Garzik <jeff@garzik.org> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Jeff Garzik 提交于
Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Joe Perches 提交于
Signed-off-by: NJoe Perches <joe@perches.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 Adrian Bunk 提交于
This patch contains the following cleanups: - static functions in .c files shouldn't be marked inline - make needlessly global code static - #if 0 unused code Signed-off-by: NAdrian Bunk <bunk@kernel.org> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
- 13 1月, 2008 3 次提交
-
-
由 Dhananjay Phadke 提交于
Here's the reworked patch. This cleans up some unnecessary byte-swapping while setting up tx and interpreting rx desc. The 64 bit rx status data should be converted to host endian format only once and the macros just need to extract bitfields. This saves a spate of interrupts on pseries blades caused by buggy (non) processing rx status ring. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 dhananjay@netxen.com 提交于
netxen driver allows limited number of threads simultaneously posting skb's in tx ring. If transmit slot is unavailable, driver calls schedule() or loops in xmit_frame(). This patch returns TX_BUSY and lets the stack reschedule the packet if transmit slot is unavailable. Also removes unnecessary check for tx timeout in the driver itself, the network stack does that anyway. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 dhananjay@netxen.com 提交于
This patch fixes bug that doesn't quiesce second port when interface is brought down, which could lead to unwarranted interrupt during rmmod / ifdown. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
- 09 1月, 2008 1 次提交
-
-
由 David S. Miller 提交于
If work_done >= budget we should always elide the NAPI completion. Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
- 24 10月, 2007 1 次提交
-
-
由 Jeff Garzik 提交于
Remove always-false tests in irq handler. Also a few other minor cleanups. Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
- 19 10月, 2007 1 次提交
-
-
由 Borislav Petkov 提交于
Remove redundant DMA_..BIT_MASK definitions across two drivers. The computation of the majority of the bitmasks is done by the compiler. The initial split of the patch touching each a different file got removed due to possible git bisect breakage. Signed-off-by: NBorislav Petkov <bbpetkov@yahoo.de> Cc: Jeremy Fitzhardinge <jeremy@goop.org> Cc: Muli Ben-Yehuda <muli@il.ibm.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: James Bottomley <James.Bottomley@steeleye.com> Reviewed-by: NSatyam Sharma <satyam@infradead.org> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 11 10月, 2007 6 次提交
-
-
由 Dhananjay Phadke 提交于
Resubmitting the patch. This patch improves ethtool support for printing correct ring statistics, segmentation offload status, etc. Signed-off by: Dhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 Joe Perches 提交于
This is nicer than the MAC_FMT stuff. Signed-off-by: NJoe Perches <joe@perches.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Ralf Baechle 提交于
It's been a useless no-op for long enough in 2.6 so I figured it's time to remove it. The number of people that could object because they're maintaining unified 2.4 and 2.6 drivers is probably rather small. [ Handled drivers added by netdev tree and some missed IRDA cases... -DaveM ] Signed-off-by: NRalf Baechle <ralf@linux-mips.org> Signed-off-by: NJeff Garzik <jeff@garzik.org> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Mariusz Kozlowski 提交于
This patch covers something like this: dev = alloc_*dev(... ... priv = netdev_priv(dev); memset(priv, 0, sizeof(*priv)); The memset() here is superfluous. alloc_netdev() uses kzalloc() to allocate needed memory so there is no need to zero the priv region twice. Signed-off-by: NMariusz Kozlowski <m.kozlowski@tuxland.pl> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NJeff Garzik <jeff@garzik.org> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Jesper Juhl 提交于
This patch cleans up duplicate includes in drivers/net/ Signed-off-by: NJesper Juhl <jesper.juhl@gmail.com> Acked-by: N"John W. Linville" <linville@tuxdriver.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 Stephen Hemminger 提交于
Several devices have multiple independant RX queues per net device, and some have a single interrupt doorbell for several queues. In either case, it's easier to support layouts like that if the structure representing the poll is independant from the net device itself. The signature of the ->poll() call back goes from: int foo_poll(struct net_device *dev, int *budget) to int foo_poll(struct napi_struct *napi, int budget) The caller is returned the number of RX packets processed (or the number of "NAPI credits" consumed if you want to get abstract). The callee no longer messes around bumping dev->quota, *budget, etc. because that is all handled in the caller upon return. The napi_struct is to be embedded in the device driver private data structures. Furthermore, it is the driver's responsibility to disable all NAPI instances in it's ->stop() device close handler. Since the napi_struct is privatized into the driver's private data structures, only the driver knows how to get at all of the napi_struct instances it may have per-device. With lots of help and suggestions from Rusty Russell, Roland Dreier, Michael Chan, Jeff Garzik, and Jamal Hadi Salim. Bug fixes from Thomas Graf, Roland Dreier, Peter Zijlstra, Joseph Fannin, Scott Wood, Hans J. Koch, and Michael Chan. [ Ported to current tree and all drivers converted. Integrated Stephen's follow-on kerneldoc additions, and restored poll_list handling to the old style to fix mutual exclusion issues. -DaveM ] Signed-off-by: NStephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
- 31 8月, 2007 2 次提交
-
-
由 dhananjay@netxen.com 提交于
This patch fixes two problems during driver unload. The pci_disable_device() call is before firmware reload, causing reads and writes across PCI bus after disabling device. Second problem is the register window was wrong during firmware reload Signed-off by: Dhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 dhananjay@netxen.com 提交于
Loading firmware during PCI probe can lead to incorrect initialization, rendering the card unusable until next reboot. This was introduced a while ago as a workaround for firmware bug, a better workaround was submitted for this a while ago. So removing original hack that loads firmware during probe. Signed-off by: Dhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
- 31 7月, 2007 3 次提交
-
-
由 Dhananjay Phadke 提交于
Some leftover code that makes use of adapter->lock in tx_timeout function, which resets the interface under this lock. In close() when the workqueue is flushed, prints the warning about sleeping with interrupts disabled (when spinlock debug is enabled). The lock was required with private netxen IOCTLs, which were removed a while ago. Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 dhananjay@netxen.com 提交于
This patch fixes masking of interrupts on multiport adapters. Also disables interrupts upon ifdown interface. The wrong mask could result in interrupt flood after interface is down. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
由 dhananjay@netxen.com 提交于
This is a workaround for firmware bug with 2nd port of multiport adapter, where MAC address is reset. Driver just needs to overwrite it with the value read from PROM. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
- 25 7月, 2007 1 次提交
-
-
由 dhananjay@netxen.com 提交于
The firmware should be loaded after resetting hardware during PCI probe, besides module unload. This fixes issue with 2nd port of multiport adapter on powerpc blades. This patch also fixes a bug that PCI resources are not freed if dma watchdog shutdown failed. The dma watchdog poll messages during module unload are also suppressed. Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com> Signed-off-by: NMilan Bag <mbag@netxen.com> Signed-off-by: NWen Xiong <wenxiong@us.ibm.com> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-
- 12 7月, 2007 1 次提交
-
-
由 Auke Kok 提交于
Instead of all drivers reading pci config space to get the revision ID, they can now use the pci_device->revision member. This exposes some issues where drivers where reading a word or a dword for the revision number, and adding useless error-handling around the read. Some drivers even just read it for no purpose of all. In devices where the revision ID is being copied over and used in what appears to be the equivalent of hotpath, I have left the copy code and the cached copy as not to influence the driver's performance. Compile tested with make all{yes,mod}config on x86_64 and i386. Signed-off-by: NAuke Kok <auke-jan.h.kok@intel.com> Acked-by: NDave Jones <davej@redhat.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 11 7月, 2007 1 次提交
-
-
由 Stephen Hemminger 提交于
Get rid of dubious casts to (void *) which causes a sparse warning. And move largeish function from inline to the one file that uses the code, the compiler can then decide to inline it. Compile tested only. Signed-off-by: NStephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: NJeff Garzik <jeff@garzik.org>
-