From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B3C81CA9EA1 for ; Fri, 18 Oct 2019 07:23:22 +0000 (UTC) Received: from dpdk.org (dpdk.org [92.243.14.124]) by mail.kernel.org (Postfix) with ESMTP id 3DEA22089C for ; Fri, 18 Oct 2019 07:23:22 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="iyjK/kR2" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3DEA22089C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 138FA1C0C7; Fri, 18 Oct 2019 09:23:21 +0200 (CEST) Received: from mail-io1-f68.google.com (mail-io1-f68.google.com [209.85.166.68]) by dpdk.org (Postfix) with ESMTP id 1EB981C0C1 for ; Fri, 18 Oct 2019 09:23:20 +0200 (CEST) Received: by mail-io1-f68.google.com with SMTP id c25so6208203iot.12 for ; Fri, 18 Oct 2019 00:23:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=g0S9sSgyWnvRmEbxcnfcf7WVtm1ZVF3mF+TU2l2LFoY=; b=iyjK/kR2cQPmlstFEL8hvQNq/q410ZTFw69bOqAJirkKSGqTq57jJ9rZJyFHTGTqXM ePeMn4tFeYzbRVjE+oHTvlS7udPfYAPbQXtBl89RKWzAWr5F6jbF/0NUrj1/mHyerqqr waMSeia0+TRiu/AFMsfl/evlVNwy/VwEnqm+9H1sPzqqDM+OeJa40Krglhp3e3vJ79S+ JaGZk23Lr/qgcUI+GhkdVjrQq6uR9Xw0ExSMfUMwnJYSDuBauQR96W5W+ZwezPjseXSd kIAf0h40T88u+L2bcMKLrvsC4mGxhgZjiKpU+WU6Ksiwo5HGGuOZPDLLPL3Sy1L4gubt 3/aA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=g0S9sSgyWnvRmEbxcnfcf7WVtm1ZVF3mF+TU2l2LFoY=; b=pkCUTIMjAUpIU9fZH8oHGimGJUvO3uJI4ArZ+2LDxknB3OPvYpa2scB1MefRFiiNqQ edp+rSs1xZxIAdECKCqMrsVz5jqIMxeSrsKy4PXVJBYYhCT0l56kkqrZSIKp8eQxPp6I +TIlRaPDiXTJ7V+bxpw7Mi0MtjzjNYTMFm9IPiXeZCVlVNaLPDUgWa40WC63lUVans3d TPNH4HWawSN6nRvBZDHn+wPIB8/ChrCUuYQp4XKJhwt7DjQnB4+giG24yGnbSGctVlLg r2jTm6ZebjruRCnJC7lvt0NiV+AE4cHw5Qb0qfyGrdkIINbyo3FFnuDvuSVXdfmT/WU5 oVPA== X-Gm-Message-State: APjAAAVMkMFx5TnIkiX9OhN903OCfeo8C0JlgDjSlkEdOCW8pFRjFdfk b4XT+Lz/wtAjIZ5fJt5QHqEjl4dbvCw2dG9WD9yBnUV1T9pItQ== X-Google-Smtp-Source: APXvYqzcqc4uD9cw+ojmqgv8oE3rVY87vsOi1HJGOvs0dVythMi9n+pDg5y1Tazzw8i3FcoGxJjesQ7+axtTzmPNbls= X-Received: by 2002:a02:ac81:: with SMTP id x1mr7668138jan.133.1571383399116; Fri, 18 Oct 2019 00:23:19 -0700 (PDT) MIME-Version: 1.0 References: <1564615940-13183-1-git-send-email-gavin.hu@arm.com> <1564616902-13861-3-git-send-email-gavin.hu@arm.com> <9576728dbcf7bf3ef83ee61d1b61e01427a31279.camel@arm.com> In-Reply-To: From: Jerin Jacob Date: Fri, 18 Oct 2019 12:53:07 +0530 Message-ID: To: Honnappa Nagarahalli Cc: Ola Liljedahl , "Gavin Hu (Arm Technology China)" , "dev@dpdk.org" , "pbhagavatula@marvell.com" , "thomas@monjalon.net" , nd , "jerinj@marvell.com" , "hemant.agrawal@nxp.com" Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-dev] [PATCH v2 2/3] config: add arm neoverse N1 SDP configuration X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Fri, Oct 18, 2019 at 10:42 AM Honnappa Nagarahalli wrote: > > > > > > > On Thu, 2019-08-01 at 07:48 +0800, Gavin Hu wrote: > > > Arm N1 SDP is an infrastructure segment development platform based on > > > armv8.2-a Neoverse N1 CPU. For more information, refer to: > > > https://community.arm.com/developer/tools-software/oss-platforms/w/ > > > docs/440/neoverse-n1-sdp > > > > > > Signed-off-by: Gavin Hu > > > Reviewed-by: Honnappa Nagarahalli > > > Reviewed-by: Steve Capper > > > --- > > > config/arm/meson.build | 9 ++++++- > > > config/defconfig_arm64-neoversen1-linux-gcc | 1 + > > > config/defconfig_arm64-neoversen1-linuxapp-gcc | 15 ++++++++++++ > > > mk/machine/neoversen1/rte.vars.mk | 34 > > > > > diff --git a/config/defconfig_arm64-neoversen1-linuxapp-gcc > > > b/config/defconfig_arm64-neoversen1-linuxapp-gcc > > > new file mode 100644 > > > index 0000000..39b9e1f > > > --- /dev/null > > > +++ b/config/defconfig_arm64-neoversen1-linuxapp-gcc > > > > > > > @@ -0,0 +1,15 @@ > > > +# SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2019 Arm Ltd. > > > +# > > > + > > > +#include "defconfig_arm64-armv8a-linux-gcc" > > > + > > > +CONFIG_RTE_MACHINE="neoversen1" > > This should probably be "n1sdp" as this is the name of the platform that > > matches the below configuration. > A clear definition of RTE_MACHINE is required. Jerin? I think, In the existing scheme of things, RTE_MACHINE defines, where to take the MACHINE_CFLAGS mk/machine/xxxx/rte.vars.mk Considering the fact that there will be a lot of reusable IPs(for CPU) from ARM for armv8, I think, it would make sense to introduce RTE_MICRO_ARCH to avoid a lot of code duplications and confusion. RTE_ARCH example: "x86" or "arm64" RTE_MICRO_ARCH example: "a72" or "thunderx3" - defines mcpu and armv8 verion arch etc RTE_MACHINE example: "bluefield" or "thunderx3" - defines, number of cores, NUMA or not? etc RTE_MACHINE should be probe based on "implementation ID" for arm64 and reuse already defined RTE_MICRO_ARCH to avoid code duplication. > > > > > > +CONFIG_RTE_ARCH_ARM_TUNE="neoverse-n1" > > > +CONFIG_RTE_MAX_LCORE=4 > > > +CONFIG_RTE_MAX_NUMA_NODES=1 > > > +CONFIG_RTE_CACHE_LINE_SIZE=64 > > > + > > > +# Doesn't support NUMA > > > +CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=n > > > +CONFIG_RTE_LIBRTE_VHOST_NUMA=n > > > diff --git a/mk/machine/neoversen1/rte.vars.mk > > > b/mk/machine/neoversen1/rte.vars.mk > > > new file mode 100644 > > > index 0000000..6d69de0 > > > --- /dev/null > > > +++ b/mk/machine/neoversen1/rte.vars.mk > > > @@ -0,0 +1,34 @@ > > > +# SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2019 Arm Ltd # > > > + > > > +# > > > +# machine: > > > +# > > > +# - can define ARCH variable (overridden by cmdline value) > > > +# - can define CROSS variable (overridden by cmdline value) > > > +# - define MACHINE_CFLAGS variable (overridden by cmdline value) > > > +# - define MACHINE_LDFLAGS variable (overridden by cmdline value) > > > +# - define MACHINE_ASFLAGS variable (overridden by cmdline value) > > > +# - can define CPU_CFLAGS variable (overridden by cmdline value) that > > > +# overrides the one defined in arch. > > > +# - can define CPU_LDFLAGS variable (overridden by cmdline value) that > > > +# overrides the one defined in arch. > > > +# - can define CPU_ASFLAGS variable (overridden by cmdline value) that > > > +# overrides the one defined in arch. > > > +# - may override any previously defined variable > > > +# > > > + > > > +# ARCH = > > > +# CROSS = > > > +# MACHINE_CFLAGS = > > > +# MACHINE_LDFLAGS = > > > +# MACHINE_ASFLAGS = > > > +# CPU_CFLAGS = > > > +# CPU_LDFLAGS = > > > +# CPU_ASFLAGS = > > > + > > > +include $(RTE_SDK)/mk/rte.helper.mk > > > + > > > +MACHINE_CFLAGS += $(call rte_cc_has_argument, > > > +-march=armv8.2-a+crc+crypto) MACHINE_CFLAGS += $(call > > > +rte_cc_has_argument, -mcpu=neoverse-n1) > > > > > > > > -- > > Ola Liljedahl, Networking System Architect, Arm Phone +46706866373, Skype > > ola.liljedahl >