From patchwork Tue Oct 10 20:20:37 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Chautru, Nicolas" X-Patchwork-Id: 242 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 EBAF242354; Tue, 10 Oct 2023 22:20:49 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id BEDC8402B4; Tue, 10 Oct 2023 22:20:49 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.151]) by mails.dpdk.org (Postfix) with ESMTP id C38564028A for ; Tue, 10 Oct 2023 22:20:48 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1696969248; x=1728505248; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=RIEk6lEjEBtSKZH5sMWV38Oyt19B3aHjCR1L/u4psCo=; b=PkLFyBwvsq+AlgQK8gaemA/aqBmsI12gWgjaUeNP8pBmyeWF241FNu0k AzKwAzu5ToD+h72O4qetOerHiXH4y5i1DD/7HpxfzFF3xy65MZaM9NpiV APcHXvBy0o8pRo36a44oFXW8Mkw75zmslWswcRUc55oLCoUocXhdN6j7i komvtlYs7bhSMzWpW72KQfrXwdtzdQrHJJQ2x0+lZcsxGXF3raaousMHl CB5537472loQPmZ+TnoLed+aGZfFgEkmW08+TaGczyL3x2srNHXI+j/J2 /gzi0B4p56aPMSIfwQytNJoJfa5GgCbsa4YytxvtC4W9JAVq1XmY1rgmk Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10859"; a="364789079" X-IronPort-AV: E=Sophos;i="6.03,213,1694761200"; d="scan'208";a="364789079" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Oct 2023 13:20:47 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10859"; a="823904066" X-IronPort-AV: E=Sophos;i="6.03,213,1694761200"; d="scan'208";a="823904066" Received: from spr-npg-bds1-eec2.sn.intel.com (HELO spr-npg-bds1-eec2..) ([10.233.181.123]) by fmsmga004.fm.intel.com with ESMTP; 10 Oct 2023 13:20:47 -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 v6 00/12] VRB2 bbdev PMD introduction Date: Tue, 10 Oct 2023 20:20:37 +0000 Message-Id: <20231010202049.771959-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 v6: removed one empty line typo. Thanks v5: missed a line in v4 patch 2/12. change to 9/12 with suggested refactor. 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 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 | 185 ++- 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, 2258 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