[dpdk-dev,v1,6/7] doc: add octeontx zip PMD documentation
Checks
Commit Message
add zip pmd feature specification and overview documentation
Signed-off-by: Ashish Gupta <ashish.gupta@caviumnetworks.com>
Signed-off-by: Shally Verma <shally.verma@caviumnetworks.com>
Signed-off-by: Sunila Sahu <sunila.sahu@caviumnetworks.com>
---
doc/guides/compressdevs/features/octeontx.ini | 22 +++++
doc/guides/compressdevs/index.rst | 1 +
doc/guides/compressdevs/octeontx.rst | 116 ++++++++++++++++++++++++++
3 files changed, 139 insertions(+)
Comments
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
> -----Original Message-----
> From: Shally Verma [mailto:shally.verma@caviumnetworks.com]
> Sent: Tuesday, June 5, 2018 11:35 AM
> To: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>
> Cc: Trahe, Fiona <fiona.trahe@intel.com>; dev@dpdk.org;
> pathreya@caviumnetworks.com; mchalla@caviumnetworks.com; Ashish Gupta
> <ashish.gupta@caviumnetworks.com>; Sunila Sahu
> <sunila.sahu@caviumnetworks.com>
> Subject: [PATCH v1 6/7] doc: add octeontx zip PMD documentation
You can retitle this to doc: add Octeonx zip guide
>
> add zip pmd feature specification and overview documentation
>
> Signed-off-by: Ashish Gupta <ashish.gupta@caviumnetworks.com>
> Signed-off-by: Shally Verma <shally.verma@caviumnetworks.com>
> Signed-off-by: Sunila Sahu <sunila.sahu@caviumnetworks.com>
> ---
> doc/guides/compressdevs/features/octeontx.ini | 22 +++++
> doc/guides/compressdevs/index.rst | 1 +
> doc/guides/compressdevs/octeontx.rst | 116
> ++++++++++++++++++++++++++
> 3 files changed, 139 insertions(+)
>
> diff --git a/doc/guides/compressdevs/features/octeontx.ini
> b/doc/guides/compressdevs/features/octeontx.ini
> new file mode 100644
> index 000000000..224bcb8bb
> --- /dev/null
> +++ b/doc/guides/compressdevs/features/octeontx.ini
> @@ -0,0 +1,22 @@
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +; Supported features of 'OCTEONTX ZIP' compression driver.
> +;
> +[Features]
> +HW Accelerated = Y
> +CPU SSE =
> +CPU AVX =
> +CPU AVX2 =
> +CPU AVX512 =
> +CPU NEON =
> +Stateful =
> +By-Pass =
> +Chained mbufs =
In the capabilities structure, sgl and checksum are supported, so there is an incompatibility here.
> +Deflate = Y
> +LZS =
> +Adler32 =
> +Crc32 =
> +Adler32&Crc32 =
> +Fixed = Y
> +Dynamic = Y
> diff --git a/doc/guides/compressdevs/index.rst
> b/doc/guides/compressdevs/index.rst
> index bc59ce810..cb467ab90 100644
> --- a/doc/guides/compressdevs/index.rst
> +++ b/doc/guides/compressdevs/index.rst
> @@ -11,3 +11,4 @@ Compression Device Drivers
>
> overview
> isal
> + octeontx
> diff --git a/doc/guides/compressdevs/octeontx.rst
> b/doc/guides/compressdevs/octeontx.rst
> new file mode 100644
> index 000000000..6ad5e31ce
> --- /dev/null
> +++ b/doc/guides/compressdevs/octeontx.rst
...
> +
> +Limitations
> +-----------
> +
> +* Chained mbufs are not supported.
Inconsistent with capabilities.
new file mode 100644
@@ -0,0 +1,22 @@
+;
+; Refer to default.ini for the full list of available PMD features.
+;
+; Supported features of 'OCTEONTX ZIP' compression driver.
+;
+[Features]
+HW Accelerated = Y
+CPU SSE =
+CPU AVX =
+CPU AVX2 =
+CPU AVX512 =
+CPU NEON =
+Stateful =
+By-Pass =
+Chained mbufs =
+Deflate = Y
+LZS =
+Adler32 =
+Crc32 =
+Adler32&Crc32 =
+Fixed = Y
+Dynamic = Y
@@ -11,3 +11,4 @@ Compression Device Drivers
overview
isal
+ octeontx
new file mode 100644
@@ -0,0 +1,116 @@
+.. SPDX-License-Identifier: BSD-3-Clause
+ Copyright(c) 2018 Cavium Networks.
+
+Octeontx ZIP Compression Poll Mode Driver
+=========================================
+
+The Octeontx ZIP PMD (**librte_pmd_octeontx_zip**) provides poll mode
+compression & decompression driver for ZIP HW offload 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>`_.
+
+Features
+--------
+
+Octeontx ZIP PMD has support for:
+
+Compression/Decompression algorithm:
+
+* DEFLATE
+
+Huffman code type:
+
+* FIXED
+* DYNAMIC
+
+Window size support:
+
+* 32K
+
+Limitations
+-----------
+
+* Chained mbufs are not supported.
+
+Supported OCTEONTX SoCs
+-----------------------
+
+- CN83xx
+
+Steps To Setup Platform
+-----------------------
+
+ Octeontx SDK includes kernel image which provides Octeontx ZIP PF
+ driver to manage the Physical Function of Octeontx ZIP device.
+ Required version of SDK is "OCTEONTX-SDK-6.2.0-build35" or above.
+
+ SDK can be install by using below command.
+ #rpm -ivh CTEONTX-SDK-6.2.0-build35.x86_64.rpm --force --nodeps
+ It will install OCTEONTX-SDK at following default location
+ /usr/local/Cavium_Networks/OCTEONTX-SDK/
+
+ For more information on building and booting linux kernel on OCTEONTX
+ please refer /usr/local/Cavium_Networks/OCTEONTX-SDK/docs/OcteonTX-SDK-UG_6.2.0.pdf.
+
+ SDK and related information can be obtained from: `Cavium support site <https://support.cavium.com/>`_.
+
+Installation
+------------
+
+Config File Options
+~~~~~~~~~~~~~~~~~~~
+
+The following options can be modified in the ``config`` file.
+
+- ``CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF`` (default ``y``)
+
+ Toggle compilation of the ``librte_pmd_octeontx_zip`` driver.
+
+Driver Compilation
+~~~~~~~~~~~~~~~~~~
+
+To compile the OCTEONTX ZIP 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 install
+
+
+Initialization
+--------------
+
+The octeontx zip is exposed as pci device which consists of a set of
+PCIe VF devices. On EAL initialization, ZIP PCIe VF devices will be
+probed. To use the PMD in an application, user must:
+
+* run dev_bind script to bind eight ZIP PCIe VFs to the ``vfio-pci`` driver:
+
+ .. code-block:: console
+
+ ./usertools/dpdk-devbind.py -b vfio-pci 0001:04:00.1
+ ./usertools/dpdk-devbind.py -b vfio-pci 0001:04:00.2
+ ./usertools/dpdk-devbind.py -b vfio-pci 0001:04:00.3
+ ./usertools/dpdk-devbind.py -b vfio-pci 0001:04:00.4
+ ./usertools/dpdk-devbind.py -b vfio-pci 0001:04:00.5
+ ./usertools/dpdk-devbind.py -b vfio-pci 0001:04:00.6
+ ./usertools/dpdk-devbind.py -b vfio-pci 0001:04:00.7
+ ./usertools/dpdk-devbind.py -b vfio-pci 0001:04:01.0
+
+The unit test cases can be tested as below:
+
+.. code-block:: console
+
+ reserve enough huge pages
+ cd to the top-level DPDK directory
+ export RTE_TARGET=arm64-thunderx-linuxapp-gcc
+ export RTE_SDK=`pwd`
+ cd to test/test
+ type the command "make" to compile
+ run the tests with "./test"
+ type the command "compressdev_autotest" to test
+
+