aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/ethernet
AgeCommit message (Collapse)AuthorFilesLines
2013-08-27qlcnic: dcb: Query adapter DCB capabilities.Sucheta Chakraborty12-0/+345
o Query adapter DCB capabilities and populate local data structures with relevant information. o Add QLCNIC_DCB to Kconfig for enabling/disabling DCB. Signed-off-by: Sucheta Chakraborty <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-27ps3_gelic: lower NAPI weightMichal Schmidt2-3/+1
Since commit 82dc3c63 ("net: introduce NAPI_POLL_WEIGHT") netif_napi_add() produces an error message if a NAPI poll weight greater than 64 is requested. GELIC_NET_NAPI_WEIGHT is defined to GELIC_NET_RX_DESCRIPTORS, which is 128. Use the standard NAPI weight. v2: proper reference to the related commit Signed-off-by: Michal Schmidt <[email protected]> Acked-by: Geoff Levand <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-27netxen: lower NAPI weightMichal Schmidt2-2/+1
Since commit 82dc3c63 ("net: introduce NAPI_POLL_WEIGHT") netif_napi_add() produces an error message if a NAPI poll weight greater than 64 is requested. Use the standard NAPI weight. v2: proper reference to the related commit Signed-off-by: Michal Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-27jme: lower NAPI weightMichal Schmidt1-1/+1
Since commit 82dc3c63 ("net: introduce NAPI_POLL_WEIGHT") netif_napi_add() produces an error message if a NAPI poll weight greater than 64 is requested. jme requests a quarter of the rx ring size as the NAPI weight. jme's rx ring size is 1 << 9 = 512. Use the standard NAPI weight. v2: proper reference to the related commit Signed-off-by: Michal Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-27Merge branch 'for-davem' of ↵David S. Miller21-2581/+7788
git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfc-next Ben Hutchings says: ==================== 1. Refactoring and cleanup in preparation for new hardware support. 2. Some bug fixes for firmware completion handling. (They're not known to cause real problems, otherwise I'd be submitting these for net and stable.) 3. Update to the firmware protocol (MCDI) definitions. ==================== Signed-off-by: David S. Miller <[email protected]>
2013-08-27treewide: Fix printks with 0x%#Joe Perches1-1/+1
Using 0x%# emits 0x0x. Only one is necessary. Signed-off-by: Joe Perches <[email protected]> Acked-by: Takashi Iwai <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
2013-08-26be2net: Check for POST state in suspend-resume sequenceSarveshwar Bandi1-0/+4
In suspend-resume sequence, the OS could attempt to initialize the controller before it is ready, check for POST state before going ahead. Signed-off-by: Sarveshwar Bandi <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-26Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller7-49/+110
Conflicts: drivers/net/wireless/iwlwifi/pcie/trans.c include/linux/inetdevice.h The inetdevice.h conflict involves moving the IPV4_DEVCONF values into a UAPI header, overlapping additions of some new entries. The iwlwifi conflict is a context overlap. Signed-off-by: David S. Miller <[email protected]>
2013-08-26net/cadence/macb: add support for dt phy definitionBoris BREZILLON1-7/+34
The macb driver only handle PHY description through platform_data (macb_platform_data). Thus, when using dt you cannot define phy properties like phy address or phy irq pin. This patch makes use of the of_mdiobus_register to add support for phy device definition using dt. A fallback to the autoscan procedure is added in case there is no phy devices defined in dt. Signed-off-by: Boris BREZILLON <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-25Merge branch 'for-davem' of ↵David S. Miller20-1278/+1130
git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfc-next Merge SFC driver changes from Ben Hutchings. Signed-off-by: David S. Miller <[email protected]>
2013-08-22fs_enet: cleanup clock API useGerhard Sittig1-0/+20
make the Freescale ethernet driver get, prepare and enable the FEC clock during probe(); disable and unprepare the clock upon remove(), put is done by the devm approach; hold a reference to the clock over the period of use. clock lookup is non-fatal as not all platforms provide clock specs in their device tree; failure to enable specified clocks is fatal. Signed-off-by: Gerhard Sittig <[email protected]> Signed-off-by: Anatolij Gustschin <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-22fs_enet: silence a build warning (unused variable)Gerhard Sittig1-1/+0
Since commit 720a43efd30f04a0a492c85fb997361c44fbae05 (drivers:net: Remove unnecessary OOM messages after netdev_alloc_skb) there is a build warning: drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c: In function 'tx_skb_align_workaround': drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c:586:26: warning: unused variable 'fep' Fix it. Signed-off-by: Gerhard Sittig <[email protected]> Signed-off-by: Anatolij Gustschin <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-22net: ethernet: davinci_cpdma: export cpdma_chan_get_statsDaniel Mack1-0/+1
This is needed when the cpsw driver is built as module. Signed-off-by: Daniel Mack <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-22be2net: fix disabling TX in be_close()Sathya Perla1-1/+1
commit fba875591 ("disable TX in be_close()") disabled TX in be_close() to protect be_xmit() from touching freed up queues in the AER recovery flow. But, TX must be disabled *before* cleaning up TX completions in the close() path, not after. This allows be_tx_compl_clean() to free up all TX-req skbs that were notified to the HW. Signed-off-by: Sathya Perla <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-22ethernet: broadcom: remove unnecessary platform_set_drvdata()Jingoo Han1-1/+0
The driver core clears the driver data to NULL after device_release or on probe failure. Thus, it is not needed to manually clear the device driver data to NULL. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-22ethernet: moxa: remove unnecessary platform_set_drvdata()Jingoo Han1-1/+0
The driver core clears the driver data to NULL after device_release or on probe failure. Thus, it is not needed to manually clear the device driver data to NULL. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-22Merge branch 'sfc-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfcDavid S. Miller1-1/+1
Merge in a fix for RX MAC address filter programming bug in the sfc driver. Signed-off-by: David S. Miller <[email protected]>
2013-08-22r8169: fix invalid register dumpPeter Wu1-1/+5
For some reason, my PCIe RTL8111E onboard NIC on a GA-Z68X-UD3H-B3 motherboard reads as FFs when reading from MMIO with a block size larger than 7. Therefore change to reading blocks of four bytes. Ben Hutchings noted that the buffer is large enough to hold all registers, so now all registers are read. Signed-off-by: Peter Wu <[email protected]> Acked-by: Francois Romieu <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-22sfc: Move NIC-type-specific MTD partition date into separate structuresBen Hutchings1-85/+112
Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Eliminate struct efx_mtdBen Hutchings2-160/+120
Currently we use struct efx_mtd to represent a physical NVRAM device and struct efx_mtd_partition to represent a partition on that device. But this only really makes sense for Falcon, as we don't know or care whether MC-managed NVRAM partitions are on one or more physical devices. It complicates iteration and provides little benefit. Therefore: - Replace the pointer to efx_mtd in mtd_info::priv with a pointer to efx_nic - Move the falcon_spi_device pointer into the union in struct efx_mtd_partition - Move the device name to efx_mtd_partition::dev_type_name - Move the efx_mtd_ops pointer to efx_nic::mtd_ops - Make efx_nic::mtd_list a list of partitions Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Rename SPI stuff to show that it is Falcon-specificBen Hutchings4-47/+47
Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Cleanup Falcon-arch simple MAC filter stateBen Hutchings7-44/+52
On Falcon we implement MAC filtering requested by the stack using the MAC wrapper's single unicast filter and multicast hash filter. Siena is very similar, though MAC configuration is mediated by the MC. Since MCDI operations may sleep, reconfiguration is deferred from ndo_set_rx_mode to a work item. However, it still updates the private variables describing the filter state synchronously. Contrary to comments, the later use of these variables is not protected using the address lock, resulting in race conditions. Move the state update to a new function efx_farch_filter_sync_rx_mode() and make the Falcon-arch MAC configuration functions call that, so that its use is consistently serialised by the mac_lock. Invert and rename the promiscuous flag to the more accurate unicast_filter, and comment that both this and multicast_hash are not used on EF10. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Define and use MCDI_POPULATE_DWORD_{1,2,3,4,5,6,7}Ben Hutchings2-10/+62
There is only one user now, but we're about to add many more. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Add flag for stack-owned RX MAC filtersBen Hutchings2-17/+37
MAC filters inserted on request from the stack (ndo_set_rx_mode) should allow manual steering but not removal. Currently we have a special case for Siena's all-multicast and all-unicast MAC filters, but on EF10 we need to allow for steering of precise MAC filters as well. The EFX_FILTER_FLAG_RX_STACK flag changes the behaviour of replacement and removal requests: - Replacement *of* a filter with this flag never clears the flag but does change steering and saved priority - Replacement *by* a filter with this flag only sets the flag but does not change steering - Removal with priority < EFX_FILTER_PRI_REQUIRED really resets RX steering and saved priority This could support precise MAC filtering on Siena in future. As a side-benefit, the default MAC filters are hidden from ethtool until they are steered. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Refactor Falcon-arch filter removalBen Hutchings1-34/+40
Move the special case for removal of default filters from efx_farch_filter_table_clear_entry() into a wrapper function, efx_farch_filter_table_remove(). Move the existence and priority checks into the latter and use it where appropriate. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Make most filter operations NIC-type-specificBen Hutchings10-1267/+1448
Aside from accelerated RFS, there is almost nothing that can be shared between the filter table implementations for the Falcon architecture and EF10. Move the few shared functions into efx.c and rx.c and the rest into farch.c. Introduce efx_nic_type operations for the implementation and inline wrapper functions that call these. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Refactor Falcon-arch search limit resetBen Hutchings1-29/+30
Currently every call to efx_farch_filter_table_clear_entry() is shortly followed by a conditional reset of the table limits. The new limits (0) are not pushed to hardware until the next filter insertion. Move both the reset and the hardware reconfiguration into efx_farch_filter_table_clear_entry(), and add an explanatory comment. Also, make consistent use of the term 'search limit' for the maximum number of probes the NIC must make when searching for a filter of a particular type. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Split Falcon-arch-specific and common filter stateBen Hutchings2-55/+58
Move the common state from struct efx_filter_state into struct efx_nic. Rename struct efx_filter_state to efx_farch_filter_state and change the type of efx_nic::filter_state to void *. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Extend and abstract efx_filter_spec to cover Huntington/EF10Ben Hutchings3-392/+494
Replace type field with match_flags. Add rss_context and match values covering of most of what is now in the MCDI protocol. Change some fields into bitfields so that the structure size doesn't grow beyond 64 bytes. Ditch the filter decoding functions as it is now easier to pick apart the abstract structure. Rewrite ethtool NFC rule functions to set/get filter match flags and values directly. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Name the RX drop queue IDBen Hutchings2-3/+8
Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Rename Falcon-arch filter implementation types and functionsBen Hutchings1-209/+243
The filter table(s) on EF10 are managed by firmware and will need almost entirely separate code. Rename the types and functions used within the existing implementation. The current definition of struct efx_filter_spec is really implementation-specific, so we need to keep it. For now, define a separate structure for the internal representation but leave them identical. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sfc: Remove unused filter_flags variables and efx_farch_filter_id_flags()Ben Hutchings1-16/+0
Signed-off-by: Ben Hutchings <[email protected]>
2013-08-22sysfs.h: remove attr_name() macroGreg Kroah-Hartman1-1/+1
Gotta love a macro that doesn't reduce the typing you have to do. Also, only the driver core, and one network driver uses this. The driver core functions will be going away soon, and I'll convert the network driver soon to not need this as well, so delete it for now before anyone else gets some bright ideas and wants to use it. Signed-off-by: Greg Kroah-Hartman <[email protected]>
2013-08-22e1000e: resolve checkpatch JIFFIES_COMPARISON warningBruce Allan1-1/+1
WARNING:JIFFIES_COMPARISON: Comparing jiffies is almost always wrong; prefer time_after, time_before and friends Signed-off-by: Bruce Allan <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22e1000e: Avoid kernel crash during shutdownLi Zhang1-0/+7
While doing shutdown on the PCI device, the corresponding callback function e1000e_shutdown() is trying to clear those correctable errors on the upstream P2P bridge. Unfortunately, we don't have the upstream P2P bridge under some cases (e.g. PCI-passthrou for KVM on Power). That leads to kernel crash eventually. The patch adds one more check on that to avoid kernel crash. Signed-off-by: Li Zhang <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22e1000e: Add code to check for failure of pci_disable_link_state callCarolyn Wyborny1-26/+59
This patch attempts to work around a problem found with some systems where the call to pci_diable_link_state_locked() fails. As a result, ASPM is not, in fact, disabled. Changing disable ASPM code to check if state actually is disabled after the call and, if not, try another way to disable it. Signed-off-by: Carolyn Wyborny <[email protected]> Acked-by: Bruce W. Allan <[email protected]> Tested-by: Pavel Machek <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22e1000e: cleanup whitespace in recent commitBruce Allan1-1/+2
Commit (c96ddb0b e1000e: Use marco instead of digit for defining e1000_rx_desc_packet_split) moved a define from one file to another but missed using proper indentation/whitespace. CC: Sergei Shtylyov <[email protected]> Signed-off-by: Bruce Allan <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Expose RSS indirection table for ethtoolLaura Mihaela Vasilescu3-21/+97
This patch adds the ethtool callbacks necessary to change the RETA indirection table from userspace. In order to achieve this, we add the indirection table field (rss_indir_tbl) in the board specific data structure (struct igb_adapter) to preserve the values across hardware resets. The indirection table must be initialized with default values in the following cases: * at module init time * when the number of RX queues changes. For this reason we add a new field (rss_indir_tbl_init) in igb_adapter that keeps track of the number of RX queues. Whenever the number of RX queues changes, the rss_indir_tbl is modified and initialized with default values. The rss_indir_tbl_init is updated accordingly. CC: Ben Hutchings <[email protected]> Signed-off-by: Laura Mihaela Vasilescu <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Add macro for size of RETA indirection tableLaura Mihaela Vasilescu2-1/+3
RETA indirection table is used to assign the received data to a CPU in order to maintain an efficient distribution of network receive processing across multiple CPUs. This patch removes the hard-coded value for the size of the indirection table and defines a new macro. Signed-off-by: Laura Mihaela Vasilescu <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Fix get_fw_version function for all partsCarolyn Wyborny4-44/+93
This patch fixes issues found with older parts and older NVM tools in the display of the version in ethtool. Signed-off-by: Carolyn Wyborny <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Add device support for flashless SKU of i210 deviceCarolyn Wyborny4-2/+19
This patch adds the specific device id support for versions of i210 that do not have flash installed. Signed-off-by: Carolyn Wyborny <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Refactor NVM read functions to accommodate devices with no flashCarolyn Wyborny4-60/+77
This patch refactors NVM read functions in order to accommodate i210 devices that do not have a flash. Previously, this was not supported on i210 devices. Signed-off-by: Carolyn Wyborny <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Refactor of init_nvm_paramsCarolyn Wyborny5-65/+92
This patch refactors the init_nvm_params functions for 82575 and adds a new function for the i210/i211 devices in order to configure separately the NVM functionality for the i210/i211 family. Signed-off-by: Carolyn Wyborny <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Update MTU so that it is always at least a standard frame sizeAlexander Duyck1-0/+4
This change makes it so that we limit the lower bound for max_frame_size to the size of a standard Ethernet frame. This allows for feature parity with other Intel based drivers such as ixgbe. Signed-off-by: Alexander Duyck <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: don't allow SR-IOV without MSI-XMitch A Williams1-0/+5
MSI-X interrupts are required for SR-IOV operation. Check to make sure they're enabled before allowing the user to turn on VFs. Signed-off-by: Mitch Williams <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Added rcu_lock to avoid raceAkeem G Abodunrin1-1/+4
This patch adds rcu_lock to avoid possible race condition with igb_update_stats function accessing the rings in free_ q_vector. CC: Eric Dumazet <[email protected]> Signed-off-by: Akeem G Abodunrin <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Read register for latch_on without return valueAkeem G Abodunrin3-19/+12
This patch changes register read to "just-read" without returning a value for hardware to accurately latch the register value. Signed-off-by: Akeem G Abodunrin <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-22igb: Reset the link when EEE setting changedAkeem G Abodunrin1-1/+3
This patch resets the link, if link is up - whenever users enable or disable EEE Signed-off-by: Akeem G Abodunrin <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2013-08-21stmmac: remove useless csum flagGiuseppe CAVALLARO2-3/+1
This patch removes the no_csum_insertion private parameter that is not used anymore and, also, the "likely" annotation from the condition that is not in a critical path. Signed-off-by: Giuseppe Cavallaro <[email protected]> Cc: Sonic Zhang <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-21net: emac: remove unnecessary dev_set_drvdata()Libo Chen1-2/+0
Unnecessary dev_set_drvdata() is removed, because the driver core clears the driver data to NULL after device_release or on probe failure. Signed-off-by: Libo Chen <[email protected]> Signed-off-by: David S. Miller <[email protected]>