From patchwork Tue Oct 10 20:20:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Chautru, Nicolas" X-Patchwork-Id: 132471 X-Patchwork-Delegate: maxime.coquelin@redhat.com 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 73F0142354; Tue, 10 Oct 2023 22:20:59 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5BE924067D; Tue, 10 Oct 2023 22:20:51 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.151]) by mails.dpdk.org (Postfix) with ESMTP id 6CB284028A for ; Tue, 10 Oct 2023 22:20:49 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1696969249; x=1728505249; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=C8diM0e2mjHAFbiK9wMz0AvKQ6fnr4cziOpr2PCr35s=; b=CQ7esFOmdVJpnhuDgSCkc7vxUrHJm8aATNjXy0Eu5bOrqbXc9vbjLNRi TXqarQ+ZAFXfozrX3xUWEh4dOL6cBnp9Se2tXJaWW9Om1S9Cm6c4tv2T9 ob/bc2jQ+o3aiQF5Ln4FpxwiPh/2i6JNMc6/XLCqJAY7oj9YbBVoQPW9/ q8dt2yn9joMLvrpbBHs1gCn09MHcxvHb+afCgZPiwdP3m2+Qjtwdo4XDd t7QH7KdnUszAZHHy9W0NC5PEDMqIDdng4R1IV9kYd21yNyfKKn7m+qiSj 8x8RMw1iPK22/it4P/VsQBZF7FpMmqYZO1kLYvXjFxy295n6W8v6j/WXP g==; X-IronPort-AV: E=McAfee;i="6600,9927,10859"; a="364789082" X-IronPort-AV: E=Sophos;i="6.03,213,1694761200"; d="scan'208";a="364789082" 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:48 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10859"; a="823904069" X-IronPort-AV: E=Sophos;i="6.03,213,1694761200"; d="scan'208";a="823904069" 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 01/12] bbdev: add FFT window width member in driver info Date: Tue, 10 Oct 2023 20:20:38 +0000 Message-Id: <20231010202049.771959-2-nicolas.chautru@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20231010202049.771959-1-nicolas.chautru@intel.com> References: <20231010202049.771959-1-nicolas.chautru@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 This exposes the width of each windowing shape being configured on the device. This allows to distinguish different version of the flexible pointwise windowing applied to the FFT and expose this platform configuration to the application. This also add the total number of windows supported in the capability. The SRS processing chain (https://doc.dpdk.org/guides/prog_guide/bbdev.html#bbdev-fft-operation) includes a pointwise multiplication by time window whose shape width needs to be exposed, notably for accurate SNR estimate. Using that mechanism user application can retrieve information related to what has been dynamically programmed on any bbdev device supporting FFT windowing operation. Signed-off-by: Nicolas Chautru Reviewed-by: Maxime Coquelin --- lib/bbdev/rte_bbdev.h | 2 ++ lib/bbdev/rte_bbdev_op.h | 2 ++ 2 files changed, 4 insertions(+) diff --git a/lib/bbdev/rte_bbdev.h b/lib/bbdev/rte_bbdev.h index 2985c9f42b..d12e2e7fbc 100644 --- a/lib/bbdev/rte_bbdev.h +++ b/lib/bbdev/rte_bbdev.h @@ -349,6 +349,8 @@ struct rte_bbdev_driver_info { const struct rte_bbdev_op_cap *capabilities; /** Device cpu_flag requirements */ const enum rte_cpu_flag_t *cpu_flag_reqs; + /** FFT windowing width for 2048 FFT - size defined in capability. */ + uint16_t *fft_window_width; }; /** Macro used at end of bbdev PMD list */ diff --git a/lib/bbdev/rte_bbdev_op.h b/lib/bbdev/rte_bbdev_op.h index 693baa8386..369ac331bf 100644 --- a/lib/bbdev/rte_bbdev_op.h +++ b/lib/bbdev/rte_bbdev_op.h @@ -905,6 +905,8 @@ struct rte_bbdev_op_cap_fft { uint16_t num_buffers_src; /** Num output code block buffers. */ uint16_t num_buffers_dst; + /** Number of FFT windows supported. */ + uint16_t fft_windows_num; }; /** List of the capabilities for the MLD */