.. code-block:: console
- --vdev 'turbo_sw,max_nb_queues=8,socket_id=0'
+ --vdev 'baseband_turbo_sw,max_nb_queues=8,socket_id=0'
Our using the rte_vdev_init API within the application code.
.. code-block:: c
- rte_vdev_init("turbo_sw", "max_nb_queues=2,socket_id=0")
+ rte_vdev_init("baseband_turbo_sw", "max_nb_queues=2,socket_id=0")
All virtual bbdev devices support the following initialization parameters:
one or more queues identified by queue IDs. While different devices may have
different capabilities (e.g. support different operation types), all queues on
a device support identical configuration possibilities. A queue is configured
-for only one type of operation and is configured at initializations time.
+for only one type of operation and is configured at initialization time.
When an operation is enqueued to a specific queue ID, the result is dequeued
from the same queue ID.
this case is considered as a special case of partial TB where its number of CBs
is 1. Therefore, it requires to get processed in TB-mode.
+The figure below visualizes the encoding of CBs using BBDEV interface in
+TB-mode. CB-mode is a reduced version, where only one CB exists:
+
+.. _figure_turbo_tb_encode:
+
+.. figure:: img/turbo_tb_encode.*
+
+ Turbo encoding of Code Blocks in mbuf structure
+
BBDEV Turbo Decode Operation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The output mbuf data structure is expected to be allocated by the application
with enough room for the output data.
+The figure below visualizes the decoding of CBs using BBDEV interface in
+TB-mode. CB-mode is a reduced version, where only one CB exists:
+
+.. _figure_turbo_tb_decode:
+
+.. figure:: img/turbo_tb_decode.*
+
+ Turbo decoding of Code Blocks in mbuf structure
+
Sample code
-----------
baseband processor capable of transceiving data packets.
The following sample C-like pseudo-code shows the basic steps to encode several
-buffers using (**sw_trubo**) bbdev PMD.
+buffers using (**sw_turbo**) bbdev PMD.
.. code-block:: c
for (j = 0; j < op_num; j++) {
/* Append the size of the ethernet header */
rte_pktmbuf_append(input_pkts_burst[j],
- sizeof(struct ether_hdr));
+ sizeof(struct rte_ether_hdr));
/* set op */
ops_burst[j]->turbo_enc.input.offset =
- sizeof(struct ether_hdr);
+ sizeof(struct rte_ether_hdr);
ops_burst[j]->turbo_enc->input.length =
rte_pktmbuf_pkt_len(bbdev_pkts[j]);
input_pkts_burst[j];
ops_burst[j]->turbo_enc->output.offset =
- sizeof(struct ether_hdr);
+ sizeof(struct rte_ether_hdr);
ops_burst[j]->turbo_enc->output.data =
output_pkts_burst[j];