DPDK-dev Archive on lore.kernel.org
 help / color / Atom feed
* Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and mempool driver
@ 2019-06-27  8:15 Jerin Jacob Kollanukkaran
  2019-06-28  6:14 ` Jerin Jacob Kollanukkaran
  0 siblings, 1 reply; 7+ messages in thread
From: Jerin Jacob Kollanukkaran @ 2019-06-27  8:15 UTC (permalink / raw)
  To: Ferruh Yigit; +Cc: dev, Thomas Monjalon, Amit Gupta



> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Wednesday, June 26, 2019 6:44 PM
> To: Jerin Jacob Kollanukkaran <jerinj@marvell.com>
> Cc: dev@dpdk.org; Thomas Monjalon <thomas@monjalon.net>
> Subject: [EXT] Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and
> mempool driver
> On 6/22/2019 2:23 PM, jerinj@marvell.com wrote:
> > From: Jerin Jacob <jerinj@marvell.com>
> >
> > This patch set adds initial driver support for OCTEON TX2 SoC.
> >
> > OCTEON TX2 is an armv8.2 SoC with integrated HW based mempool, ethdev,
> > cryptodev, compressdev, and eventdev devices.
> >
> > This patch set adds common driver and mempool device driver for OCTEON
> TX2 SoC.
> > There will be three more patch series in this release to support
> > ethdev, eventdev and cryptodev devices
> >
> > More details about the OCTEON TX2 platform may found in [PATCH 15/27]
> > doc: add Marvell OCTEON TX2 platform guide under
> > doc/guides/platform/octeontx2.rst file.
> >
> > This patches series also available at
> > https://github.com/jerinjacobk/dpdk.git
> > for quick download and review.
> >
> > # Note on check patch issues
> > 1) The mailbox prototype is the same as Linux kernel.
> > https://elixir.bootlin.com/linux/latest/source/drivers/net/ethernet/ma
> > rvell/octeontx2/af/mbox.h#L123 In order to keep the base code intact,
> > mailbox prototype expressed as macros with warnings
> > 2) There are a few warnings from tooling about expected to add new
> > symbols in the EXPERIMENTAL section. Since these API will be called
> > only by octeontx2 client drivers and prototype are not exported to the
> > application, those warnings are not relevant, Discussion at
> > http://patches.dpdk.org/patch/53590/
> >
> > v4:
> > 1) Add comments for O3 attribue flag (Aaron Conole) in "mempool/octeontx2:
> add optimized dequeue operation for arm64"
> > patch
> > 2) Update "common/octeontx2: add mbox request and response definition"
> > to reflect latest mbox defintions
> > 3) rebase to dpdk.org master(as of 22-June)
> > v3:
> >
> > 1) Replace the reference to v19.08 from v19.05
> > 2) remove rte_panic from driver code
> > 3) rebase to dpdk.org master(as of 17-June)
> >
> > v2:
> >
> > 1) Added CONFIG_RTE_MAX_VFIO_GROUPS for octeontx2 config in patch 1
> > 2) Rebased to master to accommodate latest rename like ETHER_ADDR_LEN
> > to RTE_ETHER_ADDR_LEN
> > 3) Added pmd.raw.octeontx2.dpi log message in patch 5
> > 4) Update platform guide with debugfs documentation in patch 15
> > 5) Fix arm64 build issue with patch 25(Aaron Conole)
> > "mempool/octeontx2: add optimized dequeue operation for arm64"
> >
> > Cc: Thomas Monjalon <thomas@monjalon.net>
> >
> > Jerin Jacob (22):
> >   common/octeontx2: add build infrastructure and HW definition
> >   common/octeontx2: add IO handling APIs
> >   common/octeontx2: add mbox request and response definition
> >   common/octeontx2: add mailbox base support infra
> >   common/octeontx2: add runtime log infra
> >   common/octeontx2: add mailbox send and receive support
> >   common/octeontx2: introduce common device class
> >   common/octeontx2: introduce irq handling functions
> >   common/octeontx2: handle intra device operations
> >   common/octeontx2: add VF mailbox IRQ and msg handler
> >   doc: add Marvell OCTEON TX2 platform guide
> >   mempool/octeontx2: add build infra and device probe
> >   drivers: add init and fini on octeontx2 NPA object
> >   mempool/octeontx2: add NPA HW operations
> >   mempool/octeontx2: add NPA IRQ handler
> >   mempool/octeontx2: add context dump support
> >   mempool/octeontx2: add mempool alloc op
> >   mempool/octeontx2: add mempool free op
> >   mempool/octeontx2: add remaining slow path ops
> >   mempool/octeontx2: add fast path mempool ops
> >   mempool/octeontx2: add devargs for max pool selection
> >   doc: add Marvell OCTEON TX2 mempool documentation
> >
> > Nithin Dabilpuram (4):
> >   common/octeontx2: add AF to PF mailbox IRQ and msg handlers
> >   common/octeontx2: add PF to VF mailbox IRQ and msg handlers
> >   common/octeontx2: add uplink message support
> >   common/octeontx2: add FLR IRQ handler
> >
> > Pavan Nikhilesh (1):
> >   mempool/octeontx2: add optimized dequeue operation for arm64
> 
> Hi Jerin,
> 
> There are some build errors with ICC, there are multiple but mainly two type of
> them [1a] & [1b].
> 
> I think [1b] can be fixed quickly [2b] and what do you think about ignoring the
> warning for [1a] as done in [2a]?
> 
> If fix makes sense, can you please send a patch for it?

Will install ICC and send the patches(excluding http://mails.dpdk.org/archives/dev/2019-June/135950.html)


> 
> Thanks,
> ferruh
> 
> 
> 
> [1a] error #2259
> .../dpdk/drivers/common/octeontx2/otx2_mbox.c(47): error #2259: non-
> pointer conversion from "unsigned long long" to "struct mbox_hdr *" may lose
> significant bits
>                 (struct mbox_hdr *)((uintptr_t)mdev->mbase + mbox->tx_start);
>                 ^
> 
> /tmp/dpdk_maintain/self/dpdk/drivers/mempool/octeontx2/otx2_mempool.h(9
> 4): error
> #2259: non-pointer conversion from "unsigned long long" to
> "int64_t={__int64_t={signed long long}} *" may lose significant bits
> 
> 
>                 (int64_t *)(npa_lf_aura_handle_to_base(aura_handle) +
> 
> 
> 
>                 ^
> 
> [1b] error #191
> .../dpdk/drivers/mempool/octeontx2/otx2_mempool_ops.c(344): error #191:
> type qualifier is meaningless on cast type
>         int64_t * const addr = (int64_t * const)
>                                 ^
> 
> 
> [2a]
>  diff --git a/drivers/common/octeontx2/Makefile
> b/drivers/common/octeontx2/Makefile
>  index fabc32537..b78995e12 100644
>  --- a/drivers/common/octeontx2/Makefile
>  +++ b/drivers/common/octeontx2/Makefile
>  @@ -19,6 +19,10 @@ CFLAGS += -Wno-int-to-pointer-cast
>   CFLAGS += -Wno-pointer-to-int-cast
>   endif
> 
>  +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
>  +CFLAGS += -diag-disable 2259 # non-pointer conversion may lose significant
> bits  +endif  +
>   EXPORT_MAP := rte_common_octeontx2_version.map
> 
>   LIBABIVER := 1
>  diff --git a/drivers/mempool/octeontx2/Makefile
> b/drivers/mempool/octeontx2 /Makefile  index b3568443e..37bcebdf3 100644
>  --- a/drivers/mempool/octeontx2/Makefile
>  +++ b/drivers/mempool/octeontx2/Makefile
>  @@ -20,6 +20,10 @@ CFLAGS += -Wno-int-to-pointer-cast
>   CFLAGS += -Wno-pointer-to-int-cast
>   endif
> 
>  +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
>  +CFLAGS += -diag-disable 2259 # non-pointer conversion may lose significant
> bits  +endif  +
>   EXPORT_MAP := rte_mempool_octeontx2_version.map
> 
>   LIBABIVER := 1
> 
> 
> [2b]
>  -       int64_t * const addr = (int64_t * const)
>  +       int64_t * const addr = (int64_t *)

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and mempool driver
  2019-06-27  8:15 [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and mempool driver Jerin Jacob Kollanukkaran
@ 2019-06-28  6:14 ` Jerin Jacob Kollanukkaran
  2019-06-28  8:08   ` Ferruh Yigit
  0 siblings, 1 reply; 7+ messages in thread
From: Jerin Jacob Kollanukkaran @ 2019-06-28  6:14 UTC (permalink / raw)
  To: Jerin Jacob Kollanukkaran, Ferruh Yigit; +Cc: dev, Thomas Monjalon, Amit Gupta



> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Jerin Jacob Kollanukkaran
> Sent: Thursday, June 27, 2019 1:45 PM
> To: Ferruh Yigit <ferruh.yigit@intel.com>
> Cc: dev@dpdk.org; Thomas Monjalon <thomas@monjalon.net>; Amit Gupta
> <agupta3@marvell.com>
> Subject: Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and
> mempool driver
> >
> > Hi Jerin,
> >
> > There are some build errors with ICC, there are multiple but mainly
> > two type of them [1a] & [1b].
> >
> > I think [1b] can be fixed quickly [2b] and what do you think about
> > ignoring the warning for [1a] as done in [2a]?
> >
> > If fix makes sense, can you please send a patch for it?
> 
> Will install ICC and send the patches(excluding
> http://mails.dpdk.org/archives/dev/2019-June/135950.html)

Not able to reproduce the issue with latest ICC compiler.
$ icc -v

icc version 19.0.4.235 (gcc version 8.3.1 compatibility)

If you think, it can happen with old ICC compiler. Then we will send a patch with
CFLAGS += -diag-disable 2259 for ICC.

Let us know

> 
> 
> >
> > Thanks,
> > ferruh
> >
> >
> >
> > [1a] error #2259
> > .../dpdk/drivers/common/octeontx2/otx2_mbox.c(47): error #2259: non-
> > pointer conversion from "unsigned long long" to "struct mbox_hdr *"
> > may lose significant bits
> >                 (struct mbox_hdr *)((uintptr_t)mdev->mbase + mbox->tx_start);
> >                 ^
> >
> >
> /tmp/dpdk_maintain/self/dpdk/drivers/mempool/octeontx2/otx2_mempo
> ol.h(
> > 9
> > 4): error
> > #2259: non-pointer conversion from "unsigned long long" to
> > "int64_t={__int64_t={signed long long}} *" may lose significant bits
> >
> >
> >                 (int64_t *)(npa_lf_aura_handle_to_base(aura_handle) +
> >
> >
> >
> >                 ^
> >
> > [1b] error #191
> > .../dpdk/drivers/mempool/octeontx2/otx2_mempool_ops.c(344): error
> #191:
> > type qualifier is meaningless on cast type
> >         int64_t * const addr = (int64_t * const)
> >                                 ^
> >
> >
> > [2a]
> >  diff --git a/drivers/common/octeontx2/Makefile
> > b/drivers/common/octeontx2/Makefile
> >  index fabc32537..b78995e12 100644
> >  --- a/drivers/common/octeontx2/Makefile
> >  +++ b/drivers/common/octeontx2/Makefile
> >  @@ -19,6 +19,10 @@ CFLAGS += -Wno-int-to-pointer-cast
> >   CFLAGS += -Wno-pointer-to-int-cast
> >   endif
> >
> >  +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)  +CFLAGS += -diag-disable 2259
> > # non-pointer conversion may lose significant bits  +endif  +
> >   EXPORT_MAP := rte_common_octeontx2_version.map
> >
> >   LIBABIVER := 1
> >  diff --git a/drivers/mempool/octeontx2/Makefile
> > b/drivers/mempool/octeontx2 /Makefile  index b3568443e..37bcebdf3
> > 100644
> >  --- a/drivers/mempool/octeontx2/Makefile
> >  +++ b/drivers/mempool/octeontx2/Makefile
> >  @@ -20,6 +20,10 @@ CFLAGS += -Wno-int-to-pointer-cast
> >   CFLAGS += -Wno-pointer-to-int-cast
> >   endif
> >
> >  +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)  +CFLAGS += -diag-disable 2259
> > # non-pointer conversion may lose significant bits  +endif  +
> >   EXPORT_MAP := rte_mempool_octeontx2_version.map
> >
> >   LIBABIVER := 1
> >
> >
> > [2b]
> >  -       int64_t * const addr = (int64_t * const)
> >  +       int64_t * const addr = (int64_t *)

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and mempool driver
  2019-06-28  6:14 ` Jerin Jacob Kollanukkaran
@ 2019-06-28  8:08   ` Ferruh Yigit
  0 siblings, 0 replies; 7+ messages in thread
From: Ferruh Yigit @ 2019-06-28  8:08 UTC (permalink / raw)
  To: Jerin Jacob Kollanukkaran; +Cc: dev, Thomas Monjalon, Amit Gupta

On 6/28/2019 7:14 AM, Jerin Jacob Kollanukkaran wrote:
> 
> 
>> -----Original Message-----
>> From: dev <dev-bounces@dpdk.org> On Behalf Of Jerin Jacob Kollanukkaran
>> Sent: Thursday, June 27, 2019 1:45 PM
>> To: Ferruh Yigit <ferruh.yigit@intel.com>
>> Cc: dev@dpdk.org; Thomas Monjalon <thomas@monjalon.net>; Amit Gupta
>> <agupta3@marvell.com>
>> Subject: Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and
>> mempool driver
>>>
>>> Hi Jerin,
>>>
>>> There are some build errors with ICC, there are multiple but mainly
>>> two type of them [1a] & [1b].
>>>
>>> I think [1b] can be fixed quickly [2b] and what do you think about
>>> ignoring the warning for [1a] as done in [2a]?
>>>
>>> If fix makes sense, can you please send a patch for it?
>>
>> Will install ICC and send the patches(excluding
>> http://mails.dpdk.org/archives/dev/2019-June/135950.html)
> 
> Not able to reproduce the issue with latest ICC compiler.
> $ icc -v
> 
> icc version 19.0.4.235 (gcc version 8.3.1 compatibility)
> 
> If you think, it can happen with old ICC compiler. Then we will send a patch with
> CFLAGS += -diag-disable 2259 for ICC.

We use almost same version, icc (ICC) 19.0.4.227 20190416, build error is from
32-bits [1]



[1]
Building i686-native-linuxapp-icc ...
In file included from .../dpdk/drivers/common/octeontx2/otx2_dev.h(13),
                 from .../dpdk/drivers/common/octeontx2/otx2_common.c(10):
.../dpdk/drivers/mempool/octeontx2/otx2_mempool.h(94): error #2259: non-pointer
conversion from "unsigned long long" to "int64_t={__int64_t={signed long long}}
*" may lose significant bits
                (int64_t *)(npa_lf_aura_handle_to_base(aura_handle) +
                ^

In file included from .../dpdk/drivers/common/octeontx2/otx2_dev.h(13),
                 from .../dpdk/drivers/common/octeontx2/otx2_common.c(10):
.../dpdk/drivers/mempool/octeontx2/otx2_mempool.h(106): error #2259: non-pointer
conversion from "unsigned long long" to "void *" may lose significant bits
        otx2_store_pair(iova, reg,
        ^

In file included from .../dpdk/drivers/common/octeontx2/otx2_dev.h(13),
                 from .../dpdk/drivers/common/octeontx2/otx2_common.c(10):
.../dpdk/drivers/mempool/octeontx2/otx2_mempool.h(106): error #2259: non-pointer
conversion from "unsigned long long" to "uint8_t={__uint8_t={unsigned char}} *"
may lose significant bits
        otx2_store_pair(iova, reg,
        ^

In file included from .../dpdk/drivers/common/octeontx2/otx2_dev.h(13),
                 from .../dpdk/drivers/common/octeontx2/otx2_common.c(10):
.../dpdk/drivers/mempool/octeontx2/otx2_mempool.h(119): error #2259: non-pointer
conversion from "unsigned long long" to "int64_t={__int64_t={signed long long}}
*" may lose significant bits
                        (int64_t *)(npa_lf_aura_handle_to_base(aura_handle) +
                        ^

In file included from .../dpdk/drivers/common/octeontx2/otx2_dev.h(13),
                 from .../dpdk/drivers/common/octeontx2/otx2_common.c(10):
.../dpdk/drivers/mempool/octeontx2/otx2_mempool.h(138): error #2259: non-pointer
conversion from "unsigned long long" to "void *" may lose significant bits
        otx2_write64(reg,
        ^

In file included from .../dpdk/drivers/common/octeontx2/otx2_dev.h(13),
                 from .../dpdk/drivers/common/octeontx2/otx2_common.c(10):
.../dpdk/drivers/mempool/octeontx2/otx2_mempool.h(151): error #2259: non-pointer
conversion from "unsigned long long" to "int64_t={__int64_t={signed long long}}
*" may lose significant bits
                        (int64_t *)(npa_lf_aura_handle_to_base(aura_handle) +
                        ^

In file included from .../dpdk/drivers/common/octeontx2/otx2_dev.h(13),
                 from .../dpdk/drivers/common/octeontx2/otx2_common.c(10):
.../dpdk/drivers/mempool/octeontx2/otx2_mempool.h(167): error #2259: non-pointer
conversion from "unsigned long long" to "void *" may lose significant bits
        otx2_write64(reg,
        ^

In file included from .../dpdk/drivers/common/octeontx2/otx2_dev.h(13),
                 from .../dpdk/drivers/common/octeontx2/otx2_common.c(10):
.../dpdk/drivers/mempool/octeontx2/otx2_mempool.h(180): error #2259: non-pointer
conversion from "unsigned long long" to "int64_t={__int64_t={signed long long}}
*" may lose significant bits
                            (int64_t *)(npa_lf_aura_handle_to_base(
                            ^

It goes on with same kind of error

> 
> Let us know
> 
>>
>>
>>>
>>> Thanks,
>>> ferruh
>>>
>>>
>>>
>>> [1a] error #2259
>>> .../dpdk/drivers/common/octeontx2/otx2_mbox.c(47): error #2259: non-
>>> pointer conversion from "unsigned long long" to "struct mbox_hdr *"
>>> may lose significant bits
>>>                 (struct mbox_hdr *)((uintptr_t)mdev->mbase + mbox->tx_start);
>>>                 ^
>>>
>>>
>> /tmp/dpdk_maintain/self/dpdk/drivers/mempool/octeontx2/otx2_mempo
>> ol.h(
>>> 9
>>> 4): error
>>> #2259: non-pointer conversion from "unsigned long long" to
>>> "int64_t={__int64_t={signed long long}} *" may lose significant bits
>>>
>>>
>>>                 (int64_t *)(npa_lf_aura_handle_to_base(aura_handle) +
>>>
>>>
>>>
>>>                 ^
>>>
>>> [1b] error #191
>>> .../dpdk/drivers/mempool/octeontx2/otx2_mempool_ops.c(344): error
>> #191:
>>> type qualifier is meaningless on cast type
>>>         int64_t * const addr = (int64_t * const)
>>>                                 ^
>>>
>>>
>>> [2a]
>>>  diff --git a/drivers/common/octeontx2/Makefile
>>> b/drivers/common/octeontx2/Makefile
>>>  index fabc32537..b78995e12 100644
>>>  --- a/drivers/common/octeontx2/Makefile
>>>  +++ b/drivers/common/octeontx2/Makefile
>>>  @@ -19,6 +19,10 @@ CFLAGS += -Wno-int-to-pointer-cast
>>>   CFLAGS += -Wno-pointer-to-int-cast
>>>   endif
>>>
>>>  +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)  +CFLAGS += -diag-disable 2259
>>> # non-pointer conversion may lose significant bits  +endif  +
>>>   EXPORT_MAP := rte_common_octeontx2_version.map
>>>
>>>   LIBABIVER := 1
>>>  diff --git a/drivers/mempool/octeontx2/Makefile
>>> b/drivers/mempool/octeontx2 /Makefile  index b3568443e..37bcebdf3
>>> 100644
>>>  --- a/drivers/mempool/octeontx2/Makefile
>>>  +++ b/drivers/mempool/octeontx2/Makefile
>>>  @@ -20,6 +20,10 @@ CFLAGS += -Wno-int-to-pointer-cast
>>>   CFLAGS += -Wno-pointer-to-int-cast
>>>   endif
>>>
>>>  +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)  +CFLAGS += -diag-disable 2259
>>> # non-pointer conversion may lose significant bits  +endif  +
>>>   EXPORT_MAP := rte_mempool_octeontx2_version.map
>>>
>>>   LIBABIVER := 1
>>>
>>>
>>> [2b]
>>>  -       int64_t * const addr = (int64_t * const)
>>>  +       int64_t * const addr = (int64_t *)


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and mempool driver
  2019-06-25 21:39   ` Thomas Monjalon
@ 2019-06-26 23:10     ` Stephen Hemminger
  0 siblings, 0 replies; 7+ messages in thread
From: Stephen Hemminger @ 2019-06-26 23:10 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: jerinj, dev

On Tue, 25 Jun 2019 23:39:36 +0200
Thomas Monjalon <thomas@monjalon.net> wrote:

> 22/06/2019 15:23, jerinj@marvell.com:
> > From: Jerin Jacob <jerinj@marvell.com>
> > 
> > This patch set adds initial driver support for OCTEON TX2 SoC.
> > 
> > OCTEON TX2 is an armv8.2 SoC with integrated HW based mempool, ethdev,
> > cryptodev, compressdev, and eventdev devices.
> > 
> > This patch set adds common driver and mempool device driver for OCTEON TX2 SoC.
> > There will be three more patch series in this release
> > to support ethdev, eventdev and cryptodev devices  
> [...]
> > Jerin Jacob (22):
> >   common/octeontx2: add build infrastructure and HW definition
> >   common/octeontx2: add IO handling APIs
> >   common/octeontx2: add mbox request and response definition
> >   common/octeontx2: add mailbox base support infra
> >   common/octeontx2: add runtime log infra
> >   common/octeontx2: add mailbox send and receive support
> >   common/octeontx2: introduce common device class
> >   common/octeontx2: introduce irq handling functions
> >   common/octeontx2: handle intra device operations
> >   common/octeontx2: add VF mailbox IRQ and msg handler
> >   doc: add Marvell OCTEON TX2 platform guide
> >   mempool/octeontx2: add build infra and device probe
> >   drivers: add init and fini on octeontx2 NPA object
> >   mempool/octeontx2: add NPA HW operations
> >   mempool/octeontx2: add NPA IRQ handler
> >   mempool/octeontx2: add context dump support
> >   mempool/octeontx2: add mempool alloc op
> >   mempool/octeontx2: add mempool free op
> >   mempool/octeontx2: add remaining slow path ops
> >   mempool/octeontx2: add fast path mempool ops
> >   mempool/octeontx2: add devargs for max pool selection
> >   doc: add Marvell OCTEON TX2 mempool documentation
> > 
> > Nithin Dabilpuram (4):
> >   common/octeontx2: add AF to PF mailbox IRQ and msg handlers
> >   common/octeontx2: add PF to VF mailbox IRQ and msg handlers
> >   common/octeontx2: add uplink message support
> >   common/octeontx2: add FLR IRQ handler
> > 
> > Pavan Nikhilesh (1):
> >   mempool/octeontx2: add optimized dequeue operation for arm64  
> 
> Applied, thanks
> 
> Note: I did a change in the release notes as noticed in the thread,
> spread MAINTAINERS lines additions in the right commits,
> and grouped with octeontx in Makefiles.
This caused another CI failure.

See: http://patchwork.dpdk.org/patch/55430/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and mempool driver
  2019-06-22 13:23 ` [dpdk-dev] [PATCH v4 " jerinj
  2019-06-25 21:39   ` Thomas Monjalon
@ 2019-06-26 13:14   ` Ferruh Yigit
  1 sibling, 0 replies; 7+ messages in thread
From: Ferruh Yigit @ 2019-06-26 13:14 UTC (permalink / raw)
  To: jerinj; +Cc: dev, Thomas Monjalon

On 6/22/2019 2:23 PM, jerinj@marvell.com wrote:
> From: Jerin Jacob <jerinj@marvell.com>
> 
> This patch set adds initial driver support for OCTEON TX2 SoC.
> 
> OCTEON TX2 is an armv8.2 SoC with integrated HW based mempool, ethdev,
> cryptodev, compressdev, and eventdev devices.
> 
> This patch set adds common driver and mempool device driver for OCTEON TX2 SoC.
> There will be three more patch series in this release
> to support ethdev, eventdev and cryptodev devices
> 
> More details about the OCTEON TX2 platform may found in
> [PATCH 15/27] doc: add Marvell OCTEON TX2 platform guide
> under doc/guides/platform/octeontx2.rst file.
> 
> This patches series also available at https://github.com/jerinjacobk/dpdk.git
> for quick download and review.
> 
> # Note on check patch issues
> 1) The mailbox prototype is the same as Linux kernel.
> https://elixir.bootlin.com/linux/latest/source/drivers/net/ethernet/marvell/octeontx2/af/mbox.h#L123
> In order to keep the base code intact, mailbox prototype expressed as
> macros with warnings
> 2) There are a few warnings from tooling about expected to add new
> symbols in the EXPERIMENTAL
> section. Since these API will be called only by octeontx2 client drivers
> and prototype are not exported to the application, those warnings are
> not relevant, Discussion at http://patches.dpdk.org/patch/53590/
> 
> v4:
> 1) Add comments for O3 attribue flag (Aaron Conole) in "mempool/octeontx2: add optimized dequeue operation for arm64"
> patch
> 2) Update "common/octeontx2: add mbox request and response definition" to reflect latest mbox defintions
> 3) rebase to dpdk.org master(as of 22-June)
> v3:
> 
> 1) Replace the reference to v19.08 from v19.05
> 2) remove rte_panic from driver code
> 3) rebase to dpdk.org master(as of 17-June)
> 
> v2:
> 
> 1) Added CONFIG_RTE_MAX_VFIO_GROUPS for octeontx2 config in patch 1
> 2) Rebased to master to accommodate latest rename like ETHER_ADDR_LEN to RTE_ETHER_ADDR_LEN
> 3) Added pmd.raw.octeontx2.dpi log message in patch 5
> 4) Update platform guide with debugfs documentation in patch 15
> 5) Fix arm64 build issue with patch 25(Aaron Conole)
> "mempool/octeontx2: add optimized dequeue operation for arm64"
> 
> Cc: Thomas Monjalon <thomas@monjalon.net>
> 
> Jerin Jacob (22):
>   common/octeontx2: add build infrastructure and HW definition
>   common/octeontx2: add IO handling APIs
>   common/octeontx2: add mbox request and response definition
>   common/octeontx2: add mailbox base support infra
>   common/octeontx2: add runtime log infra
>   common/octeontx2: add mailbox send and receive support
>   common/octeontx2: introduce common device class
>   common/octeontx2: introduce irq handling functions
>   common/octeontx2: handle intra device operations
>   common/octeontx2: add VF mailbox IRQ and msg handler
>   doc: add Marvell OCTEON TX2 platform guide
>   mempool/octeontx2: add build infra and device probe
>   drivers: add init and fini on octeontx2 NPA object
>   mempool/octeontx2: add NPA HW operations
>   mempool/octeontx2: add NPA IRQ handler
>   mempool/octeontx2: add context dump support
>   mempool/octeontx2: add mempool alloc op
>   mempool/octeontx2: add mempool free op
>   mempool/octeontx2: add remaining slow path ops
>   mempool/octeontx2: add fast path mempool ops
>   mempool/octeontx2: add devargs for max pool selection
>   doc: add Marvell OCTEON TX2 mempool documentation
> 
> Nithin Dabilpuram (4):
>   common/octeontx2: add AF to PF mailbox IRQ and msg handlers
>   common/octeontx2: add PF to VF mailbox IRQ and msg handlers
>   common/octeontx2: add uplink message support
>   common/octeontx2: add FLR IRQ handler
> 
> Pavan Nikhilesh (1):
>   mempool/octeontx2: add optimized dequeue operation for arm64

Hi Jerin,

There are some build errors with ICC, there are multiple but mainly two type of
them [1a] & [1b].

I think [1b] can be fixed quickly [2b] and what do you think about ignoring the
warning for [1a] as done in [2a]?

If fix makes sense, can you please send a patch for it?

Thanks,
ferruh



[1a] error #2259
.../dpdk/drivers/common/octeontx2/otx2_mbox.c(47): error #2259: non-pointer
conversion from "unsigned long long" to "struct mbox_hdr *" may lose significant
bits
                (struct mbox_hdr *)((uintptr_t)mdev->mbase + mbox->tx_start);
                ^

/tmp/dpdk_maintain/self/dpdk/drivers/mempool/octeontx2/otx2_mempool.h(94): error
#2259: non-pointer conversion from "unsigned long long" to
"int64_t={__int64_t={signed long long}} *" may lose significant bits


                (int64_t *)(npa_lf_aura_handle_to_base(aura_handle) +



                ^

[1b] error #191
.../dpdk/drivers/mempool/octeontx2/otx2_mempool_ops.c(344): error #191: type
qualifier is meaningless on cast type
        int64_t * const addr = (int64_t * const)
                                ^


[2a]
 diff --git a/drivers/common/octeontx2/Makefile b/drivers/common/octeontx2/Makefile
 index fabc32537..b78995e12 100644
 --- a/drivers/common/octeontx2/Makefile
 +++ b/drivers/common/octeontx2/Makefile
 @@ -19,6 +19,10 @@ CFLAGS += -Wno-int-to-pointer-cast
  CFLAGS += -Wno-pointer-to-int-cast
  endif

 +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
 +CFLAGS += -diag-disable 2259 # non-pointer conversion may lose significant bits
 +endif
 +
  EXPORT_MAP := rte_common_octeontx2_version.map

  LIBABIVER := 1
 diff --git a/drivers/mempool/octeontx2/Makefile b/drivers/mempool/octeontx2
/Makefile
 index b3568443e..37bcebdf3 100644
 --- a/drivers/mempool/octeontx2/Makefile
 +++ b/drivers/mempool/octeontx2/Makefile
 @@ -20,6 +20,10 @@ CFLAGS += -Wno-int-to-pointer-cast
  CFLAGS += -Wno-pointer-to-int-cast
  endif

 +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
 +CFLAGS += -diag-disable 2259 # non-pointer conversion may lose significant  bits
 +endif
 +
  EXPORT_MAP := rte_mempool_octeontx2_version.map

  LIBABIVER := 1


[2b]
 -       int64_t * const addr = (int64_t * const)
 +       int64_t * const addr = (int64_t *)

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and mempool driver
  2019-06-22 13:23 ` [dpdk-dev] [PATCH v4 " jerinj
@ 2019-06-25 21:39   ` Thomas Monjalon
  2019-06-26 23:10     ` Stephen Hemminger
  2019-06-26 13:14   ` Ferruh Yigit
  1 sibling, 1 reply; 7+ messages in thread
From: Thomas Monjalon @ 2019-06-25 21:39 UTC (permalink / raw)
  To: jerinj; +Cc: dev

22/06/2019 15:23, jerinj@marvell.com:
> From: Jerin Jacob <jerinj@marvell.com>
> 
> This patch set adds initial driver support for OCTEON TX2 SoC.
> 
> OCTEON TX2 is an armv8.2 SoC with integrated HW based mempool, ethdev,
> cryptodev, compressdev, and eventdev devices.
> 
> This patch set adds common driver and mempool device driver for OCTEON TX2 SoC.
> There will be three more patch series in this release
> to support ethdev, eventdev and cryptodev devices
[...]
> Jerin Jacob (22):
>   common/octeontx2: add build infrastructure and HW definition
>   common/octeontx2: add IO handling APIs
>   common/octeontx2: add mbox request and response definition
>   common/octeontx2: add mailbox base support infra
>   common/octeontx2: add runtime log infra
>   common/octeontx2: add mailbox send and receive support
>   common/octeontx2: introduce common device class
>   common/octeontx2: introduce irq handling functions
>   common/octeontx2: handle intra device operations
>   common/octeontx2: add VF mailbox IRQ and msg handler
>   doc: add Marvell OCTEON TX2 platform guide
>   mempool/octeontx2: add build infra and device probe
>   drivers: add init and fini on octeontx2 NPA object
>   mempool/octeontx2: add NPA HW operations
>   mempool/octeontx2: add NPA IRQ handler
>   mempool/octeontx2: add context dump support
>   mempool/octeontx2: add mempool alloc op
>   mempool/octeontx2: add mempool free op
>   mempool/octeontx2: add remaining slow path ops
>   mempool/octeontx2: add fast path mempool ops
>   mempool/octeontx2: add devargs for max pool selection
>   doc: add Marvell OCTEON TX2 mempool documentation
> 
> Nithin Dabilpuram (4):
>   common/octeontx2: add AF to PF mailbox IRQ and msg handlers
>   common/octeontx2: add PF to VF mailbox IRQ and msg handlers
>   common/octeontx2: add uplink message support
>   common/octeontx2: add FLR IRQ handler
> 
> Pavan Nikhilesh (1):
>   mempool/octeontx2: add optimized dequeue operation for arm64

Applied, thanks

Note: I did a change in the release notes as noticed in the thread,
spread MAINTAINERS lines additions in the right commits,
and grouped with octeontx in Makefiles.




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [dpdk-dev]  [PATCH v4 00/27] OCTEON TX2 common and mempool driver
  2019-06-17 15:55 [dpdk-dev] [PATCH v3 " jerinj
@ 2019-06-22 13:23 ` " jerinj
  2019-06-25 21:39   ` Thomas Monjalon
  2019-06-26 13:14   ` Ferruh Yigit
  0 siblings, 2 replies; 7+ messages in thread
From: jerinj @ 2019-06-22 13:23 UTC (permalink / raw)
  Cc: dev, Jerin Jacob, Thomas Monjalon

From: Jerin Jacob <jerinj@marvell.com>

This patch set adds initial driver support for OCTEON TX2 SoC.

OCTEON TX2 is an armv8.2 SoC with integrated HW based mempool, ethdev,
cryptodev, compressdev, and eventdev devices.

This patch set adds common driver and mempool device driver for OCTEON TX2 SoC.
There will be three more patch series in this release
to support ethdev, eventdev and cryptodev devices

More details about the OCTEON TX2 platform may found in
[PATCH 15/27] doc: add Marvell OCTEON TX2 platform guide
under doc/guides/platform/octeontx2.rst file.

This patches series also available at https://github.com/jerinjacobk/dpdk.git
for quick download and review.

# Note on check patch issues
1) The mailbox prototype is the same as Linux kernel.
https://elixir.bootlin.com/linux/latest/source/drivers/net/ethernet/marvell/octeontx2/af/mbox.h#L123
In order to keep the base code intact, mailbox prototype expressed as
macros with warnings
2) There are a few warnings from tooling about expected to add new
symbols in the EXPERIMENTAL
section. Since these API will be called only by octeontx2 client drivers
and prototype are not exported to the application, those warnings are
not relevant, Discussion at http://patches.dpdk.org/patch/53590/

v4:
1) Add comments for O3 attribue flag (Aaron Conole) in "mempool/octeontx2: add optimized dequeue operation for arm64"
patch
2) Update "common/octeontx2: add mbox request and response definition" to reflect latest mbox defintions
3) rebase to dpdk.org master(as of 22-June)
v3:

1) Replace the reference to v19.08 from v19.05
2) remove rte_panic from driver code
3) rebase to dpdk.org master(as of 17-June)

v2:

1) Added CONFIG_RTE_MAX_VFIO_GROUPS for octeontx2 config in patch 1
2) Rebased to master to accommodate latest rename like ETHER_ADDR_LEN to RTE_ETHER_ADDR_LEN
3) Added pmd.raw.octeontx2.dpi log message in patch 5
4) Update platform guide with debugfs documentation in patch 15
5) Fix arm64 build issue with patch 25(Aaron Conole)
"mempool/octeontx2: add optimized dequeue operation for arm64"

Cc: Thomas Monjalon <thomas@monjalon.net>

Jerin Jacob (22):
  common/octeontx2: add build infrastructure and HW definition
  common/octeontx2: add IO handling APIs
  common/octeontx2: add mbox request and response definition
  common/octeontx2: add mailbox base support infra
  common/octeontx2: add runtime log infra
  common/octeontx2: add mailbox send and receive support
  common/octeontx2: introduce common device class
  common/octeontx2: introduce irq handling functions
  common/octeontx2: handle intra device operations
  common/octeontx2: add VF mailbox IRQ and msg handler
  doc: add Marvell OCTEON TX2 platform guide
  mempool/octeontx2: add build infra and device probe
  drivers: add init and fini on octeontx2 NPA object
  mempool/octeontx2: add NPA HW operations
  mempool/octeontx2: add NPA IRQ handler
  mempool/octeontx2: add context dump support
  mempool/octeontx2: add mempool alloc op
  mempool/octeontx2: add mempool free op
  mempool/octeontx2: add remaining slow path ops
  mempool/octeontx2: add fast path mempool ops
  mempool/octeontx2: add devargs for max pool selection
  doc: add Marvell OCTEON TX2 mempool documentation

Nithin Dabilpuram (4):
  common/octeontx2: add AF to PF mailbox IRQ and msg handlers
  common/octeontx2: add PF to VF mailbox IRQ and msg handlers
  common/octeontx2: add uplink message support
  common/octeontx2: add FLR IRQ handler

Pavan Nikhilesh (1):
  mempool/octeontx2: add optimized dequeue operation for arm64

 MAINTAINERS                                   |   10 +
 config/common_base                            |    5 +
 config/defconfig_arm64-octeontx2-linuxapp-gcc |    3 +
 doc/guides/mempool/index.rst                  |    1 +
 doc/guides/mempool/octeontx2.rst              |   90 +
 .../octeontx2_packet_flow_hw_accelerators.svg | 2804 +++++++++++++++++
 .../img/octeontx2_resource_virtualization.svg | 2418 ++++++++++++++
 doc/guides/platform/index.rst                 |    1 +
 doc/guides/platform/octeontx2.rst             |  496 +++
 doc/guides/rel_notes/release_19_08.rst        |    2 +
 drivers/common/Makefile                       |    5 +
 drivers/common/meson.build                    |    2 +-
 drivers/common/octeontx2/Makefile             |   37 +
 drivers/common/octeontx2/hw/otx2_nix.h        | 1379 ++++++++
 drivers/common/octeontx2/hw/otx2_npa.h        |  305 ++
 drivers/common/octeontx2/hw/otx2_npc.h        |  472 +++
 drivers/common/octeontx2/hw/otx2_rvu.h        |  212 ++
 drivers/common/octeontx2/hw/otx2_sso.h        |  209 ++
 drivers/common/octeontx2/hw/otx2_ssow.h       |   56 +
 drivers/common/octeontx2/hw/otx2_tim.h        |   34 +
 drivers/common/octeontx2/meson.build          |   25 +
 drivers/common/octeontx2/otx2_common.c        |  248 ++
 drivers/common/octeontx2/otx2_common.h        |  121 +
 drivers/common/octeontx2/otx2_dev.c           | 1052 +++++++
 drivers/common/octeontx2/otx2_dev.h           |   97 +
 drivers/common/octeontx2/otx2_io_arm64.h      |   95 +
 drivers/common/octeontx2/otx2_io_generic.h    |   63 +
 drivers/common/octeontx2/otx2_irq.c           |  254 ++
 drivers/common/octeontx2/otx2_irq.h           |   25 +
 drivers/common/octeontx2/otx2_mbox.c          |  416 +++
 drivers/common/octeontx2/otx2_mbox.h          | 1561 +++++++++
 .../rte_common_octeontx2_version.map          |   39 +
 drivers/mempool/Makefile                      |    1 +
 drivers/mempool/meson.build                   |    2 +-
 drivers/mempool/octeontx2/Makefile            |   39 +
 drivers/mempool/octeontx2/meson.build         |   23 +
 drivers/mempool/octeontx2/otx2_mempool.c      |  455 +++
 drivers/mempool/octeontx2/otx2_mempool.h      |  219 ++
 .../mempool/octeontx2/otx2_mempool_debug.c    |  135 +
 drivers/mempool/octeontx2/otx2_mempool_irq.c  |  303 ++
 drivers/mempool/octeontx2/otx2_mempool_ops.c  |  770 +++++
 .../rte_mempool_octeontx2_version.map         |    8 +
 mk/rte.app.mk                                 |    6 +
 43 files changed, 14496 insertions(+), 2 deletions(-)
 create mode 100644 doc/guides/mempool/octeontx2.rst
 create mode 100644 doc/guides/platform/img/octeontx2_packet_flow_hw_accelerators.svg
 create mode 100644 doc/guides/platform/img/octeontx2_resource_virtualization.svg
 create mode 100644 doc/guides/platform/octeontx2.rst
 create mode 100644 drivers/common/octeontx2/Makefile
 create mode 100644 drivers/common/octeontx2/hw/otx2_nix.h
 create mode 100644 drivers/common/octeontx2/hw/otx2_npa.h
 create mode 100644 drivers/common/octeontx2/hw/otx2_npc.h
 create mode 100644 drivers/common/octeontx2/hw/otx2_rvu.h
 create mode 100644 drivers/common/octeontx2/hw/otx2_sso.h
 create mode 100644 drivers/common/octeontx2/hw/otx2_ssow.h
 create mode 100644 drivers/common/octeontx2/hw/otx2_tim.h
 create mode 100644 drivers/common/octeontx2/meson.build
 create mode 100644 drivers/common/octeontx2/otx2_common.c
 create mode 100644 drivers/common/octeontx2/otx2_common.h
 create mode 100644 drivers/common/octeontx2/otx2_dev.c
 create mode 100644 drivers/common/octeontx2/otx2_dev.h
 create mode 100644 drivers/common/octeontx2/otx2_io_arm64.h
 create mode 100644 drivers/common/octeontx2/otx2_io_generic.h
 create mode 100644 drivers/common/octeontx2/otx2_irq.c
 create mode 100644 drivers/common/octeontx2/otx2_irq.h
 create mode 100644 drivers/common/octeontx2/otx2_mbox.c
 create mode 100644 drivers/common/octeontx2/otx2_mbox.h
 create mode 100644 drivers/common/octeontx2/rte_common_octeontx2_version.map
 create mode 100644 drivers/mempool/octeontx2/Makefile
 create mode 100644 drivers/mempool/octeontx2/meson.build
 create mode 100644 drivers/mempool/octeontx2/otx2_mempool.c
 create mode 100644 drivers/mempool/octeontx2/otx2_mempool.h
 create mode 100644 drivers/mempool/octeontx2/otx2_mempool_debug.c
 create mode 100644 drivers/mempool/octeontx2/otx2_mempool_irq.c
 create mode 100644 drivers/mempool/octeontx2/otx2_mempool_ops.c
 create mode 100644 drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map

-- 
2.21.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, back to index

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-27  8:15 [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and mempool driver Jerin Jacob Kollanukkaran
2019-06-28  6:14 ` Jerin Jacob Kollanukkaran
2019-06-28  8:08   ` Ferruh Yigit
  -- strict thread matches above, loose matches on Subject: below --
2019-06-17 15:55 [dpdk-dev] [PATCH v3 " jerinj
2019-06-22 13:23 ` [dpdk-dev] [PATCH v4 " jerinj
2019-06-25 21:39   ` Thomas Monjalon
2019-06-26 23:10     ` Stephen Hemminger
2019-06-26 13:14   ` Ferruh Yigit

DPDK-dev Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/dpdk-dev/0 dpdk-dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dpdk-dev dpdk-dev/ https://lore.kernel.org/dpdk-dev \
		dev@dpdk.org
	public-inbox-index dpdk-dev

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git