X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fnics%2Fdpaa2.rst;h=233d926e0a494dec5d4d200b7b531a84f94a4848;hb=ef08031fc1dd5fd9293b5c069583d4955a4a3a6b;hp=769dc4e127498d56e6fdad4d38eaf0635a7d3393;hpb=b84c108742a94ae61a38bb09dfdc2f68e4a25775;p=dpdk.git diff --git a/doc/guides/nics/dpaa2.rst b/doc/guides/nics/dpaa2.rst index 769dc4e127..233d926e0a 100644 --- a/doc/guides/nics/dpaa2.rst +++ b/doc/guides/nics/dpaa2.rst @@ -1,11 +1,11 @@ .. SPDX-License-Identifier: BSD-3-Clause - Copyright 2016 NXP + Copyright 2016,2020 NXP DPAA2 Poll Mode Driver ====================== -The DPAA2 NIC PMD (**librte_pmd_dpaa2**) provides poll mode driver +The DPAA2 NIC PMD (**librte_net_dpaa2**) provides poll mode driver support for the inbuilt NIC found in the **NXP DPAA2** SoC family. More information can be found at `NXP Official Website @@ -300,7 +300,7 @@ The diagram below shows the dpaa2 drivers involved in a networking scenario and the objects bound to each driver. A brief description of each driver follows. -.. code-block: console +.. code-block:: console +------------+ @@ -379,7 +379,7 @@ active -- Ethernet, crypto, compression, etc. DPBP based Mempool driver ~~~~~~~~~~~~~~~~~~~~~~~~~ -The DPBP driver is bound to a DPBP objects and provides sevices to +The DPBP driver is bound to a DPBP objects and provides services to create a hardware offloaded packet buffer mempool. DPAA2 NIC Driver @@ -421,8 +421,8 @@ See :doc:`../platform/dpaa2` for setup information Currently supported by DPDK: -- NXP SDK **18.09+**. -- MC Firmware version **10.10.0** and higher. +- NXP LSDK **19.08+**. +- 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. @@ -432,32 +432,6 @@ Currently supported by DPDK: Some part of fslmc bus code (mc flib - object library) routines are dual licensed (BSD & GPLv2), however they are used as BSD in DPDK in userspace. -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_LIBRTE_FSLMC_BUS`` (default ``n``) - - By default it is enabled only for defconfig_arm64-dpaa2-* config. - Toggle compilation of the ``librte_bus_fslmc`` driver. - -- ``CONFIG_RTE_LIBRTE_DPAA2_PMD`` (default ``n``) - - By default it is enabled only for defconfig_arm64-dpaa2-* config. - Toggle compilation of the ``librte_pmd_dpaa2`` driver. - -- ``CONFIG_RTE_LIBRTE_DPAA2_DEBUG_DRIVER`` (default ``n``) - - Toggle display of debugging messages/logic - -- ``CONFIG_RTE_LIBRTE_DPAA2_USE_PHYS_IOVA`` (default ``y``) - - Toggle to use physical address vs virtual address for hardware accelerators. Driver compilation and testing ------------------------------ @@ -475,7 +449,7 @@ for details. .. code-block:: console - ./testpmd -c 0xff -n 1 -- -i --portmask=0x3 --nb-cores=1 --no-flush-rx + ./dpdk-testpmd -c 0xff -n 1 -- -i --portmask=0x3 --nb-cores=1 --no-flush-rx ..... EAL: Registered [pci] bus. @@ -499,6 +473,15 @@ for details. Done testpmd> + +* Use dev arg option ``drv_loopback=1`` to loopback packets at + driver level. Any packet received will be reflected back by the + driver on same port. e.g. ``fslmc:dpni.1,drv_loopback=1`` + +* Use dev arg option ``drv_no_prefetch=1`` to disable prefetching + of the packet pull command which is issued in the previous cycle. + e.g. ``fslmc:dpni.1,drv_no_prefetch=1`` + Enabling logs ------------- @@ -520,10 +503,10 @@ which are lower than logging ``level``. Using ``pmd.net.dpaa2`` as log matching criteria, all PMD logs can be enabled which are lower than logging ``level``. -Whitelisting & Blacklisting ---------------------------- +Allowing & Blocking +------------------- -For blacklisting a DPAA2 device, following commands can be used. +For blocking a DPAA2 device, following commands can be used. .. code-block:: console @@ -531,6 +514,19 @@ For blacklisting a DPAA2 device, following commands can be used. Where x is the device object id as configured in resource container. +Running secondary debug app without blocklist +--------------------------------------------- + +dpaa2 hardware imposes limits on some H/W access devices like Management +Control Port and H/W portal. This causes issue in their shared usages in +case of multi-process applications. It can overcome by using +allowlist/blocklist in primary and secondary applications. + +In order to ease usage of standard debugging apps like dpdk-procinfo, dpaa2 +driver reserves extra Management Control Port and H/W portal which can be +used by debug application to debug any existing application without +blocking these devices in primary process. + Limitations ----------- @@ -552,4 +548,3 @@ Other Limitations - RSS hash key cannot be modified. - RSS RETA cannot be configured. -- Secondary process packet I/O is not supported.