linux/drivers/net/ethernet/intel/i40evf
Mitch Williams ee5c1e92dd i40evf: detect reset more reliably
Using VFGEN_RSTAT to detect a VF reset is an endeavor that is fraught
with peril. It's entirely too easy to miss a reset because none of the
bits are sticky. By the time the VF driver reads the register, the reset
may have been processed and cleaned up by the PF driver, leaving the
register in the same state that it was before the reset.

Instead, detect a reset with the VF_ARQLEN register. When the VF is
reset, the enable bit in this register is cleared, and it stays cleared
until the VF driver processes the reset and re-enables the admin queue.

Because we now deal with multiple registers in the reset and watchdog
tasks, rename the rstat_val variable to reg_val.

Change-ID: Id1df17045c0992e607da0162d31807f7fc20d199
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>
2015-10-08 16:08:50 -07:00
..
i40e_adminq_cmd.h i40e/i40evf: Update FW API with X722 support 2015-08-05 16:53:44 -07:00
i40e_adminq.c i40e/i40evf: assure clean asq status report 2015-10-07 13:59:02 -07:00
i40e_adminq.h i40e/i40evf: fix a potential type compare issue 2015-10-07 13:38:11 -07:00
i40e_alloc.h i40evf: Fix the headers and update copyright year. 2014-05-21 01:54:43 -07:00
i40e_common.c i40e/i40evf: add driver support for new device ids 2015-10-07 13:34:09 -07:00
i40e_hmc.h i40e: use BIT and BIT_ULL macros 2015-07-23 05:33:55 -07:00
i40e_lan_hmc.h i40e/i40evf: Big endian fixes for handling HMC 2014-06-26 04:44:57 -07:00
i40e_osdep.h i40evf: Fix the headers and update copyright year. 2014-05-21 01:54:43 -07:00
i40e_prototype.h i40e/i40evf: Update FW API with X722 support 2015-08-05 16:53:44 -07:00
i40e_register.h i40evf: Remove PF specific register definitions from the VF 2015-08-26 15:05:17 -07:00
i40e_status.h i40evf: Fix the headers and update copyright year. 2014-05-21 01:54:43 -07:00
i40e_txrx.c i40e/i40evf: Add a stat to keep track of linearization count 2015-10-07 14:35:45 -07:00
i40e_txrx.h i40e/i40evf: Add a stat to keep track of linearization count 2015-10-07 14:35:45 -07:00
i40e_type.h i40e/i40evf: Explicitly assign enum index for VSI type 2015-10-08 16:02:44 -07:00
i40e_virtchnl.h i40e/i40evf: remove unused opcode 2015-10-07 14:57:26 -07:00
i40evf_ethtool.c i40e: use BIT and BIT_ULL macros 2015-07-23 05:33:55 -07:00
i40evf_main.c i40evf: detect reset more reliably 2015-10-08 16:08:50 -07:00
i40evf_virtchnl.c i40e/i40evf: give up the __func__ 2015-10-07 14:11:24 -07:00
i40evf.h i40e/i40evf: Add support for writeback on ITR feature for X722 2015-08-05 16:53:45 -07:00
Makefile i40evf: Fix the headers and update copyright year. 2014-05-21 01:54:43 -07:00