- 25 2月, 2015 12 次提交
-
-
由 Mitch Williams 提交于
When an IOMMU is in use, the packet split receive path shows a distinct advantage over the single-buffer path because it minimizes DMA mapping and unmapping. However, this is not an advantage for systems with no IOMMU. At init time, check to see if an IOMMU is enabled and enable packet split receives. Change-ID: I4f70d2e9c31bbea3dc8fd0c5734959a6e6602210 Signed-off-by: NMitch Williams <mitch.a.williams@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Ashish Shah 提交于
Copy setting from ethtool to the HW specific struct to actually enable prints. Change print from i40e to i40evf to differentiate drivers in bare metal scenarios. Also update the copyright year. Change-ID: I06fee26247299a08f2e1c70fc811a9ea0931c4dd Signed-off-by: NAshish Shah <ashish.n.shah@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Carolyn Wyborny 提交于
This patch adds a struct to the VSI struct to keep track of rxnfc settings done via ethtool. Without this patch, the device can only list the options available, not the current settings and this is not clear to the user. Without current settings, the available settings never changing looks like a bug. Also update the copyright year. Change-ID: I087bbfdb33b330496a671630a7586773e3b3e589 Signed-off-by: NCarolyn Wyborny <carolyn.wyborny@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Catherine Sullivan 提交于
Add a requested speed variable to the link_status struct to store the last speeds we requested from the firmware (the speeds the FW will be advertising with if autoneg is enabled). Use the advertised speed settings in get_settings in ethtool now that we have it. Also set the requested speed settings in set_settings in ethtool as they are requested and initialize them in probe based on what the firmware remembers as the last requested speeds. To accommodate some longer lines in this new code, and improve readability I have added two functions i40e_get_settings_link_up and i40e_get_settings_link_down which get_settings now calls first. It then does all of the settings that happen regardless of link state. Some PHY types that supported the same settings were also combined. Also update the copyright year. Change-ID: Ica0c5ac81b6069ea6a7406fce7482f7816d4455c Signed-off-by: NCatherine Sullivan <catherine.sullivan@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Paul M Stillwell Jr 提交于
The function i40e_debug_aq() prints information helpful in debugging admin queue commands, but it doesn't do so correctly on big endian machines. This patch adds the appropriate LExx_TO_CPU wrappers for big endian architectures. Also update the copyright year. Change-ID: I4b2dc229ed5bf6dfe35632a58cddf53c21aff4b0 Signed-off-by: NPaul M Stillwell Jr <paul.m.stillwell.jr@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Tino Reichardt 提交于
Add Byte Queue Limits (BQL) support to via-rhine driver. [edumazet] tweaked patch and changed TX_RING_SIZE from 16 to 64 Signed-off-by: NTino Reichardt <milky-kernel@mcmilk.de> Tested-by: NJamie Gloudon <jamie.gloudon@gmail.com> Signed-off-by: NEric Dumazet <edumazet@google.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Mahesh Bandewar 提交于
The Churn Detection machines detect the situation where a port is operable, but the Actor and Partner have not attached the link to an Aggregator and brought the link into operation within a bound time period. Under normal operation of the LACP, agreement between Actor and Partner should be reached very rapidly. Continued failure to reach agreement can be symptomatic of device failure. Actor-churn-detection state-machine Reviewed-by: NNikolay Aleksandrov <nikolay@redhat.com> =================================== BEGIN=True + PortEnable=False | v +------------------------+ ActorPort.Sync=True +------------------+ | ACTOR_CHURN_MONITOR | ---------------------> | NO_ACTOR_CHURN | |========================| |==================| | ActorChurn=False | ActorPort.Sync=False | ActorChurn=False | | ActorChurn.Timer=Start | <--------------------- | | +------------------------+ +------------------+ | ^ | | ActorChurn.Timer=Expired | | ActorPort.Sync=True | | | +-----------------+ | | | ACTOR_CHURN | | | |=================| | +--------------> | ActorChurn=True | ------------+ | | +-----------------+ Similar for the Partner-churn-detection. Signed-off-by: NMahesh Bandewar <maheshb@google.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Mahesh Bandewar 提交于
The 802.1AX standard states: "The DA in LACPDUs is the Slow_Protocols_Multicast address." This patch enforces that and drops LACPDUs with destination MAC addresses other than Slow_Protocols_Multicast address Signed-off-by: NMahesh Bandewar <maheshb@google.com> Reviewed-by: NNikolay Aleksandrov <nikolay@redhat.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Petri Gynther 提交于
bcmgenet_hw_params->bds_cnt and GENET_DEFAULT_BD_CNT are used only in Tx init. Rename them accordingly: - bcmgenet_hw_params->bds_cnt => bcmgenet_hw_params->tx_bds_per_q - GENET_DEFAULT_BD_CNT => GENET_Q16_TX_BD_CNT Signed-off-by: NPetri Gynther <pgynther@google.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Petri Gynther 提交于
There is 1-to-1 mapping between TxCBs and TxBDs. Precalculate TxCB->bd_addr once in bcmgenet_init_dma() instead of doing it over and over needlessly in bcmgenet_get_txcb(). Signed-off-by: NPetri Gynther <pgynther@google.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Petri Gynther 提交于
1. Rename bcmgenet_init_multiq() to bcmgenet_init_tx_queues() 2. Fix bcmgenet_init_tx_queues() function description 3. Move Tx default queue init inside bcmgenet_init_tx_queues() 4. Modify bcmgenet_init_dma() to call bcmgenet_init_tx_queues() Signed-off-by: NPetri Gynther <pgynther@google.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Petri Gynther 提交于
1. Simplify function description 2. Rename function parameter write_ptr to start_ptr to better indicate use 3. Remove unnecessary local variable first_bd 4. Remove out-of-place comment "Unclassified traffic goes to ring 16" 5. Fix TDMA_WRITE_PTR register init Signed-off-by: NPetri Gynther <pgynther@google.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
- 24 2月, 2015 25 次提交
-
-
由 Mitch Williams 提交于
Under rare circumstances, after a reset, set_rx_mode might get called while the watchdog is running, which will cause a deadlock on the critical section lock. To correct this, add a counter and give up trying to get the lock after fifty tries. Log a message if this happens but don't take any other action. Because this happens after a reset, all of the Rx filters are still in place and the device won't lose connectivity. We can also get stuck during shutdown, if the PF has stopped communicating with us, or if a reset is occurring. If we can't get the lock after a reasonable amount of time, just error out. Something else bad is happening anyway, so adding this filter is the least of our concern right now. Change-ID: I159731e2a82a06b389ee31b34ce336548e05baa0 Signed-off-by: NMitch Williams <mitch.a.williams@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Mitch Williams 提交于
A recent change to the shutdown flow messed up the reset flow. Since i40evf_down now holds the critical section lock, we cannot call it from the reset handler, which also holds the lock. To do so causes a deadlock accompanied by wailing and gnashing of teeth. This is easily triggered by running an ethtool self-test on the PF device. Instead, we move the relevant portions of i40evf_down into the reset handler and bend them to our will. Additionally, we can optimize the reinit path by not deleting the MAC and VLAN filters and then adding them back again. Instead, we just set the 'add' flag and let the watchdog resynchronize the filter list with the PF driver. We also reword a few messages to make them more consistent with the rest of the driver. Change-ID: I03dd92ae736f7719fca3564b12a2cf9b98c6cb18 Signed-off-by: NMitch Williams <mitch.a.williams@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Mitch Williams 提交于
When closing the interface, disable NAPI polling before any other activities. This fixes an occasional panic during close caused by the driver trying to delete and clean rings at the same time. Change-ID: Ib4d427b13d310258ea85b248d535da70ecf0c1e9 Signed-off-by: NMitch Williams <mitch.a.williams@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Greg Rose 提交于
The netdev op that allows the operator to turn MAC/VLAN spoof checking on and off did not include the flag for VLAN spoof checking. This patch fixes that problem. Change-ID: Ib4c9e639024a854592d97af22706544881ac3fcb Signed-off-by: NGreg Rose <gregory.v.rose@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Sravanthi Tangeda 提交于
Bump i40e to 1.2.8 and i40evf to 1.2.2 Change-ID: I64f47c3367ea8ff2a53068e895d7a1f60726c871 Signed-off-by: NSravanthi Tangeda <sravanthi.tangeda@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Catherine Sullivan 提交于
An_enable was never used only set so lets remove it. The function update_link_info only did two things, call get_link_info and set an_enabled. Therefore we should also remove update_link_info and change all references to it to get_link_info. Change-ID: Ie3022680fa7a94bfd495a4f5fc76a73701d85569 Signed-off-by: NCatherine Sullivan <catherine.sullivan@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Anjali Singhai Jain 提交于
We shouldn't trigger another EMPR when we receive an EMPR event. This patch handles EMPR event reception with a different state so that we can do the right thing for NVM. Change-ID: I9cac70b3658600f016a65beb6fb157e1c1f9adf9 Signed-off-by: NAnjali Singhai Jain <anjali.singhai@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Anjali Singhai Jain 提交于
Some registers have been removed so take them out and stop updating and looking at them. Change-ID: I33da922c8de993a94dd8b8d8a2ae2146b8ca1a27 Signed-off-by: NAnjali Singhai Jain <anjali.singhai@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Neerav Parikh 提交于
Use #defined VSI connection type values instead of using magic numbers. Change-ID: I2f6cf7bf394d391e1c0fe61779e9e4ad8858154a Signed-off-by: NNeerav Parikh <neerav.parikh@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Nicholas Nunley 提交于
Until the time a more robust versioning scheme is needed/implemented all established virtual channel opcode values should remain consistent between updates to the opcode enum. This patch repositions I40E_VIRTCHNL_OP_CONFIG_RSS to the end of the enum. In its current position this opcode displaces the initial value of I40E_VIRTCHNL_OP_EVENT and will cause PF/VF compatibility issues. Going forward the expectation is either: a) All future opcode additions will be added as the last element of the enum. Once VF drivers start making use of the new commands the virtual channel version will need to be incremented and drivers will need to implement a simple version check whereby VF drivers can only load on PFs with a >= version. b) or, if needed, design and implement a more complicated API negotiation capability. In either case PF drivers should always maintain backwards compatibility with earlier VF driver versions. Change-ID: Ie245daa09a231b6680ed793d648bdcc76caefe58 Signed-off-by: NNicholas Nunley <nicholas.d.nunley@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Mitch Williams 提交于
Split the receive hot path code into two, one for packet split and one for single buffer. This improves receive performance since we only need to check if the ring is in packet split mode once per NAPI poll time, not several times per packet. The single buffer code is further improved by the removal of a bunch of code and several variables that are not needed. On a receive-oriented test this can improve single-threaded throughput. Also refactor the packet split receive path to use a fixed buffer for headers, like ixgbe does. This vastly reduces the number of DMA mappings and unmappings we need to do, allowing for much better performance in the presence of an IOMMU. Lastly, correct packet split descriptor types now that we are actually using them. Change-ID: I3a194a93af3d2c31e77ff17644ac7376da6f3e4b Signed-off-by: NMitch Williams <mitch.a.williams@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Shannon Nelson 提交于
Change debugfs command from "clear_stats pf" to "clear_stats port" to be clearer what the action is. Also, limit the action to the base PF, not the NPAR partitions. Change-ID: I22aa39c0962d83a83a985097b1000ed7f8c66f3f Signed-off-by: NShannon Nelson <shannon.nelson@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Kamil Krawczyk 提交于
This change is to refactor the read/write functions to support future work. Change-ID: I13150d5e3042f2c617362c0140dc7e6473ebcdee Signed-off-by: NKamil Krawczyk <kamil.krawczyk@intel.com> Signed-off-by: NShannon Nelson <shannon.nelson@intel.com> Tested-by: NJim Young <james.m.young@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Jeff Kirsher 提交于
Fixed a few cases of when we used msleep() when we should have been using usleep_range(). Also updated the usage of min/max() to use min_t/max_t(). Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com> Tested-by: NAaron Brown <aaron.f.brown@intel.com>
-
由 Jeff Kirsher 提交于
Fix the code comments to align with the drivers/net/ commenting style. Also fix other checkpatch errors such as using tabs where possible and properly wrap lines to conform to the 80 char limit (unless it is a string). Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com> Tested-by: NAaron Brown <aaron.f.brown@intel.com>
-
由 David Ertman 提交于
i219 is the next-generation LOM that will be available on systems with the Sunrise Point Platform Controller Hub (PCH) chipset from Intel. This patch provides the initial support for the device. Signed-off-by: NDave Ertman <david.m.ertman@intel.com> Tested-by: NAaron Brown <aaron.f.brown@intel.com> Tested-by: NCarmen Edwards <carmenx.edwards@intel.com> Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
-
由 Sathya Perla 提交于
Every time be_setup() is called, the driver will have to wait for the function/FW to be properly initialized. So, it make sense to move this call inside be_setup(). Signed-off-by: NSathya Perla <sathya.perla@emulex.com> Signed-off-by: NKalesh AP <kalesh.purayil@emulex.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Kalesh AP 提交于
Most of the resource cleanup sequences performed in be_suspend(), be_eeh_err_detected() and be_err_detection_task() are same. Moved the common code to a new routine be_cleanup() to avoid code duplication. Signed-off-by: NKalesh AP <kalesh.purayil@emulex.com> Signed-off-by: NSathya Perla <sathya.perla@emulex.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Kalesh AP 提交于
Most of the adapter initialisation sequences performed in be_resume(), be_eeh_resume() and be_err_recover() are same. Renamed be_resume() to be_pci_resume() and moved the common code to a new routine be_resume() to avoid code duplication. Signed-off-by: NKalesh AP <kalesh.purayil@emulex.com> Signed-off-by: NSathya Perla <sathya.perla@emulex.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Sathya Perla 提交于
The steps needed for Lancer's reset/initialization sequence are: a) wait for SLIPORT_STAUS RDY bit to be set b) set the SLIPORT_CONTROL IP bit c) repeat step "a" The code needed for this sequence is already covered by the be_func_init() routine (with minor modifications.) So, get rid of the lancer_test_and_set_rdy_state() and lancer_provisioning_error() routines that unnecessarily duplicate this code. Also fixed the error recovery function to take care of these changes Signed-off-by: NSathya Perla <sathya.perla@emulex.com> Signed-off-by: NKalesh AP <kalesh.purayil@emulex.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Kalesh AP 提交于
Currently when an error is detected, the queue resources are being cleaned up in the recovery routine. The resources are better cleaned up in the error detection routine itself (similar to EEH code.) So, this patch re-factors error processing logic to follow the following sequence: - check if there is an error in adapter - if error, - cleanup resources - attempt recovery The patch renames lancer_recover_func() to be_err_recover() as this routine will be used in the future for error recovery on Skyhawk too. Signed-off-by: NKalesh AP <kalesh.purayil@emulex.com> Signed-off-by: NSathya Perla <sathya.perla@emulex.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Sathya Perla 提交于
Also rename func_recovery_work/task to err_detection_work/task as error detection is the primary goal of this task while recovery is not guaranteed. Signed-off-by: NSathya Perla <sathya.perla@emulex.com> Signed-off-by: NKalesh AP <kalesh.purayil@emulex.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Sathya Perla 提交于
Function initialization sequence is executed in be_probe(), be_resume and be_eeh_resume(). Move this code to a new routine called be_func_init() to prevent code duplication. Signed-off-by: NSathya Perla <sathya.perla@emulex.com> Signed-off-by: NKalesh AP <kalesh.purayil@emulex.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Sathya Perla 提交于
Most of the code to fetch the adapter state is in be_setup()->be_get_config(). So, move the code from be_get_initial_config() to be_get_config(). Signed-off-by: NSathya Perla <sathya.perla@emulex.com> Signed-off-by: NKalesh AP <kalesh.purayil@emulex.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Sathya Perla 提交于
The members of be_adapter struct were being allocated in two separate routines -- be_ctrl_init() and be_stats_init(). Also, some other members were allocated elsewhere. This patch moves the alloc/free code into be_drv_init/cleanup() routines. The be_pci_map_bars() routine that was called from be_ctrl_init() is now called directly from be_probe(). The new routine be_drv_init() will now be the place-holder for allocating memory for any new be_adapter{} members in the future. Some routines needed to be moved to provide forward definitions for their calls. Signed-off-by: NSathya Perla <sathya.perla@emulex.com> Signed-off-by: NKalesh AP <kalesh.purayil@emulex.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
- 22 2月, 2015 2 次提交
-
-
由 Rasesh Mody 提交于
This patch updates the BNA driver version to 3.2.25.1 and the firmware version to 3.2.5.1 Signed-off-by: NRasesh Mody <rasesh.mody@qlogic.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Rasesh Mody 提交于
Re-brand the BNA driver to QLogic. Signed-off-by: NRasesh Mody <rasesh.mody@qlogic.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
- 21 2月, 2015 1 次提交
-
-
由 David L Stevens 提交于
An error return from __vnet_tx_trigger() sets the TX descriptor to VIO_DESC_FREE while leaving port->tx_bufs[txi].skb set. This leads to a BUG_ON() the next time this descriptor is used. This patch frees the pending skb when getting a trigger error to match the VIO_DESC_FREE state. Signed-off-by: NDavid L Stevens <david.stevens@oracle.com> Acked-by: NSowmini Varadhan <sowmini.varadhan@oracle.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-