* Re: [dpdk-dev] [PATCH v1 1/2] meson: update meson build for armada drivers
2020-12-02 13:05 ` [dpdk-dev] [PATCH v1 1/2] meson: update meson build for armada drivers lironh
@ 2020-12-09 10:49 ` Ferruh Yigit
2020-12-13 20:06 ` [dpdk-dev] [EXT] " Liron Himi
2020-12-15 22:19 ` [dpdk-dev] [PATCH v2] " lironh
2020-12-15 22:23 ` lironh
2 siblings, 1 reply; 30+ messages in thread
From: Ferruh Yigit @ 2020-12-09 10:49 UTC (permalink / raw)
To: lironh, bruce.richardson; +Cc: dev, Akhil Goyal
On 12/2/2020 1:05 PM, lironh@marvell.com wrote:
> From: Liron Himi <lironh@marvell.com>
>
> With pkg-config support available within musdk library,
> meson option 'lib_musdk_dir' can be removed.
> PKG_CONFIG_PATH environment variable should be set appropriately
> to use the musdk library.
>
> Signed-off-by: Liron Himi <lironh@marvell.com>
> Reviewed-by: Liron Himi <lironh@marvell.com>
> ---
> drivers/common/mvep/meson.build | 14 +++++---------
> drivers/crypto/mvsam/meson.build | 15 +++++----------
> drivers/net/mvneta/meson.build | 19 +++++--------------
> drivers/net/mvneta/mvneta_ethdev.h | 1 +
> drivers/net/mvpp2/meson.build | 15 +++++----------
> meson_options.txt | 2 --
> 6 files changed, 21 insertions(+), 45 deletions(-)
>
Hi Liron,
+1 to this change, but can you please make a new version to include build
related document changes into this same patch?
Second patch updates document, both for this build related issues and other
issues like new musdk version and supported features etc.. Instead you can move
build related changes to this patch, and separate second patch for crypto and
net, so that it can have proper commit logs for each and can be reviewed easier.
--
Thanks,
ferruh
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v1 1/2] meson: update meson build for armada drivers
2020-12-09 10:49 ` Ferruh Yigit
@ 2020-12-13 20:06 ` Liron Himi
2020-12-14 9:57 ` Ferruh Yigit
0 siblings, 1 reply; 30+ messages in thread
From: Liron Himi @ 2020-12-13 20:06 UTC (permalink / raw)
To: Ferruh Yigit, bruce.richardson; +Cc: dev, Akhil Goyal, Liron Himi
-----Original Message-----
From: Ferruh Yigit <ferruh.yigit@intel.com>
Sent: Wednesday, 9 December 2020 12:50
To: Liron Himi <lironh@marvell.com>; bruce.richardson@intel.com
Cc: dev@dpdk.org; Akhil Goyal <akhil.goyal@nxp.com>
Subject: [EXT] Re: [dpdk-dev] [PATCH v1 1/2] meson: update meson build for armada drivers
External Email
----------------------------------------------------------------------
On 12/2/2020 1:05 PM, lironh@marvell.com wrote:
> From: Liron Himi <lironh@marvell.com>
>
> With pkg-config support available within musdk library, meson option
> 'lib_musdk_dir' can be removed.
> PKG_CONFIG_PATH environment variable should be set appropriately to
> use the musdk library.
>
> Signed-off-by: Liron Himi <lironh@marvell.com>
> Reviewed-by: Liron Himi <lironh@marvell.com>
> ---
> drivers/common/mvep/meson.build | 14 +++++---------
> drivers/crypto/mvsam/meson.build | 15 +++++----------
> drivers/net/mvneta/meson.build | 19 +++++--------------
> drivers/net/mvneta/mvneta_ethdev.h | 1 +
> drivers/net/mvpp2/meson.build | 15 +++++----------
> meson_options.txt | 2 --
> 6 files changed, 21 insertions(+), 45 deletions(-)
>
Hi Liron,
+1 to this change, but can you please make a new version to include
+build
related document changes into this same patch?
Second patch updates document, both for this build related issues and other issues like new musdk version and supported features etc.. Instead you can move build related changes to this patch, and separate second patch for crypto and net, so that it can have proper commit logs for each and can be reviewed easier.
[L.H.] the support for the pkg-config, which meson build relay on, requires newer musdk version. Can I create a platform doc for all Marvell ARMADA platforms?
--
Thanks,
ferruh
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v1 1/2] meson: update meson build for armada drivers
2020-12-13 20:06 ` [dpdk-dev] [EXT] " Liron Himi
@ 2020-12-14 9:57 ` Ferruh Yigit
2020-12-15 10:04 ` Liron Himi
0 siblings, 1 reply; 30+ messages in thread
From: Ferruh Yigit @ 2020-12-14 9:57 UTC (permalink / raw)
To: Liron Himi, bruce.richardson; +Cc: dev, Akhil Goyal
On 12/13/2020 8:06 PM, Liron Himi wrote:
>
> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Wednesday, 9 December 2020 12:50
> To: Liron Himi <lironh@marvell.com>; bruce.richardson@intel.com
> Cc: dev@dpdk.org; Akhil Goyal <akhil.goyal@nxp.com>
> Subject: [EXT] Re: [dpdk-dev] [PATCH v1 1/2] meson: update meson build for armada drivers
>
> External Email
>
> ----------------------------------------------------------------------
> On 12/2/2020 1:05 PM, lironh@marvell.com wrote:
>> From: Liron Himi <lironh@marvell.com>
>>
>> With pkg-config support available within musdk library, meson option
>> 'lib_musdk_dir' can be removed.
>> PKG_CONFIG_PATH environment variable should be set appropriately to
>> use the musdk library.
>>
>> Signed-off-by: Liron Himi <lironh@marvell.com>
>> Reviewed-by: Liron Himi <lironh@marvell.com>
>> ---
>> drivers/common/mvep/meson.build | 14 +++++---------
>> drivers/crypto/mvsam/meson.build | 15 +++++----------
>> drivers/net/mvneta/meson.build | 19 +++++--------------
>> drivers/net/mvneta/mvneta_ethdev.h | 1 +
>> drivers/net/mvpp2/meson.build | 15 +++++----------
>> meson_options.txt | 2 --
>> 6 files changed, 21 insertions(+), 45 deletions(-)
>>
>
> Hi Liron,
>
> +1 to this change, but can you please make a new version to include
> +build
> related document changes into this same patch?
>
> Second patch updates document, both for this build related issues and other issues like new musdk version and supported features etc.. Instead you can move build related changes to this patch, and separate second patch for crypto and net, so that it can have proper commit logs for each and can be reviewed easier.
>
> [L.H.] the support for the pkg-config, which meson build relay on, requires newer musdk version. Can I create a platform doc for all Marvell ARMADA platforms?
Not sure if a platform doc is required just to document external library dependency.
But if there is more to add to platform document, can you sent it as separate
patch so it can be reviewed without blocking this set?
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v1 1/2] meson: update meson build for armada drivers
2020-12-14 9:57 ` Ferruh Yigit
@ 2020-12-15 10:04 ` Liron Himi
2020-12-15 10:29 ` Ferruh Yigit
0 siblings, 1 reply; 30+ messages in thread
From: Liron Himi @ 2020-12-15 10:04 UTC (permalink / raw)
To: Ferruh Yigit, bruce.richardson; +Cc: dev, Akhil Goyal, Liron Himi
-----Original Message-----
From: Ferruh Yigit <ferruh.yigit@intel.com>
Sent: Monday, 14 December 2020 11:57
To: Liron Himi <lironh@marvell.com>; bruce.richardson@intel.com
Cc: dev@dpdk.org; Akhil Goyal <akhil.goyal@nxp.com>
Subject: Re: [EXT] Re: [dpdk-dev] [PATCH v1 1/2] meson: update meson build for armada drivers
On 12/13/2020 8:06 PM, Liron Himi wrote:
>
> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Wednesday, 9 December 2020 12:50
> To: Liron Himi <lironh@marvell.com>; bruce.richardson@intel.com
> Cc: dev@dpdk.org; Akhil Goyal <akhil.goyal@nxp.com>
> Subject: [EXT] Re: [dpdk-dev] [PATCH v1 1/2] meson: update meson build
> for armada drivers
>
> External Email
>
> ----------------------------------------------------------------------
> On 12/2/2020 1:05 PM, lironh@marvell.com wrote:
>> From: Liron Himi <lironh@marvell.com>
>>
>> With pkg-config support available within musdk library, meson option
>> 'lib_musdk_dir' can be removed.
>> PKG_CONFIG_PATH environment variable should be set appropriately to
>> use the musdk library.
>>
>> Signed-off-by: Liron Himi <lironh@marvell.com>
>> Reviewed-by: Liron Himi <lironh@marvell.com>
>> ---
>> drivers/common/mvep/meson.build | 14 +++++---------
>> drivers/crypto/mvsam/meson.build | 15 +++++----------
>> drivers/net/mvneta/meson.build | 19 +++++--------------
>> drivers/net/mvneta/mvneta_ethdev.h | 1 +
>> drivers/net/mvpp2/meson.build | 15 +++++----------
>> meson_options.txt | 2 --
>> 6 files changed, 21 insertions(+), 45 deletions(-)
>>
>
> Hi Liron,
>
> +1 to this change, but can you please make a new version to include
> +build
> related document changes into this same patch?
>
> Second patch updates document, both for this build related issues and other issues like new musdk version and supported features etc.. Instead you can move build related changes to this patch, and separate second patch for crypto and net, so that it can have proper commit logs for each and can be reviewed easier.
>
> [L.H.] the support for the pkg-config, which meson build relay on, requires newer musdk version. Can I create a platform doc for all Marvell ARMADA platforms?
Not sure if a platform doc is required just to document external library dependency.
But if there is more to add to platform document, can you sent it as separate patch so it can be reviewed without blocking this set?
[L.H.] i can split the doc patch and add the meson part to this patch, but I will also need to include the musdk version as only in the new version the pkg-config support is included.
Is that fine?
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v1 1/2] meson: update meson build for armada drivers
2020-12-15 10:04 ` Liron Himi
@ 2020-12-15 10:29 ` Ferruh Yigit
0 siblings, 0 replies; 30+ messages in thread
From: Ferruh Yigit @ 2020-12-15 10:29 UTC (permalink / raw)
To: Liron Himi, bruce.richardson; +Cc: dev, Akhil Goyal
On 12/15/2020 10:04 AM, Liron Himi wrote:
>
> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Monday, 14 December 2020 11:57
> To: Liron Himi <lironh@marvell.com>; bruce.richardson@intel.com
> Cc: dev@dpdk.org; Akhil Goyal <akhil.goyal@nxp.com>
> Subject: Re: [EXT] Re: [dpdk-dev] [PATCH v1 1/2] meson: update meson build for armada drivers
>
> On 12/13/2020 8:06 PM, Liron Himi wrote:
>>
>> -----Original Message-----
>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>> Sent: Wednesday, 9 December 2020 12:50
>> To: Liron Himi <lironh@marvell.com>; bruce.richardson@intel.com
>> Cc: dev@dpdk.org; Akhil Goyal <akhil.goyal@nxp.com>
>> Subject: [EXT] Re: [dpdk-dev] [PATCH v1 1/2] meson: update meson build
>> for armada drivers
>>
>> External Email
>>
>> ----------------------------------------------------------------------
>> On 12/2/2020 1:05 PM, lironh@marvell.com wrote:
>>> From: Liron Himi <lironh@marvell.com>
>>>
>>> With pkg-config support available within musdk library, meson option
>>> 'lib_musdk_dir' can be removed.
>>> PKG_CONFIG_PATH environment variable should be set appropriately to
>>> use the musdk library.
>>>
>>> Signed-off-by: Liron Himi <lironh@marvell.com>
>>> Reviewed-by: Liron Himi <lironh@marvell.com>
>>> ---
>>> drivers/common/mvep/meson.build | 14 +++++---------
>>> drivers/crypto/mvsam/meson.build | 15 +++++----------
>>> drivers/net/mvneta/meson.build | 19 +++++--------------
>>> drivers/net/mvneta/mvneta_ethdev.h | 1 +
>>> drivers/net/mvpp2/meson.build | 15 +++++----------
>>> meson_options.txt | 2 --
>>> 6 files changed, 21 insertions(+), 45 deletions(-)
>>>
>>
>> Hi Liron,
>>
>> +1 to this change, but can you please make a new version to include
>> +build
>> related document changes into this same patch?
>>
>> Second patch updates document, both for this build related issues and other issues like new musdk version and supported features etc.. Instead you can move build related changes to this patch, and separate second patch for crypto and net, so that it can have proper commit logs for each and can be reviewed easier.
>>
>> [L.H.] the support for the pkg-config, which meson build relay on, requires newer musdk version. Can I create a platform doc for all Marvell ARMADA platforms?
>
> Not sure if a platform doc is required just to document external library dependency.
> But if there is more to add to platform document, can you sent it as separate patch so it can be reviewed without blocking this set?
>
> [L.H.] i can split the doc patch and add the meson part to this patch, but I will also need to include the musdk version as only in the new version the pkg-config support is included.
> Is that fine?
>
Got it, that is fine but can you please highlight this in the commit log? (That
only new specific version of the musdk supports pkg-config)
^ permalink raw reply [flat|nested] 30+ messages in thread
* [dpdk-dev] [PATCH v2] meson: update meson build for armada drivers
2020-12-02 13:05 ` [dpdk-dev] [PATCH v1 1/2] meson: update meson build for armada drivers lironh
2020-12-09 10:49 ` Ferruh Yigit
@ 2020-12-15 22:19 ` lironh
2020-12-15 22:23 ` lironh
2 siblings, 0 replies; 30+ messages in thread
From: lironh @ 2020-12-15 22:19 UTC (permalink / raw)
To: ferruh.yigit; +Cc: dev, Liron Himi
From: Liron Himi <lironh@marvell.com>
With pkg-config support available within musdk library
(from musdk-release-SDK-10.3.5.0-PR2 version),
meson option 'lib_musdk_dir' can be removed.
PKG_CONFIG_PATH environment variable should be set appropriately
to use the musdk library.
docs are updated with new musdk version and meson instructions.
Signed-off-by: Liron Himi <lironh@marvell.com>
Reviewed-by: Liron Himi <lironh@marvell.com>
---
doc/guides/nics/mvneta.rst | 13 ++++++++-----
doc/guides/nics/mvpp2.rst | 15 +++++++++------
drivers/common/mvep/meson.build | 14 +++++---------
drivers/crypto/mvsam/meson.build | 15 +++++----------
drivers/net/mvneta/meson.build | 19 +++++--------------
drivers/net/mvneta/mvneta_ethdev.h | 1 +
drivers/net/mvpp2/meson.build | 15 +++++----------
meson_options.txt | 2 --
8 files changed, 38 insertions(+), 56 deletions(-)
diff --git a/doc/guides/nics/mvneta.rst b/doc/guides/nics/mvneta.rst
index e8abde42d..56a555bd2 100644
--- a/doc/guides/nics/mvneta.rst
+++ b/doc/guides/nics/mvneta.rst
@@ -56,7 +56,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
NETA. Alternatively prebuilt MUSDK library can be
@@ -94,7 +94,7 @@ be passed as part of EAL arguments.
-c 3 -- -i --p 3 -a
-Building DPDK
+Building MUSDK
-------------
Driver needs precompiled MUSDK library during compilation.
@@ -109,12 +109,15 @@ 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``.
-The path to the MUSDK installation directory needs to set in meson, shown in the
-following command:
+Building DPDK:
+
+Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable.
.. code-block:: console
- meson -Dlib_musdk_dir=/path/to/musdk build ninja -C build
+ export PKG_CONFIG_PATH=$<musdk_install_dir>/lib/pkgconfig/:$PKG_CONFIG_PATH
+ meson build --cross-file config/arm/arm64_armada_linux_gcc
+ ninja -C build
Usage Example
diff --git a/doc/guides/nics/mvpp2.rst b/doc/guides/nics/mvpp2.rst
index 6fbce8358..69724bdf9 100644
--- a/doc/guides/nics/mvpp2.rst
+++ b/doc/guides/nics/mvpp2.rst
@@ -91,7 +91,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
@@ -108,7 +108,7 @@ Prerequisites
DPDK environment.
-Building DPDK
+Building MUSDK
-------------
Driver needs precompiled MUSDK library during compilation.
@@ -123,14 +123,17 @@ 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``.
-The path to the MUSDK installation directory needs to set in meson, shown in the
-command below.
-For additional instructions regarding DPDK cross compilation please refer to :doc:`Cross compile DPDK for ARM64 <../linux_gsg/cross_build_dpdk_for_arm64>`.
+Building DPDK:
+
+Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable.
.. code-block:: console
- meson -Dlib_musdk_dir=/path/to/musdk build ninja -C build
+ export PKG_CONFIG_PATH=$<musdk_install_dir>/lib/pkgconfig/:$PKG_CONFIG_PATH
+
+ meson build --cross-file config/arm/arm64_armada_linux_gcc
+ ninja -C build
Usage Example
diff --git a/drivers/common/mvep/meson.build b/drivers/common/mvep/meson.build
index 8df4bc6e0..863a20ab9 100644
--- a/drivers/common/mvep/meson.build
+++ b/drivers/common/mvep/meson.build
@@ -3,18 +3,14 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
#
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-lib = cc.find_library('libmusdk', dirs: [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += ['-DMVCONF_TYPES_PUBLIC', '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC']
+ subdir_done()
endif
+ext_deps += dep
+
sources = files('mvep_common.c')
diff --git a/drivers/crypto/mvsam/meson.build b/drivers/crypto/mvsam/meson.build
index 6d97dc8a2..384eacff0 100644
--- a/drivers/crypto/mvsam/meson.build
+++ b/drivers/crypto/mvsam/meson.build
@@ -3,20 +3,15 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-
-lib = cc.find_library('libmusdk', dirs: [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += ['-DMVCONF_TYPES_PUBLIC', '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC']
+ subdir_done()
endif
+ext_deps += dep
+
sources = files('rte_mrvl_pmd.c', 'rte_mrvl_pmd_ops.c')
deps += ['bus_vdev', 'common_mvep']
diff --git a/drivers/net/mvneta/meson.build b/drivers/net/mvneta/meson.build
index 8d7202788..c887ddc10 100644
--- a/drivers/net/mvneta/meson.build
+++ b/drivers/net/mvneta/meson.build
@@ -3,24 +3,15 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-
-lib = cc.find_library('libmusdk', dirs : [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += [
- '-DMVCONF_TYPES_PUBLIC',
- '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC',
- '-DMVCONF_DMA_PHYS_ADDR_T_SIZE=64'
- ]
+ subdir_done()
endif
+ext_deps += dep
+
sources = files(
'mvneta_ethdev.c',
'mvneta_rxtx.c'
diff --git a/drivers/net/mvneta/mvneta_ethdev.h b/drivers/net/mvneta/mvneta_ethdev.h
index ef8067790..e090abc25 100644
--- a/drivers/net/mvneta/mvneta_ethdev.h
+++ b/drivers/net/mvneta/mvneta_ethdev.h
@@ -21,6 +21,7 @@
#undef container_of
#endif
+#include <env/mv_autogen_comp_flags.h>
#include <drivers/mv_neta.h>
#include <drivers/mv_neta_ppio.h>
diff --git a/drivers/net/mvpp2/meson.build b/drivers/net/mvpp2/meson.build
index e06eddaac..3015a5559 100644
--- a/drivers/net/mvpp2/meson.build
+++ b/drivers/net/mvpp2/meson.build
@@ -3,20 +3,15 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-
-lib = cc.find_library('libmusdk', dirs : [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += ['-DMVCONF_TYPES_PUBLIC', '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC']
+ subdir_done()
endif
+ext_deps += dep
+
sources = files(
'mrvl_ethdev.c',
'mrvl_flow.c',
diff --git a/meson_options.txt b/meson_options.txt
index 9bf18ab6b..63245b95d 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -20,8 +20,6 @@ option('include_subdir_arch', type: 'string', value: '',
description: 'subdirectory where to install arch-dependent headers')
option('kernel_dir', type: 'string', value: '',
description: 'Path to the kernel for building kernel modules. Headers must be in $kernel_dir/build. Modules will be installed in $DEST_DIR/$kernel_dir/extra/dpdk.')
-option('lib_musdk_dir', type: 'string', value: '',
- description: 'path to the MUSDK library installation directory')
option('machine', type: 'string', value: 'native',
description: 'set the target machine type')
option('max_ethports', type: 'integer', value: 32,
--
2.28.0
^ permalink raw reply [flat|nested] 30+ messages in thread
* [dpdk-dev] [PATCH v2] meson: update meson build for armada drivers
2020-12-02 13:05 ` [dpdk-dev] [PATCH v1 1/2] meson: update meson build for armada drivers lironh
2020-12-09 10:49 ` Ferruh Yigit
2020-12-15 22:19 ` [dpdk-dev] [PATCH v2] " lironh
@ 2020-12-15 22:23 ` lironh
2020-12-16 13:37 ` Ferruh Yigit
2020-12-16 21:36 ` [dpdk-dev] [PATCH v3] " lironh
2 siblings, 2 replies; 30+ messages in thread
From: lironh @ 2020-12-15 22:23 UTC (permalink / raw)
To: ferruh.yigit; +Cc: dev, Liron Himi
From: Liron Himi <lironh@marvell.com>
With pkg-config support available within musdk library
(from musdk-release-SDK-10.3.5.0-PR2 version),
meson option 'lib_musdk_dir' can be removed.
PKG_CONFIG_PATH environment variable should be set appropriately
to use the musdk library.
docs are updated with new musdk version and meson instructions.
Signed-off-by: Liron Himi <lironh@marvell.com>
Reviewed-by: Liron Himi <lironh@marvell.com>
---
v2:
* include updated docs in this patch
* add musdk version in commit message
---
doc/guides/nics/mvneta.rst | 13 ++++++++-----
doc/guides/nics/mvpp2.rst | 15 +++++++++------
drivers/common/mvep/meson.build | 14 +++++---------
drivers/crypto/mvsam/meson.build | 15 +++++----------
drivers/net/mvneta/meson.build | 19 +++++--------------
drivers/net/mvneta/mvneta_ethdev.h | 1 +
drivers/net/mvpp2/meson.build | 15 +++++----------
meson_options.txt | 2 --
8 files changed, 38 insertions(+), 56 deletions(-)
diff --git a/doc/guides/nics/mvneta.rst b/doc/guides/nics/mvneta.rst
index e8abde42d..56a555bd2 100644
--- a/doc/guides/nics/mvneta.rst
+++ b/doc/guides/nics/mvneta.rst
@@ -56,7 +56,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
NETA. Alternatively prebuilt MUSDK library can be
@@ -94,7 +94,7 @@ be passed as part of EAL arguments.
-c 3 -- -i --p 3 -a
-Building DPDK
+Building MUSDK
-------------
Driver needs precompiled MUSDK library during compilation.
@@ -109,12 +109,15 @@ 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``.
-The path to the MUSDK installation directory needs to set in meson, shown in the
-following command:
+Building DPDK:
+
+Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable.
.. code-block:: console
- meson -Dlib_musdk_dir=/path/to/musdk build ninja -C build
+ export PKG_CONFIG_PATH=$<musdk_install_dir>/lib/pkgconfig/:$PKG_CONFIG_PATH
+ meson build --cross-file config/arm/arm64_armada_linux_gcc
+ ninja -C build
Usage Example
diff --git a/doc/guides/nics/mvpp2.rst b/doc/guides/nics/mvpp2.rst
index 6fbce8358..69724bdf9 100644
--- a/doc/guides/nics/mvpp2.rst
+++ b/doc/guides/nics/mvpp2.rst
@@ -91,7 +91,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
@@ -108,7 +108,7 @@ Prerequisites
DPDK environment.
-Building DPDK
+Building MUSDK
-------------
Driver needs precompiled MUSDK library during compilation.
@@ -123,14 +123,17 @@ 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``.
-The path to the MUSDK installation directory needs to set in meson, shown in the
-command below.
-For additional instructions regarding DPDK cross compilation please refer to :doc:`Cross compile DPDK for ARM64 <../linux_gsg/cross_build_dpdk_for_arm64>`.
+Building DPDK:
+
+Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable.
.. code-block:: console
- meson -Dlib_musdk_dir=/path/to/musdk build ninja -C build
+ export PKG_CONFIG_PATH=$<musdk_install_dir>/lib/pkgconfig/:$PKG_CONFIG_PATH
+
+ meson build --cross-file config/arm/arm64_armada_linux_gcc
+ ninja -C build
Usage Example
diff --git a/drivers/common/mvep/meson.build b/drivers/common/mvep/meson.build
index 8df4bc6e0..863a20ab9 100644
--- a/drivers/common/mvep/meson.build
+++ b/drivers/common/mvep/meson.build
@@ -3,18 +3,14 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
#
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-lib = cc.find_library('libmusdk', dirs: [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += ['-DMVCONF_TYPES_PUBLIC', '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC']
+ subdir_done()
endif
+ext_deps += dep
+
sources = files('mvep_common.c')
diff --git a/drivers/crypto/mvsam/meson.build b/drivers/crypto/mvsam/meson.build
index 6d97dc8a2..384eacff0 100644
--- a/drivers/crypto/mvsam/meson.build
+++ b/drivers/crypto/mvsam/meson.build
@@ -3,20 +3,15 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-
-lib = cc.find_library('libmusdk', dirs: [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += ['-DMVCONF_TYPES_PUBLIC', '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC']
+ subdir_done()
endif
+ext_deps += dep
+
sources = files('rte_mrvl_pmd.c', 'rte_mrvl_pmd_ops.c')
deps += ['bus_vdev', 'common_mvep']
diff --git a/drivers/net/mvneta/meson.build b/drivers/net/mvneta/meson.build
index 8d7202788..c887ddc10 100644
--- a/drivers/net/mvneta/meson.build
+++ b/drivers/net/mvneta/meson.build
@@ -3,24 +3,15 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-
-lib = cc.find_library('libmusdk', dirs : [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += [
- '-DMVCONF_TYPES_PUBLIC',
- '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC',
- '-DMVCONF_DMA_PHYS_ADDR_T_SIZE=64'
- ]
+ subdir_done()
endif
+ext_deps += dep
+
sources = files(
'mvneta_ethdev.c',
'mvneta_rxtx.c'
diff --git a/drivers/net/mvneta/mvneta_ethdev.h b/drivers/net/mvneta/mvneta_ethdev.h
index ef8067790..e090abc25 100644
--- a/drivers/net/mvneta/mvneta_ethdev.h
+++ b/drivers/net/mvneta/mvneta_ethdev.h
@@ -21,6 +21,7 @@
#undef container_of
#endif
+#include <env/mv_autogen_comp_flags.h>
#include <drivers/mv_neta.h>
#include <drivers/mv_neta_ppio.h>
diff --git a/drivers/net/mvpp2/meson.build b/drivers/net/mvpp2/meson.build
index e06eddaac..3015a5559 100644
--- a/drivers/net/mvpp2/meson.build
+++ b/drivers/net/mvpp2/meson.build
@@ -3,20 +3,15 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-
-lib = cc.find_library('libmusdk', dirs : [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += ['-DMVCONF_TYPES_PUBLIC', '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC']
+ subdir_done()
endif
+ext_deps += dep
+
sources = files(
'mrvl_ethdev.c',
'mrvl_flow.c',
diff --git a/meson_options.txt b/meson_options.txt
index 9bf18ab6b..63245b95d 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -20,8 +20,6 @@ option('include_subdir_arch', type: 'string', value: '',
description: 'subdirectory where to install arch-dependent headers')
option('kernel_dir', type: 'string', value: '',
description: 'Path to the kernel for building kernel modules. Headers must be in $kernel_dir/build. Modules will be installed in $DEST_DIR/$kernel_dir/extra/dpdk.')
-option('lib_musdk_dir', type: 'string', value: '',
- description: 'path to the MUSDK library installation directory')
option('machine', type: 'string', value: 'native',
description: 'set the target machine type')
option('max_ethports', type: 'integer', value: 32,
--
2.28.0
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [PATCH v2] meson: update meson build for armada drivers
2020-12-15 22:23 ` lironh
@ 2020-12-16 13:37 ` Ferruh Yigit
2020-12-16 13:41 ` [dpdk-dev] [EXT] " Liron Himi
2020-12-16 21:36 ` [dpdk-dev] [PATCH v3] " lironh
1 sibling, 1 reply; 30+ messages in thread
From: Ferruh Yigit @ 2020-12-16 13:37 UTC (permalink / raw)
To: lironh; +Cc: dev, Luca Boccassi, Kevin Traynor, Akhil Goyal
On 12/15/2020 10:23 PM, lironh@marvell.com wrote:
> From: Liron Himi <lironh@marvell.com>
>
> With pkg-config support available within musdk library
> (from musdk-release-SDK-10.3.5.0-PR2 version),
> meson option 'lib_musdk_dir' can be removed.
> PKG_CONFIG_PATH environment variable should be set appropriately
> to use the musdk library.
Hi Liron,
It is good change to get rid of an custom meson option, can we or should we
backport this to the v20.11?
>
> docs are updated with new musdk version and meson instructions.
>
> Signed-off-by: Liron Himi <lironh@marvell.com>
> Reviewed-by: Liron Himi <lironh@marvell.com>
> ---
> v2:
> * include updated docs in this patch
> * add musdk version in commit message
> ---
> doc/guides/nics/mvneta.rst | 13 ++++++++-----
> doc/guides/nics/mvpp2.rst | 15 +++++++++------
> drivers/common/mvep/meson.build | 14 +++++---------
> drivers/crypto/mvsam/meson.build | 15 +++++----------
@Ahil, is it OK if I get this to the next-net, since logically related?
> drivers/net/mvneta/meson.build | 19 +++++--------------
> drivers/net/mvneta/mvneta_ethdev.h | 1 +
> drivers/net/mvpp2/meson.build | 15 +++++----------
> meson_options.txt | 2 --
> 8 files changed, 38 insertions(+), 56 deletions(-)
>
<...>
> @@ -94,7 +94,7 @@ be passed as part of EAL arguments.
> -c 3 -- -i --p 3 -a
>
>
> -Building DPDK
> +Building MUSDK
> -------------
>
This is giving doc warning because of "Title underline too short".
<...>
> @@ -108,7 +108,7 @@ Prerequisites
> DPDK environment.
>
>
> -Building DPDK
> +Building MUSDK
> -------------
>
Ditto.
<...>
> diff --git a/drivers/net/mvneta/mvneta_ethdev.h b/drivers/net/mvneta/mvneta_ethdev.h
> index ef8067790..e090abc25 100644
> --- a/drivers/net/mvneta/mvneta_ethdev.h
> +++ b/drivers/net/mvneta/mvneta_ethdev.h
> @@ -21,6 +21,7 @@
> #undef container_of
> #endif
>
> +#include <env/mv_autogen_comp_flags.h>
Is this include related with this patch?
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
2020-12-16 13:37 ` Ferruh Yigit
@ 2020-12-16 13:41 ` Liron Himi
2020-12-16 13:48 ` Ferruh Yigit
2020-12-16 13:52 ` Ferruh Yigit
0 siblings, 2 replies; 30+ messages in thread
From: Liron Himi @ 2020-12-16 13:41 UTC (permalink / raw)
To: Ferruh Yigit; +Cc: dev, Luca Boccassi, Kevin Traynor, Akhil Goyal, Liron Himi
-----Original Message-----
From: Ferruh Yigit <ferruh.yigit@intel.com>
Sent: Wednesday, 16 December 2020 15:37
To: Liron Himi <lironh@marvell.com>
Cc: dev@dpdk.org; Luca Boccassi <bluca@debian.org>; Kevin Traynor <ktraynor@redhat.com>; Akhil Goyal <akhil.goyal@nxp.com>
Subject: [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
External Email
----------------------------------------------------------------------
On 12/15/2020 10:23 PM, lironh@marvell.com wrote:
> From: Liron Himi <lironh@marvell.com>
>
> With pkg-config support available within musdk library (from
> musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
> can be removed.
> PKG_CONFIG_PATH environment variable should be set appropriately to
> use the musdk library.
Hi Liron,
It is good change to get rid of an custom meson option, can we or should we backport this to the v20.11?
[L.H.] yes, it can be backported.
>
> docs are updated with new musdk version and meson instructions.
>
> Signed-off-by: Liron Himi <lironh@marvell.com>
> Reviewed-by: Liron Himi <lironh@marvell.com>
> ---
> v2:
> * include updated docs in this patch
> * add musdk version in commit message
> ---
> doc/guides/nics/mvneta.rst | 13 ++++++++-----
> doc/guides/nics/mvpp2.rst | 15 +++++++++------
> drivers/common/mvep/meson.build | 14 +++++---------
> drivers/crypto/mvsam/meson.build | 15 +++++----------
@Ahil, is it OK if I get this to the next-net, since logically related?
> drivers/net/mvneta/meson.build | 19 +++++--------------
> drivers/net/mvneta/mvneta_ethdev.h | 1 +
> drivers/net/mvpp2/meson.build | 15 +++++----------
> meson_options.txt | 2 --
> 8 files changed, 38 insertions(+), 56 deletions(-)
>
<...>
> @@ -94,7 +94,7 @@ be passed as part of EAL arguments.
> -c 3 -- -i --p 3 -a
>
>
> -Building DPDK
> +Building MUSDK
> -------------
>
This is giving doc warning because of "Title underline too short".
[L.H.] okay, will fix in v3
<...>
> @@ -108,7 +108,7 @@ Prerequisites
> DPDK environment.
>
>
> -Building DPDK
> +Building MUSDK
> -------------
>
Ditto.
[L.H.] same
<...>
> diff --git a/drivers/net/mvneta/mvneta_ethdev.h
> b/drivers/net/mvneta/mvneta_ethdev.h
> index ef8067790..e090abc25 100644
> --- a/drivers/net/mvneta/mvneta_ethdev.h
> +++ b/drivers/net/mvneta/mvneta_ethdev.h
> @@ -21,6 +21,7 @@
> #undef container_of
> #endif
>
> +#include <env/mv_autogen_comp_flags.h>
Is this include related with this patch?
[L.H.] yes, without it meson build will fail
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
2020-12-16 13:41 ` [dpdk-dev] [EXT] " Liron Himi
@ 2020-12-16 13:48 ` Ferruh Yigit
2020-12-16 21:15 ` Liron Himi
2020-12-16 13:52 ` Ferruh Yigit
1 sibling, 1 reply; 30+ messages in thread
From: Ferruh Yigit @ 2020-12-16 13:48 UTC (permalink / raw)
To: Liron Himi; +Cc: dev, Luca Boccassi, Kevin Traynor, Akhil Goyal
On 12/16/2020 1:41 PM, Liron Himi wrote:
>
> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Wednesday, 16 December 2020 15:37
> To: Liron Himi <lironh@marvell.com>
> Cc: dev@dpdk.org; Luca Boccassi <bluca@debian.org>; Kevin Traynor <ktraynor@redhat.com>; Akhil Goyal <akhil.goyal@nxp.com>
> Subject: [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
>
> External Email
>
> ----------------------------------------------------------------------
> On 12/15/2020 10:23 PM, lironh@marvell.com wrote:
>> From: Liron Himi <lironh@marvell.com>
>>
>> With pkg-config support available within musdk library (from
>> musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
>> can be removed.
>> PKG_CONFIG_PATH environment variable should be set appropriately to
>> use the musdk library.
>
> Hi Liron,
>
> It is good change to get rid of an custom meson option, can we or should we backport this to the v20.11?
> [L.H.] yes, it can be backported.
>
>>
>> docs are updated with new musdk version and meson instructions.
>>
>> Signed-off-by: Liron Himi <lironh@marvell.com>
>> Reviewed-by: Liron Himi <lironh@marvell.com>
>> ---
>> v2:
>> * include updated docs in this patch
>> * add musdk version in commit message
>> ---
>> doc/guides/nics/mvneta.rst | 13 ++++++++-----
>> doc/guides/nics/mvpp2.rst | 15 +++++++++------
>> drivers/common/mvep/meson.build | 14 +++++---------
>> drivers/crypto/mvsam/meson.build | 15 +++++----------
>
> @Ahil, is it OK if I get this to the next-net, since logically related?
>
>> drivers/net/mvneta/meson.build | 19 +++++--------------
>> drivers/net/mvneta/mvneta_ethdev.h | 1 +
>> drivers/net/mvpp2/meson.build | 15 +++++----------
>> meson_options.txt | 2 --
>> 8 files changed, 38 insertions(+), 56 deletions(-)
>>
>
> <...>
>
>> @@ -94,7 +94,7 @@ be passed as part of EAL arguments.
>> -c 3 -- -i --p 3 -a
>>
>>
>> -Building DPDK
>> +Building MUSDK
>> -------------
>>
>
> This is giving doc warning because of "Title underline too short".
> [L.H.] okay, will fix in v3
>
> <...>
>
>> @@ -108,7 +108,7 @@ Prerequisites
>> DPDK environment.
>>
>>
>> -Building DPDK
>> +Building MUSDK
>> -------------
>>
>
> Ditto.
> [L.H.] same
>
> <...>
>
>> diff --git a/drivers/net/mvneta/mvneta_ethdev.h
>> b/drivers/net/mvneta/mvneta_ethdev.h
>> index ef8067790..e090abc25 100644
>> --- a/drivers/net/mvneta/mvneta_ethdev.h
>> +++ b/drivers/net/mvneta/mvneta_ethdev.h
>> @@ -21,6 +21,7 @@
>> #undef container_of
>> #endif
>>
>> +#include <env/mv_autogen_comp_flags.h>
>
> Is this include related with this patch?
> [L.H.] yes, without it meson build will fail
>
There is no change in the code, how it was working before but failing now? Can
you please give more details why it is needed?
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
2020-12-16 13:48 ` Ferruh Yigit
@ 2020-12-16 21:15 ` Liron Himi
0 siblings, 0 replies; 30+ messages in thread
From: Liron Himi @ 2020-12-16 21:15 UTC (permalink / raw)
To: Ferruh Yigit; +Cc: dev, Luca Boccassi, Kevin Traynor, Akhil Goyal, Liron Himi
-----Original Message-----
From: Ferruh Yigit <ferruh.yigit@intel.com>
Sent: Wednesday, 16 December 2020 15:49
To: Liron Himi <lironh@marvell.com>
Cc: dev@dpdk.org; Luca Boccassi <bluca@debian.org>; Kevin Traynor <ktraynor@redhat.com>; Akhil Goyal <akhil.goyal@nxp.com>
Subject: Re: [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
On 12/16/2020 1:41 PM, Liron Himi wrote:
>
> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Wednesday, 16 December 2020 15:37
> To: Liron Himi <lironh@marvell.com>
> Cc: dev@dpdk.org; Luca Boccassi <bluca@debian.org>; Kevin Traynor
> <ktraynor@redhat.com>; Akhil Goyal <akhil.goyal@nxp.com>
> Subject: [EXT] Re: [PATCH v2] meson: update meson build for armada
> drivers
>
> External Email
>
> ----------------------------------------------------------------------
> On 12/15/2020 10:23 PM, lironh@marvell.com wrote:
>> From: Liron Himi <lironh@marvell.com>
>>
>> With pkg-config support available within musdk library (from
>> musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
>> can be removed.
>> PKG_CONFIG_PATH environment variable should be set appropriately to
>> use the musdk library.
>
> Hi Liron,
>
> It is good change to get rid of an custom meson option, can we or should we backport this to the v20.11?
> [L.H.] yes, it can be backported.
>
>>
>> docs are updated with new musdk version and meson instructions.
>>
>> Signed-off-by: Liron Himi <lironh@marvell.com>
>> Reviewed-by: Liron Himi <lironh@marvell.com>
>> ---
>> v2:
>> * include updated docs in this patch
>> * add musdk version in commit message
>> ---
>> doc/guides/nics/mvneta.rst | 13 ++++++++-----
>> doc/guides/nics/mvpp2.rst | 15 +++++++++------
>> drivers/common/mvep/meson.build | 14 +++++---------
>> drivers/crypto/mvsam/meson.build | 15 +++++----------
>
> @Ahil, is it OK if I get this to the next-net, since logically related?
>
>> drivers/net/mvneta/meson.build | 19 +++++--------------
>> drivers/net/mvneta/mvneta_ethdev.h | 1 +
>> drivers/net/mvpp2/meson.build | 15 +++++----------
>> meson_options.txt | 2 --
>> 8 files changed, 38 insertions(+), 56 deletions(-)
>>
>
> <...>
>
>> @@ -94,7 +94,7 @@ be passed as part of EAL arguments.
>> -c 3 -- -i --p 3 -a
>>
>>
>> -Building DPDK
>> +Building MUSDK
>> -------------
>>
>
> This is giving doc warning because of "Title underline too short".
> [L.H.] okay, will fix in v3
>
> <...>
>
>> @@ -108,7 +108,7 @@ Prerequisites
>> DPDK environment.
>>
>>
>> -Building DPDK
>> +Building MUSDK
>> -------------
>>
>
> Ditto.
> [L.H.] same
>
> <...>
>
>> diff --git a/drivers/net/mvneta/mvneta_ethdev.h
>> b/drivers/net/mvneta/mvneta_ethdev.h
>> index ef8067790..e090abc25 100644
>> --- a/drivers/net/mvneta/mvneta_ethdev.h
>> +++ b/drivers/net/mvneta/mvneta_ethdev.h
>> @@ -21,6 +21,7 @@
>> #undef container_of
>> #endif
>>
>> +#include <env/mv_autogen_comp_flags.h>
>
> Is this include related with this patch?
> [L.H.] yes, without it meson build will fail
>
There is no change in the code, how it was working before but failing now? Can you please give more details why it is needed?
[L.H.] I have updated the musdk pkg-config, so this change is not needed. Will be removed in v3
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
2020-12-16 13:41 ` [dpdk-dev] [EXT] " Liron Himi
2020-12-16 13:48 ` Ferruh Yigit
@ 2020-12-16 13:52 ` Ferruh Yigit
2020-12-17 10:06 ` Luca Boccassi
1 sibling, 1 reply; 30+ messages in thread
From: Ferruh Yigit @ 2020-12-16 13:52 UTC (permalink / raw)
To: Liron Himi; +Cc: dev, Luca Boccassi, Kevin Traynor, Akhil Goyal
On 12/16/2020 1:41 PM, Liron Himi wrote:
>
> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Wednesday, 16 December 2020 15:37
> To: Liron Himi <lironh@marvell.com>
> Cc: dev@dpdk.org; Luca Boccassi <bluca@debian.org>; Kevin Traynor <ktraynor@redhat.com>; Akhil Goyal <akhil.goyal@nxp.com>
> Subject: [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
>
> External Email
>
> ----------------------------------------------------------------------
> On 12/15/2020 10:23 PM, lironh@marvell.com wrote:
>> From: Liron Himi <lironh@marvell.com>
>>
>> With pkg-config support available within musdk library (from
>> musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
>> can be removed.
>> PKG_CONFIG_PATH environment variable should be set appropriately to
>> use the musdk library.
>
> Hi Liron,
>
> It is good change to get rid of an custom meson option, can we or should we backport this to the v20.11?
> [L.H.] yes, it can be backported.
>
Kevin, Luca,
What do you think about backporting this patch to 19.11 & 20.11, it removes
'lib_musdk_dir' custom meson config option and uses pkg-config to find the musdk
libraries.
It looks good change but not sure if it is a regression to remove a build option.
Thanks,
ferruh
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
2020-12-16 13:52 ` Ferruh Yigit
@ 2020-12-17 10:06 ` Luca Boccassi
2020-12-17 10:16 ` Ferruh Yigit
0 siblings, 1 reply; 30+ messages in thread
From: Luca Boccassi @ 2020-12-17 10:06 UTC (permalink / raw)
To: Ferruh Yigit, Liron Himi; +Cc: dev, Kevin Traynor, Akhil Goyal
On Wed, 2020-12-16 at 13:52 +0000, Ferruh Yigit wrote:
> On 12/16/2020 1:41 PM, Liron Himi wrote:
> > -----Original Message-----
> > From: Ferruh Yigit <ferruh.yigit@intel.com>
> > Sent: Wednesday, 16 December 2020 15:37
> > To: Liron Himi <lironh@marvell.com>
> > Cc: dev@dpdk.org; Luca Boccassi <bluca@debian.org>; Kevin Traynor <ktraynor@redhat.com>; Akhil Goyal <akhil.goyal@nxp.com>
> > Subject: [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
> >
> > External Email
> >
> > ----------------------------------------------------------------------
> > On 12/15/2020 10:23 PM, lironh@marvell.com wrote:
> > > From: Liron Himi <lironh@marvell.com>
> > >
> > > With pkg-config support available within musdk library (from
> > > musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
> > > can be removed.
> > > PKG_CONFIG_PATH environment variable should be set appropriately to
> > > use the musdk library.
> >
> > Hi Liron,
> >
> > It is good change to get rid of an custom meson option, can we or should we backport this to the v20.11?
> > [L.H.] yes, it can be backported.
> >
>
> Kevin, Luca,
>
> What do you think about backporting this patch to 19.11 & 20.11, it removes
> 'lib_musdk_dir' custom meson config option and uses pkg-config to find the musdk
> libraries.
>
> It looks good change but not sure if it is a regression to remove a build option.
>
> Thanks,
> ferruh
I don't know how used it is, but removing a meson_option is no good for
LTS. If there is no functionality/build breakage and it's 100%
compatible, it could be made a no-op - that would be acceptable for me.
--
Kind regards,
Luca Boccassi
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
2020-12-17 10:06 ` Luca Boccassi
@ 2020-12-17 10:16 ` Ferruh Yigit
0 siblings, 0 replies; 30+ messages in thread
From: Ferruh Yigit @ 2020-12-17 10:16 UTC (permalink / raw)
To: Luca Boccassi, Liron Himi; +Cc: dev, Kevin Traynor, Akhil Goyal
On 12/17/2020 10:06 AM, Luca Boccassi wrote:
> On Wed, 2020-12-16 at 13:52 +0000, Ferruh Yigit wrote:
>> On 12/16/2020 1:41 PM, Liron Himi wrote:
>>> -----Original Message-----
>>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>>> Sent: Wednesday, 16 December 2020 15:37
>>> To: Liron Himi <lironh@marvell.com>
>>> Cc: dev@dpdk.org; Luca Boccassi <bluca@debian.org>; Kevin Traynor <ktraynor@redhat.com>; Akhil Goyal <akhil.goyal@nxp.com>
>>> Subject: [EXT] Re: [PATCH v2] meson: update meson build for armada drivers
>>>
>>> External Email
>>>
>>> ----------------------------------------------------------------------
>>> On 12/15/2020 10:23 PM, lironh@marvell.com wrote:
>>>> From: Liron Himi <lironh@marvell.com>
>>>>
>>>> With pkg-config support available within musdk library (from
>>>> musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
>>>> can be removed.
>>>> PKG_CONFIG_PATH environment variable should be set appropriately to
>>>> use the musdk library.
>>>
>>> Hi Liron,
>>>
>>> It is good change to get rid of an custom meson option, can we or should we backport this to the v20.11?
>>> [L.H.] yes, it can be backported.
>>>
>>
>> Kevin, Luca,
>>
>> What do you think about backporting this patch to 19.11 & 20.11, it removes
>> 'lib_musdk_dir' custom meson config option and uses pkg-config to find the musdk
>> libraries.
>>
>> It looks good change but not sure if it is a regression to remove a build option.
>>
>> Thanks,
>> ferruh
>
> I don't know how used it is, but removing a meson_option is no good for
> LTS. If there is no functionality/build breakage and it's 100%
> compatible, it could be made a no-op - that would be acceptable for me.
>
It may affect the ones using 'lib_musdk_dir' meson config, if the removing a
meson_option is not wanted, perhaps better to not backport this. Thanks.
^ permalink raw reply [flat|nested] 30+ messages in thread
* [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
2020-12-15 22:23 ` lironh
2020-12-16 13:37 ` Ferruh Yigit
@ 2020-12-16 21:36 ` lironh
2020-12-17 12:15 ` Ferruh Yigit
2021-01-11 11:28 ` Thomas Monjalon
1 sibling, 2 replies; 30+ messages in thread
From: lironh @ 2020-12-16 21:36 UTC (permalink / raw)
To: ferruh.yigit; +Cc: dev, Liron Himi
From: Liron Himi <lironh@marvell.com>
With pkg-config support available within musdk library
(from musdk-release-SDK-10.3.5.0-PR2 version),
meson option 'lib_musdk_dir' can be removed.
PKG_CONFIG_PATH environment variable should be set appropriately
to use the musdk library.
docs are updated with new musdk version and meson instructions.
Signed-off-by: Liron Himi <lironh@marvell.com>
Reviewed-by: Liron Himi <lironh@marvell.com>
---
v3:
* fix sphinx warnings
* remove mvneta_ethdev.h
v2:
* include updated docs in this patch
* add musdk version in commit message
---
doc/guides/nics/mvneta.rst | 16 ++++++++++------
doc/guides/nics/mvpp2.rst | 18 +++++++++++-------
drivers/common/mvep/meson.build | 14 +++++---------
drivers/crypto/mvsam/meson.build | 15 +++++----------
drivers/net/mvneta/meson.build | 19 +++++--------------
drivers/net/mvpp2/meson.build | 15 +++++----------
meson_options.txt | 2 --
7 files changed, 41 insertions(+), 58 deletions(-)
diff --git a/doc/guides/nics/mvneta.rst b/doc/guides/nics/mvneta.rst
index e8abde42d..3124cc944 100644
--- a/doc/guides/nics/mvneta.rst
+++ b/doc/guides/nics/mvneta.rst
@@ -56,7 +56,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
NETA. Alternatively prebuilt MUSDK library can be
@@ -94,8 +94,8 @@ be passed as part of EAL arguments.
-c 3 -- -i --p 3 -a
-Building DPDK
--------------
+Building MUSDK
+--------------
Driver needs precompiled MUSDK library during compilation.
@@ -109,12 +109,16 @@ 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``.
-The path to the MUSDK installation directory needs to set in meson, shown in the
-following command:
+Building DPDK
+-------------
+
+Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable.
.. code-block:: console
- meson -Dlib_musdk_dir=/path/to/musdk build ninja -C build
+ export PKG_CONFIG_PATH=$<musdk_install_dir>/lib/pkgconfig/:$PKG_CONFIG_PATH
+ meson build --cross-file config/arm/arm64_armada_linux_gcc
+ ninja -C build
Usage Example
diff --git a/doc/guides/nics/mvpp2.rst b/doc/guides/nics/mvpp2.rst
index 6fbce8358..f290d36a0 100644
--- a/doc/guides/nics/mvpp2.rst
+++ b/doc/guides/nics/mvpp2.rst
@@ -91,7 +91,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
@@ -108,8 +108,8 @@ Prerequisites
DPDK environment.
-Building DPDK
--------------
+Building MUSDK
+--------------
Driver needs precompiled MUSDK library during compilation.
@@ -123,14 +123,18 @@ 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``.
-The path to the MUSDK installation directory needs to set in meson, shown in the
-command below.
-For additional instructions regarding DPDK cross compilation please refer to :doc:`Cross compile DPDK for ARM64 <../linux_gsg/cross_build_dpdk_for_arm64>`.
+Building DPDK
+-------------
+
+Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable.
.. code-block:: console
- meson -Dlib_musdk_dir=/path/to/musdk build ninja -C build
+ export PKG_CONFIG_PATH=$<musdk_install_dir>/lib/pkgconfig/:$PKG_CONFIG_PATH
+
+ meson build --cross-file config/arm/arm64_armada_linux_gcc
+ ninja -C build
Usage Example
diff --git a/drivers/common/mvep/meson.build b/drivers/common/mvep/meson.build
index 8df4bc6e0..863a20ab9 100644
--- a/drivers/common/mvep/meson.build
+++ b/drivers/common/mvep/meson.build
@@ -3,18 +3,14 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
#
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-lib = cc.find_library('libmusdk', dirs: [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += ['-DMVCONF_TYPES_PUBLIC', '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC']
+ subdir_done()
endif
+ext_deps += dep
+
sources = files('mvep_common.c')
diff --git a/drivers/crypto/mvsam/meson.build b/drivers/crypto/mvsam/meson.build
index 6d97dc8a2..384eacff0 100644
--- a/drivers/crypto/mvsam/meson.build
+++ b/drivers/crypto/mvsam/meson.build
@@ -3,20 +3,15 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-
-lib = cc.find_library('libmusdk', dirs: [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += ['-DMVCONF_TYPES_PUBLIC', '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC']
+ subdir_done()
endif
+ext_deps += dep
+
sources = files('rte_mrvl_pmd.c', 'rte_mrvl_pmd_ops.c')
deps += ['bus_vdev', 'common_mvep']
diff --git a/drivers/net/mvneta/meson.build b/drivers/net/mvneta/meson.build
index 8d7202788..c887ddc10 100644
--- a/drivers/net/mvneta/meson.build
+++ b/drivers/net/mvneta/meson.build
@@ -3,24 +3,15 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-
-lib = cc.find_library('libmusdk', dirs : [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += [
- '-DMVCONF_TYPES_PUBLIC',
- '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC',
- '-DMVCONF_DMA_PHYS_ADDR_T_SIZE=64'
- ]
+ subdir_done()
endif
+ext_deps += dep
+
sources = files(
'mvneta_ethdev.c',
'mvneta_rxtx.c'
diff --git a/drivers/net/mvpp2/meson.build b/drivers/net/mvpp2/meson.build
index e06eddaac..3015a5559 100644
--- a/drivers/net/mvpp2/meson.build
+++ b/drivers/net/mvpp2/meson.build
@@ -3,20 +3,15 @@
# Copyright(c) 2018 Semihalf.
# All rights reserved.
-path = get_option('lib_musdk_dir')
-lib_dir = path + '/lib'
-inc_dir = path + '/include'
-
-lib = cc.find_library('libmusdk', dirs : [lib_dir], required: false)
-if not lib.found()
+dep = dependency('libmusdk', required: false)
+if not dep.found()
build = false
reason = 'missing dependency, "libmusdk"'
-else
- ext_deps += lib
- includes += include_directories(inc_dir)
- cflags += ['-DMVCONF_TYPES_PUBLIC', '-DMVCONF_DMA_PHYS_ADDR_T_PUBLIC']
+ subdir_done()
endif
+ext_deps += dep
+
sources = files(
'mrvl_ethdev.c',
'mrvl_flow.c',
diff --git a/meson_options.txt b/meson_options.txt
index 9bf18ab6b..63245b95d 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -20,8 +20,6 @@ option('include_subdir_arch', type: 'string', value: '',
description: 'subdirectory where to install arch-dependent headers')
option('kernel_dir', type: 'string', value: '',
description: 'Path to the kernel for building kernel modules. Headers must be in $kernel_dir/build. Modules will be installed in $DEST_DIR/$kernel_dir/extra/dpdk.')
-option('lib_musdk_dir', type: 'string', value: '',
- description: 'path to the MUSDK library installation directory')
option('machine', type: 'string', value: 'native',
description: 'set the target machine type')
option('max_ethports', type: 'integer', value: 32,
--
2.28.0
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
2020-12-16 21:36 ` [dpdk-dev] [PATCH v3] " lironh
@ 2020-12-17 12:15 ` Ferruh Yigit
2021-01-11 11:28 ` Thomas Monjalon
1 sibling, 0 replies; 30+ messages in thread
From: Ferruh Yigit @ 2020-12-17 12:15 UTC (permalink / raw)
To: lironh; +Cc: dev, Akhil Goyal, jerinj
On 12/16/2020 9:36 PM, lironh@marvell.com wrote:
> From: Liron Himi <lironh@marvell.com>
>
> With pkg-config support available within musdk library
> (from musdk-release-SDK-10.3.5.0-PR2 version),
> meson option 'lib_musdk_dir' can be removed.
> PKG_CONFIG_PATH environment variable should be set appropriately
> to use the musdk library.
>
> docs are updated with new musdk version and meson instructions.
>
> Signed-off-by: Liron Himi <lironh@marvell.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Applied to dpdk-next-net/main, thanks.
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
2020-12-16 21:36 ` [dpdk-dev] [PATCH v3] " lironh
2020-12-17 12:15 ` Ferruh Yigit
@ 2021-01-11 11:28 ` Thomas Monjalon
2021-01-11 15:29 ` [dpdk-dev] [EXT] " Liron Himi
1 sibling, 1 reply; 30+ messages in thread
From: Thomas Monjalon @ 2021-01-11 11:28 UTC (permalink / raw)
To: Liron Himi; +Cc: ferruh.yigit, dev, jerinj
16/12/2020 22:36, lironh@marvell.com:
> From: Liron Himi <lironh@marvell.com>
>
> With pkg-config support available within musdk library
> (from musdk-release-SDK-10.3.5.0-PR2 version),
> meson option 'lib_musdk_dir' can be removed.
> PKG_CONFIG_PATH environment variable should be set appropriately
> to use the musdk library.
Sorry, it does not work.
First, when installing MUSDK, the .pc file is not updated
with the correct prefix path:
make install DESTDIR=$(readlink -f install)
In install/mv/lib/pkgconfig/libmusdk.pc:
prefix=/mv
instead of:
prefix=/musdk_path/install/mv
Second, after manually fixing the prefix path and compiling DPDK:
In file included from musdk/install/mv/include/mv_std.h:101,
from musdk/install/mv/include/drivers/mv_neta.h:100,
from dpdk/drivers/net/mvneta/mvneta_ethdev.h:24,
from dpdk/drivers/net/mvneta/mvneta_rxtx.h:10,
from dpdk/drivers/net/mvneta/mvneta_rxtx.c:7:
musdk/install/mv/include/env/mv_autogen_build_assert.h:43:5: error:
"MVCONF_DMA_PHYS_ADDR_T_SIZE" is not defined, evaluates to 0 [-Werror=undef]
musdk/install/mv/include/env/mv_autogen_build_assert.h:44:2: error:
#error "MVCONF_DMA_PHYS_ADDR_T_SIZE must match size used during musdk_lib compilation."
The CFLAGS may be incomplete:
Cflags: -I${includedir} -DMVCONF_TYPES_PUBLIC -DMVCONF_DMA_PHYS_ADDR_T_PUBLIC
I fixed it by adding:
-DMVCONF_DMA_PHYS_ADDR_T_SIZE=64
Please could you fix MUSDK quickly?
I think I will pull next-net as is, but I consider it is broken.
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v3] meson: update meson build for armada drivers
2021-01-11 11:28 ` Thomas Monjalon
@ 2021-01-11 15:29 ` Liron Himi
2021-01-11 16:05 ` Thomas Monjalon
0 siblings, 1 reply; 30+ messages in thread
From: Liron Himi @ 2021-01-11 15:29 UTC (permalink / raw)
To: Thomas Monjalon; +Cc: ferruh.yigit, dev, Jerin Jacob Kollanukkaran, Liron Himi
Hi Thomas,
When did you take this MUSDK version?
Is this your head "pkg-config: expose dma-add-size"?
If not, this explain the mvneta issue. I already noticed that and pushed a fixed to the github.
As for the prefix issue,
The prefix is being set in the 'configure' phase by using the '--prefix' variable. Have you tried that?
Liron Himi
-----Original Message-----
From: Thomas Monjalon <thomas@monjalon.net>
Sent: Monday, 11 January 2021 13:28
To: Liron Himi <lironh@marvell.com>
Cc: ferruh.yigit@intel.com; dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>
Subject: [EXT] Re: [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
External Email
----------------------------------------------------------------------
16/12/2020 22:36, lironh@marvell.com:
> From: Liron Himi <lironh@marvell.com>
>
> With pkg-config support available within musdk library (from
> musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
> can be removed.
> PKG_CONFIG_PATH environment variable should be set appropriately to
> use the musdk library.
Sorry, it does not work.
First, when installing MUSDK, the .pc file is not updated with the correct prefix path:
make install DESTDIR=$(readlink -f install) In install/mv/lib/pkgconfig/libmusdk.pc:
prefix=/mv
instead of:
prefix=/musdk_path/install/mv
Second, after manually fixing the prefix path and compiling DPDK:
In file included from musdk/install/mv/include/mv_std.h:101,
from musdk/install/mv/include/drivers/mv_neta.h:100,
from dpdk/drivers/net/mvneta/mvneta_ethdev.h:24,
from dpdk/drivers/net/mvneta/mvneta_rxtx.h:10,
from dpdk/drivers/net/mvneta/mvneta_rxtx.c:7:
musdk/install/mv/include/env/mv_autogen_build_assert.h:43:5: error:
"MVCONF_DMA_PHYS_ADDR_T_SIZE" is not defined, evaluates to 0 [-Werror=undef]
musdk/install/mv/include/env/mv_autogen_build_assert.h:44:2: error:
#error "MVCONF_DMA_PHYS_ADDR_T_SIZE must match size used during musdk_lib compilation."
The CFLAGS may be incomplete:
Cflags: -I${includedir} -DMVCONF_TYPES_PUBLIC -DMVCONF_DMA_PHYS_ADDR_T_PUBLIC I fixed it by adding:
-DMVCONF_DMA_PHYS_ADDR_T_SIZE=64
Please could you fix MUSDK quickly?
I think I will pull next-net as is, but I consider it is broken.
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v3] meson: update meson build for armada drivers
2021-01-11 15:29 ` [dpdk-dev] [EXT] " Liron Himi
@ 2021-01-11 16:05 ` Thomas Monjalon
2021-01-11 16:08 ` Liron Himi
2021-01-11 17:04 ` Bruce Richardson
0 siblings, 2 replies; 30+ messages in thread
From: Thomas Monjalon @ 2021-01-11 16:05 UTC (permalink / raw)
To: Liron Himi; +Cc: ferruh.yigit, dev, Jerin Jacob Kollanukkaran, Liron Himi
11/01/2021 16:29, Liron Himi:
> Hi Thomas,
>
> When did you take this MUSDK version?
> Is this your head "pkg-config: expose dma-add-size"?
I'm using musdk-SDK-10.3.5.0-PR2 as recommended in the doc.
> If not, this explain the mvneta issue.
> I already noticed that and pushed a fixed to the github.
I see. So it may need a doc update.
> As for the prefix issue,
> The prefix is being set in the 'configure' phase by using the '--prefix' variable. Have you tried that?
No I didn't try that, and I'm using DESTDIR variable when installing.
Whould it be possible to update the prefix with DESTDIR when installing?
> -----Original Message-----
> From: Thomas Monjalon <thomas@monjalon.net>
> Sent: Monday, 11 January 2021 13:28
> To: Liron Himi <lironh@marvell.com>
> Cc: ferruh.yigit@intel.com; dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>
> Subject: [EXT] Re: [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
>
> External Email
>
> ----------------------------------------------------------------------
> 16/12/2020 22:36, lironh@marvell.com:
> > From: Liron Himi <lironh@marvell.com>
> >
> > With pkg-config support available within musdk library (from
> > musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
> > can be removed.
> > PKG_CONFIG_PATH environment variable should be set appropriately to
> > use the musdk library.
>
> Sorry, it does not work.
>
> First, when installing MUSDK, the .pc file is not updated with the correct prefix path:
> make install DESTDIR=$(readlink -f install) In install/mv/lib/pkgconfig/libmusdk.pc:
> prefix=/mv
> instead of:
> prefix=/musdk_path/install/mv
>
> Second, after manually fixing the prefix path and compiling DPDK:
>
> In file included from musdk/install/mv/include/mv_std.h:101,
> from musdk/install/mv/include/drivers/mv_neta.h:100,
> from dpdk/drivers/net/mvneta/mvneta_ethdev.h:24,
> from dpdk/drivers/net/mvneta/mvneta_rxtx.h:10,
> from dpdk/drivers/net/mvneta/mvneta_rxtx.c:7:
> musdk/install/mv/include/env/mv_autogen_build_assert.h:43:5: error:
> "MVCONF_DMA_PHYS_ADDR_T_SIZE" is not defined, evaluates to 0 [-Werror=undef]
> musdk/install/mv/include/env/mv_autogen_build_assert.h:44:2: error:
> #error "MVCONF_DMA_PHYS_ADDR_T_SIZE must match size used during musdk_lib compilation."
>
> The CFLAGS may be incomplete:
> Cflags: -I${includedir} -DMVCONF_TYPES_PUBLIC -DMVCONF_DMA_PHYS_ADDR_T_PUBLIC I fixed it by adding:
> -DMVCONF_DMA_PHYS_ADDR_T_SIZE=64
>
> Please could you fix MUSDK quickly?
>
> I think I will pull next-net as is, but I consider it is broken.
>
>
>
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v3] meson: update meson build for armada drivers
2021-01-11 16:05 ` Thomas Monjalon
@ 2021-01-11 16:08 ` Liron Himi
2021-01-11 16:17 ` Thomas Monjalon
2021-01-11 17:04 ` Bruce Richardson
1 sibling, 1 reply; 30+ messages in thread
From: Liron Himi @ 2021-01-11 16:08 UTC (permalink / raw)
To: Thomas Monjalon; +Cc: ferruh.yigit, dev, Jerin Jacob Kollanukkaran, Liron Himi
-----Original Message-----
From: Thomas Monjalon <thomas@monjalon.net>
Sent: Monday, 11 January 2021 18:05
To: Liron Himi <lironh@marvell.com>
Cc: ferruh.yigit@intel.com; dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Liron Himi <lironh@marvell.com>
Subject: Re: [EXT] Re: [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
11/01/2021 16:29, Liron Himi:
> Hi Thomas,
>
> When did you take this MUSDK version?
> Is this your head "pkg-config: expose dma-add-size"?
I'm using musdk-SDK-10.3.5.0-PR2 as recommended in the doc.
> If not, this explain the mvneta issue.
> I already noticed that and pushed a fixed to the github.
I see. So it may need a doc update.
[L.H.] why need to update the doc? It is still the same release branch, I just added a fix patch to it.
> As for the prefix issue,
> The prefix is being set in the 'configure' phase by using the '--prefix' variable. Have you tried that?
No I didn't try that, and I'm using DESTDIR variable when installing.
Whould it be possible to update the prefix with DESTDIR when installing?
[L.H.] need to explore this option. But for now use 'prefix', as this is what supported by MUSDK
> -----Original Message-----
> From: Thomas Monjalon <thomas@monjalon.net>
> Sent: Monday, 11 January 2021 13:28
> To: Liron Himi <lironh@marvell.com>
> Cc: ferruh.yigit@intel.com; dev@dpdk.org; Jerin Jacob Kollanukkaran
> <jerinj@marvell.com>
> Subject: [EXT] Re: [dpdk-dev] [PATCH v3] meson: update meson build for
> armada drivers
>
> External Email
>
> ----------------------------------------------------------------------
> 16/12/2020 22:36, lironh@marvell.com:
> > From: Liron Himi <lironh@marvell.com>
> >
> > With pkg-config support available within musdk library (from
> > musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
> > can be removed.
> > PKG_CONFIG_PATH environment variable should be set appropriately to
> > use the musdk library.
>
> Sorry, it does not work.
>
> First, when installing MUSDK, the .pc file is not updated with the correct prefix path:
> make install DESTDIR=$(readlink -f install) In install/mv/lib/pkgconfig/libmusdk.pc:
> prefix=/mv
> instead of:
> prefix=/musdk_path/install/mv
>
> Second, after manually fixing the prefix path and compiling DPDK:
>
> In file included from musdk/install/mv/include/mv_std.h:101,
> from musdk/install/mv/include/drivers/mv_neta.h:100,
> from dpdk/drivers/net/mvneta/mvneta_ethdev.h:24,
> from dpdk/drivers/net/mvneta/mvneta_rxtx.h:10,
> from dpdk/drivers/net/mvneta/mvneta_rxtx.c:7:
> musdk/install/mv/include/env/mv_autogen_build_assert.h:43:5: error:
> "MVCONF_DMA_PHYS_ADDR_T_SIZE" is not defined, evaluates to 0
> [-Werror=undef]
> musdk/install/mv/include/env/mv_autogen_build_assert.h:44:2: error:
> #error "MVCONF_DMA_PHYS_ADDR_T_SIZE must match size used during musdk_lib compilation."
>
> The CFLAGS may be incomplete:
> Cflags: -I${includedir} -DMVCONF_TYPES_PUBLIC -DMVCONF_DMA_PHYS_ADDR_T_PUBLIC I fixed it by adding:
> -DMVCONF_DMA_PHYS_ADDR_T_SIZE=64
>
> Please could you fix MUSDK quickly?
>
> I think I will pull next-net as is, but I consider it is broken.
>
>
>
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v3] meson: update meson build for armada drivers
2021-01-11 16:08 ` Liron Himi
@ 2021-01-11 16:17 ` Thomas Monjalon
2021-01-11 17:07 ` Bruce Richardson
0 siblings, 1 reply; 30+ messages in thread
From: Thomas Monjalon @ 2021-01-11 16:17 UTC (permalink / raw)
To: Liron Himi; +Cc: ferruh.yigit, dev, Jerin Jacob Kollanukkaran, Liron Himi
11/01/2021 17:08, Liron Himi:
> From: Thomas Monjalon <thomas@monjalon.net>
> Sent: Monday, 11 January 2021 18:05
> To: Liron Himi <lironh@marvell.com>
> Cc: ferruh.yigit@intel.com; dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Liron Himi <lironh@marvell.com>
> Subject: Re: [EXT] Re: [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
>
> 11/01/2021 16:29, Liron Himi:
> > Hi Thomas,
> >
> > When did you take this MUSDK version?
> > Is this your head "pkg-config: expose dma-add-size"?
>
> I'm using musdk-SDK-10.3.5.0-PR2 as recommended in the doc.
>
> > If not, this explain the mvneta issue.
> > I already noticed that and pushed a fixed to the github.
>
> I see. So it may need a doc update.
> [L.H.] why need to update the doc? It is still the same release branch, I just added a fix patch to it.
Yes, my bad: I used the tag musdk-SDK-10.3.5.0-PR2
instead of the branch musdk-release-SDK-10.3.5.0-PR2.
> > As for the prefix issue,
> > The prefix is being set in the 'configure' phase by using the '--prefix' variable. Have you tried that?
>
> No I didn't try that, and I'm using DESTDIR variable when installing.
> Whould it be possible to update the prefix with DESTDIR when installing?
> [L.H.] need to explore this option. But for now use 'prefix', as this is what supported by MUSDK
OK
> > -----Original Message-----
> > From: Thomas Monjalon <thomas@monjalon.net>
> > Sent: Monday, 11 January 2021 13:28
> > To: Liron Himi <lironh@marvell.com>
> > Cc: ferruh.yigit@intel.com; dev@dpdk.org; Jerin Jacob Kollanukkaran
> > <jerinj@marvell.com>
> > Subject: [EXT] Re: [dpdk-dev] [PATCH v3] meson: update meson build for
> > armada drivers
> >
> > External Email
> >
> > ----------------------------------------------------------------------
> > 16/12/2020 22:36, lironh@marvell.com:
> > > From: Liron Himi <lironh@marvell.com>
> > >
> > > With pkg-config support available within musdk library (from
> > > musdk-release-SDK-10.3.5.0-PR2 version), meson option 'lib_musdk_dir'
> > > can be removed.
> > > PKG_CONFIG_PATH environment variable should be set appropriately to
> > > use the musdk library.
> >
> > Sorry, it does not work.
> >
> > First, when installing MUSDK, the .pc file is not updated with the correct prefix path:
> > make install DESTDIR=$(readlink -f install) In install/mv/lib/pkgconfig/libmusdk.pc:
> > prefix=/mv
> > instead of:
> > prefix=/musdk_path/install/mv
> >
> > Second, after manually fixing the prefix path and compiling DPDK:
> >
> > In file included from musdk/install/mv/include/mv_std.h:101,
> > from musdk/install/mv/include/drivers/mv_neta.h:100,
> > from dpdk/drivers/net/mvneta/mvneta_ethdev.h:24,
> > from dpdk/drivers/net/mvneta/mvneta_rxtx.h:10,
> > from dpdk/drivers/net/mvneta/mvneta_rxtx.c:7:
> > musdk/install/mv/include/env/mv_autogen_build_assert.h:43:5: error:
> > "MVCONF_DMA_PHYS_ADDR_T_SIZE" is not defined, evaluates to 0
> > [-Werror=undef]
> > musdk/install/mv/include/env/mv_autogen_build_assert.h:44:2: error:
> > #error "MVCONF_DMA_PHYS_ADDR_T_SIZE must match size used during musdk_lib compilation."
> >
> > The CFLAGS may be incomplete:
> > Cflags: -I${includedir} -DMVCONF_TYPES_PUBLIC -DMVCONF_DMA_PHYS_ADDR_T_PUBLIC I fixed it by adding:
> > -DMVCONF_DMA_PHYS_ADDR_T_SIZE=64
> >
> > Please could you fix MUSDK quickly?
> >
> > I think I will pull next-net as is, but I consider it is broken.
> >
> >
> >
>
>
>
>
>
>
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v3] meson: update meson build for armada drivers
2021-01-11 16:17 ` Thomas Monjalon
@ 2021-01-11 17:07 ` Bruce Richardson
2021-01-11 17:30 ` Thomas Monjalon
2021-01-11 18:01 ` Luca Boccassi
0 siblings, 2 replies; 30+ messages in thread
From: Bruce Richardson @ 2021-01-11 17:07 UTC (permalink / raw)
To: Thomas Monjalon
Cc: Liron Himi, ferruh.yigit, dev, Jerin Jacob Kollanukkaran, bluca
On Mon, Jan 11, 2021 at 05:17:01PM +0100, Thomas Monjalon wrote:
> 11/01/2021 17:08, Liron Himi:
> > From: Thomas Monjalon <thomas@monjalon.net>
> > Sent: Monday, 11 January 2021 18:05
> > To: Liron Himi <lironh@marvell.com>
> > Cc: ferruh.yigit@intel.com; dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Liron Himi <lironh@marvell.com>
> > Subject: Re: [EXT] Re: [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
> >
> > 11/01/2021 16:29, Liron Himi:
> > > Hi Thomas,
> > >
> > > When did you take this MUSDK version?
> > > Is this your head "pkg-config: expose dma-add-size"?
> >
> > I'm using musdk-SDK-10.3.5.0-PR2 as recommended in the doc.
> >
> > > If not, this explain the mvneta issue.
> > > I already noticed that and pushed a fixed to the github.
> >
> > I see. So it may need a doc update.
> > [L.H.] why need to update the doc? It is still the same release branch, I just added a fix patch to it.
>
> Yes, my bad: I used the tag musdk-SDK-10.3.5.0-PR2
> instead of the branch musdk-release-SDK-10.3.5.0-PR2.
>
> > > As for the prefix issue,
> > > The prefix is being set in the 'configure' phase by using the '--prefix' variable. Have you tried that?
> >
> > No I didn't try that, and I'm using DESTDIR variable when installing.
> > Whould it be possible to update the prefix with DESTDIR when installing?
> > [L.H.] need to explore this option. But for now use 'prefix', as this is what supported by MUSDK
>
> OK
>
[+Luca]
I think it would be wrong to update the .pc file based on DESTDIR, as I
believe DESTDIR is used by packaging to produce the actual package layout
in a non-root path. To change the default installation path for a package
on the current system, "--prefix" is the correct parameter to use.
/Bruce
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v3] meson: update meson build for armada drivers
2021-01-11 17:07 ` Bruce Richardson
@ 2021-01-11 17:30 ` Thomas Monjalon
2021-01-11 18:01 ` Luca Boccassi
1 sibling, 0 replies; 30+ messages in thread
From: Thomas Monjalon @ 2021-01-11 17:30 UTC (permalink / raw)
To: Bruce Richardson
Cc: Liron Himi, ferruh.yigit, dev, Jerin Jacob Kollanukkaran, bluca
11/01/2021 18:07, Bruce Richardson:
> On Mon, Jan 11, 2021 at 05:17:01PM +0100, Thomas Monjalon wrote:
> > 11/01/2021 17:08, Liron Himi:
> > > From: Thomas Monjalon <thomas@monjalon.net>
> > > Sent: Monday, 11 January 2021 18:05
> > > To: Liron Himi <lironh@marvell.com>
> > > Cc: ferruh.yigit@intel.com; dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Liron Himi <lironh@marvell.com>
> > > Subject: Re: [EXT] Re: [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
> > >
> > > 11/01/2021 16:29, Liron Himi:
> > > > Hi Thomas,
> > > >
> > > > When did you take this MUSDK version?
> > > > Is this your head "pkg-config: expose dma-add-size"?
> > >
> > > I'm using musdk-SDK-10.3.5.0-PR2 as recommended in the doc.
> > >
> > > > If not, this explain the mvneta issue.
> > > > I already noticed that and pushed a fixed to the github.
> > >
> > > I see. So it may need a doc update.
> > > [L.H.] why need to update the doc? It is still the same release branch, I just added a fix patch to it.
> >
> > Yes, my bad: I used the tag musdk-SDK-10.3.5.0-PR2
> > instead of the branch musdk-release-SDK-10.3.5.0-PR2.
> >
> > > > As for the prefix issue,
> > > > The prefix is being set in the 'configure' phase by using the '--prefix' variable. Have you tried that?
> > >
> > > No I didn't try that, and I'm using DESTDIR variable when installing.
> > > Whould it be possible to update the prefix with DESTDIR when installing?
> > > [L.H.] need to explore this option. But for now use 'prefix', as this is what supported by MUSDK
> >
> > OK
> >
> [+Luca]
>
> I think it would be wrong to update the .pc file based on DESTDIR, as I
> believe DESTDIR is used by packaging to produce the actual package layout
> in a non-root path. To change the default installation path for a package
> on the current system, "--prefix" is the correct parameter to use.
Yes you're right, it makes sense.
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v3] meson: update meson build for armada drivers
2021-01-11 17:07 ` Bruce Richardson
2021-01-11 17:30 ` Thomas Monjalon
@ 2021-01-11 18:01 ` Luca Boccassi
1 sibling, 0 replies; 30+ messages in thread
From: Luca Boccassi @ 2021-01-11 18:01 UTC (permalink / raw)
To: Bruce Richardson, Thomas Monjalon
Cc: Liron Himi, ferruh.yigit, dev, Jerin Jacob Kollanukkaran
On Mon, 2021-01-11 at 17:07 +0000, Bruce Richardson wrote:
> On Mon, Jan 11, 2021 at 05:17:01PM +0100, Thomas Monjalon wrote:
> > 11/01/2021 17:08, Liron Himi:
> > > From: Thomas Monjalon <thomas@monjalon.net>
> > > Sent: Monday, 11 January 2021 18:05
> > > To: Liron Himi <lironh@marvell.com>
> > > Cc: ferruh.yigit@intel.com; dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Liron Himi <lironh@marvell.com>
> > > Subject: Re: [EXT] Re: [dpdk-dev] [PATCH v3] meson: update meson build for armada drivers
> > >
> > > 11/01/2021 16:29, Liron Himi:
> > > > Hi Thomas,
> > > >
> > > > When did you take this MUSDK version?
> > > > Is this your head "pkg-config: expose dma-add-size"?
> > >
> > > I'm using musdk-SDK-10.3.5.0-PR2 as recommended in the doc.
> > >
> > > > If not, this explain the mvneta issue.
> > > > I already noticed that and pushed a fixed to the github.
> > >
> > > I see. So it may need a doc update.
> > > [L.H.] why need to update the doc? It is still the same release branch, I just added a fix patch to it.
> >
> > Yes, my bad: I used the tag musdk-SDK-10.3.5.0-PR2
> > instead of the branch musdk-release-SDK-10.3.5.0-PR2.
> >
> > > > As for the prefix issue,
> > > > The prefix is being set in the 'configure' phase by using the '--prefix' variable. Have you tried that?
> > >
> > > No I didn't try that, and I'm using DESTDIR variable when installing.
> > > Whould it be possible to update the prefix with DESTDIR when installing?
> > > [L.H.] need to explore this option. But for now use 'prefix', as this is what supported by MUSDK
> >
> > OK
> >
> [+Luca]
>
> I think it would be wrong to update the .pc file based on DESTDIR, as I
> believe DESTDIR is used by packaging to produce the actual package layout
> in a non-root path. To change the default installation path for a package
> on the current system, "--prefix" is the correct parameter to use.
>
> /Bruce
+1
--
Kind regards,
Luca Boccassi
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v3] meson: update meson build for armada drivers
2021-01-11 16:05 ` Thomas Monjalon
2021-01-11 16:08 ` Liron Himi
@ 2021-01-11 17:04 ` Bruce Richardson
2021-01-11 17:06 ` Thomas Monjalon
1 sibling, 1 reply; 30+ messages in thread
From: Bruce Richardson @ 2021-01-11 17:04 UTC (permalink / raw)
To: Thomas Monjalon; +Cc: Liron Himi, ferruh.yigit, dev, Jerin Jacob Kollanukkaran
On Mon, Jan 11, 2021 at 05:05:27PM +0100, Thomas Monjalon wrote:
> 11/01/2021 16:29, Liron Himi:
> > Hi Thomas,
> >
> > When did you take this MUSDK version?
> > Is this your head "pkg-config: expose dma-add-size"?
>
> I'm using musdk-SDK-10.3.5.0-PR2 as recommended in the doc.
>
> > If not, this explain the mvneta issue.
> > I already noticed that and pushed a fixed to the github.
>
> I see. So it may need a doc update.
>
> > As for the prefix issue,
> > The prefix is being set in the 'configure' phase by using the '--prefix' variable. Have you tried that?
>
> No I didn't try that, and I'm using DESTDIR variable when installing.
> Whould it be possible to update the prefix with DESTDIR when installing?
>
DESTDIR won't affect the .pc for any package installation AFAIK, prefix is
the method to use. If you use DESTDIR you need to call pkg-config with
"--define-prefix" argument to get the relocation.
/Bruce
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v3] meson: update meson build for armada drivers
2021-01-11 17:04 ` Bruce Richardson
@ 2021-01-11 17:06 ` Thomas Monjalon
0 siblings, 0 replies; 30+ messages in thread
From: Thomas Monjalon @ 2021-01-11 17:06 UTC (permalink / raw)
To: Bruce Richardson; +Cc: Liron Himi, ferruh.yigit, dev, Jerin Jacob Kollanukkaran
11/01/2021 18:04, Bruce Richardson:
> On Mon, Jan 11, 2021 at 05:05:27PM +0100, Thomas Monjalon wrote:
> > 11/01/2021 16:29, Liron Himi:
> > > Hi Thomas,
> > >
> > > When did you take this MUSDK version?
> > > Is this your head "pkg-config: expose dma-add-size"?
> >
> > I'm using musdk-SDK-10.3.5.0-PR2 as recommended in the doc.
> >
> > > If not, this explain the mvneta issue.
> > > I already noticed that and pushed a fixed to the github.
> >
> > I see. So it may need a doc update.
> >
> > > As for the prefix issue,
> > > The prefix is being set in the 'configure' phase by using the '--prefix' variable. Have you tried that?
> >
> > No I didn't try that, and I'm using DESTDIR variable when installing.
> > Whould it be possible to update the prefix with DESTDIR when installing?
> >
> DESTDIR won't affect the .pc for any package installation AFAIK, prefix is
> the method to use. If you use DESTDIR you need to call pkg-config with
> "--define-prefix" argument to get the relocation.
OK thanks for the info.
^ permalink raw reply [flat|nested] 30+ messages in thread