From patchwork Mon Jun 5 06:17:10 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Xing, Beilei" X-Patchwork-Id: 128076 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3956E42C31; Mon, 5 Jun 2023 08:42:18 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C0B9D40DF6; Mon, 5 Jun 2023 08:42:17 +0200 (CEST) Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by mails.dpdk.org (Postfix) with ESMTP id 271AC4003C for ; Mon, 5 Jun 2023 08:42:15 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685947336; x=1717483336; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=RIv2bHehDLcZzvEv83XZloSDor1D5djABeyMk13O3QQ=; b=LsYGIrlX9aX8U9yWOPE0K39X9qM/ixmtK52k/w/I/9gN92Lprege68dl IY1z6nB22L8nNEcoBDua4KXpJ709y4S0LrMAsoKrlQy5jdmgmOyp+ZQp/ ry1Z4vwFwB9hJk+mYiyFWsv3NpQZQadzkIW6sxNKlq9ZZJ/ddJ98hDi6J iswSgcVp8FZjGbhwShvFHf/xX1WhbUbnhCf4wDefL77B+8WzRctuS01oi ua1snRoOl9bOeZ64gynQ4aX2qbZOCBGf/F5g1e/vYmVwah6KuWsczVgDS wrqUte3cdKug3m57gRwId68q3LTHsboTbz0SuHvfMJIT01htHdXI9OaHR g==; X-IronPort-AV: E=McAfee;i="6600,9927,10731"; a="419839615" X-IronPort-AV: E=Sophos;i="6.00,217,1681196400"; d="scan'208";a="419839615" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jun 2023 23:42:15 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10731"; a="798301017" X-IronPort-AV: E=Sophos;i="6.00,217,1681196400"; d="scan'208";a="798301017" Received: from dpdk-beileix-3.sh.intel.com ([10.67.110.253]) by FMSMGA003.fm.intel.com with ESMTP; 04 Jun 2023 23:42:13 -0700 From: beilei.xing@intel.com To: jingjing.wu@intel.com Cc: dev@dpdk.org, mingxia.liu@intel.com, Beilei Xing Subject: [PATCH v8 00/14] net/cpfl: add hairpin queue support Date: Mon, 5 Jun 2023 06:17:10 +0000 Message-Id: <20230605061724.88130-1-beilei.xing@intel.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20230531130450.26380-1-beilei.xing@intel.com> References: <20230531130450.26380-1-beilei.xing@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: Beilei Xing This patchset adds hairpin queue support. v2 changes: - change hairpin rx queus configuration sequence. - code refine. v3 changes: - Refine the patchset based on the latest code. v4 change: - Remove hairpin rx buffer queue's sw_ring. - Change hairpin rx queus configuration sequence in cpfl_hairpin_bind function. - Refind hairpin queue setup and release. v5 change: - Fix memory leak during queue setup. - Refine hairpin Rxq/Txq start/stop. v6 change: - Add sign-off. v7 change: - Update cpfl.rst v8 change: - Fix Intel-compilation failure. Beilei Xing (14): net/cpfl: refine structures common/idpf: support queue groups add/delete net/cpfl: add haipin queue group during vport init net/cpfl: support hairpin queue capbility get net/cpfl: support hairpin queue setup and release common/idpf: add queue config API net/cpfl: support hairpin queue configuration common/idpf: add switch queue API net/cpfl: support hairpin queue start/stop common/idpf: add irq map config API net/cpfl: enable write back based on ITR expire net/cpfl: support peer ports get net/cpfl: support hairpin bind/unbind doc: update the doc of CPFL PMD doc/guides/nics/cpfl.rst | 7 + drivers/common/idpf/idpf_common_device.c | 75 ++ drivers/common/idpf/idpf_common_device.h | 4 + drivers/common/idpf/idpf_common_virtchnl.c | 138 +++- drivers/common/idpf/idpf_common_virtchnl.h | 18 + drivers/common/idpf/version.map | 6 + drivers/net/cpfl/cpfl_ethdev.c | 611 ++++++++++++++-- drivers/net/cpfl/cpfl_ethdev.h | 35 +- drivers/net/cpfl/cpfl_rxtx.c | 781 +++++++++++++++++++-- drivers/net/cpfl/cpfl_rxtx.h | 76 ++ drivers/net/cpfl/cpfl_rxtx_vec_common.h | 21 +- 11 files changed, 1653 insertions(+), 119 deletions(-)