X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fcryptodevs%2Fdpaa2_sec.rst;h=3053636b82956f98ec9246fdc6e10eca9d081f6e;hb=176bb37ca6f344e6765d0ce4b99b88950b618ce1;hp=becb910ee3abab9156f3e2d669abbe0a46cf1a67;hpb=4bbee28b155eeb6c9b7b3fb131f53d939187c987;p=dpdk.git diff --git a/doc/guides/cryptodevs/dpaa2_sec.rst b/doc/guides/cryptodevs/dpaa2_sec.rst index becb910ee3..3053636b82 100644 --- a/doc/guides/cryptodevs/dpaa2_sec.rst +++ b/doc/guides/cryptodevs/dpaa2_sec.rst @@ -1,31 +1,6 @@ -.. BSD LICENSE - Copyright(c) 2016 NXP. 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 NXP 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. +.. SPDX-License-Identifier: BSD-3-Clause + Copyright 2016 NXP + NXP DPAA2 CAAM (DPAA2_SEC) @@ -126,7 +101,7 @@ fits in the DPAA2 Bus model Features -------- -The DPAA2 PMD has support for: +The DPAA2_SEC PMD has support for: Cipher algorithms: @@ -134,6 +109,9 @@ Cipher algorithms: * ``RTE_CRYPTO_CIPHER_AES128_CBC`` * ``RTE_CRYPTO_CIPHER_AES192_CBC`` * ``RTE_CRYPTO_CIPHER_AES256_CBC`` +* ``RTE_CRYPTO_CIPHER_AES128_CTR`` +* ``RTE_CRYPTO_CIPHER_AES192_CTR`` +* ``RTE_CRYPTO_CIPHER_AES256_CTR`` Hash algorithms: @@ -144,18 +122,32 @@ Hash algorithms: * ``RTE_CRYPTO_AUTH_SHA512_HMAC`` * ``RTE_CRYPTO_AUTH_MD5_HMAC`` +AEAD algorithms: + +* ``RTE_CRYPTO_AEAD_AES_GCM`` + Supported DPAA2 SoCs -------------------- -* LS2080A/LS2040A +* LS2160A * LS2084A/LS2044A * LS2088A/LS2048A * LS1088A/LS1048A +Whitelisting & Blacklisting +--------------------------- + +For blacklisting a DPAA2 SEC device, following commands can be used. + + .. code-block:: console + + -b "fslmc:dpseci.x" -- ... + +Where x is the device object id as configured in resource container. + Limitations ----------- -* Chained mbufs are not supported. * Hash followed by Cipher mode is not supported * Only supports the session-oriented API implementation (session-less APIs are not supported). @@ -165,31 +157,15 @@ Prerequisites DPAA2_SEC driver has similar pre-requisites as described in :ref:`dpaa2_overview`. The following dependencies are not part of DPDK and must be installed separately: -* **NXP Linux SDK** - - NXP Linux software development kit (SDK) includes support for the family - of QorIQ® ARM-Architecture-based system on chip (SoC) processors - and corresponding boards. - - It includes the Linux board support packages (BSPs) for NXP SoCs, - a fully operational tool chain, kernel and board specific modules. - - SDK and related information can be obtained from: `NXP QorIQ SDK `_. - -* **DPDK Helper Scripts** - - DPAA2 based resources can be configured easily with the help of ready scripts - as provided in the DPDK helper repository. - - `DPDK Helper Scripts `_. +See :doc:`../platform/dpaa2` for setup information Currently supported by DPDK: -* NXP SDK **2.0+**. -* MC Firmware version **10.0.0** and higher. -* Supported architectures: **arm64 LE**. +- NXP SDK **19.09+**. +- MC Firmware version **10.18.0** and higher. +- Supported architectures: **arm64 LE**. -* Follow the DPDK :ref:`Getting Started Guide for Linux ` to setup the basic DPDK environment. +- Follow the DPDK :ref:`Getting Started Guide for Linux ` to setup the basic DPDK environment. Pre-Installation Configuration ------------------------------ @@ -204,23 +180,9 @@ to enable DPAA2_SEC PMD. Please note that enabling debugging options may affect system performance. * ``CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC`` (default ``n``) - By default it is only enabled in defconfig_arm64-dpaa2-* config. + By default it is only enabled in defconfig_arm64-dpaa-* config. Toggle compilation of the ``librte_pmd_dpaa2_sec`` driver. -* ``CONFIG_RTE_LIBRTE_DPAA2_SEC_DEBUG_INIT`` (default ``n``) - Toggle display of initialization related driver messages - -* ``CONFIG_RTE_LIBRTE_DPAA2_SEC_DEBUG_DRIVER`` (default ``n``) - Toggle display of driver runtime messages - -* ``CONFIG_RTE_LIBRTE_DPAA2_SEC_DEBUG_RX`` (default ``n``) - Toggle display of receive fast path run-time message - -* ``CONFIG_RTE_DPAA2_SEC_PMD_MAX_NB_SESSIONS`` - By default it is set as 2048 in defconfig_arm64-dpaa2-* config. - It indicates Number of sessions to create in the session memory pool - on a single DPAA2 SEC device. - Installations ------------- To compile the DPAA2_SEC PMD for Linux arm64 gcc target, run the @@ -229,4 +191,16 @@ following ``make`` command: .. code-block:: console cd - make config T=arm64-dpaa2-linuxapp-gcc install + make config T=arm64-dpaa-linux-gcc install + +Enabling logs +------------- + +For enabling logs, use the following EAL parameter: + +.. code-block:: console + + ./your_crypto_application --log-level=pmd.crypto.dpaa2: + +Using ``crypto.dpaa2`` as log matching criteria, all Crypto PMD logs can be +enabled which are lower than logging ``level``.