[PATCH 01/14] doc/guides/bbdevs: add ark baseband device documentation

Maxime Coquelin maxime.coquelin at redhat.com
Thu Dec 15 15:18:38 CET 2022


Hi John,

On 10/26/22 21:46, John Miller wrote:
> Add new ark baseband device documentation.
> 
> This is the first patch in the series that introduces
> the Arkville baseband PMD.
> 
> First we create a common/ark directory and move common files
> from net/ark to share with the new baseband/ark device.
> 
> Next we create baseband/ark and introduce the Arkville baseband PMD,
> including documentation.
> 
> Finally we modify the build system to support the changes.
> 

For next revision, please add cover letter. Above information should be
part of it. For this patch, the commit message should mention it is
about the documentation.

> Signed-off-by: John Miller <john.miller at atomicrules.com>
> ---
>   doc/guides/bbdevs/ark.rst | 52 +++++++++++++++++++++++++++++++++++++++
>   1 file changed, 52 insertions(+)
>   create mode 100644 doc/guides/bbdevs/ark.rst
> 
> diff --git a/doc/guides/bbdevs/ark.rst b/doc/guides/bbdevs/ark.rst
> new file mode 100644
> index 0000000000..09afcb0f31
> --- /dev/null
> +++ b/doc/guides/bbdevs/ark.rst
> @@ -0,0 +1,52 @@
> +.. SPDX-License-Identifier: BSD-3-Clause
> +   Copyright (c) 2015-2022 Atomic Rules LLC
> +
> +=============================================
> + Atomic Rules LLC, Baseband Poll Mode Driver
> +=============================================
> +
> +The Atomic Rules, Arkville Baseband poll model driver supports the data

s/model/mode/

> +movement portion of a baseband device implemented within an FPGA.
> +The specifics of the encode or decode functions within the FPGA are
> +outside the scope of Arkville's data movement. Hence this PMD requires and
> +provides for the customization needed to advertise its
> +features and support for out-of-band (or meta data) to accompany packet
> +data between the FPGA device and the host software.
> +
> +
> +==========
> + Features
> +==========
> +
> +* Support for LDPC encode and decode operations.
> +* Support for Turbo encode and decode operations.
> +* Support for scatter/gather.
> +* Support Mbuf data room sizes up to 32K bytes for improved performance.
> +* Support for up to 64 queues
> +* Support for runtime switching of Mbuf size, per queue, for improved perormance.
> +* Support for PCIe Gen3x16, Gen4x16, and Gen5x8 endpoints.
> +
> +
> +=================================
> + Required Customization Functions
> +=================================
> +
> +The following customization functions are required:
> +  * Set the capabilities structure for the device `ark_bbdev_info_get()`
> +  * An optional device start function `rte_pmd_ark_bbdev_start()`
> +  * An optional device stop function `rte_pmd_ark_bbdev_stop()`
> +  * Functions for defining meta data format shared between
> +    the host and FPGA.
> +    `rte_pmd_ark_bbdev_enqueue_ldpc_dec()`,
> +    `rte_pmd_ark_bbdev_dequeue_ldpc_dec()`,
> +    `rte_pmd_ark_bbdev_enqueue_ldpc_enc()`,
> +    `rte_pmd_ark_bbdev_dequeue_ldpc_enc()`.

We tend to avoid driver-specific APIs, as it means applications can no
more be generic.

> +
> +
> +=============
> + Limitations
> +=============
> +
> +* MBufs for the output data from the operation must be sized exactly
> +   to hold the result based on DATAROOM sizes.

Is that enforced by the driver?

> +* Side-band or meta data accompaning packet data is limited to 20 Bytes.

s/accompaning/accompanying/

Thanks,
Maxime



More information about the dev mailing list