[v2] powerpc/powernv: Block PCI config access on BCM5718 during EEH recovery

Submitted by Gavin Shan on April 19, 2017, 4:46 a.m.

Details

Message ID 1492577184-20204-1-git-send-email-gwshan@linux.vnet.ibm.com
State Accepted
Commit c374ed27c93698c794f99c5d41d9ad3062c4c207
Headers show

Commit Message

Gavin Shan April 19, 2017, 4:46 a.m.
Similar to what is done in commit b6541db13952 ("powerpc/eeh: Block
PCI config access upon frozen PE"), we need block PCI config access
for BCM5719 when recovering frozen error on them. Otherwise, an
unexpected recursive fenced PHB error is observed.

   0001:06:00.0 Ethernet controller: Broadcom Corporation \
                NetXtreme BCM5718 Gigabit Ethernet PCIe (rev 10)
   0001:06:00.1 Ethernet controller: Broadcom Corporation \
                NetXtreme BCM5718 Gigabit Ethernet PCIe (rev 10)

Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
---
v2: s/BCM5719/BCM5718 in the subject
---
 arch/powerpc/platforms/powernv/eeh-powernv.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Michael Ellerman May 15, 2017, 5:06 a.m.
On Wed, 2017-04-19 at 04:46:24 UTC, Gavin Shan wrote:
> Similar to what is done in commit b6541db13952 ("powerpc/eeh: Block
> PCI config access upon frozen PE"), we need block PCI config access
> for BCM5719 when recovering frozen error on them. Otherwise, an
> unexpected recursive fenced PHB error is observed.
> 
>    0001:06:00.0 Ethernet controller: Broadcom Corporation \
>                 NetXtreme BCM5718 Gigabit Ethernet PCIe (rev 10)
>    0001:06:00.1 Ethernet controller: Broadcom Corporation \
>                 NetXtreme BCM5718 Gigabit Ethernet PCIe (rev 10)
> 
> Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>

Applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/c374ed27c93698c794f99c5d41d9ad

cheers

Patch hide | download patch | download mbox

diff --git a/arch/powerpc/platforms/powernv/eeh-powernv.c b/arch/powerpc/platforms/powernv/eeh-powernv.c
index 6fb5522..55a3c5f 100644
--- a/arch/powerpc/platforms/powernv/eeh-powernv.c
+++ b/arch/powerpc/platforms/powernv/eeh-powernv.c
@@ -412,11 +412,14 @@  static void *pnv_eeh_probe(struct pci_dn *pdn, void *data)
 	 * been set for the PE, we will set EEH_PE_CFG_BLOCKED for
 	 * that PE to block its config space.
 	 *
+	 * Broadcom BCM5718 2-ports NICs (14e4:1656)
 	 * Broadcom Austin 4-ports NICs (14e4:1657)
 	 * Broadcom Shiner 4-ports 1G NICs (14e4:168a)
 	 * Broadcom Shiner 2-ports 10G NICs (14e4:168e)
 	 */
 	if ((pdn->vendor_id == PCI_VENDOR_ID_BROADCOM &&
+	     pdn->device_id == 0x1656) ||
+	    (pdn->vendor_id == PCI_VENDOR_ID_BROADCOM &&
 	     pdn->device_id == 0x1657) ||
 	    (pdn->vendor_id == PCI_VENDOR_ID_BROADCOM &&
 	     pdn->device_id == 0x168a) ||