[v1,1/3] bbdev: new k0 parameter for LDPC decoder operation
Checks
Commit Message
In latest 3GPP 38.212, the k0 value is not necessaraly directly
derived from rv_index, in that case a value can be provided in
API. When this value is non null this would override the value
which would be computed purely from rv_index.
Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
doc/guides/prog_guide/bbdev.rst | 2 ++
lib/bbdev/rte_bbdev_op.h | 4 ++++
2 files changed, 6 insertions(+)
Comments
Hi,
On 7/1/24 23:27, Nicolas Chautru wrote:
> In latest 3GPP 38.212, the k0 value is not necessaraly directly
necessarily*
> derived from rv_index, in that case a value can be provided in
> API. When this value is non null this would override the value
> which would be computed purely from rv_index.
>
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---
> doc/guides/prog_guide/bbdev.rst | 2 ++
> lib/bbdev/rte_bbdev_op.h | 4 ++++
> 2 files changed, 6 insertions(+)
>
> diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
> index 09e5f0d990..e3f356450b 100644
> --- a/doc/guides/prog_guide/bbdev.rst
> +++ b/doc/guides/prog_guide/bbdev.rst
> @@ -1021,6 +1021,8 @@ The LDPC decode parameters are set out in the table below.
> +----------------+------------+-------------------------------------------------------+
> | |eb |Eb, length of the RM output sequence in bits r >= cab |
> +----------------+------------+-------------------------------------------------------+
> +| |k0 |Optional k0 Rate matching starting position override |
> ++----------------+------------+-------------------------------------------------------+
>
> The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
> and is the Virtual Circular Buffer data stream with null padding.
> diff --git a/lib/bbdev/rte_bbdev_op.h b/lib/bbdev/rte_bbdev_op.h
> index 459631d0d0..b5dde116ab 100644
> --- a/lib/bbdev/rte_bbdev_op.h
> +++ b/lib/bbdev/rte_bbdev_op.h
> @@ -562,6 +562,10 @@ struct rte_bbdev_op_ldpc_dec {
> /** Struct which stores Transport Block specific parameters */
> struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
> };
> + /** Optional k0 Rate matching starting position, overrides rv_index when non null
> + * [3GPP TS38.212, section 5.4.2.1]
> + */
> + uint16_t k0;
> };
> /* >8 End of structure rte_bbdev_op_ldpc_dec. */
>
Will fix the typo while applying.
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Also reporting Hemant's Ack on the cover letter as patchwork doesn't
report them:
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Thanks,
Maxime
@@ -1021,6 +1021,8 @@ The LDPC decode parameters are set out in the table below.
+----------------+------------+-------------------------------------------------------+
| |eb |Eb, length of the RM output sequence in bits r >= cab |
+----------------+------------+-------------------------------------------------------+
+| |k0 |Optional k0 Rate matching starting position override |
++----------------+------------+-------------------------------------------------------+
The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
and is the Virtual Circular Buffer data stream with null padding.
@@ -562,6 +562,10 @@ struct rte_bbdev_op_ldpc_dec {
/** Struct which stores Transport Block specific parameters */
struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
};
+ /** Optional k0 Rate matching starting position, overrides rv_index when non null
+ * [3GPP TS38.212, section 5.4.2.1]
+ */
+ uint16_t k0;
};
/* >8 End of structure rte_bbdev_op_ldpc_dec. */