From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B6A89A0524; Wed, 5 May 2021 14:14:40 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3114840040; Wed, 5 May 2021 14:14:40 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id C43B64003C for ; Wed, 5 May 2021 14:14:38 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 145BuHLV028825; Wed, 5 May 2021 05:14:34 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=aDaKCG8dBcb/sB4if7M/N9DkawhDVMSY82lg1nl5GII=; b=HyXlXTtNvntkzlanzlCM5b8M8bjmECbWp84jrFztLBUoJ0WFQ/Xjvnzn4C4YOw03YTfw K7Q0hjkD0THTyQuArwyK8Fhv1g+95mb0iPxgAzMTFFeVMHbYjeIBlueKxHYgLLTxCnOT lvgCUO32/rVm6eMhxN8yK4btNzO0gzUgnbrUmhGuo0pltnC7r54tKAMKJeFbQ2YsczYz MXunJasdxWTHRyhuN6C9yk3Tx6Bl2abJ9+q7OHpfLLD/JMeMWv777RqcPjbfXP1Ru1Iu hvdwBEpexBy9oGmGtmmmPVayutX9dvtuRGiEhXQBMjc8COEYf7jzovt9VL8iFTcPAOwZ HA== Received: from dc5-exch01.marvell.com ([199.233.59.181]) by mx0b-0016f401.pphosted.com with ESMTP id 38beccaajc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Wed, 05 May 2021 05:14:34 -0700 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 5 May 2021 05:14:32 -0700 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Wed, 5 May 2021 05:14:32 -0700 Received: from BG-LT7430.marvell.com (BG-LT7430.marvell.com [10.28.177.176]) by maili.marvell.com (Postfix) with ESMTP id 57ABA3F7041; Wed, 5 May 2021 05:14:30 -0700 (PDT) From: To: , , Jan Viktorin , Ruifeng Wang , "Bruce Richardson" CC: , Pavan Nikhilesh Date: Wed, 5 May 2021 17:44:22 +0530 Message-ID: <20210505121423.850-1-pbhagavatula@marvell.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-GUID: wkloh-1DbDSHb6kSjXC12JEta0lOgB-_ X-Proofpoint-ORIG-GUID: wkloh-1DbDSHb6kSjXC12JEta0lOgB-_ X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.391, 18.0.761 definitions=2021-05-05_06:2021-05-05, 2021-05-05 signatures=0 Subject: [dpdk-dev] [PATCH] config/arm: add ability to express arch extensions X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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 The ARM architecture allows SoCs to have extensions in addition to base profiles such as Large System Extension (LSE), CRC etc. Add ability to declare SoC specific extensions. Signed-off-by: Pavan Nikhilesh --- More details about ARM extensions https://developer.arm.com/documentation/102378/0200 config/arm/meson.build | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/config/arm/meson.build b/config/arm/meson.build index 22cd81319..8aa961e5b 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -230,6 +230,7 @@ soc_cn10k = { ['RTE_MAX_LCORE', 24], ['RTE_MAX_NUMA_NODES', 1] ], + 'extensions' : ['lse', 'crc'], 'part_number': '0xd49', 'numa': false } @@ -387,6 +388,7 @@ else endif soc_flags = [] + soc_extensions = [] if soc_config.has_key('not_supported') error('SoC @0@ not supported.'.format(soc)) elif soc_config != {} @@ -394,6 +396,7 @@ else implementer_config = implementers[implementer_id] part_number = soc_config['part_number'] soc_flags = soc_config.get('flags', []) + soc_extensions = soc_config.get('extensions', []) if not soc_config.get('numa', true) has_libnuma = 0 endif @@ -431,6 +434,11 @@ else # apply supported machine args machine_args = [] # Clear previous machine args foreach flag: part_number_config['machine_args'] + if flag.startswith('-march') and soc_extensions.length() != 0 + foreach ex: soc_extensions + flag += '+' + ex + endforeach + endif if cc.has_argument(flag) machine_args += flag endif -- 2.17.1