From patchwork Thu Oct 5 19:48:55 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Chautru, Nicolas" X-Patchwork-Id: 227 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 DA72F426C5; Thu, 5 Oct 2023 21:56:07 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5714F402D9; Thu, 5 Oct 2023 21:56:07 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 428394014F for ; Thu, 5 Oct 2023 21:56:05 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1696535765; x=1728071765; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=Zbz+3Z+OhkCT+J7p6XQP8QPW67szC0PymWj0vxKgr/Q=; b=dqQepry0DAcd8rl7B5I7NyAFnTYIBnSv4T7NVY1eTlTdxwdmjA96AmhD SXFy3Ny2YqAwzcXosz47SJv3ndeI7H2CV7VUeCmPsb7uaIOU7EWnJp6IE s8Itu6Kq9VxLPnK3sz0Sw1xKfDMg1vvr/R7t7IPUGrHoVp3ZU12JNNy0D fCei/HoioLYhZj2bRkQD/pGiSi/AR8sgvUbPGLiofv2N4CSs/CO/2Jaec rKuaxmdiDjhxmgM9LGIqRqopLNOjknDkFeA6NPtujsJQw1KzVu1vW/+i6 OMgeOgi3c3IaNXek2u/4/8I2UXr3/tHcW9mMKR3bE6ARir7PXP0Qs7sJp A==; X-IronPort-AV: E=McAfee;i="6600,9927,10854"; a="386432626" X-IronPort-AV: E=Sophos;i="6.03,203,1694761200"; d="scan'208";a="386432626" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Oct 2023 12:56:04 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10854"; a="755600253" X-IronPort-AV: E=Sophos;i="6.03,203,1694761200"; d="scan'208";a="755600253" Received: from spr-npg-bds1-eec2.sn.intel.com (HELO spr-npg-bds1-eec2..) ([10.233.181.123]) by fmsmga007.fm.intel.com with ESMTP; 05 Oct 2023 12:56:03 -0700 From: Nicolas Chautru To: dev@dpdk.org, maxime.coquelin@redhat.com Cc: hemant.agrawal@nxp.com, david.marchand@redhat.com, hernan.vargas@intel.com, Nicolas Chautru Subject: [PATCH v5 00/12] VRB2 bbdev PMD introduction Date: Thu, 5 Oct 2023 19:48:55 +0000 Message-Id: <20231005194907.557517-1-nicolas.chautru@intel.com> X-Mailer: git-send-email 2.34.1 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 v5: missed a line in v4 patch 2/12. change to 9/12 with suggested refactor. Thanks v4: updates based on Maxime's suggestions: - FFT windowing exposure tweaked to show number of windows as well in capacity to be more generic and future-proof. - few code refactor notably to avoid code duplication - cosmetic and doc update Thanks v3: updates based on v2 review: - split into smaller incremental commits - FFT windowing exposed through a more generic structure - refactor using wrapper functions to manage device variants - removed custom dump function - consider the request unsupport SO option as an error instead of fall-back. - cosmetic and doc update. Thanks v2: doc, comments and commit-log updates. This serie includes changes to the VRB BBDEV PMD for 23.11. This allows the VRB unified driver to support the new VRB2 implementation variant on GNR-D. This also include minor change to the dev_info to expose FFT version flexibility to expose information to the application on what windows LUT is configured dynamically on the device. Nicolas Chautru (12): bbdev: add FFT window width member in driver info baseband/acc: add FFT window width in the VRB PMD baseband/acc: remove the 4G SO capability for VRB1 baseband/acc: allocate FCW memory separately baseband/acc: add support for MLD operation baseband/acc: refactor to allow unified driver extension baseband/acc: adding VRB2 device variant baseband/acc: add FEC capabilities for the VRB2 variant baseband/acc: add FFT support to VRB2 variant baseband/acc: add MLD support in VRB2 variant baseband/acc: add support for VRB2 engine error detection baseband/acc: add configure helper for VRB2 doc/guides/bbdevs/features/vrb2.ini | 14 + doc/guides/bbdevs/index.rst | 1 + doc/guides/bbdevs/vrb1.rst | 4 - doc/guides/bbdevs/vrb2.rst | 206 ++++ doc/guides/rel_notes/release_23_11.rst | 3 + drivers/baseband/acc/acc100_pmd.h | 2 + drivers/baseband/acc/acc_common.h | 186 ++- drivers/baseband/acc/rte_acc100_pmd.c | 6 +- drivers/baseband/acc/rte_vrb_pmd.c | 1571 +++++++++++++++++++++--- drivers/baseband/acc/vrb1_pf_enum.h | 17 +- drivers/baseband/acc/vrb2_pf_enum.h | 124 ++ drivers/baseband/acc/vrb2_vf_enum.h | 121 ++ drivers/baseband/acc/vrb_cfg.h | 16 + drivers/baseband/acc/vrb_pmd.h | 173 ++- lib/bbdev/rte_bbdev.h | 2 + lib/bbdev/rte_bbdev_op.h | 2 + 16 files changed, 2259 insertions(+), 189 deletions(-) create mode 100644 doc/guides/bbdevs/features/vrb2.ini create mode 100644 doc/guides/bbdevs/vrb2.rst create mode 100644 drivers/baseband/acc/vrb2_pf_enum.h create mode 100644 drivers/baseband/acc/vrb2_vf_enum.h