[dpdk-dev] [PATCH] doc: add build steps to mrvl NIC guide
Tomasz Duszynski
tdu at semihalf.com
Thu Oct 12 08:28:29 CEST 2017
On Thu, Oct 12, 2017 at 04:37:45AM +0200, Thomas Monjalon wrote:
> Show how to compile MUSDK and enable compilation of the mrvl PMD.
>
> The build test tool is also updated to support this new PMD.
>
> Signed-off-by: Thomas Monjalon <thomas at monjalon.net>
> ---
> devtools/test-build.sh | 4 ++++
> doc/guides/nics/mrvl.rst | 15 +++++++++++++++
> 2 files changed, 19 insertions(+)
>
> diff --git a/devtools/test-build.sh b/devtools/test-build.sh
> index c6dfaf0a8..4d7eaa499 100755
> --- a/devtools/test-build.sh
> +++ b/devtools/test-build.sh
> @@ -47,6 +47,7 @@ default_path=$PATH
> # - DPDK_DEP_ZLIB (y/[n])
> # - DPDK_MAKE_JOBS (int)
> # - DPDK_NOTIFY (notify-send)
> +# - LIBMUSDK_PATH
> # - LIBSSO_SNOW3G_PATH
> # - LIBSSO_KASUMI_PATH
> # - LIBSSO_ZUC_PATH
> @@ -129,6 +130,7 @@ reset_env ()
> unset DPDK_DEP_ZLIB
> unset AESNI_MULTI_BUFFER_LIB_PATH
> unset ARMV8_CRYPTO_LIB_PATH
> + unset LIBMUSDK_PATH
> unset LIBSSO_SNOW3G_PATH
> unset LIBSSO_KASUMI_PATH
> unset LIBSSO_ZUC_PATH
> @@ -169,6 +171,8 @@ config () # <directory> <target> <options>
> sed -ri 's,(RESOURCE_TAR=)n,\1y,' $1/.config
> test "$DPDK_DEP_MOFED" != y || \
> sed -ri 's,(MLX._PMD=)n,\1y,' $1/.config
> + test -z "$LIBMUSDK_PATH" || \
> + sed -ri 's,(MRVL_PMD=)n,\1y,' $1/.config
test-build.sh modifications come with crypto-mrvl patches. The only
difference is that PMD_MRVL_CRYPTO is enabled instead of MRVL_PMD. Thus
I don't think it will apply after applying crypto patches.
> test "$DPDK_DEP_SZE" != y || \
> sed -ri 's,(PMD_SZEDATA2=)n,\1y,' $1/.config
> test "$DPDK_DEP_ZLIB" != y || \
> diff --git a/doc/guides/nics/mrvl.rst b/doc/guides/nics/mrvl.rst
> index 462bc0e9d..df0032bda 100644
> --- a/doc/guides/nics/mrvl.rst
> +++ b/doc/guides/nics/mrvl.rst
> @@ -221,9 +221,24 @@ Building DPDK
> Driver needs precompiled MUSDK library during compilation. Please consult
> ``doc/musdk_get_started.txt`` for the detailed build instructions.
>
> +.. code-block:: console
> +
> + export CROSS_COMPILE=<toolchain>/bin/aarch64-linux-gnu-
> + ./bootstrap
> + ./configure --enable-bpool-dma=64
> + make install
I personally build MUSDK as follows:
export CROSS_COMPILE=/home/tdu/workspace/gcc-linaro-5.4.1-2017.01-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
make clean
./configure \
--prefix=$(pwd)/musdk-install-dir \
--enable-bpool-dma=64 \
--enable-sam \
--disable-shared
make install
'--enable-sam' is of course optional if you're not going to use crypto
engine.
MUSDK ends up in musdk-install-dir then. Otherwise you'll need extra
permissions to install to /usr/local. Of course its up to you where
would you like to have it installed.
The reason I tend to add '--disable-shared' is that during build
DPDK will suck in static libraries and then later on I don't have to
install MUSDK library on the development board.
> +
> Before the DPDK build process the environmental variable ``LIBMUSDK_PATH`` with
> the path to the MUSDK installation directory needs to be exported.
>
> +.. code-block:: console
> +
> + export LIBMUSDK_PATH=<musdk>/usr/local
> + export CROSS=aarch64-linux-gnu-
> + make config T=arm64-armv8a-linuxapp-gcc
> + sed -ri 's,(MRVL_PMD=)n,\1y,' build/.config
> + make
> +
>
> Usage Example
> -------------
> --
> 2.14.1
>
Anyway patch looks good. Thanks.
Acked-by: Tomasz Duszynski <tdu at semihalf.com>
--
- Tomasz Duszyński
More information about the dev
mailing list