blob: 9baf2a99794107bda7c605063919506c86eb8a02 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
.. SPDX-License-Identifier: BSD-3-Clause
Copyright(c) 2017 Intel Corporation
BBDEV null Poll Mode Driver
============================
The (**bbdev_null**) is a bbdev poll mode driver which provides a minimal
implementation of a software bbdev device. As a null device it does not modify
the data in the mbuf on which the bbdev operation is to operate and it only
works for operation type ``RTE_BBDEV_OP_NONE``.
When a burst of mbufs is submitted to a *bbdev null PMD* for processing then
each mbuf in the burst will be enqueued in an internal buffer ring to be
collected on a dequeue call.
Limitations
-----------
* In-place operations for Turbo encode and decode are not supported
Installation
------------
The *bbdev null PMD* is enabled and built by default in both the Linux and
FreeBSD builds.
Initialization
--------------
To use the PMD in an application, user must:
- Call ``rte_vdev_init("bbdev_null")`` within the application.
- Use ``--vdev="bbdev_null"`` in the EAL options, which will call ``rte_vdev_init()`` internally.
The following parameters (all optional) can be provided in the previous two calls:
* ``socket_id``: Specify the socket where the memory for the device is going to be allocated
(by default, *socket_id* will be the socket where the core that is creating the PMD is running on).
* ``max_nb_queues``: Specify the maximum number of queues in the device (default is ``RTE_MAX_LCORE``).
Example:
~~~~~~~~
.. code-block:: console
./test-bbdev.py -e="--vdev=bbdev_null,socket_id=0,max_nb_queues=8"
|