X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fcryptodevs%2Focteontx.rst;h=497227424a7fe76343b2bb5a5966449607da147a;hb=19f3af2371a7fdc549cbc270c298be156b3bd545;hp=660e980ccfb4178edaf0731a65088027d9b53635;hpb=9c4491cf5c89a015cf358011151a92b9cba78560;p=dpdk.git diff --git a/doc/guides/cryptodevs/octeontx.rst b/doc/guides/cryptodevs/octeontx.rst index 660e980ccf..497227424a 100644 --- a/doc/guides/cryptodevs/octeontx.rst +++ b/doc/guides/cryptodevs/octeontx.rst @@ -10,8 +10,8 @@ cryptographic operations to cryptographic accelerator units on poll mode driver enqueues the crypto request to this accelerator and dequeues the response once the operation is completed. -Supported Algorithms --------------------- +Supported Symmetric Crypto Algorithms +------------------------------------- Cipher Algorithms ~~~~~~~~~~~~~~~~~ @@ -53,35 +53,28 @@ AEAD Algorithms * ``RTE_CRYPTO_AEAD_AES_GCM`` -Compilation ------------ +Supported Asymmetric Crypto Algorithms +-------------------------------------- -The **OCTEON TX** :sup:`®` board must be running the linux kernel based on -sdk-6.2.0 patch 3. In this, the OCTEON TX crypto PF driver is already built in. +* ``RTE_CRYPTO_ASYM_XFORM_RSA`` +* ``RTE_CRYPTO_ASYM_XFORM_MODEX`` -For compiling the OCTEON TX crypto poll mode driver, please check if the -CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO setting is set to `y` in -config/common_base file. -* ``CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO=y`` +Compilation +----------- -The following are the steps to compile the OCTEON TX crypto poll mode driver: +The OCTEON TX crypto poll mode driver can be compiled either natively on +**OCTEON TX** :sup:`®` board or cross-compiled on an x86 based platform. -.. code-block:: console +Refer :doc:`../platform/octeontx` for details about setting up the platform +and building DPDK applications. - cd - make config T=arm64-thunderx-linuxapp-gcc - make +.. note:: -The example applications can be compiled using the following: + OCTEON TX crypto PF driver needs microcode to be available at `/lib/firmware/` directory. + Refer SDK documents for further information. -.. code-block:: console - - cd - export RTE_SDK=$PWD - export RTE_TARGET=build - cd examples/ - make +SDK and related information can be obtained from: `Cavium support site `_. Execution --------- @@ -114,9 +107,7 @@ applications. .. code-block:: console - echo 8 > /sys/kernel/mm/hugepages/hugepages-524288kB/nr_hugepages - mkdir /mnt/huge - mount -t hugetlbfs nodev /mnt/huge + dpdk-hugepages.py --setup 4G --pagesize 512M Example applications can now be executed with crypto operations offloaded to OCTEON TX crypto PMD. @@ -125,3 +116,28 @@ OCTEON TX crypto PMD. ./build/ipsec-secgw --log-level=8 -c 0xff -- -P -p 0x3 -u 0x2 --config "(1,0,0),(0,0,0)" -f ep1.cfg + +Testing +------- + +The symmetric crypto operations on OCTEON TX crypto PMD may be verified by running the test +application: + +.. code-block:: console + + ./dpdk-test + RTE>>cryptodev_octeontx_autotest + +The asymmetric crypto operations on OCTEON TX crypto PMD may be verified by running the test +application: + +.. code-block:: console + + ./dpdk-test + RTE>>cryptodev_octeontx_asym_autotest + +Limitations +----------- + +Multiple lcores may not operate on the same crypto queue pair. The lcore that +enqueues to a queue pair is the one that must dequeue from it.