aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/ethernet
AgeCommit message (Collapse)AuthorFilesLines
2013-08-21sfc: const-qualify source pointers for MMIO write functionsBen Hutchings1-8/+10
Signed-off-by: Ben Hutchings <[email protected]>
2013-08-21Merge branch 'sfc-3.11'Ben Hutchings1-1/+1
Merge sfc fixes destined for 3.11 so we can avoid conflicts with development for 3.12+.
2013-08-21sfc: Fix lookup of default RX MAC filters when steered using ethtoolBen Hutchings1-1/+1
commit 385904f819e3 ('sfc: Don't use efx_filter_{build,hash,increment}() for default MAC filters') used the wrong name to find the index of default RX MAC filters at insertion/ update time. This could result in memory corruption and would in any case silently fail to update the filter. Signed-off-by: Ben Hutchings <[email protected]>
2013-08-20net: cpsw: Add support for wake-on-lan for cpswMatus Ujhelyi1-0/+25
Some phy's can be configured to enable wake on lan (e.g. at803x or marvell 88E1318S). There is no way how to enable wol on CPSW with such connected phys. This patch adds this support. It is provided by calling the phy's related code. Tested on board with at8030x connected phy. Wol interrupt line is connected to GPIO0 on am335x. Signed-off-by: Matus Ujhelyi <[email protected]> Acked-by: Mugunthan V N <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20drivers: net: cpsw: remove platform data header file of cpswMugunthan V N2-1/+43
CPSW driver no longer supports platform register as all the SoCs which has CPSW are supporting DT only booting, so moving cpsw.h header file from platform include to drivers/net/ethernet/ti Signed-off-by: Mugunthan V N <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20bcm63xx_enet: replace devm_request_and_ioremap by devm_ioremap_resourceJulia Lawall1-5/+5
Use devm_ioremap_resource instead of devm_request_and_ioremap. This was done using the semantic patch scripts/coccinelle/api/devm_ioremap_resource.cocci The relevant call to platform_get_resource was manually moved down to the call to devm_ioremap_resource. Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20net: davinci_mdio: use platform_{get,set}_drvdata()Libo Chen1-2/+1
Use the wrapper functions for getting and setting the driver data using platform_device instead of using dev_{get,set}_drvdata() with &pdev->dev, so we can directly pass a struct platform_device. Signed-off-by: Libo Chen <[email protected]> Acked-by: Mugunthan V N <[email protected]> Acked-by: Lad, Prabhakar <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20net: xilinx_emaclite: use platform_{get,set}_drvdata()Libo Chen1-2/+1
Use the wrapper functions for getting and setting the driver data using platform_device instead of using dev_{get,set}_drvdata() with &of_dev->dev, so we can directly pass a struct platform_device. Signed-off-by: Libo Chen <[email protected]> Acked-by: Michal Simek <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20net: sunhme: use platform_{get,set}_drvdata()Libo Chen1-1/+1
Use the wrapper functions for getting and setting the driver data using platform_device instead of using dev_{get,set}_drvdata() with &of->dev, so we can directly pass a struct platform_device. Signed-off-by: Libo Chen <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20net: sunbmac: use platform_{get,set}_drvdata()Libo Chen1-1/+1
Use the wrapper functions for getting and setting the driver data using platform_device instead of using dev_{get,set}_drvdata() with &of->dev, so we can directly pass a struct platform_device. Signed-off-by: Libo Chen <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20net: fec_mpc52xx_phy: use platform_{get,set}_drvdata()Libo Chen1-2/+1
Use the wrapper functions for getting and setting the driver data using platform_device instead of using dev_{get,set}_drvdata() with &of->dev, so we can directly pass a struct platform_device. Signed-off-by: Libo Chen <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20net: ucc_geth: use platform_{get,set}_drvdata()Libo Chen1-2/+1
Use the wrapper functions for getting and setting the driver data using platform_device instead of using dev_{get,set}_drvdata() with &ofdev->dev, so we can directly pass a struct platform_device. Signed-off-by: Libo Chen <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20net: fsl_pq_mdio: use platform_{get,set}_drvdata()Libo Chen1-1/+1
Use the wrapper functions for getting and setting the driver data using platform_device instead of using dev_{get,set}_drvdata() with &pdev->dev, so we can directly pass a struct platform_device. Signed-off-by: Libo Chen <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20sh_eth: remove 'register_type' field from 'struct sh_eth_plat_data'Sergei Shtylyov1-0/+7
Now that the 'register_type' field of the 'sh_eth' driver's platform data is not used by the driver anymore, it's time to remove it and its initializers from the SH platform code. Also move *enum* declaring values for this field from <linux/sh_eth.h> to the local driver's header file as they're only needed by the driver itself now... Signed-off-by: Sergei Shtylyov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20sh_eth: get register layout from 'struct sh_eth_cpu_data'Sergei Shtylyov2-1/+22
The register layout is a SoC characteristic, so it's wrong that it's stored in the otherwise board specific platform data. Add 'register_type' field to 'struct sh_eth_cpu_data', initialize it properly for each SoC, and read it from this structure instead of the platfrom data from now on... Signed-off-by: Sergei Shtylyov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20r8169: remember WOL preferences on driver loadPeter Wu1-1/+1
Do not clear Broadcast/Multicast/Unicast Wake Flag or LanWake in Config5. This is necessary to preserve WOL state when the driver is loaded. Although the r8168 vendor driver does not write Config5 (it has been commented out), Hayes Wang from Realtek said that masking bits like this is more sensible. Signed-off-by: Peter Wu <[email protected]> Acked-by: Francois Romieu <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20myri10ge: Add support for ndo_busy_pollHyong-Youb Kim1-2/+198
Add the ndo_busy_poll handler. Use skb_mark_napi_id to mark receive packets with the napi id. For each slice, use per-slice spinlock and state variable to ensure that only one handler processes receive pacekts. Locking, statistics counters, and the ndo_busy_poll handler follow those in the ixgbe driver. So, credit goes to that driver's authors. Signed-off-by: Hyong-Youb Kim <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20pch_gbe: ethtool cannot change parameters when link is downAnders Larsen1-0/+1
When attempting to change e.g. the advertising mask when the link is down ecmd->speed is -1 causing mii_ethtool_sset() to bail out. This bug bit when connecting to a gigabit switch through a 4-pin (industrial) cable, since link negotiation would not complete (both endpoints claimed to be gigabit-capable, but this is not possible with only 4 pins). Any attempt to fix this by setting autonegation to not offer 1000Mbps failed as the setting would not be accepted while the link was still down... Set ecmd->speed to SPEED_1000 to satisfy mii_ethtool_sset() (the actual value of ecmd->speed doesn't matter as long as it is valid, since a re-negotation is forced afterwards). Signed-off-by: Anders Larsen <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20moxa: fix missing unlock on error in moxart_mac_start_xmit()Wei Yongjun1-4/+6
Add the missing unlock before return from function moxart_mac_start_xmit() in the error handling case. Signed-off-by: Wei Yongjun <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20sundance: Add netpoll supportDenis Kirjanov1-0/+14
Signed-off-by: Denis Kirjanov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20r8169,sis190: remove unnecessary length checkPeter Wu2-6/+0
The ethtool core will lower the requested length to the one returned by get_regs_len, therefore no additional check is needed in the get_regs function. Reported-by: Ben Hutchings <[email protected]> Signed-off-by: Peter Wu <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20drivers/net: enic: Generate notification of hardware crashNeel Patel2-1/+2
This patch generates a hardware crash notification (NETDEV_REBOOT) during reset. After a hardware crash, ENIC resets all its resources including queue pair filters programmed by USNIC. USNIC registers for this notification, and on receiving it, reprograms the queue pair filters. Signed-off-by: Neel Patel <[email protected]> Signed-off-by: Nishank Trivedi <[email protected]> Signed-off-by: Christian Benvenuti <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20drivers/net: enic: Add an interface for USNIC to interact with firmwareNeel Patel5-1/+83
This patch adds an interface for USNIC to proxy firmware commands through ENIC. Signed-off-by: Neel Patel <[email protected]> Signed-off-by: Nishank Trivedi <[email protected]> Signed-off-by: Christian Benvenuti <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20drivers/net: enic: Adding support for Cisco Low Latency NICNeel Patel7-17/+197
This patch, - Adds new firmware commands for the new Cisco Low Latency NIC (aka. USNIC). Signed-off-by: Neel Patel <[email protected]> Signed-off-by: Nishank Trivedi <[email protected]> Signed-off-by: Christian Benvenuti <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20treewide: Add __GFP_NOWARN to k.alloc calls with v.alloc fallbacksJoe Perches2-2/+2
Don't emit OOM warnings when k.alloc calls fail when there there is a v.alloc immediately afterwards. Converted a kmalloc/vmalloc with memset to kzalloc/vzalloc. Signed-off-by: Joe Perches <[email protected]> Acked-by: "Theodore Ts'o" <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
2013-08-20treewide: Fix typo in printkMasanari Iida2-3/+3
Correct spelling typo in printk Signed-off-by: Masanari Iida <[email protected]> Acked-by: Randy Dunlap <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
2013-08-20qlcnic: Update version to 5.3.47Himanshu Madhani1-3/+3
Signed-off-by: Himanshu Madhani <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20qlcnic: Add support for 84xx adapters to load firmware from filePratik Pujar2-2/+28
o Use appropriate firmware image file name based on device IDs. Signed-off-by: Pratik Pujar <[email protected]> Signed-off-by: Himanshu Madhani <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20qlcnic: Loopback Inter Driver Communication AEN handlerManish Chopra2-9/+37
o Loopback initiator function drivers should process loopback time extend AEN. These AENs are triggered by the loopback time extend mailbox command issued by the target function drivers. Signed-off-by: Manish Chopra <[email protected]> Signed-off-by: Himanshu Madhani <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20qlcnic: Add PVID support for 84xx adaptersManish Chopra2-7/+14
o 84xx adapters support VLAN stripping for PVID. Packets don't have VLAN tag inserted in case of PVID. So packet should follow non vlan path. o Use capability bit to set PVID mode. Signed-off-by: Manish Chopra <[email protected]> Signed-off-by: Himanshu Madhani <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20qlcnic: Enable support for 844X adapterManish Chopra3-7/+23
Signed-off-by: Manish Chopra <[email protected]> Signed-off-by: Himanshu Madhani <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20bnx2x: set VF DMAE when first function has 0 supported VFsAriel Elior1-5/+2
There are possible HW configurations in which PFs will have SR-IOV capability but will have Max VFs set to 0 - this happens when there are Multi-Function devices where the VFs are allocated to only some of the PFs. DMAE is configured to support VFs only if the configuring PF has supported VFs. In case the first PF to be loaded will be one without supported VFs, it will not configure DMAE to the VF-supporting mode. When VFs of other PFs will be loaded later on, they will not be able to communicate with their PF. This changes the requirement for configuring DMAE for VF-supporting mode; If the device has SR-IOV capabilities there must be some PF that has max supported VFs > 0, thus it will configure the DMAE for supporting VFs. Signed-off-by: Ariel Elior <[email protected]> Signed-off-by: Yuval Mintz <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20bnx2x: Protect against VFs' ndos when SR-IOV is disabledAriel Elior1-18/+31
Since SR-IOV can be activated dynamically and iproute2 can be called asynchronously, the various callbacks need a robust sanity check before attempting to access the SR-IOV database and members since there are numerous states in which it can find the driver (e.g., PF is down, sriov was not enabled yet, VF is down, etc.). In many of the states the callback result will be null pointer dereference. Signed-off-by: Ariel Elior <[email protected]> Signed-off-by: Yuval Mintz <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20bnx2x: prevent VF benign attentionsYuval Mintz1-0/+3
During probe, VFs might erroneously try to access the shared memory (which only PFs are capabale of accessing), causing benign attentions to appear. Signed-off-by: Yuval Mintz <[email protected]> Signed-off-by: Ariel Elior <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20bnx2x: Consider DCBX remote errorDmitry Kravkov1-3/+6
When publishing information via getfeatcfg(), bnx2x driver didn't consider remote errors (e.g., switch that doesn't support DCBX) when setting the error flags. Signed-off-by: Dmitry Kravkov <[email protected]> Signed-off-by: Yuval Mintz <[email protected]> Signed-off-by: Ariel Elior <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20bnx2x: Change DCB context handlingDmitry Kravkov4-8/+43
After notification that DCBX configuration has ended arrived to the driver, the driver configured the FW/HW in sleepless context. As a result, it was possible to reach a race (mostly with CNIC registration) in which the configuration will return a timeout, failing to set the DCBX results correctly. This patch moves the configuration following the DCBX end into the slowpath RTNL task (i.e., sleepless context protected by the RTNL lock), allowing the configuration to cope with such races. Signed-off-by: Dmitry Kravkov <[email protected]> Signed-off-by: Yuval Mintz <[email protected]> Signed-off-by: Ariel Elior <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20bnx2x: dropless flow control not always functionalDmitry Kravkov1-13/+23
Since commit 3deb816 "bnx2x: Add a periodic task for link PHY events" link state changes can be detected not only via the attention flow but also from the periodic task. If the link state will change in such a manner (i.e., via the periodic task), dropless flow-control will not be configured. This patch remedies the issue, adding the missing configuration to all required flows. Signed-off-by: Dmitry Kravkov <[email protected]> Signed-off-by: Yuval Mintz <[email protected]> Signed-off-by: Ariel Elior <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-20sis900: don't restart auto-negotiation each time after link resume.Denis Kirjanov1-17/+11
Signed-off-by: Denis Kirjanov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-16Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller25-222/+344
2013-08-15net/mlx5_core: Support MANAGE_PAGES and QUERY_PAGES firmware command changesMoshe Lazer4-35/+29
In the previous QUERY_PAGES command version we used one command to get the required amount of boot, init and post init pages. The new version uses the op_mod field to specify whether the query is for the required amount of boot, init or post init pages. In addition the output field size for the required amount of pages increased from 16 to 32 bits. In MANAGE_PAGES command the input_num_entries and output_num_entries fields sizes changed from 16 to 32 bits and the PAS tables offset changed to 0x10. In the pages request event the num_pages field also changed to 32 bits. In the HCA-capabilities-layout the size and location of max_qp_mcg field has been changed to support 24 bits. This patch isn't compatible with firmware versions < 5; however, it turns out that the first GA firmware we will publish will not support previous versions so this should be OK. Signed-off-by: Moshe Lazer <[email protected]> Signed-off-by: Eli Cohen <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15qlcnic: Update version to 5.2.46.Sucheta Chakraborty1-2/+2
Signed-off-by: Sucheta Chakraborty <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15qlcnic: Dump mailbox command data when a command times outManish Chopra1-0/+1
Signed-off-by: Manish Chopra <[email protected]> Signed-off-by: Sucheta Chakraborty <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15qlcnic: Fix driver initialization for 83xx adaptersManish Chopra1-7/+7
o Load firmware from file before setting up interrupts. Signed-off-by: Manish Chopra <[email protected]> Signed-off-by: Sucheta Chakraborty <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15qlcnic: Flush mailbox command list when mailbox is not availableManish Chopra1-1/+6
o Driver was hitting a panic at the time of adapter reset due to invalid command access from the list which had been already freed by the queuing thread. Flush all the pending commands from the list before proceeding with adapter reset Signed-off-by: Manish Chopra <[email protected]> Signed-off-by: Sucheta Chakraborty <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15qlcnic: Reinitialize mailbox data structures after firmware resetManish Chopra1-1/+1
o After firmware reset VFs were failing to come up because of not reinitializing mailbox data structures. Reinitialize them so that VFs can come up after firmware reset. Signed-off-by: Manish Chopra <[email protected]> Signed-off-by: Sucheta Chakraborty <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15qlcnic: Fix diagnostic interrupt test for 83xx adaptersManish Chopra1-0/+5
o Do not allow interrupt test when adapter is resetting. Signed-off-by: Manish Chopra <[email protected]> Signed-off-by: Sucheta Chakraborty <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15qlcnic: Fix beacon state return status handlingSucheta Chakraborty1-3/+3
o Driver was misinterpreting the return status for beacon state query leading to incorrect interpretation of beacon state and logging an error message for successful status. Fixed the driver to properly interpret the return status. Signed-off-by: Sucheta Chakraborty <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15qlcnic: Fix set driver version commandHimanshu Madhani2-3/+6
Driver was issuing set driver version command through all functions in the adapter. Fix the driver to issue set driver version once per adapter, through function 0. Signed-off-by: Himanshu Madhani <[email protected]> Signed-off-by: Sucheta Chakraborty <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15net: tg3: fix NULL pointer dereference in tg3_io_error_detected and ↵Daniel Borkmann1-5/+8
tg3_io_slot_reset Commit d8af4dfd8 ("net/tg3: Fix kernel crash") introduced a possible NULL pointer dereference in tg3 driver when !netdev || !netif_running(netdev) condition is met and netdev is NULL. Then, the jump to the 'done' label calls dev_close() with a netdevice that is NULL. Therefore, only call dev_close() when we have a netdevice, but one that is not running. [ Add the same checks in tg3_io_slot_reset() per Gavin Shan - by Nithin Nayak Sujir ] Reported-by: Dave Jones <[email protected]> Signed-off-by: Daniel Borkmann <[email protected]> Cc: Gavin Shan <[email protected]> Cc: Michael Chan <[email protected]> Signed-off-by: Nithin Nayak Sujir <[email protected]> Signed-off-by: Nithin Nayak Sujir <[email protected]> Signed-off-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2013-08-15drivers/net/ethernet/via/via-velocity.c: update napi implementationJulia Lawall1-1/+3
Drivers supporting NAPI should use a NAPI-specific function for receiving packets. Hence netif_rx is changed to netif_receive_skb. Furthermore netif_napi_del should be used in the probe and remove function to clean up the NAPI resource information. Thanks to Francois Romieu, David Shwatrz and Rami Rosen for their help on this patch. Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: David S. Miller <[email protected]>