From patchwork Wed May 31 10:25:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Xing, Beilei" X-Patchwork-Id: 127770 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 1505A42BF0; Wed, 31 May 2023 12:50:36 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8AC1640A82; Wed, 31 May 2023 12:50:30 +0200 (CEST) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id CA7DE40A82 for ; Wed, 31 May 2023 12:50:27 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685530228; x=1717066228; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=pzESZ3iHFKQmK6+KH1KVTdu6iHiK0x3zR9zxiT+QLio=; b=Cn4HoNwf8EvB7JOghN7ct805c0CO13iQ2rZmLGr65mDtQSdQ5IsvEKTu LtUJWahYHAgun7OiFLkdwDzZcK/cey/WzfhcA1gYDafc4ppgdw/3kFdO8 6lQfyKs5y3rJg6VSn3AqUGZl5GwBokhP5mzYN0BAiGLZPKvWeDswUP+GZ 24XLDSNiGNg4fQQr1wL+lHke4a3+xJ5vWz/s2J+PuIb4ayOh9A3buYARg 8/dfLd60CCXTUmmVBcMs8HrQsymAaPewik6YmAhkoc9xh4RTRQfXSr7MA IkA99wSZtsUZ2tYBwdlp2h+/DdOFr4TeD+O2cXRSn2QBwvw6Xl1oK5iVu g==; X-IronPort-AV: E=McAfee;i="6600,9927,10726"; a="441557114" X-IronPort-AV: E=Sophos;i="6.00,205,1681196400"; d="scan'208";a="441557114" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 May 2023 03:50:04 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10726"; a="739902048" X-IronPort-AV: E=Sophos;i="6.00,205,1681196400"; d="scan'208";a="739902048" Received: from dpdk-beileix-3.sh.intel.com ([10.67.110.253]) by orsmga001.jf.intel.com with ESMTP; 31 May 2023 03:50:03 -0700 From: beilei.xing@intel.com To: jingjing.wu@intel.com Cc: dev@dpdk.org, mingxia.liu@intel.com, Beilei Xing Subject: [PATCH v6 00/13] net/cpfl: add hairpin queue support Date: Wed, 31 May 2023 10:25:38 +0000 Message-Id: <20230531102551.20936-1-beilei.xing@intel.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20230531101853.20468-1-beilei.xing@intel.com> References: <20230531101853.20468-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. Beilei Xing (13): 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 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 | 610 ++++++++++++++-- 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 +- 10 files changed, 1645 insertions(+), 119 deletions(-)