summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* sctp: remove the unused sctp_datamsg_free()Xin Long2016-02-172-14/+0Star
| | | | | | | | | | | Since commit 8b570dc9f7b6 ("sctp: only drop the reference on the datamsg after sending a msg") used sctp_datamsg_put in sctp_sendmsg, instead of sctp_datamsg_free, this function has no use in sctp. So we will remove it. Signed-off-by: Xin Long <lucien.xin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sctp: remove rcu_read_lock in sctp_seq_dump_remote_addrs()Xin Long2016-02-171-2/+0Star
| | | | | | | | | | | sctp_seq_dump_remote_addrs is only called by sctp_assocs_seq_show() and it has been protected by rcu_read_lock that is from rhashtable_walk_start(). So we will remove this one. Signed-off-by: Xin Long <lucien.xin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sctp: move rcu_read_lock from __sctp_lookup_association to ↵Xin Long2016-02-171-2/+2
| | | | | | | | | | | | | | sctp_lookup_association __sctp_lookup_association() is only invoked by sctp_v4_err() and sctp_rcv(), both which run on the rx BH, and it has been protected by rcu_read_lock [see ip_local_deliver_finish() / ipv6_rcv()]. So we can move it to sctp_lookup_association, only let sctp_lookup_association use rcu_read_lock. Signed-off-by: Xin Long <lucien.xin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* core: remove unneded headers for net cgroup controllers.Rosen, Rami2016-02-172-2/+0Star
| | | | | | | | | | | commit 3ed80a6 (cgroup: drop module support) made including module.h redundant in the net cgroup controllers, netclassid_cgroup.c and netprio_cgroup.c. This patch removes them. Signed-off-by: Rami Rosen <rami.rosen@intel.com> Acked-by: Tejun Heo <tj@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'renesas-cleanups'David S. Miller2016-02-172-14/+0Star
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sergei Shtylyov says: ==================== Kill useless *switch* defaults in the Renesas Ethernet drivers Here's a set of 2 patches against DaveM's 'net-next.git' repo removing often used *default* cases doing nothing. [1/2] ravb: kill useless *switch* defaults [2/2] sh_eth: kill useless *switch* defaults ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * sh_eth: kill useless *switch* defaultsSergei Shtylyov2016-02-171-12/+0Star
| | | | | | | | | | | | | | | | | | The driver often has the *default* cases doing nothing in the *switch* statements with the integer expressions -- remove them. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Reviewed-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: David S. Miller <davem@davemloft.net>
| * ravb: kill useless *switch* defaultsSergei Shtylyov2016-02-171-2/+0Star
|/ | | | | | | | | The driver has the *default* case doing nothing in the *switch* statement with an integer expression -- remove it. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Reviewed-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch '40GbE' of ↵David S. Miller2016-02-1710-65/+254
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue Jeff Kirsher says: ==================== 40GbE Intel Wired LAN Driver Updates 2016-02-17 This series contains updates to i40e/i40evf only. Jesse cleans up a duplicate declaration in probe. Then fixes a bug where the driver was using a offset based off a DMA handle while mapping and unmapping using sync_single_range_for_[cpu|device], when it should be using DMA handle (returned from alloc_coherent) and the offset of the memory to be sync'd. Fixed an issue where sync_vsi_filter() was allocating memory in a way that could sleep (GFP_KERNEL) which was causing a problem when called by the team driver under rcu_read_lock(). Shannon adds a check to ensure we do not attempt to do TSO when skb->ip_summed is not set to CHECKSUM_PARTIAL. Kiran add functions related to port mirroring features such as add/delete mirror rule. Jacob assigns the i40e_pf structure directly instead of using a large memcpy, to avoid a sparse warning and lets the compiler optimize the copy since it know the size of the structure in advance. Anjali enables GENEVE capability for XL710/X710 devices with firmware API version higher than 1.4. Added flag for automatic rule eviction feature for X722, which is disabled by default. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * i40e: use eth_platform_get_mac_address()Sowmini Varadhan2016-02-171-18/+1Star
| | | | | | | | | | | | | | | | | | | | | | This commit converts commit b499ffb0a22c ("i40e: Look up MAC address in Open Firmware or IDPROM") to use eth_platform_get_mac_address() added by commit c7f5d105495a ("net: Add eth_platform_get_mac_address() helper.") Signed-off-by: Sowmini Varadhan <sowmini.varadhan@oracle.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: add priv flag for automatic rule evictionAnjali Singhai Jain2016-02-175-2/+21
| | | | | | | | | | | | | | | | | | The X722 can support automatic rule eviction for automatically added flow director rules. Feature is (should be) disabled by default. Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: Enable Geneve offload for FW API ver > 1.4 for XL710/X710 devicesAnjali Singhai2016-02-171-1/+14
| | | | | | | | | | | | | | | | | | | | | | This patch makes sure we check the GENEVE offload capable flag before we attempt offload. It also enables the Capability for XL710/X710 devices with FW API version higher than 1.4 Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e/i40evf: bump version to 1.4.12/1.4.8Jesse Brandeburg2016-02-172-2/+2
| | | | | | | | | | | | | | | | | | Bump driver versions to i40e-1.4.12 and i40evf-1.4.8 Change-ID: I0ad82668c4ded04250391fda396ce191a42ab754 Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: avoid large memcpy by assigning structJacob Keller2016-02-171-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | Assign the i40e_pf structure directly instead of using a large memcpy, which avoids a sparse warning and lets the compiler optimize the copy since it knows the size of the structure in advance. Change-ID: I17604e23be2616521eb760290befcb767b52b3f7 Signed-off-by: Jacob Keller <jacob.e.keller@intel.com> Reviewed-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: count allocation errorsJesse Brandeburg2016-02-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Driver already counted allocation errors, so print them as part of the ethtool -S output. Useful for debugging if your system is having trouble making memory available for the driver. Change-ID: I83839fa86e81e6d80f03b917c88dd3ef9a64dde0 Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: drop unused functionJesse Brandeburg2016-02-172-17/+0Star
| | | | | | | | | | | | | | | | | | | | Delete the unused irq_dynamic_disable function. Change-ID: Ia46071066babd121c7c90f141b6210b00078de3f Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Reviewed-by: Anjali Singhai <anjali.singhai@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: negate PHY int mask bitsShannon Nelson2016-02-171-8/+8
| | | | | | | | | | | | | | | | | | | | The PHY interrupt mask bits mask out the events we don't want, so we need to negate the bitmask of events we want. Change-ID: I273244da5a8d285b6abc84fd68a90f1e6fa0393e Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: APIs to Add/remove port mirroring rulesKiran Patil2016-02-172-0/+174
| | | | | | | | | | | | | | | | | | | | | | | | This patch implements necessary functions related to port mirroring features such as add/delete mirror rule, function to set promiscuous VLAN mode for VSI if mirror rule_type is "VLAN Mirroring". Change-ID: Iaf513fd5f188f99dcb977b48f99e73185dfddc40 Signed-off-by: Kiran Patil <kiran.patil@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: fix: do not sleep in netdev_opsJesse Brandeburg2016-02-171-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The driver was being called by VLAN, bonding, teaming operations that expected to be able to hold locks like rcu_read_lock(). This causes the driver to be held to the requirement to not sleep, and was found by the kernel debug options for checking sleep inside critical section, and the locking validator. Change-ID: Ibc68c835f5ffa8ffe0638ffe910a66fc5649a7f7 Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Reviewed-by: Nelson, Shannon <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: allocate memory saferJesse Brandeburg2016-02-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The sync_vsi_filter function was allocating memory in such a way that it could sleep (GFP_KERNEL) which was causing a problem when called by the team driver under rcu_read_lock(), which cannot be held while sleeping. Found with lockdep. Change-ID: I4e59053cb5eedcf3d0ca151715be3dc42a94bdd5 Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: do TSO only if CHECKSUM_PARTIAL is setShannon Nelson2016-02-172-0/+6
| | | | | | | | | | | | | | | | | | | | Don't bother trying to set up a TSO if the skb->ip_summed is not set to CHECKSUM_PARTIAL. Change-ID: I6495b3568e404907a2965b48cf3e2effa7c9ab55 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: fix bug in dma syncJesse Brandeburg2016-02-172-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Driver was using an offset based off a DMA handle while mapping and unmapping using sync_single_range_for[cpu|device], where it should be using DMA handle (returned from alloc_coherent) and the offset of the memory to be sync'd. Change-ID: I208256565b1595ff0e9171ab852de06b997917c6 Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Reviewed-by: Nelson, Shannon <shannon.nelson@intel.com> Reviewed-by: Williams, Mitch A <mitch.a.williams@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: trivial: fix missing spaceJesse Brandeburg2016-02-171-1/+1
| | | | | | | | | | | | | | | | | | | | Missing space in comment, fixed. Change-ID: I8cdf3ce5994b4a97dcc3eeb33422533918546667 Reported-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: trivial: drop duplicate definitionJesse Brandeburg2016-02-171-2/+0Star
| | | | | | | | | | | | | | | | | | | | The probe routine already had a u32 val declared, no need to do it again. Found by W=2 compile. Change-ID: Id7b65f6d0ef6bb71067d0557f5be0202b6d8741e Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
* | Merge branch 'amd-xgbe-next'David S. Miller2016-02-178-217/+340
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tom Lendacky says: ==================== amd-xgbe: AMD XGBE driver updates 2016-02-12 The following updates and fixes are included in this driver update series: - Disable VLAN filtering in promiscuous mode - Change from using napi_complete to napi_complete_done - Use __napi_schedule_irqoff when running in interrupt context - Verify ethtool speed setting is valid for the selected speedset - Enable PFC based on the pfc_en setting - Fix the mapping of priorities to traffic classes - Do traffic class setup when DCB nl callbacks are invoked - Check Rx queue fifos before stopping Rx queue DMA - Switch from disable_irq to masking interrupts for auto-negotiation This patch series is based on net-next. Changes from v1: - Removed #ifndef and #define of CRCPOLY_LE as part of the patch to disable VLAN filtering in promiscuous mode - Reworked changes to xgbe_setup_tc to resolve conflicts with commit 16e5cc647173 (net: rework setup_tc ndo op to consume general tc operand) ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * | amd-xgbe: Mask auto-negotiation interrupts in ISRLendacky, Thomas2016-02-174-33/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the auto-negotiation interrupt handling disables the irq instead of masking off the interrupts. This was done because the phy library was originally used to read and write the PCS registers, which could not be performed in interrupt context. Now that the phy library is no longer used to read and write the PCS registers the interrupts can be masked off in the interrupt service routine eliminating the need to call disable_irq/enable_irq. This also requires changing the protection mutex to a spinlock. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | amd-xgbe: Check Rx queue fifos before stopping Rx DMALendacky, Thomas2016-02-172-3/+37
| | | | | | | | | | | | | | | | | | | | | | | | Check to be sure that the Rx queue fifos are empty before stopping the Rx DMA channels. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | amd-xgbe: Do traffic class setup when called through dcbnlLendacky, Thomas2016-02-174-30/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the netdev traffic class setup is only performed when invoked through the ndo_setup_tc interface. However, the same setup should be performed when the dcbnl interface (ieee_setets) is invoked. Rework the netdev traffic class setup to be invokable through either interface and also provide the priority to traffic class mapping if available. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | amd-xgbe: Fix the mapping of priorities to traffic classesLendacky, Thomas2016-02-171-29/+21Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The driver is checking the pfc_en field of the ieee_pfc structure to determine whether to associate a priority with a traffic class. This is incorrect since the pfc_en field is for determining if PFC is enabled for a traffic class. The association of priority to traffic class does not depend on whether the traffic class is enabled for PFC, so remove that check. Also, the mapping of priorities to traffic classes should be done when configuring the traffic classes and not the PFC support so move the priority to traffic class association from xgbe_config_dcb_pfc to xgbe_config_dcb_tc. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | amd-xgbe: Enable/disable PFC per traffic classLendacky, Thomas2016-02-171-2/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the PFC flow control is enabled on all traffic classes if one or more traffic classes request it. The PFC enable setting of the traffic class should be used to determine whether to enable or disable flow control for the traffic class. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | amd-xgbe: Verify forced speed matches the active speedsetLendacky, Thomas2016-02-171-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | When using ethtool to set the speed for the device, verify that the specified speed is valid within the active speedset. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | amd-xgbe: Use __napi_schedule_irqoffLendacky, Thomas2016-02-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Change from calling __napi_schedule to __napi_schedule_irqoff when running in interrupt context or when called by netpoll with interrupts already disabled. The Tx timer function will continue to use __napi_schedule. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | amd-xgbe: Change from napi_complete to napi_complete_doneLendacky, Thomas2016-02-171-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | Change from using napi_complete to napi_complete_done to allow for the use of gro_flush_timeout in tuning network processing. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | amd-xgbe: Disable VLAN filtering when in promiscuous modeLendacky, Thomas2016-02-171-112/+117
|/ / | | | | | | | | | | | | | | | | | | | | | | | | When the hardware is placed in promiscuous mode it will still perform VLAN filtering and therefore may not pass all packets to the driver. Disable all VLAN filtering when entering promiscuous mode and restore VLAN filtering upon exit from promiscuous mode. In order to avoid adding forward declarations, move the VLAN related functions earlier in the file. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* / macvlan: convert to use IFF_NO_QUEUEZhang Shengju2016-02-171-1/+1
|/ | | | | | | Use IFF_NO_QUEUE to indicate that a device can run without a qdisc. Signed-off-by: Zhang Shengju <zhangshengju@cmss.chinamobile.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch '40GbE' of ↵David S. Miller2016-02-1715-43/+138
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue Jeff Kirsher says: ==================== 40GbE Intel Wired LAN Driver Updates 2016-02-16 This series contains updates to i40e/i40evf only. Shannon adds flags to MAC allocation requests to signify that the MAC VLAN filters should come from the shared resource pool. Added a new "set switch config" admin queue command and the new Cisco VXLAN-GPE cloud tunnel type for the admin queue commands. Added more detail to the NVM update debug message in order to see the full ethtool request data. Also added a few more bits of netdev data into the debugfs output for dump VSI. Pandi fixes the width of two datatypes which were being declared a different size from what they are assigned. Anjali fixes an issue where we were not doing write-back on interrupt throttle for legacy case in x722. Mitch adds a counter for ARQ overflows since sometimes an ever-growing number indicates that something bad is happening. Also added 20G speed for Tx bandwidth calculations. Jesse refactors the DCB function based on a community suggestion to change the multi-level if statement into a switch statement. Cleans up VF device IDs in the PF, since it does not need to know them. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * i40e/i40evf: Bump i40e to 1.4.11 and i40evf to 1.4.7Catherine Sullivan2016-02-172-2/+2
| | | | | | | | | | | | | | | | | | Bump. Change-ID: I21aa520a3c8c5f4f562a98019bf8b76b3706c480 Signed-off-by: Catherine Sullivan <catherine.sullivan@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: trivial: remove unnecessary local varJesse Brandeburg2016-02-171-3/+2Star
| | | | | | | | | | | | | | | | | | | | | | Probe routine already has too many locals, just convert one used for kzalloc into a kcalloc, eliminating the local. Change-ID: I349049872b71f858cbeb91ad7836e6767fc7b7d1 Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Reviewed-by: Anjali Singhai <anjali.singhai@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: remove VF device IDs from PFJesse Brandeburg2016-02-172-12/+0Star
| | | | | | | | | | | | | | | | | | | | The PF doesn't need to know about the VF's device IDs, so remove them. Change-ID: I62cf0e0fffa1ace586e58e00bc271b10ae440f05 Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Acked-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: add netdev info to VSI dumpShannon Nelson2016-02-171-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a few more bits of netdev data into the debugfs output for dump VSI. For now, we'll add the features, hw_features, vlan_features, and flags bitflags and the state. More could be added later if needed. Also, tweak a couple nearby output lines for output readability. Change-ID: I9fb5a9da75c9ad7679498ce9ac3ba24d065ddd2e Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Reviewed-by: Brandeburg, Jesse <jesse.brandeburg@intel.com> Reviewed-by: Wyborny, Carolyn <carolyn.wyborny@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40evf: enable bus master after resetMitch Williams2016-02-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | If the VF is reset via VFLR, the device will be knocked out of bus master mode, and the driver will fail to recover from the reset. Fix this by enabling bus mastering after every reset. In a non-VFLR case, the bus master bit will not be disabled, and this call will have no effect. Change-ID: Id515859ac7a691db478222228add6d149e96801a Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: add a little more to an NVM update debug messageShannon Nelson2016-02-171-2/+3
| | | | | | | | | | | | | | | | | | | | | | Add a little more detail to an NVM update debug message in order to see the full ethtool request data. Change-ID: Iab10437cb32d6fddc67ee347e7c0b42511e152cd Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Acked-by: Kevin Scott <kevin.c.scott@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: refactor DCB functionJesse Brandeburg2016-02-171-4/+11
| | | | | | | | | | | | | | | | | | | | | | This is a simple refactor suggested by the community to change a multi-level if statement into a switch. Change-ID: I831cf3c40426022220aa9b43990022d22dfd50db Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Acked-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: add 20G speed for Tx bandwidth calculationsMitch Williams2016-02-171-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | When calculating TX bandwidth for VFs, we need to know the link speed to make sure we don't allocate more bandwidth than is available. Add 20G link speed to the switch statement so we can support devices that link at that speed. Change-ID: I5409f6139d549e5832777db9c22ca0664e0c5f8b Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: add counter for arq overflowsMitch Williams2016-02-173-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes, ARQ overflows are a big deal and tell us that the firmware/hardware/driver/something is having problems. But normally they're no big deal. To assist in assessing this, add a counter to our Ethtool stats. A handful of ARQ overflows during VF init is no problem. A large, ever-growing number indicates that Something Bad is happening. Change-ID: Ie5348bfbc8a54a890559cb00279c28d976a55096 Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: fix write-back-on-itr to work with legacy itrAnjali Singhai Jain2016-02-172-6/+15
| | | | | | | | | | | | | | | | | | | | | | | | We were not doing write-back on interrupt throttle for Legacy case in X722. This patch fixes that, so we do WB_ON_ITR for Legacy as well. Plus the issue that we should still be setting NO_ITR if we are touching the DYN_CTLN register since we do not want to change ITR setting here. Change-ID: I5db8491ee1544118a389db839cecc93e1bbc480e Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: Store lan_vsi_idx and lan_vsi_id in the right sizePandi Maharajan2016-02-171-2/+2
| | | | | | | | | | | | | | | | | | | | lan_vsi_idx and lan_vsi_id are assigned to u16 data sized variables but declared in u8. This patch fixes the width of the datatype. Change-ID: If4bcbcc7d32f2b287c51cb33d17879691258dce2 Signed-off-by: Pandi Kumar Maharajan <pandi.maharajan@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: Bump AQ minor version to 1.5 for new FW featuresShannon Nelson2016-02-172-2/+2
| | | | | | | | | | | | | | | | | | | | Bump AQ minor version to 1.5 for new FW features. Change-ID: I5a790f7f519a2a8921aaa1c5663727dd1897ffec Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Acked-by: Kevin Scott <kevin.c.scott@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: AQ thermal sensor control structShannon Nelson2016-02-172-0/+34
| | | | | | | | | | | | | | | | | | Add the new AQ command and struct for managing a thermal sensor. Change-ID: I6f5631839a0f3dca352a6c222f1269a960e2310a Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: AQ Add VXLAN-GPE tunnel typeShannon Nelson2016-02-172-0/+6
| | | | | | | | | | | | | | | | | | | | | | Add the new Cisco VXLAN-GPE cloud tunnel type for the Add Cloud Filter and UDP tunnel AQ commands. Change-ID: I2c093c7d79726c7fca08a36e5c63581a905da3d2 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Acked-by: Kevin Scott <kevin.c.scott@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
| * i40e: AQ Add set_switch_configShannon Nelson2016-02-172-2/+28
| | | | | | | | | | | | | | | | | | | | | | Add the new Set Switch Config AdminQ command, and mark the L2 Filter bit as deprecated in the Add VEB command. Change-ID: I5b24790f14c56f0ddf3f70df1e486844146b039f Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Acked-by: Kevin Scott <kevin.c.scott@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>