New upstream version 18.11-rc1
[deb_dpdk.git] / doc / guides / mempool / octeontx.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright(c) 2017 Cavium, Inc
3
4 OCTEON TX FPAVF Mempool Driver
5 ==============================
6
7 The OCTEON TX FPAVF PMD (**librte_mempool_octeontx**) is a mempool
8 driver for offload mempool device found in **Cavium OCTEON TX** SoC
9 family.
10
11 More information can be found at `Cavium, Inc Official Website
12 <http://www.cavium.com/OCTEON-TX_ARM_Processors.html>`_.
13
14 Features
15 --------
16
17 Features of the OCTEON TX FPAVF PMD are:
18
19 - 32 SR-IOV Virtual functions
20 - 32 Pools
21 - HW mempool manager
22
23 Supported OCTEON TX SoCs
24 ------------------------
25
26 - CN83xx
27
28 Prerequisites
29 -------------
30
31 See :doc: `../platform/octeontx.rst` for setup information.
32
33 Pre-Installation Configuration
34 ------------------------------
35
36 Config File Options
37 ~~~~~~~~~~~~~~~~~~~
38
39 The following options can be modified in the ``config`` file.
40 Please note that enabling debugging options may affect system performance.
41
42 - ``CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS`` ( set to ``octeontx_fpavf``)
43
44   Set default mempool ops to octeontx_fpavf.
45
46 - ``CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL`` (default ``y``)
47
48   Toggle compilation of the ``librte_mempool_octeontx`` driver.
49
50 Driver Compilation
51 ~~~~~~~~~~~~~~~~~~
52
53 To compile the OCTEON TX FPAVF MEMPOOL PMD for Linux arm64 gcc target, run the
54 following ``make`` command:
55
56 .. code-block:: console
57
58    cd <DPDK-source-directory>
59    make config T=arm64-thunderx-linuxapp-gcc test-build
60
61
62 Initialization
63 --------------
64
65 The OCTEON TX fpavf mempool initialization similar to other mempool
66 drivers like ring. However user need to pass --base-virtaddr as
67 command line input to application example test_mempool.c application.
68
69 Example:
70
71 .. code-block:: console
72
73     ./build/app/test -c 0xf --base-virtaddr=0x100000000000 \
74                         --mbuf-pool-ops-name="octeontx_fpavf"