瀏覽代碼

ixgbe: Update ixgbe_disable_pcie_master flow for X550*

This patch skips the PCI transactions pending check in
ixgbe_disable_pcie_master. This is done to addresses a known HW
issue where the PCI transactions pending bit sticks high when there
are pending transactions. HW engineering instructed to workaround
this issue by wait and then continue with our reset flow.

Signed-off-by: Mark Rustad <mark.d.rustad@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Mark Rustad 10 年之前
父節點
當前提交
7fc1510354
共有 1 個文件被更改,包括 3 次插入0 次删除
  1. 3 0
      drivers/net/ethernet/intel/ixgbe/ixgbe_common.c

+ 3 - 0
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c

@@ -2476,6 +2476,9 @@ static s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw)
 	hw_dbg(hw, "GIO Master Disable bit didn't clear - requesting resets\n");
 	hw_dbg(hw, "GIO Master Disable bit didn't clear - requesting resets\n");
 	hw->mac.flags |= IXGBE_FLAGS_DOUBLE_RESET_REQUIRED;
 	hw->mac.flags |= IXGBE_FLAGS_DOUBLE_RESET_REQUIRED;
 
 
+	if (hw->mac.type >= ixgbe_mac_X550)
+		return 0;
+
 	/*
 	/*
 	 * Before proceeding, make sure that the PCIe block does not have
 	 * Before proceeding, make sure that the PCIe block does not have
 	 * transactions pending.
 	 * transactions pending.