diff options
author | Breno Leitao <leitao@linux.vnet.ibm.com> | 2009-11-26 10:31:49 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-12-03 02:36:28 +0300 |
commit | 529fab67d78747ddc3a8a2bbd0d1aab1d059439f (patch) | |
tree | f054f5c48a18c70c023af0551be28d899a1bf5b6 | |
parent | 7c7afb083675b3d4d012a2aacec3a958ba484ab0 (diff) | |
download | linux-529fab67d78747ddc3a8a2bbd0d1aab1d059439f.tar.xz |
bnx2: EEH is failing with timeout
bnx2 is failing when a PCI error is detected. The error is the
following:
bnx2: Chip not in correct endian mode
bnx2: fw sync timeout, reset code = 404001d
This error was caused because the way pci_restore_state() is working
after commit 4b77b0a2ba27d64f58f16d8d4d48d8319dda36ff ("PCI: Clear
saved_state after the state has been restored").
Signed-off-by: Breno Leitao<leitao@linux.vnet.ibm.com>
Acked-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/bnx2.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c index 08cddb6ff740..7fa4048b58d4 100644 --- a/drivers/net/bnx2.c +++ b/drivers/net/bnx2.c @@ -8264,6 +8264,7 @@ static pci_ers_result_t bnx2_io_slot_reset(struct pci_dev *pdev) } pci_set_master(pdev); pci_restore_state(pdev); + pci_save_state(pdev); if (netif_running(dev)) { bnx2_set_power_state(bp, PCI_D0); |