From patchwork Mon Feb 6 05:45:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Xing, Beilei" X-Patchwork-Id: 123098 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 9EFC241BE7; Mon, 6 Feb 2023 07:13:09 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 199EB42686; Mon, 6 Feb 2023 07:13:09 +0100 (CET) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mails.dpdk.org (Postfix) with ESMTP id 5EF5C40A7D for ; Mon, 6 Feb 2023 07:13:07 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1675663987; x=1707199987; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Eu3RjXWx+eSWrDmiu5LmiiTpDCwt2gBEG8lPmEEdkEo=; b=D9uX/MHOytHhWG5nT/ZThoxoL0t+YynMQLr+OK5Qm7XZdE3nLtuvEMnM +AUD7tWLGtIPiDi/Pz1msyVnY6H/hl5xqiUvjpgfmbsHNC1Lrx963nQhq ls9+AWej5VPEhC7ZGXfz7grtQ3hbnh5apFhBsTtoztm2hCVzg28LN31A9 65eOSGrr074W0gD7kTflgc6NTU2kvjF1d9ZFY6S7yYQltTiddpmjjcgQW Ds9z/fVKkxp9zjxavA72QH2upgYsNyvKO5MPrT5gc0HMqzaFjts9VxI6p FKHACEVPdQ/YYmB+cMlin3qp+YMnrFpRCx+D/g15XAgWuGKx7+H5d9owG g==; X-IronPort-AV: E=McAfee;i="6500,9779,10612"; a="308780473" X-IronPort-AV: E=Sophos;i="5.97,276,1669104000"; d="scan'208";a="308780473" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Feb 2023 22:13:06 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10612"; a="755142866" X-IronPort-AV: E=Sophos;i="5.97,276,1669104000"; d="scan'208";a="755142866" Received: from dpdk-beileix-3.sh.intel.com ([10.67.110.253]) by FMSMGA003.fm.intel.com with ESMTP; 05 Feb 2023 22:13:04 -0800 From: beilei.xing@intel.com To: jingjing.wu@intel.com Cc: dev@dpdk.org, qi.z.zhang@intel.com, Beilei Xing Subject: [PATCH v7 00/19] net/idpf: introduce idpf common modle Date: Mon, 6 Feb 2023 05:45:59 +0000 Message-Id: <20230206054618.40975-1-beilei.xing@intel.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20230203094340.8103-1-beilei.xing@intel.com> References: <20230203094340.8103-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 Refactor idpf pmd by introducing idpf common module, which will be also consumed by a new PMD - CPFL (Control Plane Function Library) PMD. v2 changes: - Refine irq map/unmap functions. - Fix cross compile issue. v3 changes: - Embed vport_info field into the vport structure. - Refine APIs' name and order in version.map. - Refine commit log. v4 changes: - Refine commit log. v5 changes: - Refine version.map. - Fix typo. - Return error log. v6 changes: - Refine API name in common module. v7 changes: - Change new files' copy right date to 2023. - Correct format for meson.build. - Change rte_atomic usages to compiler atomic built-ins. Beilei Xing (19): common/idpf: add adapter structure common/idpf: add vport structure common/idpf: add virtual channel functions common/idpf: introduce adapter init and deinit common/idpf: add vport init/deinit common/idpf: add config RSS common/idpf: add irq map/unmap common/idpf: support get packet type common/idpf: add vport info initialization common/idpf: add vector flags in vport common/idpf: add rxq and txq struct common/idpf: add help functions for queue setup and release common/idpf: add Rx and Tx data path common/idpf: add vec queue setup common/idpf: add avx512 for single queue model common/idpf: refine API name for vport functions common/idpf: refine API name for queue config module common/idpf: refine API name for data path module common/idpf: refine API name for virtual channel functions drivers/common/idpf/base/idpf_controlq_api.h | 6 - drivers/common/idpf/base/meson.build | 2 +- drivers/common/idpf/idpf_common_device.c | 655 +++++ drivers/common/idpf/idpf_common_device.h | 195 ++ drivers/common/idpf/idpf_common_logs.h | 47 + drivers/common/idpf/idpf_common_rxtx.c | 1458 ++++++++++++ drivers/common/idpf/idpf_common_rxtx.h | 278 +++ .../idpf/idpf_common_rxtx_avx512.c} | 26 +- .../idpf/idpf_common_virtchnl.c} | 947 ++------ drivers/common/idpf/idpf_common_virtchnl.h | 52 + drivers/common/idpf/meson.build | 35 + drivers/common/idpf/version.map | 61 +- drivers/net/idpf/idpf_ethdev.c | 552 +---- drivers/net/idpf/idpf_ethdev.h | 194 +- drivers/net/idpf/idpf_logs.h | 24 - drivers/net/idpf/idpf_rxtx.c | 2107 +++-------------- drivers/net/idpf/idpf_rxtx.h | 253 +- drivers/net/idpf/meson.build | 18 - 18 files changed, 3441 insertions(+), 3469 deletions(-) create mode 100644 drivers/common/idpf/idpf_common_device.c create mode 100644 drivers/common/idpf/idpf_common_device.h create mode 100644 drivers/common/idpf/idpf_common_logs.h create mode 100644 drivers/common/idpf/idpf_common_rxtx.c create mode 100644 drivers/common/idpf/idpf_common_rxtx.h rename drivers/{net/idpf/idpf_rxtx_vec_avx512.c => common/idpf/idpf_common_rxtx_avx512.c} (97%) rename drivers/{net/idpf/idpf_vchnl.c => common/idpf/idpf_common_virtchnl.c} (51%) create mode 100644 drivers/common/idpf/idpf_common_virtchnl.h Acked-by: Qi Zhang