rte_bbdev_op_turbo_enc(3)

πŸ’– rte_bbdev_op_turbo_enc πŸ’–

okay bestie, so this is a page from the DPDK Library Functions Manual, and it's all about rte_bbdev_op_turbo_enc β€” the cutest lil operation structure for Turbo encode. let's get into it πŸ¦‹


✨ SYNOPSIS ✨

#include <rte_bbdev_op.h>

πŸŽ€ Data Fields

  • struct rte_bbdev_op_data input
  • struct rte_bbdev_op_data output
  • uint32_t op_flags
  • uint8_t rv_index
  • uint8_t code_block_mode

🌸 DETAILED DESCRIPTION 🌸

So this is the Operation structure for Turbo encode. here's the vibe:

  • an operation can be performed on one CB at a time β€” that's called "CB-mode" πŸ‘‘
  • an operation can be performed on one or multiple CBs that logically belong to one TB β€” that's "TB-mode" ✨

In CB-mode, CRC24A/B is an optional operation. and listen, the K size parameter is not affected by CRC24A/B inclusion β€” the only thing it changes is the inbound mbuf data length, no cap πŸ’…

⚠️ heads up: not all BBDEV PMDs can do CRC24A/B calculation. that's just not every driver's gift, and that's okay.

The flags RTE_BBDEV_TURBO_CRC_24A_ATTACH and RTE_BBDEV_TURBO_CRC_24B_ATTACH inform the application with the relevant capability πŸ”₯ You can set these flags in the op_flags parameter to indicate to BBDEV to calculate and append CRC24A to CB before going forward with Turbo encoding. iconic behaviour fr fr.

In TB-mode, CRC24A is assumed to be pre-calculated and appended to the inbound TB mbuf data buffer. so like... do that first bestie, don't make it awkward 😭

The output mbuf data structure is expected to be allocated by the application, with enough room for the output data. yes, YOU have to make the space. it's giving main character responsibility 🫢

πŸ“ Definition at line 681 of file rte_bbdev_op.h.

🌈 FIELD DOCUMENTATION 🌈

⭐ struct rte_bbdev_op_data input

The input CB or TB data πŸ’–

Definition at line 683 of file rte_bbdev_op.h.

⭐ struct rte_bbdev_op_data output

The rate matched CB or TB output buffer πŸŽ€

Definition at line 685 of file rte_bbdev_op.h.

⭐ uint32_t op_flags

Flags from rte_bbdev_op_te_flag_bitmasks ✨

Definition at line 687 of file rte_bbdev_op.h.

⭐ uint8_t rv_index

Rv index for rate matching [0:3] β€” so 0, 1, 2, or 3, that's the whole range, no more no less πŸ’…

Definition at line 690 of file rte_bbdev_op.h.

⭐ uint8_t code_block_mode

[0 - TB : 1 - CB] β€” zero means TB, one means CB. that's literally it πŸ¦‹

Definition at line 692 of file rte_bbdev_op.h.

⭐ struct rte_bbdev_op_enc_turbo_cb_params cb_params

Struct which stores Code Block specific parameters πŸ‘‘

Definition at line 695 of file rte_bbdev_op.h.

⭐ struct rte_bbdev_op_enc_turbo_tb_params tb_params

Struct which stores Transport Block specific parameters 🌸

Definition at line 697 of file rte_bbdev_op.h.

πŸ’œ AUTHOR πŸ’œ

Generated automatically by Doxygen for DPDK from the source code. (not a human, just a very diligent little robot 🧚)


okay that's the whole page babes, you ate it, you understood it, periodt πŸ’…βœ¨

this was brought to you by DPDK, Version 25.11.3 β€” mwah, go encode something gorgeous πŸŒˆπŸ’–

πŸ“¦ where this page comes from