i40e: clear NVM update state on ethtool test
authorShannon Nelson <shannon.nelson@intel.com>
Thu, 13 Nov 2014 08:23:12 +0000 (08:23 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Tue, 9 Dec 2014 20:57:00 +0000 (12:57 -0800)
Once in a great while the NVMUpdate tools and the driver get out
of phase with each other.  This gives us a way to reset things
without having to unload the driver.

Change-ID: I353f688236249a666a90ba3e7233e0ed8c1a04e9
Signed-off-by: Shannon Nelson <shannon.nelson@intel.com>
Tested-by: Jim Young <jamesx.m.young@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_ethtool.c

index fcd815dc7d3c4c4ae81496b843b6eed3101c2514..25242f505161fd0101cbfc45ad852e2e5ef27151 100644 (file)
@@ -1393,6 +1393,9 @@ static int i40e_eeprom_test(struct net_device *netdev, u64 *data)
        netif_info(pf, hw, netdev, "eeprom test\n");
        *data = i40e_diag_eeprom_test(&pf->hw);
 
+       /* forcebly clear the NVM Update state machine */
+       pf->hw.nvmupd_state = I40E_NVMUPD_STATE_INIT;
+
        return *data;
 }