|
@@ -7898,6 +7898,11 @@ static pci_ers_result_t igb_io_slot_reset(struct pci_dev *pdev)
|
|
|
pci_enable_wake(pdev, PCI_D3hot, 0);
|
|
pci_enable_wake(pdev, PCI_D3hot, 0);
|
|
|
pci_enable_wake(pdev, PCI_D3cold, 0);
|
|
pci_enable_wake(pdev, PCI_D3cold, 0);
|
|
|
|
|
|
|
|
|
|
+ /* In case of PCI error, adapter lose its HW address
|
|
|
|
|
+ * so we should re-assign it here.
|
|
|
|
|
+ */
|
|
|
|
|
+ hw->hw_addr = adapter->io_addr;
|
|
|
|
|
+
|
|
|
igb_reset(adapter);
|
|
igb_reset(adapter);
|
|
|
wr32(E1000_WUS, ~0);
|
|
wr32(E1000_WUS, ~0);
|
|
|
result = PCI_ERS_RESULT_RECOVERED;
|
|
result = PCI_ERS_RESULT_RECOVERED;
|