From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ashwin Sekhar T K Subject: [PATCH v2 2/6] config: add clang support for armv8a linuxapp Date: Thu, 11 May 2017 07:33:12 -0700 Message-ID: <20170511143316.45835-3-ashwin.sekhar@caviumnetworks.com> References: <20170510101643.30556-2-ashwin.sekhar@caviumnetworks.com> <20170511143316.45835-1-ashwin.sekhar@caviumnetworks.com> Mime-Version: 1.0 Content-Type: text/plain Cc: dev@dpdk.org, Ashwin Sekhar T K To: jerin.jacob@caviumnetworks.com, thomas@monjalon.net, maciej.czekaj@caviumnetworks.com, viktorin@rehivetech.com, jianbo.liu@linaro.org, bruce.richardson@intel.com, pablo.de.lara.guarch@intel.com, konstantin.ananyev@intel.com Return-path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0044.outbound.protection.outlook.com [104.47.34.44]) by dpdk.org (Postfix) with ESMTP id 6421C5A8D for ; Thu, 11 May 2017 16:33:36 +0200 (CEST) In-Reply-To: <20170511143316.45835-1-ashwin.sekhar@caviumnetworks.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Moved all common defines from defconfig_arm64-armv8a-linuxapp-gcc to common_armv8a_linuxapp. Created new config arm64-armv8a-linuxapp-clang which adds the clang support to armv8a. Now defconfigs arm64-armv8a-linuxapp-gcc/clang contain only the CONFIG_RTE_TOOLCHAIN* defines and all other common defines are inherited from common_armv8a_linuxapp. Signed-off-by: Ashwin Sekhar T K --- config/common_armv8a_linuxapp | 53 ++++++++++++++++++++++++++++ config/defconfig_arm64-armv8a-linuxapp-clang | 35 ++++++++++++++++++ config/defconfig_arm64-armv8a-linuxapp-gcc | 23 +----------- 3 files changed, 89 insertions(+), 22 deletions(-) create mode 100644 config/common_armv8a_linuxapp create mode 100644 config/defconfig_arm64-armv8a-linuxapp-clang diff --git a/config/common_armv8a_linuxapp b/config/common_armv8a_linuxapp new file mode 100644 index 000000000..3d0967e99 --- /dev/null +++ b/config/common_armv8a_linuxapp @@ -0,0 +1,53 @@ +# BSD LICENSE +# +# Copyright (C) Cavium networks 2017. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Cavium networks nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +#include "common_linuxapp" + +CONFIG_RTE_MACHINE="armv8a" + +CONFIG_RTE_ARCH="arm64" +CONFIG_RTE_ARCH_ARM64=y +CONFIG_RTE_ARCH_64=y + +CONFIG_RTE_FORCE_INTRINSICS=y + +# Maximum available cache line size in arm64 implementations. +# Setting to maximum available cache line size in generic config +# to address minimum DMA alignment across all arm64 implementations. +CONFIG_RTE_CACHE_LINE_SIZE=128 + +CONFIG_RTE_EAL_IGB_UIO=n + +CONFIG_RTE_LIBRTE_FM10K_PMD=n +CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n +CONFIG_RTE_LIBRTE_AVP_PMD=n + +CONFIG_RTE_SCHED_VECTOR=n diff --git a/config/defconfig_arm64-armv8a-linuxapp-clang b/config/defconfig_arm64-armv8a-linuxapp-clang new file mode 100644 index 000000000..43b70a28f --- /dev/null +++ b/config/defconfig_arm64-armv8a-linuxapp-clang @@ -0,0 +1,35 @@ +# BSD LICENSE +# +# Copyright (C) Cavium networks 2017. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Cavium networks nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +#include "common_armv8a_linuxapp" + +CONFIG_RTE_TOOLCHAIN="clang" +CONFIG_RTE_TOOLCHAIN_CLANG=y diff --git a/config/defconfig_arm64-armv8a-linuxapp-gcc b/config/defconfig_arm64-armv8a-linuxapp-gcc index 9f327666e..761bbbd3b 100644 --- a/config/defconfig_arm64-armv8a-linuxapp-gcc +++ b/config/defconfig_arm64-armv8a-linuxapp-gcc @@ -29,28 +29,7 @@ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # -#include "common_linuxapp" - -CONFIG_RTE_MACHINE="armv8a" - -CONFIG_RTE_ARCH="arm64" -CONFIG_RTE_ARCH_ARM64=y -CONFIG_RTE_ARCH_64=y - -CONFIG_RTE_FORCE_INTRINSICS=y +#include "common_armv8a_linuxapp" CONFIG_RTE_TOOLCHAIN="gcc" CONFIG_RTE_TOOLCHAIN_GCC=y - -# Maximum available cache line size in arm64 implementations. -# Setting to maximum available cache line size in generic config -# to address minimum DMA alignment across all arm64 implementations. -CONFIG_RTE_CACHE_LINE_SIZE=128 - -CONFIG_RTE_EAL_IGB_UIO=n - -CONFIG_RTE_LIBRTE_FM10K_PMD=n -CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n -CONFIG_RTE_LIBRTE_AVP_PMD=n - -CONFIG_RTE_SCHED_VECTOR=n -- 2.12.2