Переглянути джерело

bnx2x: Force fundamental reset for EEH recovery

EEH recovery for bnx2x based adapters is not reliable on all Power
systems using the default hot reset, which can result in an
unrecoverable EEH error. Forcing the use of fundamental reset
during EEH recovery fixes this.

Cc: stable<stable@vger.kernel.org>
Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Brian King 11 роки тому
батько
коміт
da29370056
1 змінених файлів з 3 додано та 0 видалено
  1. 3 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c

+ 3 - 0
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c

@@ -12722,6 +12722,9 @@ static int bnx2x_init_dev(struct bnx2x *bp, struct pci_dev *pdev,
 	pci_write_config_dword(bp->pdev, PCICFG_GRC_ADDRESS,
 	pci_write_config_dword(bp->pdev, PCICFG_GRC_ADDRESS,
 			       PCICFG_VENDOR_ID_OFFSET);
 			       PCICFG_VENDOR_ID_OFFSET);
 
 
+	/* Set PCIe reset type to fundamental for EEH recovery */
+	pdev->needs_freset = 1;
+
 	/* AER (Advanced Error reporting) configuration */
 	/* AER (Advanced Error reporting) configuration */
 	rc = pci_enable_pcie_error_reporting(pdev);
 	rc = pci_enable_pcie_error_reporting(pdev);
 	if (!rc)
 	if (!rc)