From patchwork Sun Feb 24 18:11:22 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: 50473 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 8A3B72BBB; Sun, 24 Feb 2019 19:11:31 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 98CE62B9C for ; Sun, 24 Feb 2019 19:11:30 +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 x1OI4ejY006885; Sun, 24 Feb 2019 10:11:26 -0800 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=FbdzF6bJXAydguNHx0d6rOhRSKWCb3WM1il96ycBS+0=; b=uPpWAGMEVEWL3Qj0P1AcWlUWySG+L5T6JcOCtrGZLce8IXzVWkUzjiqOAwvDQxXT0CUe wmI8ZGzsVR5dgn4G58VvQSj376rGbVjPlxYJNmn8dIPsLGzovJAz+pEMFeRuiM6iX1lD oSIxMx9K+oNIc/rCwHHFSZigRZBkx4LGQcwyMcmhXVHqG3+8kYfIO0kACBGZ1P599MZq VBRmx0c87L7gCfbCnTU5QstWRG64pIrpzj4SF+hz5GLCuAp6BjuM1JMSHRMNv2OxYfhM Nyw93zOIXWgrlQQzjBitZONfvrK9t7fCrGBj6Qg9C7m7uf+HbKKACBkb4qcTBju65G32 Xg== Received: from sc-exch01.marvell.com ([199.233.58.181]) by mx0a-0016f401.pphosted.com with ESMTP id 2qu4dstgxw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sun, 24 Feb 2019 10:11:26 -0800 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; Sun, 24 Feb 2019 10:11:24 -0800 Received: from NAM01-SN1-obe.outbound.protection.outlook.com (104.47.32.51) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Sun, 24 Feb 2019 10:11:24 -0800 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=FbdzF6bJXAydguNHx0d6rOhRSKWCb3WM1il96ycBS+0=; b=rpEd6WohVOOtqsS5ydModAou4KWFzy8xj+UuQpYtrU8mL4W3fuZhoKpnWMMa0pTfxJ8D0TUKieRv0pFtOrDY/d9Je2bGiaeD+LYQ7f5VcjE24iRQW5lya/shgzt27VNmL90tIpJYf/IdxrMAD52auKJpLJfI0fowcQbZ+KOsWdE= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2679.namprd18.prod.outlook.com (20.179.94.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1643.18; Sun, 24 Feb 2019 18:11:22 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::910b:ab85:3e93:70c7]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::910b:ab85:3e93:70c7%4]) with mapi id 15.20.1643.019; Sun, 24 Feb 2019 18:11:22 +0000 From: Jerin Jacob Kollanukkaran To: Thomas Monjalon CC: "dev@dpdk.org" , "phil.yang@arm.com" , "bruce.richardson@intel.com" , "Jerin Jacob Kollanukkaran" , Pavan Nikhilesh Bhagavatula Thread-Topic: [dpdk-dev] [PATCH v5 1/4] mk: introduce helper to check valid compiler argument Thread-Index: AQHUzGxZY6i4a5o7LU6jL3n/vH1FBA== Date: Sun, 24 Feb 2019 18:11:22 +0000 Message-ID: <20190224181041.27127-1-jerinj@marvell.com> References: <20190109103915.29210-1-pbhagavatula@marvell.com> In-Reply-To: <20190109103915.29210-1-pbhagavatula@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: SG2PR01CA0103.apcprd01.prod.exchangelabs.com (2603:1096:3:15::29) To BYAPR18MB2424.namprd18.prod.outlook.com (2603:10b6:a03:130::21) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.20.1 x-originating-ip: [106.201.37.126] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: b0d96519-fe04-4300-163a-08d69a837b70 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605104)(2017052603328)(7153060)(7193020); SRVR:BYAPR18MB2679; x-ms-traffictypediagnostic: BYAPR18MB2679: x-microsoft-exchange-diagnostics: 1; BYAPR18MB2679; 20:eiBES4wO7SSQT7ix9QWdy8FGCRKG/Ky3w3UGDKfO9DGl+pbZc+YPKVkq8LPM4nmOPNUcymzvzxhCcW1Usag0cVzTUUzBV8SEyM+9rT3BD0snvyKUfjGriEwVji8FC6cMgGueIv8BcqXUkr4AbD+xhXPbMInWEaf1J6bfi1aB8Jw= x-microsoft-antispam-prvs: x-forefront-prvs: 09583628E0 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(39850400004)(396003)(376002)(136003)(346002)(189003)(199004)(14454004)(6512007)(106356001)(50226002)(6486002)(107886003)(305945005)(99286004)(476003)(2616005)(446003)(11346002)(486006)(53936002)(86362001)(2906002)(478600001)(105586002)(68736007)(6436002)(8936002)(66066001)(3846002)(25786009)(316002)(186003)(256004)(14444005)(5660300002)(4326008)(97736004)(54906003)(102836004)(7736002)(1076003)(71190400001)(71200400001)(8676002)(26005)(55236004)(76176011)(6506007)(386003)(6116002)(36756003)(81156014)(81166006)(52116002)(6916009); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2679; 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: 3z1ifwg93lNIfmzwQ8EXAj9M9davHB/R2JAWsiYpS/bMOzGlYf1ybUxn4ge2AzxQr1DYJVetUv0plpBV2EsXC/CdCrW2pDvHxBHEHGVLwBtwjVeVTPMas8OSF76B7k0kr6T7et7zxVo6oSv4kYjEIMSzq1mfTXesBQkQFNjIhk0pHURRe2VVwlbPw3IKwMkowIDwf+VpQ1utT8tFgJ1t6/AG+IM0pfPKV0J66skJQG1/JybDzC2lVzcrR54Z68mgz/gR9/z+vh2MXqCEjIVavIlLKzRppV23WQEtruWZG80Cm5KnLja5kSK5JesYTfQ4nBwmSv5zUtWojivtpgFcTERySdFjzMZQ1uf2crLvJhLFOQrkYjixqap4768Y2Ka8vjGJ6K+M/tHvSXEQWv4oGlvI8t4NQ/L1Q58Lx43MDpI= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: b0d96519-fe04-4300-163a-08d69a837b70 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2019 18:11:16.6801 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2679 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-02-24_10:, , signatures=0 X-Proofpoint-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1902240143 Subject: [dpdk-dev] [PATCH v5 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" 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 Reviewed-by: Phil Yang --- 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) --- 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 Sun Feb 24 18:11:29 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: 50474 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 401B7324D; Sun, 24 Feb 2019 19:11:38 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id E30972B9C for ; Sun, 24 Feb 2019 19:11:35 +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 x1OI4H3Q006361; Sun, 24 Feb 2019 10:11:32 -0800 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=c/54Gzd2FmyTFyKCyJGSYvalx/Jr94eLnILpxEljXmk=; b=yDSRgGA5PqXD1YrFQA0AvQBqMWYR80QkQqZfmb0g97FTXu4f+cvfblNWTA6XjsZYD81n dRkFlAFw/Mlrdx5Cm7KmyeMBwSSt64Y24T7vq30llqDI2KNwKVjEc01Vq8FHdmX4/T1W mwYOpss+iGJ4MVOqsjTiEHi9BNX8vL6MSv1tDNgz1bu2KGt/gOFLkFzfwXlJlivbRSP3 joXuKTlWthQLSYdU7gnG6nvVfe6YFXFTtQ+SnLmRzGAzk/xXlxK7BmOmc5fsKGytgeSP YkvUvN8/enbd9n4qkPjPod7IORidmuWJqYx/hSnglAk9GU+rCOAgv0lJxk13pI4NpGok mg== Received: from sc-exch01.marvell.com ([199.233.58.181]) by mx0a-0016f401.pphosted.com with ESMTP id 2qu4dstgy2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sun, 24 Feb 2019 10:11:32 -0800 Received: from SC-EXCH02.marvell.com (10.93.176.82) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Sun, 24 Feb 2019 10:11:31 -0800 Received: from NAM01-SN1-obe.outbound.protection.outlook.com (104.47.32.52) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Sun, 24 Feb 2019 10:11:31 -0800 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=c/54Gzd2FmyTFyKCyJGSYvalx/Jr94eLnILpxEljXmk=; b=XomQvgCFTXZcWrKdY5C6EPZXJv0STDtNWNiX9MU8DxefXojxm2MiWhsmIoxHBWRoCmQ12T0c6THWWwlHuWodWuVrlJWN1bRAuJnFFhxRT65tEDz+ILMJdLxS6OOtpQnumF2YAd0NQz6/ToB5wz3bwIdwUp0791hmmqWLK8LQ1AE= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2679.namprd18.prod.outlook.com (20.179.94.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1643.18; Sun, 24 Feb 2019 18:11:29 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::910b:ab85:3e93:70c7]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::910b:ab85:3e93:70c7%4]) with mapi id 15.20.1643.019; Sun, 24 Feb 2019 18:11:29 +0000 From: Jerin Jacob Kollanukkaran To: Thomas Monjalon CC: "dev@dpdk.org" , "phil.yang@arm.com" , "bruce.richardson@intel.com" , "Pavan Nikhilesh Bhagavatula" , Jerin Jacob Kollanukkaran Thread-Topic: [dpdk-dev] [PATCH v5 2/4] meson: add infra to support machine specific flags Thread-Index: AQHUzGxdcX3iGv1oc0yPvWQNn8SKHg== Date: Sun, 24 Feb 2019 18:11:29 +0000 Message-ID: <20190224181041.27127-2-jerinj@marvell.com> References: <20190109103915.29210-1-pbhagavatula@marvell.com> <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: SG2PR01CA0103.apcprd01.prod.exchangelabs.com (2603:1096:3:15::29) To BYAPR18MB2424.namprd18.prod.outlook.com (2603:10b6:a03:130::21) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.20.1 x-originating-ip: [106.201.37.126] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c58e55e7-32b0-436f-8e07-08d69a837f77 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605104)(2017052603328)(7153060)(7193020); SRVR:BYAPR18MB2679; x-ms-traffictypediagnostic: BYAPR18MB2679: x-microsoft-exchange-diagnostics: 1; BYAPR18MB2679; 20:/6cX6JRLtUYDhcgqwnLygKAJlVIA0Y6VI9ZmNv/IwFiT1te7Uk8GoudGk6yOTe42WlfxwFm4CBqgLR1/Umz9fXuvLU7wROF7sXlzcFtc630wsxtKGuzARfyOs9k8rHK9dPYuftDU67ZeevKR5mdyouT8CYxvciL77AOpR9pjnIA= x-microsoft-antispam-prvs: x-forefront-prvs: 09583628E0 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(39850400004)(396003)(376002)(136003)(346002)(189003)(199004)(14454004)(6512007)(106356001)(50226002)(6486002)(107886003)(305945005)(99286004)(476003)(2616005)(446003)(11346002)(486006)(53936002)(86362001)(2906002)(478600001)(105586002)(68736007)(6436002)(8936002)(66066001)(3846002)(25786009)(316002)(186003)(256004)(5660300002)(4326008)(97736004)(54906003)(102836004)(7736002)(1076003)(71190400001)(71200400001)(8676002)(26005)(55236004)(76176011)(6506007)(386003)(6116002)(36756003)(81156014)(81166006)(52116002)(6916009); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2679; 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: JV0CTOPwlkEJXV7L0db7mSqAWcftzkNoD8PNbHDg/xyJPBfB6K8+jpievNPTtncjGT/h3poUjP73EiqUfjlb+ck3kexwQsqw+JF8jjnjtbntx0RmfWamXYesccznj/Utm6U3o+3ax22rpd8kjgcwai/l5/dEfzMG+u8rXNBFS3xx0cl4ng4vlCMAZ3WSt9TGIFV230l2c1vvpDYu+YbFhODTC90I3n0CTZYooaog+3Xx+l/1s9m+Qg3qPh+JZSnPdkaOSJI/k3UtlUF6+ByJBeBWbk1TPY8cGS3eM3lQ9Ngt2QMPwyMt5DoqqJB5WknbYSRTFRujKSq51DW1SU0YQWLTH1SroBa/KAVzQ6ex3a6BlMuui29WAAJv1FfhogD6e2oRPJ95gUBs/b9WRKgyeKWfuRMvWo63DhF7B1jZe+4= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: c58e55e7-32b0-436f-8e07-08d69a837f77 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2019 18:11:24.2044 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2679 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-02-24_10:, , signatures=0 X-Proofpoint-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1902240143 Subject: [dpdk-dev] [PATCH v5 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 | 54 +++++++++++++++++++++++++----------------- 1 file changed, 32 insertions(+), 22 deletions(-) diff --git a/config/arm/meson.build b/config/arm/meson.build index dae55d6b2..7eb6f5c99 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -7,23 +7,6 @@ march_opt = '-march=@0@'.format(machine) arm_force_native_march = 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']], - ['0xa2', ['-mcpu=thunderxt81']], - ['0xa3', ['-mcpu=thunderxt83']]] - flags_common_default = [ # Accelarate rte_memcpy. Be sure to run unit test (memcpy_perf_autotest) # to determine the best threshold in code. Refer to notes in source file @@ -50,12 +33,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], @@ -69,6 +50,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] @@ -156,8 +158,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 Sun Feb 24 18:11:36 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: 50475 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 6193037A2; Sun, 24 Feb 2019 19:11:45 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 810553798 for ; Sun, 24 Feb 2019 19:11:44 +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 x1OI4WHh006817; Sun, 24 Feb 2019 10:11:39 -0800 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=bIIVKmbdPGMlDR6gQgqTx5+sqWEbh1ZNVEO4thCDS5w=; b=YLYs5Dv5uU/CyiGy+8adfKX+CH4ecF+QD+dNjT08Yo6H51o9UNtvWVcTpvPw666Mq6f+ R7ISdz+GRn3Zik852SNeDTpYhu5/DcxNHoqYxhHe3gUItEZoAIErWlNj//KiSEWjqObJ rSiFAy8JLs40uysoTyN3yfXUqCTnduh0HbhEPjFeQZiqKRlJPXgzCWOIrsb+aRncM53e 7kp3eOPVHA0jtBDeiumvhLWJS1PIURbmj1G8FTte1WnKru5W7JQZ3L2jPDVUwsz7wY4T 4FvKnrI4f0Jr+PrMloM1GmxR0mC/WogeIZ6Y/8ssLc9DbbqhtGmRjPSZqMzw/sXaqrlR yA== Received: from sc-exch01.marvell.com ([199.233.58.181]) by mx0a-0016f401.pphosted.com with ESMTP id 2qu4dstgy7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sun, 24 Feb 2019 10:11:39 -0800 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; Sun, 24 Feb 2019 10:11:38 -0800 Received: from NAM01-SN1-obe.outbound.protection.outlook.com (104.47.32.58) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Sun, 24 Feb 2019 10:11:38 -0800 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=bIIVKmbdPGMlDR6gQgqTx5+sqWEbh1ZNVEO4thCDS5w=; b=fogUnyOtPKSiG7TRuVdbPTXMWsPVuKHFNXPy21ctNr9T8XZvhWuV2uyhN6t5ZgG2ixHMJiTgB1DwXB5Qpw65TOJfrgQOAmUcFZLKF9grHlTgWl6Q33w+ER7WL4JTACLGsPY/iw7c/7Dcb8LisIHfvL1L85KJbP0kS9sGFjLmGSA= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2679.namprd18.prod.outlook.com (20.179.94.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1643.18; Sun, 24 Feb 2019 18:11:36 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::910b:ab85:3e93:70c7]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::910b:ab85:3e93:70c7%4]) with mapi id 15.20.1643.019; Sun, 24 Feb 2019 18:11:36 +0000 From: Jerin Jacob Kollanukkaran To: Thomas Monjalon CC: "dev@dpdk.org" , "phil.yang@arm.com" , "bruce.richardson@intel.com" , "Jerin Jacob Kollanukkaran" , Pavan Nikhilesh Bhagavatula Thread-Topic: [dpdk-dev] [PATCH v5 3/4] config: add thunderx2 machine config Thread-Index: AQHUzGxhV+LxfjKhqUqqKzCkZ3WQ0A== Date: Sun, 24 Feb 2019 18:11:36 +0000 Message-ID: <20190224181041.27127-3-jerinj@marvell.com> References: <20190109103915.29210-1-pbhagavatula@marvell.com> <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: SG2PR01CA0103.apcprd01.prod.exchangelabs.com (2603:1096:3:15::29) To BYAPR18MB2424.namprd18.prod.outlook.com (2603:10b6:a03:130::21) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.20.1 x-originating-ip: [106.201.37.126] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 0c1fd9d3-7bab-4957-653e-08d69a83839f x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605104)(2017052603328)(7153060)(7193020); SRVR:BYAPR18MB2679; x-ms-traffictypediagnostic: BYAPR18MB2679: x-ms-exchange-purlcount: 1 x-microsoft-exchange-diagnostics: 1; BYAPR18MB2679; 20:v8MaZY7VTdItITLr2y32zGpPdG2d/X0JmXT9KiBUfPCJVGEctCHmrz5jR9GcF8ANzX7krN01jstH4/QHbq+I+cF74JVVg7IEs9wuHBu9FjKP5xSBmxFEUVQ3SNPf7TFuJw5qTdTsG3T4sX+bdWBAWjEP+Oa7h8UGTObOiKtiI9k= x-microsoft-antispam-prvs: x-forefront-prvs: 09583628E0 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(39850400004)(396003)(376002)(136003)(346002)(189003)(199004)(14454004)(6512007)(6306002)(106356001)(50226002)(6486002)(107886003)(305945005)(99286004)(476003)(2616005)(446003)(11346002)(486006)(53936002)(86362001)(2906002)(478600001)(105586002)(966005)(68736007)(6436002)(8936002)(66066001)(3846002)(25786009)(316002)(186003)(256004)(14444005)(5660300002)(4326008)(97736004)(54906003)(102836004)(7736002)(1076003)(71190400001)(71200400001)(8676002)(26005)(55236004)(76176011)(6506007)(386003)(6116002)(36756003)(81156014)(81166006)(52116002)(6916009); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2679; 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: wzHounnDSF8s6Xpk4XDsXbr6FAh9kbxKyW3iTF/7T2JsOuAbhYMdmi6Gu7MxrFtgYe7Yd8EGiPtu3zEi6BQjg+pBTGI4+gdeALLHmSPz1pKd6yGxSrFww6qlilh3EkDuau+LPLHEpSYSsp74B5hPBKGH/EEzu43AiIceDBSxU9MisNMDuwMQZaerJvoAKXbMd7AqyuW6aBS8DdCIJQGiS8S8qGEs/9h4ri6pg2ytLgYBw9k33jpsHvTHU1Oo63/r0IM68ZFpdYu/P+gxZCMfLxDQwkb4opdPALKImsCAH2EyvNUyASGcldrJAT0nlbL3w69uYKGOiU+sic2RAGsWIsQ+c4ej8YEam9DeaU0rqwZhfvsCbLFcAjUU+EdFT1CcAthsoIxdop9yP4/Bf02aNMMNbpIXDX9/cKZNjZpE/iI= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 0c1fd9d3-7bab-4957-653e-08d69a83839f X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2019 18:11:31.5777 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2679 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-02-24_10:, , signatures=0 X-Proofpoint-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=716 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1902240143 Subject: [dpdk-dev] [PATCH v5 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" 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 --- config/arm/arm64_thunderx2_linuxapp_gcc | 15 ++++++++ config/arm/meson.build | 9 ++++- config/defconfig_arm64-thunderx2-linuxapp-gcc | 11 ++++++ mk/machine/thunderx2/rte.vars.mk | 34 +++++++++++++++++++ 4 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 config/arm/arm64_thunderx2_linuxapp_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_linuxapp_gcc b/config/arm/arm64_thunderx2_linuxapp_gcc new file mode 100644 index 000000000..48b07a40c --- /dev/null +++ b/config/arm/arm64_thunderx2_linuxapp_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 7eb6f5c99..f34913291 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -54,6 +54,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']], @@ -70,7 +76,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-linuxapp-gcc b/config/defconfig_arm64-thunderx2-linuxapp-gcc new file mode 100644 index 000000000..27db58e50 --- /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-linuxapp-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 Sun Feb 24 18:11:44 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: 50476 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 23CD947CE; Sun, 24 Feb 2019 19:11:53 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 0469A1E34 for ; Sun, 24 Feb 2019 19:11:50 +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 x1OI4eje006885; Sun, 24 Feb 2019 10:11:47 -0800 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=9VCzS0ENhHoXgV8e4MbPd5M1hm36HJ3aAM5x6OTJ5hg=; b=DHZOd7JzrVY6QjI1v8vOjyoCnYZCpd34NqRCQZL8kWv8INOSc9RyfWZRjHt1LDomfz8w 4/IjDge5zDoPs/kHYBtcGRRNHKwW9Zi8P4WjyTybpjHd4hUhCMxIKEfSI7/3qDbLX9RZ 6/xG6E5ADdKSZaXQgVLK3KAZy1t4AexbSL3AQeCNi7yv6puLsfojAbI4IDyJs5V2vXIo ug1wsJyPdcG4RmZK76YeBNwgYLW7tRkSn9ovVxVf7kQe6DA7a8qyYSTaCDuGTLIueUeq VZ5Fu4D5celYceehbFGTUFOqjmLC+TDBAVDOmIFOR4XXukDe2iOCP+OyDgcQF+LzzedR Ug== Received: from sc-exch01.marvell.com ([199.233.58.181]) by mx0a-0016f401.pphosted.com with ESMTP id 2qu4dstgyt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sun, 24 Feb 2019 10:11:47 -0800 Received: from SC-EXCH02.marvell.com (10.93.176.82) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Sun, 24 Feb 2019 10:11:46 -0800 Received: from NAM01-SN1-obe.outbound.protection.outlook.com (104.47.32.54) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Sun, 24 Feb 2019 10:11:45 -0800 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=9VCzS0ENhHoXgV8e4MbPd5M1hm36HJ3aAM5x6OTJ5hg=; b=ERTRjx3R6s5Y6zGC91tcwhFEnBZhM6tpfvav+lZ0iQn58sm0zUZNeZywrDhnS1Le/p3gPYWlZf9d//WGgL69V3iDYveT4Bngo5INXjMpeWm0b2hMRHSmEPNTRLmfejoaW268JVhZvN7BqG4mQAOH2EloMp2l3toZTF0v07TNblo= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2679.namprd18.prod.outlook.com (20.179.94.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1643.18; Sun, 24 Feb 2019 18:11:44 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::910b:ab85:3e93:70c7]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::910b:ab85:3e93:70c7%4]) with mapi id 15.20.1643.019; Sun, 24 Feb 2019 18:11:44 +0000 From: Jerin Jacob Kollanukkaran To: Thomas Monjalon CC: "dev@dpdk.org" , "phil.yang@arm.com" , "bruce.richardson@intel.com" , "Jerin Jacob Kollanukkaran" , Pavan Nikhilesh Bhagavatula Thread-Topic: [dpdk-dev] [PATCH v5 4/4] config: add octeontx2 machine config Thread-Index: AQHUzGxlICsQ+M1Jr0GMBrjPDoCp+g== Date: Sun, 24 Feb 2019 18:11:44 +0000 Message-ID: <20190224181041.27127-4-jerinj@marvell.com> References: <20190109103915.29210-1-pbhagavatula@marvell.com> <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: SG2PR01CA0103.apcprd01.prod.exchangelabs.com (2603:1096:3:15::29) To BYAPR18MB2424.namprd18.prod.outlook.com (2603:10b6:a03:130::21) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.20.1 x-originating-ip: [106.201.37.126] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 66f49f64-9322-454e-cff4-08d69a83883c x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605104)(2017052603328)(7153060)(7193020); SRVR:BYAPR18MB2679; x-ms-traffictypediagnostic: BYAPR18MB2679: x-microsoft-exchange-diagnostics: 1; BYAPR18MB2679; 20:ABZUpiCwx55GEdGv+CMxFFqdTKJYlgjd7UhBWbuJVhvLVzbj9sI1sbcOAoFR8XIzMu0hOq6dNHia1wAhsKxUZyeuXGc4ndLJXdxC6FUFMVkITvp6Hh+nqMSQzLKKnXm43knNg9Lgo/lN5aSQNr5ZhnQ5nL1d53g+fCni5JydRFg= x-microsoft-antispam-prvs: x-forefront-prvs: 09583628E0 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(39850400004)(396003)(376002)(136003)(346002)(189003)(199004)(14454004)(6512007)(106356001)(50226002)(6486002)(107886003)(305945005)(99286004)(476003)(2616005)(446003)(11346002)(486006)(53936002)(86362001)(2906002)(478600001)(105586002)(68736007)(6436002)(8936002)(66066001)(3846002)(25786009)(316002)(186003)(256004)(14444005)(5660300002)(4326008)(97736004)(54906003)(102836004)(7736002)(1076003)(71190400001)(71200400001)(8676002)(26005)(55236004)(76176011)(6506007)(386003)(6116002)(36756003)(81156014)(81166006)(52116002)(6916009); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2679; 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: +UTEoaYtgtuJKD5yrHiOY1HyM/4vNbEULTT3fEoOHTsqeIzh6Rcdw8XuGSt67nEwn7IYS1VpDDWjaJlqDwJmLJVktwI19SPJe1KFlfU63nWbXHZW9TA/2rtSeU8u6Rpup0cXNZ+Rgt51x4Z1vj+Vc4lh5IADug+BWUeQRi9jxoBFlC4N3m2641fRI2yMLkvN7L/z0eDA0+WKo8Ags5utFuq+i+NDz7C5UpJge/o6ng+/xzutWuD//J037gcMeMU3xIIO3w2vDr23LHnMTpdkZct0sGyl/A8gE0DQUtnHHRqLahJh/LurndTmyQfL2PUQpwMs9ptIx/aw+PnlfCWHwh4mDn/PiBJcmAVDOJ3UBlTwWbQqp682urhFxW9QsXGtwDwqm/HbN/ZCYEnqlJwjeA2c5Vak/hp9vfC+F7Croho= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 66f49f64-9322-454e-cff4-08d69a83883c X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2019 18:11:38.7388 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2679 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-02-24_10:, , signatures=0 X-Proofpoint-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=753 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1902240143 Subject: [dpdk-dev] [PATCH v5 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" 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 --- config/arm/arm64_octeontx2_linuxapp_gcc | 15 ++++++++ config/arm/meson.build | 9 ++++- config/defconfig_arm64-octeontx2-linuxapp-gcc | 18 ++++++++++ mk/machine/octeontx2/rte.vars.mk | 34 +++++++++++++++++++ 4 files changed, 75 insertions(+), 1 deletion(-) create mode 100644 config/arm/arm64_octeontx2_linuxapp_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_linuxapp_gcc b/config/arm/arm64_octeontx2_linuxapp_gcc new file mode 100644 index 000000000..7a6429b1b --- /dev/null +++ b/config/arm/arm64_octeontx2_linuxapp_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 f34913291..5edaeec13 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -60,6 +60,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']], @@ -77,7 +83,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-linuxapp-gcc b/config/defconfig_arm64-octeontx2-linuxapp-gcc new file mode 100644 index 000000000..9a99eada1 --- /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-linuxapp-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..e0a7498a3 --- /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=armv8-a+crc+crypto+lse) +MACHINE_CFLAGS += $(call rte_cc_has_argument, -mcpu=octeontx2)