Re: [dpdk-dev] [EXT] [PATCH v3] config/arm: split march cfg into arch and features
From: Juraj Linkeš <hidden>
Date: 2021-07-20 11:58:23
-----Original Message----- From: Pavan Nikhilesh Bhagavatula <redacted> Sent: Tuesday, July 20, 2021 9:25 AM To: Juraj Linkeš <redacted>; thomas@monjalon.net; david.marchand@redhat.com; bruce.richardson@intel.com; Honnappa.Nagarahalli@arm.com; Ruifeng.Wang@arm.com; fengchengwen@huawei.com; ferruh.yigit@intel.com; jerinjacobk@gmail.com; Jerin Jacob Kollanukkaran [off-list ref] Cc: dev@dpdk.org Subject: RE: [EXT] [dpdk-dev] [PATCH v3] config/arm: split march cfg into arch and featuresquoted
Older compilers may not support all arch versions and all features that the target SoC supports, in which case it's better to figure out the highest arch version and features that the compiler supports. Implement a way to achieve this: 1. Find the highest arch version that the compiler supports, keeping in mind the SoC arch version we're building. For example, if the SoC arch version is arm8.2-a, but the compiler only supports arm8.1-a, use arm8.1-a. On the other hand, if the compiler supports arm8.3-a (or higher), use armv8.2-a. 2. With the architecture version locked, iterate over SoC features and use all that are supported. In all cases, emit a warning if there's something unsupported by the compiler. Signed-off-by: Juraj Linkeš <redacted>Should we add soc_features to allow individual SoCs to configure additional extensions they support? As we discussed previously [1] default Neoverse-n2 shouldn’t have crypto extension as it's an optional feature[2]. SoCs that are based on n2 can define it in soc_features. [1] http://patches.dpdk.org/project/dpdk/patch/20210505121423.850-1- pbhagavatula@marvell.com/ [2] https://developer.arm.com/ip-products/processors/neoverse/neoverse-n2
Thanks for reminding me, there seemed to be an agreement between you and Honnappa about this, so I'll add it.