[dpdk-dev] [PATCH v1 2/2] doc: update armada docs

Ferruh Yigit ferruh.yigit at intel.com
Wed Dec 9 11:45:14 CET 2020


On 12/2/2020 1:05 PM, lironh at marvell.com wrote:
> From: Liron Himi <lironh at marvell.com>
> 
> - update musdk requirement branch
> - add the use of PKG_CONFIG
> 
> Signed-off-by: Liron Himi <lironh at marvell.com>
> Reviewed-by: Liron Himi <lironh at marvell.com>
> ---
>   doc/guides/cryptodevs/mvsam.rst | 61 ++++++++++++++++++++++++++-------
>   doc/guides/nics/mvneta.rst      | 45 ++++++++++++------------
>   doc/guides/nics/mvpp2.rst       | 43 +++++++----------------
>   3 files changed, 83 insertions(+), 66 deletions(-)
> 
> diff --git a/doc/guides/cryptodevs/mvsam.rst b/doc/guides/cryptodevs/mvsam.rst
> index 6188c1248..6ea6d31b6 100644
> --- a/doc/guides/cryptodevs/mvsam.rst
> +++ b/doc/guides/cryptodevs/mvsam.rst
> @@ -1,6 +1,7 @@
>   ..  SPDX-License-Identifier: BSD-3-Clause
> -    Copyright(c) 2017 Marvell International Ltd.
> -    Copyright(c) 2017 Semihalf.
> +    Copyright(c) 2018 Marvell International Ltd.
> +    Copyright(c) 2018 Semihalf.
> +    All rights reserved.


When updating dates, it can be extended as 2017-2018, instead of replacing the 
start year.
Also why 2018 but not 2020?

"All rights reserved." seems added, does it really needed, or added by mistake?

>   
>   MVSAM Crypto Poll Mode Driver
>   =============================
> @@ -22,6 +23,12 @@ Features
>   
>   MVSAM CRYPTO PMD has support for:
>   
> +* Symmetric crypto operations: encryption/description and authentication
> +* Symmetric chaining crypto operations
> +* HW Accelerated using EIP97/EIP197b/EIP197d
> +* Out-of-place Scatter-gather list Input, Linear Buffers Output
> +* Out-of-place Linear Buffers Input, Linear Buffers Output
> +

Can you please send the crypto doc updates in a separate patch? That is better 
to go into crypto tree after Akhil's review.

>   Cipher algorithms:
>   
>   * ``RTE_CRYPTO_CIPHER_NULL``
> @@ -61,6 +68,27 @@ Limitations
>   * Hardware only supports scenarios where ICV (digest buffer) is placed just
>     after the authenticated data. Other placement will result in error.
>   
> +Prerequisites
> +-------------
> +
> +- Custom Linux Kernel sources
> +
> +  .. code-block:: console
> +
> +     git clone https://github.com/MarvellEmbeddedProcessors/linux-marvell.git -b linux-4.4.120-armada-18.09
> +
> +- Out of tree `mvpp2x_sysfs` kernel module sources
> +
> +  .. code-block:: console
> +
> +     git clone https://github.com/MarvellEmbeddedProcessors/mvpp2x-marvell.git -b mvpp2x-armada-18.09
> +
> +- MUSDK (Marvell User-Space SDK) sources
> +
> +  .. code-block:: console
> +
> +     git clone https://github.com/MarvellEmbeddedProcessors/musdk-marvell.git -b musdk-release-SDK-10.3.5.0-PR2
> +
>   Installation
>   ------------
>   
> @@ -74,23 +102,30 @@ extra option must be passed to the library configuration script:
>   For instructions how to build required kernel modules please refer
>   to `doc/musdk_get_started.txt`.
>   
> -Initialization
> ---------------
> +Building DPDK
> +-------------
> +
> +Driver needs precompiled MUSDK library during compilation.
> +MUSDK will be installed to `usr/local` under current directory.

Can't MUSDK be installed with a operating system packages? If so the path will 
be different.

> +For the detailed build instructions please consult ``doc/musdk_get_started.txt``.
> +

This ``doc/musdk_get_started.txt`` is under MUSDK, right? Can you please clarify 
where the document is. And it is not helpful to refer a document that is not 
accessible, can there be a way to provide a link for the document.

> +Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable:
>   
> -After successfully building MVSAM CRYPTO PMD, the following modules need to be
> -loaded:
> +.. code-block:: console
> +
> +   export PKG_CONFIG_PATH=$<musdk_install_dir>/lib/pkgconfig/:$PKG_CONFIG_PATH
> +
> +Build DPDK:
>   
>   .. code-block:: console
>   
> -   insmod musdk_cma.ko
> -   insmod crypto_safexcel.ko rings=0,0
> -   insmod mv_sam_uio.ko
> +   meson build --cross-file config/arm/arm64_armada_linux_gcc
> +   ninja -C build
> +
>   
> -The following parameters (all optional) are exported by the driver:
>   
> -- ``max_nb_queue_pairs``: maximum number of queue pairs in the device (default: 8 - A8K, 4 - A7K/A3K).
> -- ``max_nb_sessions``: maximum number of sessions that can be created (default: 2048).
> -- ``socket_id``: socket on which to allocate the device resources on.

Why this information is removed?

> +Usage Example
> +-------------
>   
>   l2fwd-crypto example application can be used to verify MVSAM CRYPTO PMD
>   operation:
> diff --git a/doc/guides/nics/mvneta.rst b/doc/guides/nics/mvneta.rst
> index e8abde42d..404998e62 100644
> --- a/doc/guides/nics/mvneta.rst
> +++ b/doc/guides/nics/mvneta.rst
> @@ -3,6 +3,8 @@
>       Copyright(c) 2018 Semihalf.
>       All rights reserved.
>   
> +.. _mvneta_poll_mode_driver:
> +
>   MVNETA Poll Mode Driver
>   =======================
>   
> @@ -25,6 +27,7 @@ Features of the MVNETA PMD are:
>   - Speed capabilities
>   - Jumbo frame
>   - MTU update
> +- Jumbo frame
>   - Promiscuous mode
>   - Unicast MAC filter
>   - Link status
> @@ -33,6 +36,8 @@ Features of the MVNETA PMD are:
>   - L4 checksum offload
>   - Packet type parsing
>   - Basic stats
> +- Multicast MAC filter
> +- Scattered TX frames
>   
>   
>   Limitations
> @@ -42,6 +47,11 @@ Limitations
>     functionality. Current workaround is to reset board so that NETA has a
>     chance to start in a sane state.
>   
> +- MUSDK architecture does not support changing configuration in run time.
> +  All nessesary configurations should be done before first dev_start().

s/nessesary/necessary

> +
> +- Running more than one DPDK-MUSDK application simultaneously is not supported.
> +
>   Prerequisites
>   -------------
>   
> @@ -56,7 +66,7 @@ Prerequisites
>   
>     .. code-block:: console
>   
> -     git clone https://github.com/MarvellEmbeddedProcessors/musdk-marvell.git -b musdk-armada-18.09
> +     git clone https://github.com/MarvellEmbeddedProcessors/musdk-marvell.git -b musdk-release-SDK-10.3.5.0-PR2
>   

Do you need a matrix to show which DPDK version supports which musdk version, or 
can musdk version updated freely?

And above is a branch, which seems moving actively, would it be better to 
provide a tag which is fixed and tested point in the musdk?

>     MUSDK is a light-weight library that provides direct access to Marvell's
>     NETA. Alternatively prebuilt MUSDK library can be
> @@ -64,11 +74,8 @@ Prerequisites
>     approval has been granted, library can be found by typing ``musdk`` in
>     the search box.
>   
> -  MUSDK must be configured with the following features:
> -
> -  .. code-block:: console
> -
> -     --enable-pp2=no --enable-neta
> +  To better understand the library, please consult documentation
> +  available in the ``doc`` top level directory of the MUSDK sources.
>   

Again our documentation is referring a doc that is not accessible, can you 
provide a link here?

>   - DPDK environment
>   
> @@ -98,36 +105,28 @@ Building DPDK
>   -------------
>   
>   Driver needs precompiled MUSDK library during compilation.
> +MUSDK will be installed to `usr/local` under current directory.
> +For the detailed build instructions please consult ``doc/musdk_get_started.txt``.
>   
> -.. code-block:: console
> +Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable:
>   
> -   export CROSS_COMPILE=<toolchain>/bin/aarch64-linux-gnu-
> -   ./bootstrap
> -   ./configure --host=aarch64-linux-gnu --enable-pp2=no --enable-neta
> -   make install
> +.. code-block:: console
>   
> -MUSDK will be installed to `usr/local` under current directory.
> -For the detailed build instructions please consult ``doc/musdk_get_started.txt``.
> +   export PKG_CONFIG_PATH=$<musdk_install_dir>/lib/pkgconfig/:$PKG_CONFIG_PATH
>   
> -The path to the MUSDK installation directory needs to set in meson, shown in the
> -following command:
> +Build DPDK:
>   
>   .. code-block:: console
>   
> -   meson -Dlib_musdk_dir=/path/to/musdk build ninja -C build
> +   meson build --cross-file config/arm/arm64_armada_linux_gcc
> +   ninja -C build
>   
>   
>   Usage Example
>   -------------
>   
>   MVNETA PMD requires extra out of tree kernel modules to function properly.
> -`musdk_uio` and `mv_neta_uio` sources are part of the MUSDK. Please consult
> -``doc/musdk_get_started.txt`` for the detailed build instructions.
> -
> -.. code-block:: console
> -
> -   insmod musdk_uio.ko
> -   insmod mv_neta_uio.ko
> +Please consult ``doc/musdk_get_started.txt`` for the detailed build instructions.
>   
>   Additionally interfaces used by DPDK application need to be put up:
>   
> diff --git a/doc/guides/nics/mvpp2.rst b/doc/guides/nics/mvpp2.rst
> index 6fbce8358..b151407ad 100644
> --- a/doc/guides/nics/mvpp2.rst
> +++ b/doc/guides/nics/mvpp2.rst
> @@ -1,6 +1,7 @@
>   ..  SPDX-License-Identifier: BSD-3-Clause
> -    Copyright(c) 2017 Marvell International Ltd.
> -    Copyright(c) 2017 Semihalf.
> +    Copyright(c) 2018 Marvell International Ltd.
> +    Copyright(c) 2018 Semihalf.
> +    All rights reserved.
>   

Same questions as above.

>   .. _mvpp2_poll_mode_driver:
>   
> @@ -91,7 +92,7 @@ Prerequisites
>   
>     .. code-block:: console
>   
> -     git clone https://github.com/MarvellEmbeddedProcessors/musdk-marvell.git -b musdk-armada-18.09
> +     git clone https://github.com/MarvellEmbeddedProcessors/musdk-marvell.git -b musdk-release-SDK-10.3.5.0-PR2
>   
>     MUSDK is a light-weight library that provides direct access to Marvell's
>     PPv2 (Packet Processor v2). Alternatively prebuilt MUSDK library can be
> @@ -112,47 +113,29 @@ Building DPDK
>   -------------
>   
>   Driver needs precompiled MUSDK library during compilation.
> -
> -.. code-block:: console
> -
> -   export CROSS_COMPILE=<toolchain>/bin/aarch64-linux-gnu-
> -   ./bootstrap
> -   ./configure --host=aarch64-linux-gnu
> -   make install
> -
>   MUSDK will be installed to `usr/local` under current directory.
>   For the detailed build instructions please consult ``doc/musdk_get_started.txt``.
>   
> -The path to the MUSDK installation directory needs to set in meson, shown in the
> -command below.
> +Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable:
> +
> +.. code-block:: console
> +
> +   export PKG_CONFIG_PATH=$<musdk_install_dir>/lib/pkgconfig/:$PKG_CONFIG_PATH
>   
> -For additional instructions regarding DPDK cross compilation please refer to :doc:`Cross compile DPDK for ARM64 <../linux_gsg/cross_build_dpdk_for_arm64>`.
> +Build DPDK:
>   
>   .. code-block:: console
>   
> -   meson -Dlib_musdk_dir=/path/to/musdk build ninja -C build
> +   meson build --cross-file config/arm/arm64_armada_linux_gcc
> +   ninja -C build
>   
>   
>   Usage Example
>   -------------
>   
>   MVPP2 PMD requires extra out of tree kernel modules to function properly.
> -`musdk_cma` sources are part of the MUSDK. Please consult
> -``doc/musdk_get_started.txt`` for the detailed build instructions.
> -For `mvpp2x_sysfs` please consult ``Documentation/pp22_sysfs.txt`` for the
> -detailed build instructions.
> -
> -.. code-block:: console
> -
> -   insmod musdk_cma.ko
> -   insmod mvpp2x_sysfs.ko
> -
> -Additionally interfaces used by DPDK application need to be put up:
> -
> -.. code-block:: console
> +Please consult ``doc/musdk_get_started.txt`` for the detailed build instructions.
>   
> -   ip link set eth0 up
> -   ip link set eth2 up
>   
>   In order to run testpmd example application following command can be used:
>   
> 



More information about the dev mailing list