From patchwork Mon Mar 18 16:50:10 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jerin Jacob Kollanukkaran X-Patchwork-Id: 51294 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 D3C0F4C9D; Mon, 18 Mar 2019 17:56:06 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id C5D8A4C96 for ; Mon, 18 Mar 2019 17:56:05 +0100 (CET) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x2IGtHgI003928; Mon, 18 Mar 2019 09:56:02 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=OUt21dt6f8ucETMQTDezclsHvFqwA8Uod+8BH4iNfIs=; b=HLrldVI6wR+PJZcK58ZyfltqJ3onTtjt1bHeLWqCS5E/YxVh1SQMzOb2GwRccIOh3PhR CmERqUCXeveq3OafOBUd/uqbNa4JGVZmWxhiuisFWy8owzEnYOxmCpzuIzcyJFAWLqZe p6AD7JH9VnMsv7qKj1zpDyxR7VtgN+pS5cGxhTmHcakaFNMr4rk0Oaklry1LynZXG4jY Hz28nerrRm1QKY0oE5okCkUMSEPB25bNpjhshgZqOy7GB+j0toV3N342rtSgrC+fKQt9 yCMTFuyuA8UuAu7Qvlr+rnl9OmEBRJhJ0IxuO4c38ZiA9e/8RrBydSDUf4LCGqihDzLL mw== Received: from sc-exch01.marvell.com ([199.233.58.181]) by mx0b-0016f401.pphosted.com with ESMTP id 2raapr8vux-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 18 Mar 2019 09:56:02 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 18 Mar 2019 09:55:15 -0700 Received: from NAM04-BN3-obe.outbound.protection.outlook.com (104.47.46.55) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Mon, 18 Mar 2019 09:55:15 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OUt21dt6f8ucETMQTDezclsHvFqwA8Uod+8BH4iNfIs=; b=E1cXv0ibeLift7N4feR0j8lFnGmIBpMzxajcnRuIMbXTxKoZUqHkIZ3WtBQBMyBPSUuWB0zhbcsS1HYTVzzEswnz7hSnNGZ1vVCuNvbL7EDkLxHPgGitC//ii1xEs7BIxAwiWxv8KgX39yhToO9fV6d685cSIJHE5jg6Ic7MXqo= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2853.namprd18.prod.outlook.com (20.179.58.79) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1709.13; Mon, 18 Mar 2019 16:50:11 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::2cce:b981:61da:f92b]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::2cce:b981:61da:f92b%2]) with mapi id 15.20.1709.015; Mon, 18 Mar 2019 16:50:11 +0000 From: Jerin Jacob Kollanukkaran To: Thomas Monjalon CC: "dev@dpdk.org" , "gavin.hu@arm.com" , Jerin Jacob Kollanukkaran , Pavan Nikhilesh Bhagavatula Thread-Topic: [dpdk-dev] [PATCH v6 1/4] mk: introduce helper to check valid compiler argument Thread-Index: AQHU3aqmuIBOxg0KGUex+QnVhjHP6Q== Date: Mon, 18 Mar 2019 16:50:10 +0000 Message-ID: <20190318164949.2357-1-jerinj@marvell.com> References: <20190224181041.27127-1-jerinj@marvell.com> In-Reply-To: <20190224181041.27127-1-jerinj@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: BM1PR01CA0142.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:40::36) To BYAPR18MB2424.namprd18.prod.outlook.com (2603:10b6:a03:130::21) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.21.0 x-originating-ip: [111.93.218.67] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 080b2033-0cf3-44af-a61b-08d6abc1c8d1 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600127)(711020)(4605104)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7153060)(7193020); SRVR:BYAPR18MB2853; x-ms-traffictypediagnostic: BYAPR18MB2853: x-microsoft-antispam-prvs: x-forefront-prvs: 098076C36C x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(136003)(376002)(396003)(366004)(346002)(39860400002)(199004)(189003)(6916009)(52116002)(386003)(68736007)(6506007)(66066001)(71200400001)(71190400001)(2906002)(76176011)(99286004)(1076003)(256004)(5660300002)(14444005)(53936002)(86362001)(78486014)(25786009)(316002)(3846002)(305945005)(8936002)(478600001)(54906003)(8676002)(50226002)(6486002)(6512007)(6436002)(81166006)(97736004)(36756003)(81156014)(7736002)(11346002)(2616005)(446003)(186003)(486006)(476003)(4326008)(26005)(14454004)(6116002)(105586002)(102836004)(106356001)(107886003); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2853; H:BYAPR18MB2424.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: rYeYLk6PN/UMAg+J5fZRzmWS3Zf0rItsH4go25BOuAXDLfLtQmsSU70Ei5gZx/myPk3zQjyBywn4P/5m36jXZKjnXF8YqLvkPMrxm1yNbKOy3N7CO6SKFMpqRvr49g/JpvYTnM94Zwgq5YGWmVU+Gq/8VOLGPHLDDX+Orwj6oErIMvHIBxTbk0oE5b+Yb6HQ4tHGrZNFebSvrDcEm3Sm+znOll05YZeFEfuM/I3Ll167GpUXKzejeFNTv9i04msY8votE1RbuqMg1DlHopSzxWAF9vnJFFQUdphPBd1OAPqmeqgoCXPcbhjcNDV/LzRCJXdV2qlGnLBwmd6BSbxYMbjyJ1Nak2xuPZMDQCk40CPdQSbtPHYTvDFkxz8vJvWlX68Znma4JH3BRhNM4Ip0SUHLGMaqok5JwPAqhfSmXSQ= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 080b2033-0cf3-44af-a61b-08d6abc1c8d1 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Mar 2019 16:50:10.9246 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2853 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-03-18_11:, , signatures=0 Subject: [dpdk-dev] [PATCH v6 1/4] mk: introduce helper to check valid compiler argument 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" From: Jerin Jacob Introduce rte_cc_has_argument() Makefile helper to check a given argument is support by the compiler. Example Usage: include $(RTE_SDK)/mk/rte.helper.mk MACHINE_CFLAGS += $(call rte_cc_has_argument, -mcpu=octeontx2) This would allow adding -mcpu=octeontx2 in MACHINE_CFLAGS if it is only supported by the compiler. The use case for such scheme is to enable the mcpu optimization if the compiler supports else it needs to compile the source code without any errors. This patch also moves inclusion of toolchain's rte.vars.mk to before the machine's rte.vars.mk inclusion to make correct CC available for the cross compile case. Signed-off-by: Jerin Jacob Signed-off-by: Pavan Nikhilesh --- Change history of this series: v2 Changes: - Add meson build support. v3 Changes: - Squash meson build support into config support for thunderx2/octeontx2. v4 Changes: - Fix incorrect signoff marrvell -> marvell. v5 Changes: - Fix incorrect meson flag parsing(Phil Yang) - Squash meson cross build patch(5/5) into configuration update patches for thunderx2(3/5) and octeontx2(4/5)(Thomas) - Changed octeontx2's march as armv8-a and added the extension required instead of armv8-2a(Phil Yang) - Improved rte_cc_has_argument() implementaion by removing the temp file(Thomas) v6 Changes: - Rework to change the config files to sync with "mk: use linux and freebsd in config names" - Fix the following error with latest gcc by fixing the mcpu type cc1: error: switch -mcpu=armv8.2-a conflicts with -march=armv8-a switch --- mk/rte.helper.mk | 10 ++++++++++ mk/target/generic/rte.vars.mk | 22 +++++++++++----------- 2 files changed, 21 insertions(+), 11 deletions(-) create mode 100644 mk/rte.helper.mk diff --git a/mk/rte.helper.mk b/mk/rte.helper.mk new file mode 100644 index 000000000..6e7fd03d7 --- /dev/null +++ b/mk/rte.helper.mk @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Marvell International Ltd + +# rte_cc_has_argument +# Usage: MACHINE_CFLAGS += $(call rte_cc_has_argument, -mno-avx512f) +# Return the argument if the argument is supported by the compiler. +# +define rte_cc_has_argument + $(shell $(CC) -E $(1) -xc /dev/null 1>/dev/null 2>/dev/null && echo $(1)) +endef diff --git a/mk/target/generic/rte.vars.mk b/mk/target/generic/rte.vars.mk index dd149acc9..25a578ad7 100644 --- a/mk/target/generic/rte.vars.mk +++ b/mk/target/generic/rte.vars.mk @@ -7,6 +7,17 @@ # executive environment. # +# +# toolchain: +# +# - define CC, LD, AR, AS, ... +# - define TOOLCHAIN_CFLAGS variable (overridden by cmdline value) +# - define TOOLCHAIN_LDFLAGS variable (overridden by cmdline value) +# - define TOOLCHAIN_ASFLAGS variable (overridden by cmdline value) +# - may override any previously defined variable +# +include $(RTE_SDK)/mk/toolchain/$(RTE_TOOLCHAIN)/rte.vars.mk + # # machine: # @@ -45,17 +56,6 @@ endif # include $(RTE_SDK)/mk/arch/$(RTE_ARCH)/rte.vars.mk -# -# toolchain: -# -# - define CC, LD, AR, AS, ... -# - define TOOLCHAIN_CFLAGS variable (overridden by cmdline value) -# - define TOOLCHAIN_LDFLAGS variable (overridden by cmdline value) -# - define TOOLCHAIN_ASFLAGS variable (overridden by cmdline value) -# - may override any previously defined variable -# -include $(RTE_SDK)/mk/toolchain/$(RTE_TOOLCHAIN)/rte.vars.mk - # # exec-env: # From patchwork Mon Mar 18 16:50:16 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jerin Jacob Kollanukkaran X-Patchwork-Id: 51292 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 3C4114CAB; Mon, 18 Mar 2019 17:51:05 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 0BE844CA7 for ; Mon, 18 Mar 2019 17:51:02 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x2IGkUDd024373; Mon, 18 Mar 2019 09:51:00 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=3QERh+V6D74p30VPpr030LgRS8ppIxRt+1wUU5v6bpM=; b=wxvteT70mZDnogG0Zsr55gqvq8pK7SyTH2RYbAP1ObAu1rytDZPmWCwLUE3hN85nZABs fp8gohrbYvwaf3ID+7Ko5Cpj8/bY+THQwJl6L60xaxE4tlk8IxR/BTAoLJ1/k/oKZKZ1 +nek8Q7xn6h03u6OJZP3okrQJ5fUOYTijZb08PrTXjjMnvDDIItKDC3p1bd62/y+2H/E ncAPDbPXw+uyQxqX1He77ABb7JscoUZSQCrAV8H18/auKxZEBbJsN/1LxJRzAVjREElc BVVV5BXjODyCsfXhxB2QJmG9O47aJBBI0vFCERRox9viGfE8WzTuwntU24Rg5z6amuOg Ig== Received: from sc-exch01.marvell.com ([199.233.58.181]) by mx0a-0016f401.pphosted.com with ESMTP id 2ra80ch9c8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 18 Mar 2019 09:50:59 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 18 Mar 2019 09:50:48 -0700 Received: from NAM05-CO1-obe.outbound.protection.outlook.com (104.47.48.50) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Mon, 18 Mar 2019 09:50:48 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3QERh+V6D74p30VPpr030LgRS8ppIxRt+1wUU5v6bpM=; b=C7v1El3oaP2gHC7sv5n8TVRQbPKLaKyKBDZGzvcVsjZV0dJg8lri5Te+a05F6+JdwdwSU22XGyDryUgZ5oqHrcY539L+Jc8DlD91qiMFVn1aXwkU0re3TKfz+xjj+SnKIREnbfYf2Lr8EAuU6K/Hyk4UD+DfqwIM/EG+S0Wc2tY= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2853.namprd18.prod.outlook.com (20.179.58.79) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1709.13; Mon, 18 Mar 2019 16:50:16 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::2cce:b981:61da:f92b]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::2cce:b981:61da:f92b%2]) with mapi id 15.20.1709.015; Mon, 18 Mar 2019 16:50:16 +0000 From: Jerin Jacob Kollanukkaran To: Thomas Monjalon CC: "dev@dpdk.org" , "gavin.hu@arm.com" , Pavan Nikhilesh Bhagavatula , "Jerin Jacob Kollanukkaran" Thread-Topic: [dpdk-dev] [PATCH v6 2/4] meson: add infra to support machine specific flags Thread-Index: AQHU3aqpHu6f5CFx00GnDl8bfBw2Dg== Date: Mon, 18 Mar 2019 16:50:16 +0000 Message-ID: <20190318164949.2357-2-jerinj@marvell.com> References: <20190224181041.27127-1-jerinj@marvell.com> <20190318164949.2357-1-jerinj@marvell.com> In-Reply-To: <20190318164949.2357-1-jerinj@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: BM1PR01CA0142.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:40::36) To BYAPR18MB2424.namprd18.prod.outlook.com (2603:10b6:a03:130::21) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.21.0 x-originating-ip: [111.93.218.67] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ec320332-13a6-4c1a-599c-08d6abc1cc15 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600127)(711020)(4605104)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7153060)(7193020); SRVR:BYAPR18MB2853; x-ms-traffictypediagnostic: BYAPR18MB2853: x-microsoft-antispam-prvs: x-forefront-prvs: 098076C36C x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(136003)(376002)(396003)(366004)(346002)(39860400002)(199004)(189003)(6916009)(52116002)(386003)(68736007)(6506007)(66066001)(71200400001)(71190400001)(2906002)(76176011)(99286004)(1076003)(256004)(5660300002)(53936002)(86362001)(78486014)(25786009)(316002)(3846002)(305945005)(8936002)(478600001)(54906003)(8676002)(50226002)(6486002)(6512007)(6436002)(81166006)(97736004)(36756003)(81156014)(7736002)(11346002)(2616005)(446003)(186003)(486006)(476003)(4326008)(26005)(14454004)(6116002)(105586002)(102836004)(106356001)(107886003); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2853; H:BYAPR18MB2424.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: y1418opJcLxR1N9yBmc7qC85FjbAcHXo+Z6OgXTSvhD85zCI2o8RixyR9rmXoZ338YIOhHV1bK8fc8CCGXjriT3Y3skeuobQ4tv3uHqWKlzK0G7rnc3xJMduENcHNl3LjIauTgjf8JoYHVdXM20+87ePWWSrxqWJXr4fxvbr5IInutFt9kX9eIyjkuuuExOnkJSxrCzVMBSm6bxPTP2q5EqVd3kzg4pU0QOWWebGkCOn6eO1wscgbNutkzE8UqSxw9U7+xcp6zqCv783fiA0aiAwq0cQYixlUFya0I8pR1NZZ22M/cC6+TflX/EOKEWE0neDdvGCQNSDOEjU63iwBC2AzcWET0UckX29MwgAwNDvaQERxJpov7cvTmsyWgMED5i8PPAoJVXTI11krF82TTeB+A6rjJgQDM1Tv92G5WM= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: ec320332-13a6-4c1a-599c-08d6abc1cc15 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Mar 2019 16:50:16.3214 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2853 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-03-18_11:, , signatures=0 Subject: [dpdk-dev] [PATCH v6 2/4] meson: add infra to support machine specific flags 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" From: Pavan Nikhilesh Currently, RTE_* flags are set based on the implementer ID but there might be some micro arch specific differences from the same vendor eg. CACHE_LINESIZE. Add support to set micro arch specific flags. Signed-off-by: Pavan Nikhilesh Signed-off-by: Jerin Jacob --- config/arm/meson.build | 37 ++++++++++++++++++++++++++++++++----- 1 file changed, 32 insertions(+), 5 deletions(-) diff --git a/config/arm/meson.build b/config/arm/meson.build index 8e892fa77..3db6d6445 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -52,12 +52,10 @@ flags_generic = [ ['RTE_USE_C11_MEM_MODEL', true], ['RTE_CACHE_LINE_SIZE', 128]] flags_cavium = [ - ['RTE_MACHINE', '"thunderx"'], ['RTE_CACHE_LINE_SIZE', 128], ['RTE_MAX_NUMA_NODES', 2], ['RTE_MAX_LCORE', 96], - ['RTE_MAX_VFIO_GROUPS', 128], - ['RTE_USE_C11_MEM_MODEL', false]] + ['RTE_MAX_VFIO_GROUPS', 128]] flags_dpaa = [ ['RTE_MACHINE', '"dpaa"'], ['RTE_USE_C11_MEM_MODEL', true], @@ -71,6 +69,27 @@ flags_dpaa2 = [ ['RTE_MAX_NUMA_NODES', 1], ['RTE_MAX_LCORE', 16], ['RTE_LIBRTE_DPAA2_USE_PHYS_IOVA', false]] +flags_default_extra = [] +flags_thunderx_extra = [ + ['RTE_MACHINE', '"thunderx"'], + ['RTE_USE_C11_MEM_MODEL', false]] + +machine_args_generic = [ + ['default', ['-march=armv8-a+crc+crypto']], + ['native', ['-march=native']], + ['0xd03', ['-mcpu=cortex-a53']], + ['0xd04', ['-mcpu=cortex-a35']], + ['0xd07', ['-mcpu=cortex-a57']], + ['0xd08', ['-mcpu=cortex-a72']], + ['0xd09', ['-mcpu=cortex-a73']], + ['0xd0a', ['-mcpu=cortex-a75']]] + +machine_args_cavium = [ + ['default', ['-march=armv8-a+crc+crypto','-mcpu=thunderx']], + ['native', ['-march=native']], + ['0xa1', ['-mcpu=thunderxt88'], flags_thunderx_extra], + ['0xa2', ['-mcpu=thunderxt81'], flags_thunderx_extra], + ['0xa3', ['-mcpu=thunderxt83'], flags_thunderx_extra]] ## Arm implementer ID (ARM DDI 0487C.a, Section G7.2.106, Page G7-5321) impl_generic = ['Generic armv8', flags_generic, machine_args_generic] @@ -157,8 +176,16 @@ else endif foreach marg: machine[2] if marg[0] == impl_pn - foreach f: marg[1] - machine_args += f + foreach flag: marg[1] + if cc.has_argument(flag) + machine_args += flag + endif + endforeach + # Apply any extra machine specific flags. + foreach flag: marg.get(2, flags_default_extra) + if flag.length() > 0 + dpdk_conf.set(flag[0], flag[1]) + endif endforeach endif endforeach From patchwork Mon Mar 18 16:50:21 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jerin Jacob Kollanukkaran X-Patchwork-Id: 51290 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 3A6CB2C60; Mon, 18 Mar 2019 17:50:43 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 71C412C30 for ; Mon, 18 Mar 2019 17:50:42 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x2IGkRdZ024361; Mon, 18 Mar 2019 09:50:38 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=Wrh9g0SfRrs4unhP6CyykiqytKoHtztKi33l5CN2p5A=; b=ruv/6i486t16Rr+BmNa0/TAEy40xFB7ogUY15LPqFh14CbYRIvRC45CWp6AZt0c5jr/n X8JY7EFgFeeoLGMMTy+ltLwwCek4omdA6N2rz+mY0HDXwELV+vB9LM6qrTVqQiuXH1u8 voO2KDH2q1E5sJWk/YInJ14pZqo8957IVP+xRUYblIazzzPB4Ni3lEdy+xNvCY2rVU6V x3tusSOQC9nX6N5SHpmPGLTuijCiXbnWmC8UenpY/A30iu0Cd8zzm5ax3tHtGiQ5eMbF hrW5TNtgoAuLJZV4h5cat9iV7NiqC+lbojhe0rfK82i9F8QSBfwait+CH5DcjHMigDh6 VA== Received: from sc-exch04.marvell.com ([199.233.58.184]) by mx0a-0016f401.pphosted.com with ESMTP id 2ra80ch9b5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 18 Mar 2019 09:50:38 -0700 Received: from SC-EXCH04.marvell.com (10.93.176.84) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 18 Mar 2019 09:50:27 -0700 Received: from NAM01-SN1-obe.outbound.protection.outlook.com (104.47.32.53) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Mon, 18 Mar 2019 09:50:27 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Wrh9g0SfRrs4unhP6CyykiqytKoHtztKi33l5CN2p5A=; b=BwZn8NFr+38m1lRdYZ/4Ihb1v4S+HCXQTwW1v1i1UdZITm1o4RHxnpqilwW6Y4R4eKxQ+fUjm18HsyB/95SuGpEsCPLhY2hR9EneMax6OTB8HAHcr1A1UcAXqjTixfgWwm9PoDNBTEFCCCX0PL0AOQZEkOtFwdnJs/iN6r+NQgs= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2806.namprd18.prod.outlook.com (20.179.57.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1709.13; Mon, 18 Mar 2019 16:50:21 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::2cce:b981:61da:f92b]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::2cce:b981:61da:f92b%2]) with mapi id 15.20.1709.015; Mon, 18 Mar 2019 16:50:21 +0000 From: Jerin Jacob Kollanukkaran To: Thomas Monjalon CC: "dev@dpdk.org" , "gavin.hu@arm.com" , Jerin Jacob Kollanukkaran , Pavan Nikhilesh Bhagavatula Thread-Topic: [dpdk-dev] [PATCH v6 3/4] config: add thunderx2 machine config Thread-Index: AQHU3aqspaKkfGNh10m6tOgcj2GNEg== Date: Mon, 18 Mar 2019 16:50:21 +0000 Message-ID: <20190318164949.2357-3-jerinj@marvell.com> References: <20190224181041.27127-1-jerinj@marvell.com> <20190318164949.2357-1-jerinj@marvell.com> In-Reply-To: <20190318164949.2357-1-jerinj@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: BM1PR01CA0142.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:40::36) To BYAPR18MB2424.namprd18.prod.outlook.com (2603:10b6:a03:130::21) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.21.0 x-originating-ip: [111.93.218.67] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 95967ae1-3391-4a5e-1884-08d6abc1ceed x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(2017052603328)(7153060)(7193020); SRVR:BYAPR18MB2806; x-ms-traffictypediagnostic: BYAPR18MB2806: x-ms-exchange-purlcount: 1 x-microsoft-antispam-prvs: x-forefront-prvs: 098076C36C x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(346002)(366004)(39860400002)(136003)(396003)(189003)(199004)(6512007)(105586002)(102836004)(99286004)(5660300002)(6306002)(66066001)(8676002)(476003)(2906002)(486006)(68736007)(81166006)(81156014)(78486014)(2616005)(6916009)(966005)(1076003)(50226002)(478600001)(107886003)(54906003)(6506007)(386003)(26005)(14444005)(256004)(316002)(3846002)(6436002)(36756003)(6116002)(14454004)(71190400001)(71200400001)(25786009)(97736004)(76176011)(7736002)(305945005)(11346002)(8936002)(186003)(6486002)(53936002)(446003)(4326008)(106356001)(52116002)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2806; H:BYAPR18MB2424.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:3; A:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: e08D1UebpiRX5OoSsEiJPnesx49BKWmn7f+vh+dJACRGPBi3uP0HzRGOpF6L4tWVV85iRvmQ10XF6k0GtseP023sSdnv1zTTsmcc4FJCmKyc+dQUNiKlO7MDqLq+HAcec9dDQO4uGi02b0zjIAdDKbeRQn36UnQP++xA81tq71AXzDR5avdI0bJHz3vZROGYvXar2vdeePf5jXE3egzljnr5BurSyph9H3M1UfAEV8P+4ESfe0h66wkkXd1SibsVP1plDxwQ9nwpP+owj/6qBDu1P8j62GcDcDS7rR89rRLOxFaH3v8zkvLMwA2a1gqbgKsVIuSpAX0Pm8D7cZCh43ZNftLF46nztlT/vBdTVKA1X518y8w3ObSjkP9GubzwfpjpvMpyVaPmBW2Gn1GW8tYne56qywn4aeMe2mP7cj4= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 95967ae1-3391-4a5e-1884-08d6abc1ceed X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Mar 2019 16:50:21.0758 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2806 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-03-18_11:, , signatures=0 Subject: [dpdk-dev] [PATCH v6 3/4] config: add thunderx2 machine config 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" From: Jerin Jacob Optimized configuration for Marvell thunderx2 SoC. Updated meson build to support Marvell thunderx2 SoC. Added meson cross compile target. Product details are here: https://www.marvell.com/server-processors/thunderx2-arm-processors/ Signed-off-by: Jerin Jacob Signed-off-by: Pavan Nikhilesh Reviewed-by: Gavin Hu --- config/arm/arm64_thunderx2_linux_gcc | 15 ++++++++ config/arm/meson.build | 9 ++++- config/defconfig_arm64-thunderx2-linux-gcc | 1 + config/defconfig_arm64-thunderx2-linuxapp-gcc | 11 ++++++ mk/machine/thunderx2/rte.vars.mk | 34 +++++++++++++++++++ 5 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 config/arm/arm64_thunderx2_linux_gcc create mode 120000 config/defconfig_arm64-thunderx2-linux-gcc create mode 100644 config/defconfig_arm64-thunderx2-linuxapp-gcc create mode 100644 mk/machine/thunderx2/rte.vars.mk diff --git a/config/arm/arm64_thunderx2_linux_gcc b/config/arm/arm64_thunderx2_linux_gcc new file mode 100644 index 000000000..48b07a40c --- /dev/null +++ b/config/arm/arm64_thunderx2_linux_gcc @@ -0,0 +1,15 @@ +[binaries] +c = 'aarch64-linux-gnu-gcc' +cpp = 'aarch64-linux-gnu-cpp' +ar = 'aarch64-linux-gnu-gcc-ar' +strip = 'aarch64-linux-gnu-strip' + +[host_machine] +system = 'linux' +cpu_family = 'aarch64' +cpu = 'armv8-a' +endian = 'little' + +[properties] +implementor_id = '0x43' +implementor_pn = '0xaf' diff --git a/config/arm/meson.build b/config/arm/meson.build index 3db6d6445..5c391ed3c 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -73,6 +73,12 @@ flags_default_extra = [] flags_thunderx_extra = [ ['RTE_MACHINE', '"thunderx"'], ['RTE_USE_C11_MEM_MODEL', false]] +flags_thunderx2_extra = [ + ['RTE_MACHINE', '"thunderx2"'], + ['RTE_CACHE_LINE_SIZE', 64], + ['RTE_MAX_NUMA_NODES', 2], + ['RTE_MAX_LCORE', 256], + ['RTE_USE_C11_MEM_MODEL', true]] machine_args_generic = [ ['default', ['-march=armv8-a+crc+crypto']], @@ -89,7 +95,8 @@ machine_args_cavium = [ ['native', ['-march=native']], ['0xa1', ['-mcpu=thunderxt88'], flags_thunderx_extra], ['0xa2', ['-mcpu=thunderxt81'], flags_thunderx_extra], - ['0xa3', ['-mcpu=thunderxt83'], flags_thunderx_extra]] + ['0xa3', ['-mcpu=thunderxt83'], flags_thunderx_extra], + ['0xaf', ['-mcpu=thunderx2t99'], flags_thunderx2_extra]] ## Arm implementer ID (ARM DDI 0487C.a, Section G7.2.106, Page G7-5321) impl_generic = ['Generic armv8', flags_generic, machine_args_generic] diff --git a/config/defconfig_arm64-thunderx2-linux-gcc b/config/defconfig_arm64-thunderx2-linux-gcc new file mode 120000 index 000000000..b40a760b1 --- /dev/null +++ b/config/defconfig_arm64-thunderx2-linux-gcc @@ -0,0 +1 @@ +defconfig_arm64-thunderx2-linuxapp-gcc \ No newline at end of file diff --git a/config/defconfig_arm64-thunderx2-linuxapp-gcc b/config/defconfig_arm64-thunderx2-linuxapp-gcc new file mode 100644 index 000000000..cc5c64ba0 --- /dev/null +++ b/config/defconfig_arm64-thunderx2-linuxapp-gcc @@ -0,0 +1,11 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Marvell International Ltd +# + +#include "defconfig_arm64-armv8a-linux-gcc" + +CONFIG_RTE_MACHINE="thunderx2" + +CONFIG_RTE_CACHE_LINE_SIZE=64 +CONFIG_RTE_MAX_NUMA_NODES=2 +CONFIG_RTE_MAX_LCORE=256 diff --git a/mk/machine/thunderx2/rte.vars.mk b/mk/machine/thunderx2/rte.vars.mk new file mode 100644 index 000000000..b80dc8680 --- /dev/null +++ b/mk/machine/thunderx2/rte.vars.mk @@ -0,0 +1,34 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Marvell International 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.1-a+crc+crypto) +MACHINE_CFLAGS += $(call rte_cc_has_argument, -mcpu=thunderx2t99) From patchwork Mon Mar 18 16:50:24 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jerin Jacob Kollanukkaran X-Patchwork-Id: 51291 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 94323324D; Mon, 18 Mar 2019 17:50:52 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 9223B2C30 for ; Mon, 18 Mar 2019 17:50:50 +0100 (CET) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x2IGjWG6028272; Mon, 18 Mar 2019 09:50:45 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=tnc+wK7rIdaATD96YVt4obJ90MBjL79/znlWcJDSYtk=; b=M7kyZon3JCnUROYhyX2ZzjXaIhkr3ZgmMJjTO+auQO01sTTi08wJGL8ho4ArOE5VHDot t3oxPNZlSarlhmH6JbOpCeNSSGjhv5giLlJ827SyZ/txvRA9fb518r+M/4V/I5owuCGy wOhKVCZmeJtkX3/srDtoQu1a7JS+U3cXVx3fSdlAUfN2B9MSvEE2Uqu597AaZsuMzraN E53598rIeZQvKVgAJKyL8A+/CgfdH8Ud9y/VYWpcmQ3RXpPdq/eHGIBCp9emw+oDCA7n w/FXgxozq/gJuBmWTwJlAqQdwn1TnCWFMw4f2jeAZcr51jJcDOCIA2S89eP80zw+Dxwk ig== Received: from sc-exch04.marvell.com ([199.233.58.184]) by mx0b-0016f401.pphosted.com with ESMTP id 2raapr8vd0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 18 Mar 2019 09:50:44 -0700 Received: from SC-EXCH04.marvell.com (10.93.176.84) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 18 Mar 2019 09:50:38 -0700 Received: from NAM01-SN1-obe.outbound.protection.outlook.com (104.47.32.53) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Mon, 18 Mar 2019 09:50:38 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tnc+wK7rIdaATD96YVt4obJ90MBjL79/znlWcJDSYtk=; b=DqeI4yZXA7iaDwMUqCfhLxHDuZpQ9XRAqkv5SXr/jfMhEauFcHvDfc5mb1fZYsxMUV6FeNV5N17wasJhfow1eYwnlkSP0GjzUeDm00VIHTEtR7z9gsxW7m8Gcz+kFm8JB3Yb0x7P5VY047Wh0Ug1dyptMrVCAcqBKR0HUj6gbCk= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2806.namprd18.prod.outlook.com (20.179.57.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1709.13; Mon, 18 Mar 2019 16:50:25 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::2cce:b981:61da:f92b]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::2cce:b981:61da:f92b%2]) with mapi id 15.20.1709.015; Mon, 18 Mar 2019 16:50:25 +0000 From: Jerin Jacob Kollanukkaran To: Thomas Monjalon CC: "dev@dpdk.org" , "gavin.hu@arm.com" , Jerin Jacob Kollanukkaran , Pavan Nikhilesh Bhagavatula Thread-Topic: [dpdk-dev] [PATCH v6 4/4] config: add octeontx2 machine config Thread-Index: AQHU3aquXRI6of6n00Oul8m4KPeKqQ== Date: Mon, 18 Mar 2019 16:50:24 +0000 Message-ID: <20190318164949.2357-4-jerinj@marvell.com> References: <20190224181041.27127-1-jerinj@marvell.com> <20190318164949.2357-1-jerinj@marvell.com> In-Reply-To: <20190318164949.2357-1-jerinj@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: BM1PR01CA0142.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:40::36) To BYAPR18MB2424.namprd18.prod.outlook.com (2603:10b6:a03:130::21) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.21.0 x-originating-ip: [111.93.218.67] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 6f9b831c-3b73-4544-5e27-08d6abc1d12d x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(2017052603328)(7153060)(7193020); SRVR:BYAPR18MB2806; x-ms-traffictypediagnostic: BYAPR18MB2806: x-microsoft-antispam-prvs: x-forefront-prvs: 098076C36C x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(346002)(366004)(39860400002)(136003)(396003)(189003)(199004)(6512007)(105586002)(102836004)(99286004)(5660300002)(66066001)(8676002)(476003)(2906002)(486006)(68736007)(81166006)(81156014)(78486014)(2616005)(6916009)(1076003)(50226002)(478600001)(107886003)(54906003)(6506007)(386003)(26005)(14444005)(256004)(316002)(3846002)(6436002)(36756003)(6116002)(14454004)(71190400001)(71200400001)(25786009)(97736004)(76176011)(7736002)(305945005)(11346002)(8936002)(186003)(6486002)(53936002)(446003)(4326008)(106356001)(52116002)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2806; H:BYAPR18MB2424.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: LpNtjdYHf6paxPGF4ktwUfb59dA19UOsVSUDkl+Pm8GYRPYcS/RTO/S0H+AG4EH8abedbWSZka3ZF3LxsobQJg7DxRsORv5Q+rt28lyHJgUQYi79l5iUdt3cORVdEl+Rbzx6lZ8iZEnisZjJks4RGD5X0xsYq4xh5ETv6vrAFvhh8F7LlMdPCOljR3iw1fz8FUeo9jPHfxAm6MmuFdiZ9xP3MM4YGSZ0MaW+EzWSkCQ/vlLLbzxohLm8IyXd0eKt1sc/+A6Ff0l4EAiuFxPhj1Kpc7ky0zo1b9td9lH0y7orG93An4yuOXIyIhVpxZFwuiuTwX/92DB81bYKjCnJqXOgu1Q6Nm7wJXH8/4I54Yzz3WAuVLVOwqhSzr7tziPxZHuwnecDPM4blEiI/AfUqf7DhSNCoR69UPbDyxckl7U= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 6f9b831c-3b73-4544-5e27-08d6abc1d12d X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Mar 2019 16:50:24.8755 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2806 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-03-18_11:, , signatures=0 Subject: [dpdk-dev] [PATCH v6 4/4] config: add octeontx2 machine config 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" From: Jerin Jacob Optimized configuration for Marvell octeontx2 SoC. Updated meson build to support Marvell octeontx2 SoC. Added meson cross build target for octeontx2. Signed-off-by: Jerin Jacob Signed-off-by: Pavan Nikhilesh Reviewed-by: Gavin Hu --- config/arm/arm64_octeontx2_linux_gcc | 15 ++++++++ config/arm/meson.build | 9 ++++- config/defconfig_arm64-octeontx2-linux-gcc | 1 + config/defconfig_arm64-octeontx2-linuxapp-gcc | 18 ++++++++++ mk/machine/octeontx2/rte.vars.mk | 34 +++++++++++++++++++ 5 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 config/arm/arm64_octeontx2_linux_gcc create mode 120000 config/defconfig_arm64-octeontx2-linux-gcc create mode 100644 config/defconfig_arm64-octeontx2-linuxapp-gcc create mode 100644 mk/machine/octeontx2/rte.vars.mk diff --git a/config/arm/arm64_octeontx2_linux_gcc b/config/arm/arm64_octeontx2_linux_gcc new file mode 100644 index 000000000..7a6429b1b --- /dev/null +++ b/config/arm/arm64_octeontx2_linux_gcc @@ -0,0 +1,15 @@ +[binaries] +c = 'aarch64-linux-gnu-gcc' +cpp = 'aarch64-linux-gnu-cpp' +ar = 'aarch64-linux-gnu-gcc-ar' +strip = 'aarch64-linux-gnu-strip' + +[host_machine] +system = 'linux' +cpu_family = 'aarch64' +cpu = 'armv8-a' +endian = 'little' + +[properties] +implementor_id = '0x43' +implementor_pn = '0xb2' diff --git a/config/arm/meson.build b/config/arm/meson.build index 5c391ed3c..87ae40c24 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -79,6 +79,12 @@ flags_thunderx2_extra = [ ['RTE_MAX_NUMA_NODES', 2], ['RTE_MAX_LCORE', 256], ['RTE_USE_C11_MEM_MODEL', true]] +flags_octeontx2_extra = [ + ['RTE_MACHINE', '"octeontx2"'], + ['RTE_MAX_NUMA_NODES', 1], + ['RTE_MAX_LCORE', 24], + ['RTE_EAL_IGB_UIO', false], + ['RTE_USE_C11_MEM_MODEL', true]] machine_args_generic = [ ['default', ['-march=armv8-a+crc+crypto']], @@ -96,7 +102,8 @@ machine_args_cavium = [ ['0xa1', ['-mcpu=thunderxt88'], flags_thunderx_extra], ['0xa2', ['-mcpu=thunderxt81'], flags_thunderx_extra], ['0xa3', ['-mcpu=thunderxt83'], flags_thunderx_extra], - ['0xaf', ['-mcpu=thunderx2t99'], flags_thunderx2_extra]] + ['0xaf', ['-mcpu=thunderx2t99'], flags_thunderx2_extra], + ['0xb2', ['-mcpu=octeontx2'], flags_octeontx2_extra]] ## Arm implementer ID (ARM DDI 0487C.a, Section G7.2.106, Page G7-5321) impl_generic = ['Generic armv8', flags_generic, machine_args_generic] diff --git a/config/defconfig_arm64-octeontx2-linux-gcc b/config/defconfig_arm64-octeontx2-linux-gcc new file mode 120000 index 000000000..e25150531 --- /dev/null +++ b/config/defconfig_arm64-octeontx2-linux-gcc @@ -0,0 +1 @@ +defconfig_arm64-octeontx2-linuxapp-gcc \ No newline at end of file diff --git a/config/defconfig_arm64-octeontx2-linuxapp-gcc b/config/defconfig_arm64-octeontx2-linuxapp-gcc new file mode 100644 index 000000000..9eae84538 --- /dev/null +++ b/config/defconfig_arm64-octeontx2-linuxapp-gcc @@ -0,0 +1,18 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Marvell International Ltd +# + +#include "defconfig_arm64-armv8a-linux-gcc" + +CONFIG_RTE_MACHINE="octeontx2" + +CONFIG_RTE_CACHE_LINE_SIZE=128 +CONFIG_RTE_MAX_NUMA_NODES=1 +CONFIG_RTE_MAX_LCORE=24 + +# Doesn't support NUMA +CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=n +CONFIG_RTE_LIBRTE_VHOST_NUMA=n + +# Recommend to use VFIO as co-processors needs SMMU/IOMMU +CONFIG_RTE_EAL_IGB_UIO=n diff --git a/mk/machine/octeontx2/rte.vars.mk b/mk/machine/octeontx2/rte.vars.mk new file mode 100644 index 000000000..cbec7f14d --- /dev/null +++ b/mk/machine/octeontx2/rte.vars.mk @@ -0,0 +1,34 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Marvell International 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=-mcpu=armv8.2-a+crc+crypto+lse) +MACHINE_CFLAGS += $(call rte_cc_has_argument, -mcpu=octeontx2)