DPDK patches and discussions
 help / color / mirror / Atom feed
From: Santosh Shukla <santosh.shukla@caviumnetworks.com>
To: dev@dpdk.org, olivier.matz@6wind.com
Cc: jerin.jacob@caviumnetworks.com, john.mcnamara@intel.com,
	thomas@monjalon.net, hemant.agrawal@nxp.com,
	Santosh Shukla <santosh.shukla@caviumnetworks.com>
Subject: [dpdk-dev] [PATCH v2 10/10] doc: add mempool and octeontx mempool device
Date: Thu, 31 Aug 2017 12:07:19 +0530	[thread overview]
Message-ID: <20170831063719.19273-11-santosh.shukla@caviumnetworks.com> (raw)
In-Reply-To: <20170831063719.19273-1-santosh.shukla@caviumnetworks.com>

This commit adds a section to the docs listing the mempool
device PMDs available.

It then adds the octeontx fpavf mempool PMD to the listed mempool
devices.

Cc: John McNamara <john.mcnamara@intel.com>

Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
---
v1 --> v2:
- release doc cleanup.
- Added Jerin in maintainer list.

 MAINTAINERS                     |   7 +++
 doc/guides/index.rst            |   1 +
 doc/guides/mempool/index.rst    |  40 +++++++++++++
 doc/guides/mempool/octeontx.rst | 127 ++++++++++++++++++++++++++++++++++++++++
 4 files changed, 175 insertions(+)
 create mode 100644 doc/guides/mempool/index.rst
 create mode 100644 doc/guides/mempool/octeontx.rst

diff --git a/MAINTAINERS b/MAINTAINERS
index a0cd75e15..58287ea0d 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -337,6 +337,13 @@ F: drivers/net/liquidio/
 F: doc/guides/nics/liquidio.rst
 F: doc/guides/nics/features/liquidio.ini
 
+Cavium Octeontx Mempool
+M: Santosh Shukla <santosh.shukla@caviumnetworks.com>
+M: Jerin Jacob <jerin.jacob@caviumnetworks.com>
+F: drivers/mempool/octeontx
+F: doc/guides/mempool/index.rst
+F: doc/guides/mempool/octeontx.rst
+
 Chelsio cxgbe
 M: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
 F: drivers/net/cxgbe/
diff --git a/doc/guides/index.rst b/doc/guides/index.rst
index 63716b095..98f4b7aab 100644
--- a/doc/guides/index.rst
+++ b/doc/guides/index.rst
@@ -44,6 +44,7 @@ DPDK documentation
    nics/index
    cryptodevs/index
    eventdevs/index
+   mempool/index
    xen/index
    contributing/index
    rel_notes/index
diff --git a/doc/guides/mempool/index.rst b/doc/guides/mempool/index.rst
new file mode 100644
index 000000000..38bbca1c4
--- /dev/null
+++ b/doc/guides/mempool/index.rst
@@ -0,0 +1,40 @@
+..  BSD LICENSE
+    Copyright(c) 2017 Cavium Inc. All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Intel Corporation nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Mempool Device driver
+=====================
+
+The following are a list of mempool PMDs, which can be used from an
+application through the mempool API.
+
+.. toctree::
+    :maxdepth: 2
+    :numbered:
+
+    octeontx
diff --git a/doc/guides/mempool/octeontx.rst b/doc/guides/mempool/octeontx.rst
new file mode 100644
index 000000000..3b5ec32a7
--- /dev/null
+++ b/doc/guides/mempool/octeontx.rst
@@ -0,0 +1,127 @@
+..  BSD LICENSE
+    Copyright (C) Cavium, Inc. 2017. All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Cavium, Inc nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+OCTEONTX FPAVF Mempool Driver
+==============================
+
+Features OCTEONTX FPAVF PMD (**librte_mempool_octeontx**) is mempool
+driver for offload mempool device found in **Cavium OCTEONTX** SoC
+family.
+
+More information can be found at `Cavium, Inc Official Website
+<http://www.cavium.com/OCTEON-TX_ARM_Processors.html>`_.
+
+Feature
+--------
+
+Features of the OCTEONTX FPAVF PMD are:
+- 32 SR-IOV Virtual functions
+- 32 Pools
+- HW mempool manager
+
+Supported OCTEONTX SoCs
+-----------------------
+- CN83xx
+
+Prerequisites
+-------------
+
+There are three main pre-perquisites for executing FPAVF PMD on a OCTEONTX
+compatible board:
+
+1. **OCTEONTX Linux kernel PF driver for Network acceleration HW blocks**
+
+   The OCTEONTX Linux kernel drivers (including the required PF driver for the
+   FPAVF) are available on Github at `octeontx-kmod <https://github.com/caviumnetworks/octeontx-kmod>`_
+   along with build, install and dpdk usage instructions.
+
+2. **ARM64 Tool Chain**
+
+   For example, the *aarch64* Linaro Toolchain, which can be obtained from
+   `here <https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/aarch64-linux-gnu>`_.
+
+3. **Rootfile system**
+
+   Any *aarch64* supporting filesystem can be used. For example,
+   Ubuntu 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained
+   from `<http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/ubuntu-base-16.04.1-base-arm64.tar.gz>`_.
+
+   As an alternative method, FPAVF PMD can also be executed using images provided
+   as part of SDK from Cavium. The SDK includes all the above prerequisites necessary
+   to bring up a OCTEONTX board.
+
+   SDK and related information can be obtained from: `Cavium support site <https://support.cavium.com/>`_.
+
+- Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
+
+Pre-Installation Configuration
+------------------------------
+
+Config File Options
+~~~~~~~~~~~~~~~~~~~
+
+The following options can be modified in the ``config`` file.
+Please note that enabling debugging options may affect system performance.
+
+- ``CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS`` ( set to ``octeontx_fpavf``)
+
+  Set default mempool ops to octeontx_fpavf.
+
+- ``CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL`` (default ``y``)
+
+  Toggle compilation of the ``librte_mempool_octeontx`` driver.
+
+- ``CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL_DEBUG`` (default ``n``)
+
+  Toggle display of generic debugging messages
+
+Driver Compilation
+~~~~~~~~~~~~~~~~~~
+
+To compile the OCTEONTX FPAVF MEMPOOL PMD for Linux arm64 gcc target, run the
+following ``make`` command:
+
+.. code-block:: console
+
+   cd <DPDK-source-directory>
+   make config T=arm64-thunderx-linuxapp-gcc test-build
+
+
+Initialization
+--------------
+
+The octeontx fpavf mempool initialization similar to other mempool
+drivers like ring. However user need to pass --base-virtaddr as
+command line input to application example test_mempool.c application.
+
+Example:
+
+.. code-block:: console
+
+    ./build/app/test -c 0xf --base-virtaddr=0x100000000000 --mbuf-pool-ops="octeontx_fpavf"
-- 
2.11.0

  parent reply	other threads:[~2017-08-31  6:38 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-24 13:28 [dpdk-dev] [PATCH v1 00/11] Cavium Octeontx external mempool driver Santosh Shukla
2017-08-24 13:28 ` [dpdk-dev] [PATCH v1 01/11] mempool/octeontx: add HW constants Santosh Shukla
2017-08-24 13:28 ` [dpdk-dev] [PATCH v1 02/11] mempool/octeontx: add build and log infrastructure Santosh Shukla
2017-08-24 13:28 ` [dpdk-dev] [PATCH v1 03/11] mempool/octeontx: probe fpavf pcie devices Santosh Shukla
2017-08-24 13:28 ` [dpdk-dev] [PATCH v1 04/11] mempool/octeontx: implement pool alloc Santosh Shukla
2017-08-24 13:28 ` [dpdk-dev] [PATCH v1 05/11] mempool/octeontx: implement pool free Santosh Shukla
2017-08-24 13:28 ` [dpdk-dev] [PATCH v1 06/11] mempool/octeontx: implement pool enq and deq Santosh Shukla
2017-08-24 13:28 ` [dpdk-dev] [PATCH v1 07/11] mempool/octeontx: implement pool get count Santosh Shukla
2017-08-24 13:29 ` [dpdk-dev] [PATCH v1 08/11] mempool/octeontx: implement pool get capability Santosh Shukla
2017-08-24 13:29 ` [dpdk-dev] [PATCH v1 09/11] mempool/octeontx: implement pool update range Santosh Shukla
2017-08-24 13:29 ` [dpdk-dev] [PATCH v1 10/11] mempool/octeontx: translate handle to pool Santosh Shukla
2017-08-24 13:29 ` [dpdk-dev] [PATCH v1 11/11] doc: add mempool and octeontx mempool device Santosh Shukla
2017-08-31  6:37 ` [dpdk-dev] [PATCH v2 00/10] Cavium Octeontx external mempool driver Santosh Shukla
2017-08-31  6:37   ` [dpdk-dev] [PATCH v2 01/10] mempool/octeontx: add HW constants Santosh Shukla
2017-08-31  6:37   ` [dpdk-dev] [PATCH v2 02/10] mempool/octeontx: add build and log infrastructure Santosh Shukla
2017-08-31  6:37   ` [dpdk-dev] [PATCH v2 03/10] mempool/octeontx: probe fpavf pcie devices Santosh Shukla
2017-08-31  6:37   ` [dpdk-dev] [PATCH v2 04/10] mempool/octeontx: implement pool alloc Santosh Shukla
2017-10-06 20:51     ` Thomas Monjalon
2017-10-07  3:49       ` santosh
2017-08-31  6:37   ` [dpdk-dev] [PATCH v2 05/10] mempool/octeontx: implement pool free Santosh Shukla
2017-08-31  6:37   ` [dpdk-dev] [PATCH v2 06/10] mempool/octeontx: implement pool enq and deq Santosh Shukla
2017-08-31  6:37   ` [dpdk-dev] [PATCH v2 07/10] mempool/octeontx: implement pool get count Santosh Shukla
2017-08-31  6:37   ` [dpdk-dev] [PATCH v2 08/10] mempool/octeontx: implement pool get capability Santosh Shukla
2017-08-31  6:37   ` [dpdk-dev] [PATCH v2 09/10] mempool/octeontx: implement pool update range Santosh Shukla
2017-08-31  6:37   ` Santosh Shukla [this message]
2017-09-19 13:52     ` [dpdk-dev] [PATCH v2 10/10] doc: add mempool and octeontx mempool device Mcnamara, John
2017-09-19  8:29   ` [dpdk-dev] [PATCH v2 00/10] Cavium Octeontx external mempool driver santosh
2017-10-06 20:55     ` Thomas Monjalon
2017-10-07  3:51       ` santosh
2017-10-07  4:26         ` Ferruh Yigit
2017-10-07  4:46           ` santosh
2017-10-08 13:12             ` santosh
2017-10-08 12:40   ` [dpdk-dev] [PATCH v3 " Santosh Shukla
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 01/10] mempool/octeontx: add HW constants Santosh Shukla
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 02/10] mempool/octeontx: add build and log infrastructure Santosh Shukla
2017-10-08 17:16       ` Thomas Monjalon
2017-10-09  5:03         ` santosh
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 03/10] mempool/octeontx: probe fpavf pcie devices Santosh Shukla
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 04/10] mempool/octeontx: add support for alloc Santosh Shukla
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 05/10] mempool/octeontx: add support for free Santosh Shukla
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 06/10] mempool/octeontx: add support for enq and deq Santosh Shukla
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 07/10] mempool/octeontx: add support for get count Santosh Shukla
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 08/10] mempool/octeontx: add support for get capability Santosh Shukla
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 09/10] mempool/octeontx: add support for memory area ops Santosh Shukla
2017-10-08 12:40     ` [dpdk-dev] [PATCH v3 10/10] doc: add mempool and octeontx mempool device Santosh Shukla
2017-10-08 16:43       ` Thomas Monjalon
2017-10-09  5:01         ` santosh
2017-10-09  5:46           ` santosh
2017-10-09  8:48             ` Thomas Monjalon
2017-10-09  9:19               ` santosh
2017-10-18 12:17                 ` santosh
2017-10-18 13:45                   ` Thomas Monjalon
2017-10-18 14:02                     ` santosh
2017-10-18 14:26                       ` Thomas Monjalon
2017-10-18 14:36                       ` Jerin Jacob
2017-10-18 15:11                         ` Thomas Monjalon
2017-10-20 15:21       ` [dpdk-dev] [PATCH v4 0/3] Octeontx doc misc Santosh Shukla
2017-10-20 15:21         ` [dpdk-dev] [PATCH v4 1/3] doc: add platform device Santosh Shukla
2017-10-21  9:41           ` Jerin Jacob
2017-10-21 21:09             ` Thomas Monjalon
2017-10-23 14:35           ` Mcnamara, John
2017-10-20 15:21         ` [dpdk-dev] [PATCH v4 2/3] doc: add mempool and octeontx mempool device Santosh Shukla
2017-10-23 14:48           ` Mcnamara, John
2017-10-20 15:21         ` [dpdk-dev] [PATCH v4 3/3] doc: use correct mempool ops handle name Santosh Shukla
2017-10-21  9:42           ` Jerin Jacob
2017-10-23 13:12           ` Mcnamara, John
2017-10-20 16:07         ` [dpdk-dev] [PATCH v4 0/3] Octeontx doc misc Mcnamara, John
2017-10-20 21:10           ` Thomas Monjalon
2017-10-23 14:02             ` Mcnamara, John
2017-11-07  6:59         ` [dpdk-dev] [PATCH v5 0/3] Doc misc Santosh Shukla
2017-11-07  6:59           ` [dpdk-dev] [PATCH v5 1/3] doc: add platform guide Santosh Shukla
2017-11-10 17:42             ` Mcnamara, John
2017-11-07  6:59           ` [dpdk-dev] [PATCH v5 2/3] doc: add mempool and octeontx mempool device Santosh Shukla
2017-11-10 17:43             ` Mcnamara, John
2017-11-07  6:59           ` [dpdk-dev] [PATCH v5 3/3] doc: use correct mempool ops handle name Santosh Shukla
2017-11-10 17:43             ` Mcnamara, John
2017-11-12  3:52           ` [dpdk-dev] [PATCH v5 0/3] Doc misc Thomas Monjalon
2017-10-08 17:16     ` [dpdk-dev] [PATCH v3 00/10] Cavium Octeontx external mempool driver Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170831063719.19273-11-santosh.shukla@caviumnetworks.com \
    --to=santosh.shukla@caviumnetworks.com \
    --cc=dev@dpdk.org \
    --cc=hemant.agrawal@nxp.com \
    --cc=jerin.jacob@caviumnetworks.com \
    --cc=john.mcnamara@intel.com \
    --cc=olivier.matz@6wind.com \
    --cc=thomas@monjalon.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).