linux-next: manual merge of the pci tree with Linus' tree
From: Stephen Rothwell
Date: Mon Sep 03 2012 - 21:59:14 EST
Hi Bjorn,
Today's linux-next merge of the pci tree got a conflict in
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c between commit
8eee694c3e66 ("bnx2x: fix unload previous driver flow when flr-capable")
from Linus' tree and commit 2a80eebcbf3e ("bnx2x: Use PCI Express
Capability accessors") from the pci tree.
The former removes the function updated by the latter, so I just removed
the function (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@xxxxxxxxxxxxxxxx
diff --cc drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
index 2105498,281cf3f..0000000
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
@@@ -9372,29 -9378,28 +9366,25 @@@ static int __devinit bnx2x_prev_mark_pa
return rc;
}
-static bool __devinit bnx2x_can_flr(struct bnx2x *bp)
-{
- u32 cap;
- struct pci_dev *dev = bp->pdev;
-
- pcie_capability_read_dword(dev, PCI_EXP_DEVCAP, &cap);
- if (!(cap & PCI_EXP_DEVCAP_FLR))
- return false;
-
- return true;
-}
-
static int __devinit bnx2x_do_flr(struct bnx2x *bp)
{
- int i, pos;
+ int i;
u16 status;
struct pci_dev *dev = bp->pdev;
- /* probe the capability first */
- if (bnx2x_can_flr(bp))
- return -ENOTTY;
+
+ if (CHIP_IS_E1x(bp)) {
+ BNX2X_DEV_INFO("FLR not supported in E1/E1H\n");
+ return -EINVAL;
+ }
+
+ /* only bootcode REQ_BC_VER_4_INITIATE_FLR and onwards support flr */
+ if (bp->common.bc_ver < REQ_BC_VER_4_INITIATE_FLR) {
+ BNX2X_ERR("FLR not supported by BC_VER: 0x%x\n",
+ bp->common.bc_ver);
+ return -EINVAL;
+ }
- pos = pci_pcie_cap(dev);
- if (!pos)
- return -ENOTTY;
-
/* Wait for Transaction Pending bit clean */
for (i = 0; i < 4; i++) {
if (i)
Attachment:
pgp00000.pgp
Description: PGP signature