[dpdk-dev] [PATCH 1/7] net/mrvl: sync compilation with musdk-17.10

Tomasz Duszynski tdu at semihalf.com
Fri Dec 1 10:03:06 CET 2017


On Fri, Dec 01, 2017 at 11:29:07AM +0800, Jianbo Liu wrote:
> The 11/30/2017 14:32, Tomasz Duszynski wrote:
> > Followig changes are needed to switch to musdk-17.10:
> >
> > - With a new version of the musdk library it's no longer necessary to
> >   explicitly define MVCONF_ARCH_DMA_ADDR_T_64BIT and
> >   CONF_PP2_BPOOL_COOKIE_SIZE.
> >
> >   Proper defines are autogenerated by ./configure script based on
> >   passed options and available after mv_autogen_comp_flags.h inclusion.
> >
> > - API used to set promiscuous mode was renamed. Thus in order to
> >   compile against the latest library new API must be used.
> >
> > Signed-off-by: Tomasz Duszynski <tdu at semihalf.com>
> > ---
> >  drivers/net/mrvl/Makefile      | 4 ++--
> >  drivers/net/mrvl/mrvl_ethdev.c | 5 +++--
> >  drivers/net/mrvl/mrvl_ethdev.h | 1 +
> >  3 files changed, 6 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/net/mrvl/Makefile b/drivers/net/mrvl/Makefile
> > index 815c3ba..f75e53c 100644
> > --- a/drivers/net/mrvl/Makefile
> > +++ b/drivers/net/mrvl/Makefile
> > @@ -51,8 +51,8 @@ EXPORT_MAP := rte_pmd_mrvl_version.map
> >
> >  # external library dependencies
> >  CFLAGS += -I$(LIBMUSDK_PATH)/include
> > -CFLAGS += -DMVCONF_ARCH_DMA_ADDR_T_64BIT
> > -CFLAGS += -DCONF_PP2_BPOOL_COOKIE_SIZE=32
> > +CFLAGS += -DMVCONF_TYPES_PUBLIC
> > +CFLAGS += -DMVCONF_DMA_PHYS_ADDR_T_PUBLIC
> >  CFLAGS += $(WERROR_FLAGS)
> >  CFLAGS += -O3
> >  LDLIBS += -L$(LIBMUSDK_PATH)/lib
> > diff --git a/drivers/net/mrvl/mrvl_ethdev.c b/drivers/net/mrvl/mrvl_ethdev.c
> > index 2936165..4fac797 100644
> > --- a/drivers/net/mrvl/mrvl_ethdev.c
> > +++ b/drivers/net/mrvl/mrvl_ethdev.c
> > @@ -47,6 +47,7 @@
> >  #undef container_of
> >  #endif
> >
> > +#include <env/mv_autogen_comp_flags.h>
>
> Is it needed as you also included this file in mrvl_ethdev.h?
> I think you can move all the MUSDK headers to mrvl_ethdev.h to avoid the
> duplication.

It's needed here as well because it needs to be included before other MUSDK
includes. So either mrvl_ethdev.h can be moved a little bit
or all MUSDK related headers can go to mrvl_ethdev.h as you suggest.

The latter option seems to be better choice though.

>
> >  #include <drivers/mv_pp2.h>
> >  #include <drivers/mv_pp2_bpool.h>
> >  #include <drivers/mv_pp2_hif.h>
> > @@ -690,7 +691,7 @@ mrvl_promiscuous_enable(struct rte_eth_dev *dev)
> >       struct mrvl_priv *priv = dev->data->dev_private;
> >       int ret;
> >
> > -     ret = pp2_ppio_set_uc_promisc(priv->ppio, 1);
> > +     ret = pp2_ppio_set_promisc(priv->ppio, 1);
> >       if (ret)
> >               RTE_LOG(ERR, PMD, "Failed to enable promiscuous mode\n");
> >  }
> > @@ -724,7 +725,7 @@ mrvl_promiscuous_disable(struct rte_eth_dev *dev)
> >       struct mrvl_priv *priv = dev->data->dev_private;
> >       int ret;
> >
> > -     ret = pp2_ppio_set_uc_promisc(priv->ppio, 0);
> > +     ret = pp2_ppio_set_promisc(priv->ppio, 0);
> >       if (ret)
> >               RTE_LOG(ERR, PMD, "Failed to disable promiscuous mode\n");
> >  }
> > diff --git a/drivers/net/mrvl/mrvl_ethdev.h b/drivers/net/mrvl/mrvl_ethdev.h
> > index 2a4ab5a..252e7a3 100644
> > --- a/drivers/net/mrvl/mrvl_ethdev.h
> > +++ b/drivers/net/mrvl/mrvl_ethdev.h
> > @@ -36,6 +36,7 @@
> >  #define _MRVL_ETHDEV_H_
> >
> >  #include <rte_spinlock.h>
> > +#include <env/mv_autogen_comp_flags.h>
> >  #include <drivers/mv_pp2_cls.h>
> >  #include <drivers/mv_pp2_ppio.h>
> >
> > --
> > 2.7.4
> >
>
> --
> IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

--
- Tomasz Duszyński


More information about the dev mailing list