[PATCH v5 01/12] bbdev: add FFT window width member in driver info

Maxime Coquelin maxime.coquelin at redhat.com
Fri Oct 6 09:54:14 CEST 2023



On 10/5/23 21:48, Nicolas Chautru wrote:
> 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 <nicolas.chautru at intel.com>
> ---
>   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 */

I am Ok to move forwards with this, even if I would have liked feedback
from Hemant.

However, I think you need to add some documentation around it, as what
is in the commit message is important and won't be visible to the end-
user.

Thanks,
Maxime



More information about the dev mailing list