summaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAgeFilesLines
* tg3: Add more partno entries for fallback pathMatt Carlson2010-02-171-1/+17
| | | | | | | | | This patch adds 57765 asic partno entries for the path executed if VPD is not present in NVRAM. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* tg3: Allow phylib flowctrl changes anytimeMatt Carlson2010-02-171-42/+52
| | | | | | | | | This patch loosens the restriction that the phylib interface must be up and running to change the flow control parameters. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* tg3: Add support for 2 new selfboot formatsMatt Carlson2010-02-172-0/+10
| | | | | | | | | This patch adds new offsets to the bootcode version extraction code to support NVRAM format versions 4 and 5. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* tg3: Make 57791 and 57795 10/100 onlyMatt Carlson2010-02-171-0/+2
| | | | | | | | | This patch adds the 57791 and 57795 to the list of devices that only support 10 and 100 Mbps speeds. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* tg3: Enforce DMA mapping / skb assignment orderingMatt Carlson2010-02-171-2/+7
| | | | | | | | | | | | | | | Michael Chan noted that there is nothing in the code that would prevent the compiler from delaying the access of the "mapping" member of the newly arrived packet until much later. If this happened after the skb = NULL assignment, it is possible for the driver to pass a bad dma_addr value to pci_unmap_single(). To enforce this ordering, we need a write memory barrier. The pairing read memory barrier already exists in tg3_rx_prodring_xfer() under the comments starting with "Ensure that updates to the...". Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* tun: socket filter supportMichael S. Tsirkin2010-02-171-0/+26
| | | | | | | | This patch adds Linux Socket Filter support to tun driver. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* chelsio: convert to use netdev_for_each_mc_addrJiri Pirko2010-02-173-19/+5
| | | | | Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* cxgb3: convert to use netdev_for_each_addrJiri Pirko2010-02-173-40/+11
| | | | | | | | Removed whole t3_rx_mode structure and appropriate helpers cause they are no longer needed. Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* smsc911x: replace manual phy lookup.kirjanov@gmail.com2010-02-171-14/+10
| | | | | | | | Use phy_find_first() function instead of manual lookup. Signed-off-by: Denis Kirjanov <kirjanov@gmail.com> Reviewed-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* mv643xx_eth: fix missing validate_addr hookkirjanov@gmail.com2010-02-171-0/+1
| | | | | | | Fix missing validate_addr hook. Signed-off-by: Denis Kirjanov <kirjanov@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* net: Add Aeroflex Gaisler 10/100/1G Ethernet MAC driverKristoffer Glembo2010-02-174-0/+1797
| | | | | | | | Adds device driver for Aeroflex Gaisler 10/100 and 10/100/1G Ethernet MAC IP cores. Signed-off-by: Kristoffer Glembo <kristoffer@gaisler.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* via-velocity: Enable scatter/gather IO by defaultSimon Kagstrom2010-02-171-1/+1
| | | | | | | Reduces CPU utilization significantly with sendfile for example. Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* ipg: Remove device claimed by dl2k from pci id tableJeff Mahoney2010-02-171-3/+1
| | | | | | | | | | | | | | | This patch removes D-Link DGE-550T PCI ID (1186:4000) from the ipg driver. The ipg driver is for IP2000-based cards and the DGE-550T is a DL2000-based card. The driver loads and works for a few moments, but once a real workload is applied it stops operating. The ipg driver claimed this ID since it was introduced in 2.6.24 and it's forced many users to blacklist it. The correct driver for this hardware is the dl2k driver, which has been claiming this PCI ID since the 2.4 days. Signed-off-by: Jeff Mahoney <jeffm@suse.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* SiS190/191 half-duplex initialization fixRiccardo Ghetta2010-02-171-1/+10
| | | | | | | | | Adds half-duplex specific setup code (taken from SiS own GPL driver). Without those, half-duplex connections are very unreliable, often working on small transfers and failing after a while. Signed-off-by: Riccardo Ghetta <birrachiara@tin.it> Signed-off-by: David S. Miller <davem@davemloft.net>
* bnx2x: version number and dateVladislav Zolotarov2010-02-171-2/+2
| | | | | | | | Updated release version and date: 1.52.1-6 and 2010/02/16 Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* bnx2x: Use firmware 5.2.13Vladislav Zolotarov2010-02-175-12/+24
| | | | | | | | Switch to the new firmware version (5.2.13). Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* bnx2x: fix in 57710 self-testVladislav Zolotarov2010-02-171-1/+2
| | | | | | | | | | Bug fix: Use the last unicast entry in CAM in bnx2x_test_int(). Relevant for 57710 only. Author: Dmitry Kravkov <dmitry@broadcom.com> Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com> Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* bnx2x: Do not allow enabling LRO if disable_tpa=1Vladislav Zolotarov2010-02-171-6/+8
| | | | | | | | Bug fix: Do not allow enabling LRO if disable_tpa=1. Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* bnx2x: clean up in case of error in bnx2x_init_hw()Vladislav Zolotarov2010-02-171-0/+3
| | | | | | | | | | Bug fix: clean up MCP state in case of error in bnx2x_init_hw(). Author: Dmitry Kravkov <dmitry@broadcom.com> Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com> Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* bnx2x: Properly release allocated MSI-X/MSI vectorsVladislav Zolotarov2010-02-171-11/+14
| | | | | | | | | Bug fix: Properly release allocated MSI-X/MSI vectors if ifup failed due to lack of memory. Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* drivers/net/usb: Use netif_<level> logging facilitiesJoe Perches2010-02-176-341/+264
| | | | | | | | | | | | | | | | | | | | | | | Convert from: if (netif_msg_<foo>(priv)) dev_<level>(dev... to netif_<level>(priv, foo, dev... Also convert a few: if (i < REG_TIMEOUT) { etc... return ret; } to if (i >= REG_TIMEOUT) goto fail; etc... return ret; Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* usbnet: Convert dev(dbg|err|warn|info) macros to netdev_<level>Joe Perches2010-02-1710-468/+507
| | | | | | | | | | | | | | | | | These macros are too similar to the dev_<level> equivalents but take a usbnet * argument. Convert them to the recently introduced netdev_<level> macros and remove the old macros. The old macros had "\n" appended to the format string. Add the "\n" to the converted uses. Some existing uses of the dev<foo> macros in cdc_eem.c probably mistakenly had trailing "\n". No "\n" added there. Fix net1080 this/other log message inversion. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: implement pci shutdown handlerSathya Perla2010-02-171-0/+21
| | | | | Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: fix rx-path to ignore a flush completionSathya Perla2010-02-171-4/+19
| | | | | | | | | The flush compl (compl with numfrags == 0; no data) is rcvd from hw to indicate completion of RXQ destory operation. Fix the RX path to not process it as RX data. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: don't rearm mcc cq when device is not openSathya Perla2010-02-174-2/+26
| | | | | | | | | | | When an MCC cmd is issued (via a netdev/ethtool op) while the device is not open, the MCC CQ gets processed but the EQ is not processed (as isr is not registered.) This can cause the EQ to become full. So, while the device is not open, CQ must not be re-armed to prevent EQ entries. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: a mini optimization in rx_compl_process() codeSathya Perla2010-02-171-10/+10
| | | | | | | Introduce unlikely() for skb alloc failure and vlanf checks... Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* qlge: Fix occasional loopback test failure.Ron Mercer2010-02-171-1/+6
| | | | | | | | | | On some servers we see the cleaning of the RX queue finish before all the loopback packets are sent out. This delay allows the queues to settle before checking for successful completion. Also, delay completion so link has time to come back up. Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* qlge: Fix bonding mac address bug.Ron Mercer2010-02-172-1/+7
| | | | | | | | | Use local copy of current mac address when initializing. In bonding testing we saw cases where dev_addr was out of data causing failover errors. Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* qlge: Fix dropping of large non-TCP/UDP frames.Ron Mercer2010-02-171-15/+5
| | | | | | | | This was found with pings that were large enough to span multiple rx buffers. The split frame logic handles this case nicely. Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* ll_temac: Fix MAC address configuration from userlandSteven J. Magnani2010-02-171-1/+8
| | | | | | | | | | A userland command to set the LLTEMAC MAC address, i.e. "ifconfig eth0 hw addr xx:yy:zz:pp:dd:qq", results in a device address of 00:01:xx:yy:zz:pp. Correct this. Signed-off-by: Steven J. Magnani <steve@digidescorp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* ll_temac: Add support for V2 LLTEMAC coreSteven J. Magnani2010-02-171-1/+4
| | | | | | | | | LLTEMAC V1 cores place only received packet length in the app4 word. V2 cores place additional information in app4. Mask out the additional information when retrieving the packet length. Signed-off-by: Steven J. Magnani <steve@digidescorp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* net: convert multiple drivers to use netdev_for_each_mc_addrJiri Pirko2010-02-178-27/+15
| | | | | Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* cassini: convert to use netdev_for_each_mc_addrJiri Pirko2010-02-171-37/+35
| | | | | | | | Introduced a new function to do the mc list processing, makes code clearer after transition. Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: update tx DMA mapping error handlingNick Nunley2010-02-171-5/+3
| | | | | | | | | This updates the tx DMA mapping error handling code to resemble e1000e/ixgbe. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: change descriptor control thresholdsNick Nunley2010-02-171-2/+2
| | | | | | | | | | | | This change simplifies the code by setting RX_PTHRESH to 8 for all devices, as it was unlikely that there was any advantage to set it at 16 for earlier cards. Additionally TX_WTHRESH is set to 1 for the 82576 NIC to improve performance by enabling a minimal amount of write combining when writing back descriptors. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: use igb_free_q_vectors to cleanup failure in igb_alloc_q_vectorsNick Nunley2010-02-171-7/+3
| | | | | | | | | | This change makes it so that igb_free_q_vectors is reused in igb_alloc_q_vectors to handle the cleanup instead of unwinding through the allocations. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: remove unused vmolr valueNick Nunley2010-02-171-4/+0
| | | | | | | | | | In an earlier version of igb_write_mc_addr_list() the vmolr register was modified. This register is no longer accessed, although the variable still exists. This patch removes it from the function. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: minor type cleanupsNick Nunley2010-02-171-6/+6
| | | | | | | | | | This change cleans up some instances where unsigned int and u32 were being used interchangeably, and cleans up hdr_len which was being set to 0 twice. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: move gso_segs into buffer_info structureNick Nunley2010-02-172-1/+3
| | | | | | | | | This change moves gso_segs into the buffer_info structure to avoid a possible cache line miss in clean_tx_irq. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: inline igb_maybe_stop_txNick Nunley2010-02-171-1/+1
| | | | | | | | | | igb_maybe_stop_tx() is extremely small and appears in several spots in the tx hotpath. This change inlines the function for a possible performance boost. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: only read phy specific stats if in internal phy modeNick Nunley2010-02-171-3/+8
| | | | | | | | | | There are a couple statistics registers that are not meant to be read when in SGMII/serdes mode. This patch adds a check to verify mode before reading and updating these statistics. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: only support SRRCTL_DROP_EN when using multiple queuesNick Nunley2010-02-171-0/+3
| | | | | | | | | | The SRRCTL.DROP_EN bit should only be set when we are supporting multiple queues. This bit is meant to prevent head of line blocking and is unnecessary in the single queue case. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: cap interrupts at 20K per queue when in itr mode 3Nick Nunley2010-02-171-0/+4
| | | | | | | | | | | In order to maintain similar performance between MSI-X and legacy/MSI interrupts, this patch reduces the number of interrupts when receiving small packets to 20K when in interrupt throttle rate mode 3. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: remove adaptive IFS from driverNick Nunley2010-02-175-93/+2
| | | | | | | | | | Adaptive IFS support has been included in the igb driver since its initial release, but it is not a feature on any igb NICs. This patch removes it from the driver. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: Allocate rings seperately instead of as a blockAlexander Duyck2010-02-173-81/+83
| | | | | | | | | | This change makes it so that the rings are allocated seperately. As a result we can allocate them on seperate nodes at some point in the future if we so desire. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: call pci_save_state after pci_restore_stateNick Nunley2010-02-171-0/+2
| | | | | | | | | | | | This patch adds calls to pci_save_state() immediately after calls to pci_restore_state(). Due to a change in the behavior of pci_restore_state() it is necessary to call pci_save_state() to keep the state_saved flag. This patch is based on a similar patch for ixgbe. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: Power down link when interface is downNick Nunley2010-02-178-11/+129
| | | | | | | | | This changes the behavior of the driver to power down the link when the associated interface is down, unless management is enabled. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: ignore EEPROM APME check when shutting down serdes linkNick Nunley2010-02-171-19/+2
| | | | | | | | | | | Checking the EEPROM APME state unnecessarily prevents the link from shutting down. The standard power down routines should be sufficient to determine whether the serdes link can power down when going into D3. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: Report link status in ethtool when interface is downNick Nunley2010-02-173-2/+21
| | | | | | | | | | With this change ethtool will correctly report link status when the interface is down. Currently ethtool reports the link as not detected when the interface is down. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* igb: add support for wake-on-linkNick Nunley2010-02-171-4/+7
| | | | | | | | | This adds support for wake-on-link/phy activity to the ethtool interface. Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>