- 05 Jan, 2014 9 commits
-
-
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-nextDavid S. Miller authored
Jeff Kirsher says: ==================== Intel Wired LAN Driver Updates This series contains updates to i40e and pci_regs.h. Anjali provides a patch to prevent messages from stray HMC events, except at interrupt message level, and refactors the HMC error handling. Catherine adds routines in probe to populate/check PCI bus speed and width, then verify we are in a 8GT/s x8 PCIe slot and warn when we are not. Shannon adds Wake-on-LAN support for i40e, fixes curly brace use as well as return type for i40e_vsi_clear_rings(). Joseph implements receive offload for VXLAN for i40e, where the hardware supports checksum offload/verification of the inner/outer header. Mitch provides the bulk of the changes, where he refactors the VF reset code so that it works on real hardware. Then does code cleanup by calling existing functions to enable and disable queues for VFs and remove unused functions. Removes a unnecessary log messages that are seen at every VF reset, for example complaining about disabling queues that are already disabled. Fixes an error return when the VF asks to add an invalid MAC address and if the VF sends a bad message, make it more informative about what is actually going on. Jesse refactors the LED function to flash LED lights correctly. v2: - removed patch 5 "i40e: add set settings and pauseparam" based on feedback from Ben Hutchings, will re-work that patch for later submission - Added patch "i40e: Implementation of vxlan ndo's" from Joseph to address Or Gerlitz's questions and concerns. This patch adds the implementation for the VXLAN ndo's and allows the hardware to do receive checksum offload for inner packets on the UDP ports that VXLAN notifies us about. - Added patch "i40e: using for_each_set_bit to simplify the code" from Wei Yongjun. This patch uses for_each_set_bit() to simply the code. v3: - fixed indentation issue in patch 11 based on feedback from Sergei Shtylyov. Sorry for the delayed release of v4, it was delayed to the holidays. v4: - Addressed Or Gerlitz's concerns about trying to get a hold of a mutex while holding a spin lock in patch 6 by executing the AQ commands from a subtask. - Addressed David Miller's Kconfig concerns by creating a Kconfig VXLAN option for i40e and wrapped appropriate code with the config option in patch 6. - Updated patch 7 based on the changes made in patch 6 in the above two bullets. v5: - Added the patch to pci_regs.h based on David Miller's feedback to add PCI defines for speed and width - Updated patch 3 description to better explain the changes based on feedback from David Miller - Updated patch 4 to use the newly added defines to pci_regs.h instead of local defines - Updated patch 7 to use <net/vxlan.h> in the #include based on feedback from David Miller ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
-
Sergei Shtylyov authored
phy_scan_fixups() isn't and shouldn't be called by the drivers directly, so unexport it. And since Florian Fainelli's recent patches, the function is only called locally, so we can make it static as well. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Sergei Shtylyov authored
Remove adjust_state() callback from 'struct phy_device' since it seems to have never been really used from the inception: phy_start_machine() has been always called with 2nd argument equal to NULL. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Sergei Shtylyov authored
Remove excess empty lines such as those between a function call and its result check and just duplicate ones between functions. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Sergei Shtylyov authored
Remove some excess code: - convert assignments to initializers; - kill useless assignments before *return*. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Sergei Shtylyov authored
A number of functions (especially in phy.c) has local variables that were hardly needed in the first place -- remove them. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Sergei Shtylyov authored
Running 'checkpatch.pl' gives some errors and warnings: - no spaces around =; - * separated by space from the function name; - { in function definition not on a separate line; - line over 80 characters. While fixing these, also fix the following style issues: - file name in the heading comment; - alignment not matching open paren. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Sergei Shtylyov authored
The recent patch from Florian Fainelli fixed all 'checkpatch.pl' errors but left some warnings like: - including <asm/io.h> instead of <linux/io.h>; - including <asm/uaccess.h> instead of <linux/uaccess.h>; - block comments using empty /* line; - 'struct dev_pm_ops' variable not being *const*. While fixing these, also fix the following style issues (some of which were found running 'checkpatch.pl --strict'): - alignment not matching open paren; - file name in the heading comment. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Sergei Shtylyov authored
The recent patch from Florian Fainelli fixed all 'checkpatch.pl' errors but left the numerous warnings: - including <asm/io.h> instead of <linux/io.h>; - including <asm/uaccess.h> instead of <linux/uaccess.h>; - *extern* declaration in .c file; - block comments using empty /* line; - block comments not starting with * on the middle lines; - block comments not having trailing */ on a separate line; - EXPORT_SYMBOL() not immediately following its function; - unnecessary {} for signle statement block; - spaces before tabs. While fixing these, also fix the following style issues (some of which were found running 'checkpatch.pl --strict'): - alignment not matching open paren; - missing {} on one of the *if* arms where another has them; - use of sizeof(struct structure) instead of sizeof(*variable); - multiple assignments on one line; - empty line before }; - file names in the heading comments; - missing spaces around operators; - no {} around multi-line *if* operator's arm; - unneeded () around subexpressions; - incomplete kernel-doc comment style; - comment line exceeding 80 characters; - missing empty line after declarations. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
- 04 Jan, 2014 31 commits
-
-
Mitch Williams authored
If the user does not assign a VF MAC address, then just report it as zero. Attempting to guess the correct primary MAC address of the VF is a futile and heartbreaking endeavour. Change-Id: I2673577a160afb6fc55094c890467b44e60c7584 Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Sibai Li <sibai.li@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Jesse Brandeburg authored
Add an argument to led function and refactor code to flash LED lights correctly. Change-Id: I00b21607ced53aaa057159503875708871946259 Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Mitch Williams authored
Make a define used in the header file by both VF and PF drivers. Change-Id: Ie9e35adcc021cd6a8f7513934984eb4ed55774f5 Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Mitch Williams authored
If the VF sends a bad message, be more informative about what it actually is. Change-Id: I89e06d2db416a1d05aeea016dd6e8b7870cae99a Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Mitch Williams authored
If the VF asks to add an invalid MAC address, tell it that instead of just using a generic return code. Change-Id: I366aff5449fa5874ad51e2734cac2a71783ab14b Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Mitch Williams authored
Don't complain when we disable queues that are already disable, or enable them when they're already enabled. This removes a bunch of bogus log messages that we see at every VF reset. Change-Id: Ia127be572abdccc48a53d8c43f8a07b8bb920de1 Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Mitch Williams authored
Don't keep separate functions to enable and disable queues for the VFs. Just call the existing function that everybody else uses. Remove the unused functions. Change-Id: I15db9aad64a59e502bfe1e0fdab9b347ab85c12c Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Sibai Li <sibai.li@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Mitch Williams authored
Fix the VF reset flow so that it works on real hardware. After discussions with the HW team, the reset flow has been changed somewhat. - Change the i40e_reset_vf function to a void type, and fix up the callers to reflect this. - Move the MSI-X disable code to i40e_free_vf_res since it must be done every time the VF is freed, regardless of whether or not it is reset. - Ensure that the PCIe bus is quiet before polling the reset bit. - Don't clear the VFGEN_RSTAT1 register at the beginning as it is cleared by the reset. - Poll longer for the reset to be done. - Disable the queues using an existing function rather than rolling our own. - Free and reallocate the VSI after reset to avoid rx hang. Change-Id: I11e2590431cb73e8663714d1cc5b23d59b809033 Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Mitch Williams authored
The VF reset code will be refactored in future patches. Part of that refactor required it to call i40e_alloc_vf_res and i40e_free_vf_res, so the function must be moved. In order to make the future patches more readable, we perform the function move here, with no other changes. Change-Id: If6567c9c0bada6caafb2ee0227e0d9d50d05f27f Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Joseph Gasparakis authored
This implements receive offload for VXLAN for i40e. The hardware supports checksum offload/verification of the inner/outer header. Change-Id: I450db300af6713f2044fef1191a0d1d294c13369 Signed-off-by: Joseph Gasparakis <joseph.gasparakis@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Jeff Kirsher authored
This adds the implementation for the VXLAN ndo's. This allows the hardware to do RX checksum offload for inner packets on the UDP ports that VXLAN notifies us about. Signed-off-by: Joseph Gasparakis <joseph.gasparakis@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Shannon Nelson authored
Add curly-braces on a multi-line function. While we're here we also change to return void in i40e_vsi_clear_rings() since no caller cares. Change-Id: I261fcef20e2a39e18d83ec08fdd14456131dee91 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Shannon Nelson authored
Wake on LAN is disabled by default and will remain that way for most platforms, but there is an NVM setting that allows vendors to enable it for a port if they think they've provided the right power environment for the device. This patch adds code to check the NVM setting and enable Magic Packet use if WoL is enabled for the port. Since only Magic Packet is supported, there's not a lot of HW configuration needed. Change-Id: I44e904a7b15695e34683009f487064cd86ea59b0 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Catherine Sullivan authored
Call i40e_set_pci_config_data from probe, then check that we are in a 8GT/s x8 PCIe slot and send a warning if we are not. Change-Id: I62815c574cee50d2787c50bbe956dde7a7a75a11 Signed-off-by: Catherine Sullivan <catherine.sullivan@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Anjali Singhai Jain authored
The HMC error interrupt would generate an un-necessary message "unhandled interrupt", causing extra log spam, in addition to causing a reset that was not necessary. Prevent this issue by handling the HMC error case explicitly, and only reset if the interrupt was from some of the other causes. Change-Id: Iabd203ba1dfc26a136b638597f3e9991acfa29f3 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Wei Yongjun authored
Using for_each_set_bit() to simplify the code. Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-
Jeff Kirsher authored
Add missing PCI bus link speed 8.0 GT/s and bus link widths of x1, x2, x4 and x8. CC: <linux-kernel@vger.kernel.org> CC: Bjorn Helgaas <bhelgaas@google.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Acked-by: Bjorn Helgaas <bhelgaas@google.com>
-
David S. Miller authored
Scott Feldman says: ==================== bonding: final set of netlink patches v2: - per Jiri's comment, fix ad_select checking against parm table by spliting bond_parse_parm() into several funcs. Go ahead and apply same technique to all parameters using parm table. - fix netlink msg size to including missing nest attr - drop the last patch for active_slaves. This patch needs to be reworked per Jiri's comments and shouldn't hold up finalizing the conversion of the existing parameter to netlink attributes. Ding, assuming this patch set goes in, you should have all you need to start converting module parameter setting/checking over to funcs in *_options.c. I'll send iproute2 patch for bonding netlink support once this patch set is accepted. v1: The following series implements the last set of bonding netlink attributes for 802.3ad mode: lacp_rate ad_select ad_info, nest of: ad_aggregator ad_num_ports ad_actor_key ad_partner_key ad_partner_mac The last patch adds an additional netlink attribute, active_slaves, which is a nested list of ifindices for current active slaves. We're using this list to enable/disable hashing of ports in a hardware LAG implementation. In the same way bonding driver includes/excludes ports for 802.3ad egress hashing, hardware ports are included/excluded from egress hashing by hardware based on port active status. Yes, data path offloaded to hardware, control path remains in kernel via bonding driver. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
-
sfeldma@cumulusnetworks.com authored
Add bounds checking for params defined with parm tbl. Signed-off-by: Scott Feldman <sfeldma@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
sfeldma@cumulusnetworks.com authored
Add missing space for IFLA_BOND_ARP_IP_TARGET nest header. Signed-off-by: Scott Feldman <sfeldma@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
sfeldma@cumulusnetworks.com authored
Add nested IFLA_BOND_AD_INFO for bonding 802.3ad info. Signed-off-by: Scott Feldman <sfeldma@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
sfeldma@cumulusnetworks.com authored
Add IFLA_BOND_AD_SELECT to allow get/set of bonding parameter ad_select via netlink. Signed-off-by: Scott Feldman <sfeldma@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
sfeldma@cumulusnetworks.com authored
Add IFLA_BOND_AD_LACP_RATE to allow get/set of bonding parameter lacp_rate via netlink. Signed-off-by: Scott Feldman <sfeldma@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
David S. Miller authored
Nithin Nayak Sujir says: ==================== tg3: Unicast filter support and misc fixes Michael Chan (2): tg3: Refactor __tg3_set_mac_addr() tg3: Add unicast filtering support. Nithin Nayak Sujir (3): tg3: Set the MAC clock to the fastest speed during boot code load tg3: Poll cpmu link state on APE + ASF enabled devices tg3: Update version to 3.136 ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
-
Nithin Sujir authored
Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Nithin Sujir authored
On ASF enabled devices where the mgmt firmware runs on the application processing engine, there is a race between the tg3 driver processing a link change event and the ASF firmware clearing the link changed bit in the EMAC status register. This leads to link notifications to the driver sometimes getting lost. Poll the CPMU link state as a backup for the normal interrupt path update if ASF is enabled. Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com> Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Nithin Sujir authored
On the 5717, 5718 and 5719 devices, the bootcode runs slower when any port doesn't have a link due to clock speed slowing down as part of the link-aware feature. This leads to the driver timing out waiting for the bootcode signature. This patch overrides the clock policy to the highest frequency just before reset and restores it after the bootcode is up. Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com> Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Michael Chan authored
Up to 3 additional unicast addresses can be added to the perfect match filter table. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Michael Chan authored
so that individual MAC address filter entries can be set. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
stephen hemminger authored
The llc_sap_list_lock does not need to be global, only acquired in core. Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-
stephen hemminger authored
Namespace related cleaning * make cred_to_ucred static * remove unused sock_rmalloc function Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-