-
Dawid Wesierski authored
There was a problem with resuming ping after conducting a PCI reset. This commit adds two functions, igbvf_io_prepare and igbvf_io_done, which, after being added to the pci_error_handlers struct, will prepare the drivers for a PCI reset and then bring the interface up and reset it after. This will prevent the driver from ending up in incorrect state. Test_and_set_bit is highly reliable in this context, so we are not including a timeout in this commit This introduces 900ms - 1100ms of overhead to this operation but it's in non-time-critical flow. And also allows the driver to continue functioning after the reset. Functionality documented in ethernet-controller-i350-datasheet 4.2.1.3 https://www.intel.com/content/www/us/en/products/details/ethernet/gigabit-controllers/i350-controllers/docs.htmlSigned-off-by:
Dawid Wesierski <dawidx.wesierski@intel.com> Signed-off-by:
Kamil Maziarz <kamil.maziarz@intel.com> Reviewed-by:
Michal Kubiak <michal.kubiak@intel.com> Tested-by:
Marek Szlosek <marek.szlosek@intel.com> Signed-off-by:
Tony Nguyen <anthony.l.nguyen@intel.com>
5a9b7bfb