[dpdk-dev] [PATCH 1/6] mempool/cnxk: add build infra and device probe

Jerin Jacob jerinjacobk at gmail.com
Sun Mar 28 11:11:31 CEST 2021


On Fri, Mar 5, 2021 at 11:43 PM Ashwin Sekhar T K <asekhar at marvell.com> wrote:
>
> Add the meson based build infrastructure along
> with mempool device probe.
>
> Signed-off-by: Ashwin Sekhar T K <asekhar at marvell.com>
> ---
>  drivers/mempool/cnxk/cnxk_mempool.c | 212 ++++++++++++++++++++++++++++
>  drivers/mempool/cnxk/cnxk_mempool.h |  12 ++
>  drivers/mempool/cnxk/meson.build    |  29 ++++
>  drivers/mempool/cnxk/version.map    |   3 +
>  drivers/mempool/meson.build         |   3 +-
>  5 files changed, 258 insertions(+), 1 deletion(-)
>  create mode 100644 drivers/mempool/cnxk/cnxk_mempool.c
>  create mode 100644 drivers/mempool/cnxk/cnxk_mempool.h
>  create mode 100644 drivers/mempool/cnxk/meson.build
>  create mode 100644 drivers/mempool/cnxk/version.map
>
> diff --git a/drivers/mempool/cnxk/cnxk_mempool.c b/drivers/mempool/cnxk/cnxk_mempool.c
> new file mode 100644
> index 0000000000..c24497a6e5
> --- /dev/null
> +++ b/drivers/mempool/cnxk/cnxk_mempool.c
> @@ -0,0 +1,212 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright(C) 2021 Marvell.
> + */
> +
> +#include <rte_atomic.h>
> +#include <rte_bus_pci.h>
> +#include <rte_common.h>
> +#include <rte_devargs.h>
> +#include <rte_eal.h>
> +#include <rte_io.h>
> +#include <rte_kvargs.h>
> +#include <rte_malloc.h>
> +#include <rte_mbuf_pool_ops.h>
> +#include <rte_pci.h>
> +
> +#include "roc_api.h"
> +#include "cnxk_mempool.h"
> +
> +#define CNXK_NPA_DEV_NAME       RTE_STR(cnxk_npa_dev_)
> +#define CNXK_NPA_DEV_NAME_LEN   (sizeof(CNXK_NPA_DEV_NAME) + PCI_PRI_STR_SIZE)
> +#define CNXK_NPA_MAX_POOLS_PARAM "max_pools"
> +
> +uintptr_t *cnxk_mempool_internal_data;

Could you remove this global variable, either move to dev structure or
use memzone lookup.


> +
> +#endif
> diff --git a/drivers/mempool/cnxk/meson.build b/drivers/mempool/cnxk/meson.build
> new file mode 100644
> index 0000000000..23a171c143
> --- /dev/null
> +++ b/drivers/mempool/cnxk/meson.build
> @@ -0,0 +1,29 @@
> +# SPDX-License-Identifier: BSD-3-Clause
> +# Copyright(C) 2021 Marvell.
> +#
> +
> +if is_windows
> +       build = false
> +       reason = 'not supported on Windows'
> +       subdir_done()
> +endif
> +if not dpdk_conf.get('RTE_ARCH_64')
> +       build = false
> +       reason = 'only supported on 64-bit'
> +       subdir_done()
> +endif

Please make it as  positive logic and limit driver only for "64bit Linux"

> +
> +sources = files('cnxk_mempool.c')
> +
> +deps += ['eal', 'mbuf', 'kvargs', 'bus_pci', 'common_cnxk', 'mempool']
> +
> +cflags_options = [
> +       '-Wno-strict-prototypes',
> +        '-Werror'

Please limit the driver to "64bit Linux" and please remove this fixup.


More information about the dev mailing list