From patchwork Tue Jul 18 02:28:34 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Qiming Yang X-Patchwork-Id: 26996 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id BB97347CD; Tue, 18 Jul 2017 04:40:10 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by dpdk.org (Postfix) with ESMTP id A955B2FDD; Tue, 18 Jul 2017 04:40:09 +0200 (CEST) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga105.jf.intel.com with ESMTP; 17 Jul 2017 19:40:08 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos; i="5.40,376,1496127600"; d="scan'208"; a="1173732343" Received: from dpdk7.bj.intel.com ([172.16.182.73]) by fmsmga001.fm.intel.com with ESMTP; 17 Jul 2017 19:40:06 -0700 From: Qiming Yang To: dev@dpdk.org Cc: stable@dpdk.org, wenzhuo.lu@intel.com, Qiming Yang Date: Tue, 18 Jul 2017 10:28:34 +0800 Message-Id: <1500344914-15473-1-git-send-email-qiming.yang@intel.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1500269687-73277-1-git-send-email-qiming.yang@intel.com> References: <1500269687-73277-1-git-send-email-qiming.yang@intel.com> Subject: [dpdk-dev] [PATCH v2] net/ixgbe: fix Rx/Tx queue interrupt for x550 devices X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" x550 devices not do interrupt vector mapping before enable Rx/Tx queue interrupt, makes interrupt mode can't work neither with igb_uio or VFIO. Fixes: d2e72774e58c ("ixgbe/base: support X550") Signed-off-by: Qiming Yang Acked-by: Wei Dai --- v2 changes: * fixed other cause interrupt vector map and typo issue --- drivers/net/ixgbe/ixgbe_ethdev.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c index 9b06ac1..0caafd5 100644 --- a/drivers/net/ixgbe/ixgbe_ethdev.c +++ b/drivers/net/ixgbe/ixgbe_ethdev.c @@ -5611,7 +5611,8 @@ ixgbe_set_ivar_map(struct ixgbe_hw *hw, int8_t direction, tmp |= (msix_vector << (8 * (queue & 0x3))); IXGBE_WRITE_REG(hw, IXGBE_IVAR(idx), tmp); } else if ((hw->mac.type == ixgbe_mac_82599EB) || - (hw->mac.type == ixgbe_mac_X540)) { + (hw->mac.type == ixgbe_mac_X540) || + (hw->mac.type == ixgbe_mac_X550)) { if (direction == -1) { /* other causes */ idx = ((queue & 1) * 8); @@ -5719,6 +5720,7 @@ ixgbe_configure_msix(struct rte_eth_dev *dev) break; case ixgbe_mac_82599EB: case ixgbe_mac_X540: + case ixgbe_mac_X550: ixgbe_set_ivar_map(hw, -1, 1, IXGBE_MISC_VEC_ID); break; default: