From mboxrd@z Thu Jan 1 00:00:00 1970 From: Qiming Yang Subject: [PATCH 2/8] net/ixgbe/base: increasing timeout Date: Thu, 11 Jan 2018 00:04:33 +0800 Message-ID: <20180110160439.160403-3-qiming.yang@intel.com> References: <20180110160439.160403-1-qiming.yang@intel.com> Cc: wenzhuo.lu@intel.com, wei.dai@intel.com, Qiming Yang To: dev@dpdk.org Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id C132C1B171 for ; Wed, 10 Jan 2018 09:23:19 +0100 (CET) In-Reply-To: <20180110160439.160403-1-qiming.yang@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Increasing SECRX_RDY polling frequency and semaphore timeout. Fixed the FWSW.PT check in ixgbe_mng_present(). Signed-off-by: Qiming Yang --- drivers/net/ixgbe/base/ixgbe_common.c | 4 ++-- drivers/net/ixgbe/base/ixgbe_x540.c | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/net/ixgbe/base/ixgbe_common.c b/drivers/net/ixgbe/base/ixgbe_common.c index 717af6e..4c950f1 100644 --- a/drivers/net/ixgbe/base/ixgbe_common.c +++ b/drivers/net/ixgbe/base/ixgbe_common.c @@ -3347,7 +3347,7 @@ void ixgbe_release_swfw_sync(struct ixgbe_hw *hw, u32 mask) **/ s32 ixgbe_disable_sec_rx_path_generic(struct ixgbe_hw *hw) { -#define IXGBE_MAX_SECRX_POLL 40 +#define IXGBE_MAX_SECRX_POLL 4000 int i; int secrxreg; @@ -3364,7 +3364,7 @@ s32 ixgbe_disable_sec_rx_path_generic(struct ixgbe_hw *hw) break; else /* Use interrupt-safe sleep just in case */ - usec_delay(1000); + usec_delay(10); } /* For informational purposes only */ diff --git a/drivers/net/ixgbe/base/ixgbe_x540.c b/drivers/net/ixgbe/base/ixgbe_x540.c index 0e51813..ef29a9b 100644 --- a/drivers/net/ixgbe/base/ixgbe_x540.c +++ b/drivers/net/ixgbe/base/ixgbe_x540.c @@ -779,6 +779,9 @@ s32 ixgbe_acquire_swfw_sync_X540(struct ixgbe_hw *hw, u32 mask) swmask |= swi2c_mask; fwmask |= swi2c_mask << 2; + if (hw->mac.type >= ixgbe_mac_X550) + timeout = 1000; + for (i = 0; i < timeout; i++) { /* SW NVM semaphore bit is used for access to all * SW_FW_SYNC bits (not just NVM) -- 2.9.4