[dpdk-dev] [PATCH v4 1/8] bbdev: add network order data capability

Hemant Agrawal hemant.agrawal at oss.nxp.com
Wed Apr 28 15:34:53 CEST 2021


Hi,

     My mail with photo snippets were rejected by dpdk mailing list. So, 
just sending the summary of it.

     My understanding is that in ORAN, typically network order is used 
between CU-DU or DU-RU communication. In FAPI interface as well, both LE 
and BE are allowed types, however few places do explicitly state BE type.

    Our customers/partners are typically using BE and LA12xx is 
configured to process BE data.

Regards,

Hemant


On 4/26/2021 10:31 PM, Dave Burley wrote:
> Hi Hemant
>
> Can I ask what the usage case is for RTE_BBDEV_LDPC_ENC_NETWORK_ORDER/RTE_BBDEV_LDPC_DEC_NETWORK_ORDER ?
>
> Thanks
>
> Dave
>
>
>
> ________________________________
> From: dev <dev-bounces at dpdk.org> on behalf of Hemant Agrawal <hemant.agrawal at nxp.com>
> Sent: 24 April 2021 11:36
> To: dev at dpdk.org <dev at dpdk.org>; gakhil at marvell.com <gakhil at marvell.com>; nicolas.chautru at intel.com <nicolas.chautru at intel.com>
> Cc: david.marchand at redhat.com <david.marchand at redhat.com>; Hemant Agrawal <hemant.agrawal at nxp.com>
> Subject: [dpdk-dev] [PATCH v4 1/8] bbdev: add network order data capability
>
> CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
>
> This patch intoduces a new capability of the bbdev device
> to process the LDPC data in network byte order.
>
> Signed-off-by: Hemant Agrawal <hemant.agrawal at nxp.com>
> ---
>   doc/guides/bbdevs/features/default.ini | 1 +
>   doc/guides/prog_guide/bbdev.rst        | 6 ++++++
>   lib/bbdev/rte_bbdev_op.h               | 8 ++++++--
>   3 files changed, 13 insertions(+), 2 deletions(-)
>
> diff --git a/doc/guides/bbdevs/features/default.ini b/doc/guides/bbdevs/features/default.ini
> index 5fe267a625..e5da644099 100644
> --- a/doc/guides/bbdevs/features/default.ini
> +++ b/doc/guides/bbdevs/features/default.ini
> @@ -14,3 +14,4 @@ LLR/HARQ Compression   =
>   External DDR Access    =
>   HW Accelerated         =
>   BBDEV API              =
> +Network Order Data     =
> diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
> index 6b2bd54e1a..89a86d10fb 100644
> --- a/doc/guides/prog_guide/bbdev.rst
> +++ b/doc/guides/prog_guide/bbdev.rst
> @@ -747,6 +747,9 @@ given below.
>   |RTE_BBDEV_LDPC_ENC_CONCATENATION                                    |
>   | Set if a device supports concatenation of non byte aligned output  |
>   +--------------------------------------------------------------------+
> +|RTE_BBDEV_LDPC_ENC_NETWORK_ORDER                                    |
> +| Set if a device supports network order data processing             |
> ++--------------------------------------------------------------------+
>
>   The structure passed for each LDPC encode operation is given below,
>   with the operation flags forming a bitmask in the ``op_flags`` field.
> @@ -942,6 +945,9 @@ given below.
>   |RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK                        |
>   | Set if a device supports loopback access to HARQ internal memory   |
>   +--------------------------------------------------------------------+
> +|RTE_BBDEV_LDPC_DEC_NETWORK_ORDER                                    |
> +| Set if a device supports network order data processing             |
> ++--------------------------------------------------------------------+
>
>   The structure passed for each LDPC decode operation is given below,
>   with the operation flags forming a bitmask in the ``op_flags`` field.
> diff --git a/lib/bbdev/rte_bbdev_op.h b/lib/bbdev/rte_bbdev_op.h
> index f946842727..8fab617768 100644
> --- a/lib/bbdev/rte_bbdev_op.h
> +++ b/lib/bbdev/rte_bbdev_op.h
> @@ -186,7 +186,9 @@ enum rte_bbdev_op_ldpcdec_flag_bitmasks {
>           *  for HARQ memory. If not set, it is assumed the filler bits are not
>           *  in HARQ memory and handled directly by the LDPC decoder.
>           */
> -       RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_FILLERS = (1ULL << 18)
> +       RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_FILLERS = (1ULL << 18),
> +       /** Set if a device supports network order data processing */
> +       RTE_BBDEV_LDPC_DEC_NETWORK_ORDER = (1ULL << 19)
>   };
>
>   /** Flags for LDPC encoder operation and capability structure */
> @@ -206,7 +208,9 @@ enum rte_bbdev_op_ldpcenc_flag_bitmasks {
>          /** Set if a device supports scatter-gather functionality. */
>          RTE_BBDEV_LDPC_ENC_SCATTER_GATHER = (1ULL << 6),
>          /** Set if a device supports concatenation of non byte aligned output */
> -       RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7)
> +       RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7),
> +       /** Set if a device supports network order data processing */
> +       RTE_BBDEV_LDPC_ENC_NETWORK_ORDER = (1ULL << 8)
>   };
>
>   /** Flags for the Code Block/Transport block mode  */
> --
> 2.17.1
>


More information about the dev mailing list