From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 058BEA046B
	for <public@inbox.dpdk.org>; Wed, 26 Jun 2019 15:14:15 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 7BB5B1E25;
	Wed, 26 Jun 2019 15:14:14 +0200 (CEST)
Received: from mga06.intel.com (mga06.intel.com [134.134.136.31])
 by dpdk.org (Postfix) with ESMTP id 1EF9B2AB
 for <dev@dpdk.org>; Wed, 26 Jun 2019 15:14:12 +0200 (CEST)
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from fmsmga002.fm.intel.com ([10.253.24.26])
 by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 26 Jun 2019 06:14:10 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.63,420,1557212400"; d="scan'208";a="188647375"
Received: from fyigit-mobl.ger.corp.intel.com (HELO [10.237.221.30])
 ([10.237.221.30])
 by fmsmga002.fm.intel.com with ESMTP; 26 Jun 2019 06:14:09 -0700
To: jerinj@marvell.com
Cc: dev@dpdk.org, Thomas Monjalon <thomas@monjalon.net>
References: <20190617155537.36144-1-jerinj@marvell.com>
 <20190622132417.32694-1-jerinj@marvell.com>
From: Ferruh Yigit <ferruh.yigit@intel.com>
Openpgp: preference=signencrypt
Autocrypt: addr=ferruh.yigit@intel.com; prefer-encrypt=mutual; keydata=
 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 VQ==
Message-ID: <a40d5e40-7517-e446-9e58-2d1f7c4f1f91@intel.com>
Date: Wed, 26 Jun 2019 14:14:09 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101
 Thunderbird/60.7.2
MIME-Version: 1.0
In-Reply-To: <20190622132417.32694-1-jerinj@marvell.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit
Subject: Re: [dpdk-dev] [PATCH v4 00/27] OCTEON TX2 common and mempool driver
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

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 *)