From patchwork Tue Apr 9 19:06:19 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vivian Kong X-Patchwork-Id: 52496 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 7FFA954AE; Tue, 9 Apr 2019 21:06:38 +0200 (CEST) Received: from mail-qt1-f194.google.com (mail-qt1-f194.google.com [209.85.160.194]) by dpdk.org (Postfix) with ESMTP id A51EF4F98 for ; Tue, 9 Apr 2019 21:06:34 +0200 (CEST) Received: by mail-qt1-f194.google.com with SMTP id w30so21163193qta.8 for ; Tue, 09 Apr 2019 12:06:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references:reply-to; bh=CYAh6sQQhk56ewt8zoEACUwsrBuZatwgtDFTv69ngxU=; b=L/l6ld2Gnq1wi+tbdz6OlhVvSUrWzZ55b7twEGF+wchn1GozpLxpTDsBATtIRl7aT/ KdmQDetMLcs2GKY1G78fTCw9q+YQVBWmDgjqA83KoPU7g6aFKX1JOxENL+Gz1pxIK4Sd S4/P+88w4HQONSn9gDb+qFReQmG3MfIp7dE1WVBMjOrN7UN9TTsi5GS77CtGTzbPzrpu P3k3t24m7aZx+V1/wIWlZuWZiMQZalwqlk/6sdl49Jp1y3+7uUK9LcQFgbapgMT5C0xN tWMMi8OMpX45T7EPM/tiKdW88IjWSB2LqPW/2c+WPDy8B6UIeMSNMzUyQalNcZV2fKyW HttA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:reply-to; bh=CYAh6sQQhk56ewt8zoEACUwsrBuZatwgtDFTv69ngxU=; b=hPpXfaBe1uvlrbX5FOoerfsKMEGYab7EOD0nhNlMtOS3Zy1P0/D4eGLRh1JC2xxQ1P ayif0EyNyYv5Ukn9+xARmxDrjpdvbsueJGtNKpNbkxVsLRIqIRpZ76I1YKu9EHsmZRTP vfSvt0LrZSyyNXk2kSUJyk/SuDjEIXwDJ5sFs5+BWdxF0xzQf1eer8jSIa+qu4//Sjym trO8n4i2KnhT9eZVanW4F7dq06pGadA0IJd4ja1QoGAcNEsUidrO4gi6RlEhVxGvQO3d Om2QoP7Q+syS5iLh664/qFplBbh00o23863icfJ0AMLnMa5wy4L1CO5fOke206E/FGGg 1VRA== X-Gm-Message-State: APjAAAU0P0sfKaEfgYsmDS6q3vxSwnFj2UthqmDChKdQ9wAfPZMyQ5Mo EoxOOeHrZxJcAR06CVbq09h/RbmetXg= X-Google-Smtp-Source: APXvYqx8KzONIb7lZiolXX2iY3Ob8/rSj2A/XkL7St11Kd9UhiUHutKjmFnbmaoQpqTUEolFfI+mBw== X-Received: by 2002:ac8:3696:: with SMTP id a22mr30860327qtc.191.1554836793572; Tue, 09 Apr 2019 12:06:33 -0700 (PDT) Received: from csz25116.canlab.ibm.com ([199.246.40.57]) by smtp.gmail.com with ESMTPSA id q23sm17934789qkc.16.2019.04.09.12.06.32 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 09 Apr 2019 12:06:32 -0700 (PDT) From: Vivian Kong X-Google-Original-From: Vivian Kong To: dev@dpdk.org Date: Tue, 9 Apr 2019 15:06:19 -0400 Message-Id: <20190409190630.31975-2-vivkong@ca.ibm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190409190630.31975-1-vivkong@ca.ibm.com> References: <20190409190630.31975-1-vivkong@ca.ibm.com> Subject: [dpdk-dev] [RFC 01/12] mk: introduce s390x architecture X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: vivkong@ca.ibm.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" Add config and mk files to build DPDK on Linux on IBM Z (s390x). Signed-off-by: Vivian Kong --- config/defconfig_s390x-native-linux-gcc | 1 + config/defconfig_s390x-native-linuxapp-gcc | 33 ++++++++++++++++++++++ mk/arch/s390x/rte.vars.mk | 16 +++++++++++ mk/rte.cpuflags.mk | 5 ++++ 4 files changed, 55 insertions(+) create mode 120000 config/defconfig_s390x-native-linux-gcc create mode 100644 config/defconfig_s390x-native-linuxapp-gcc create mode 100644 mk/arch/s390x/rte.vars.mk diff --git a/config/defconfig_s390x-native-linux-gcc b/config/defconfig_s390x-native-linux-gcc new file mode 120000 index 000000000..28b9275cf --- /dev/null +++ b/config/defconfig_s390x-native-linux-gcc @@ -0,0 +1 @@ +defconfig_s390x-native-linuxapp-gcc \ No newline at end of file diff --git a/config/defconfig_s390x-native-linuxapp-gcc b/config/defconfig_s390x-native-linuxapp-gcc new file mode 100644 index 000000000..1241157d9 --- /dev/null +++ b/config/defconfig_s390x-native-linuxapp-gcc @@ -0,0 +1,33 @@ +# SPDX-License-Identifier: BSD-3-Clause +# +# (c) Copyright IBM Corp. 2018, 2019 + +#include "common_linux" + +CONFIG_RTE_MACHINE="z13" + +CONFIG_RTE_ARCH="s390x" +CONFIG_RTE_ARCH_64=y +CONFIG_RTE_ARCH_S390X=y + +#CONFIG_RTE_MAX_LCORE=256 +#CONFIG_RTE_MAX_NUMA_NODES=32 +#CONFIG_RTE_CACHE_LINE_SIZE=128 + +CONFIG_RTE_TOOLCHAIN="gcc" +CONFIG_RTE_TOOLCHAIN_GCC=y +CONFIG_RTE_FORCE_INTRINSICS=y +# Note: Power doesn't have this support +CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=n + +# Note: Initially, all of the PMD drivers compilation are turned off on s390x +# Will turn on them only after the successful testing on s390x +CONFIG_RTE_LIBRTE_IXGBE_PMD=n +CONFIG_RTE_LIBRTE_VIRTIO_PMD=y +CONFIG_RTE_LIBRTE_VMXNET3_PMD=n +CONFIG_RTE_LIBRTE_ENIC_PMD=n +CONFIG_RTE_LIBRTE_FM10K_PMD=n +CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n +CONFIG_RTE_LIBRTE_AVP_PMD=n +CONFIG_RTE_LIBRTE_BNXT_PMD=n +CONFIG_RTE_LIBRTE_ENETC_PMD=n diff --git a/mk/arch/s390x/rte.vars.mk b/mk/arch/s390x/rte.vars.mk new file mode 100644 index 000000000..9740c5684 --- /dev/null +++ b/mk/arch/s390x/rte.vars.mk @@ -0,0 +1,16 @@ +# SPDX-License-Identifier: BSD-3-Clause +# (c) Copyright IBM Corp. 2018, 2019 + +ARCH ?= s390 +CROSS ?= + +CPU_CFLAGS ?= -m64 +CPU_LDFLAGS ?= +CPU_ASFLAGS ?= -felf64 + +export ARCH CROSS CPU_CFLAGS CPU_LDFLAGS CPU_ASFLAGS + +RTE_OBJCOPY_TARGET = elf64-s390 +RTE_OBJCOPY_ARCH = s390 + +export RTE_OBJCOPY_TARGET RTE_OBJCOPY_ARCH diff --git a/mk/rte.cpuflags.mk b/mk/rte.cpuflags.mk index 541211c61..195022926 100644 --- a/mk/rte.cpuflags.mk +++ b/mk/rte.cpuflags.mk @@ -93,6 +93,11 @@ ifneq ($(filter $(AUTO_CPUFLAGS),__builtin_vsx_xvnmaddadp),) CPUFLAGS += VSX endif +# s390x +ifneq ($(filter $(AUTO_CPUFLAGS),__s390x__),) +CPUFLAGS += ZARCH +endif + # ARM flags ifneq ($(filter __ARM_NEON __aarch64__,$(AUTO_CPUFLAGS)),) CPUFLAGS += NEON