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 14C87A0C44; Mon, 12 Apr 2021 05:57:35 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 93A491414CA; Mon, 12 Apr 2021 05:57:34 +0200 (CEST) Received: from szxga07-in.huawei.com (szxga07-in.huawei.com [45.249.212.35]) by mails.dpdk.org (Postfix) with ESMTP id 13D124069D for ; Mon, 12 Apr 2021 05:57:32 +0200 (CEST) Received: from DGGEMS408-HUB.china.huawei.com (unknown [172.30.72.60]) by szxga07-in.huawei.com (SkyGuard) with ESMTP id 4FJZdF174yz9yZr; Mon, 12 Apr 2021 11:55:13 +0800 (CST) Received: from [127.0.0.1] (10.69.27.114) by DGGEMS408-HUB.china.huawei.com (10.3.19.208) with Microsoft SMTP Server id 14.3.498.0; Mon, 12 Apr 2021 11:57:26 +0800 To: =?UTF-8?Q?Juraj_Linke=c5=a1?= , , , , , , , , , , , References: <1617950146-7307-1-git-send-email-juraj.linkes@pantheon.tech> <1617957679-7751-1-git-send-email-juraj.linkes@pantheon.tech> CC: From: Chengchang Tang Message-ID: <8a271b44-f02c-d7c6-8d7a-139c8e317df2@huawei.com> Date: Mon, 12 Apr 2021 11:57:26 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <1617957679-7751-1-git-send-email-juraj.linkes@pantheon.tech> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-Originating-IP: [10.69.27.114] X-CFilter-Loop: Reflected Subject: Re: [dpdk-dev] [PATCH v19 0/3] Arm build options rework 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" On 2021/4/9 16:41, Juraj Linkeš wrote: > The current way of specifying Arm configuration options is insufficient > since we can't identify the SoC we're building for from the MIDR > information. For example, we can't distinguish between N1SDP, Graviton2 > or Ampere Altra. > > We also want to be able to enable/disable which drivers are built > without user input. This is useful when building: > 1. on an SoC that is slow and we want to build only what is necessary > without the user having to check which libraries they have installed > 2. a cross build on a fast aarch64 machine but with target SoC which > differs in capabilities or libraries. > This is achieved by specifying the drivers in SoC configuration. > > The current implementation adds/supports the following: > * x86 -> aarch64 cross build with added config options/enabled or > disabled drivers/libs > * aarch64 -> aarch64 builds for a different SoCs using meson -Dplatform > option or using a cross file > > v16: > Only three commits remaining - updated the cover letter. > Renamed the 'soc' meson option to 'platform'. > Added the support for enabling a particular set of drivers. > Aligned enabling and disabling with the command line option so that > wildcards can be used. > > v17: > Removed unnecessary comments in "build: disable/enable drivers in Arm > builds". Also always enabled two drivers which break the build if > disabled. > > v18: > Rebased. > > v19: > Updated 3/3 with more up to date MAX_LCORE and MAX_NUMA_NODES for > neoverse-n1. > It seems that our SoC configuration patches are block by this series: https://patchwork.dpdk.org/project/dpdk/list/?series=15918 I reworked our configuration based on this series and then tested it on our platform (i.e. Kunpeng 920/ Kunpeng 930 SoC). Tested-by: Chengchang Tang > Juraj Linkeš (3): > build: disable/enable drivers in Arm builds > build: add 'platform' meson option and Arm SoC config > config: fix Arm implementer and its SoCs > > config/arm/arm64_armada_linux_gcc | 6 +- > config/arm/arm64_armv8_linux_clang_ubuntu1804 | 3 +- > config/arm/arm64_armv8_linux_gcc | 5 +- > config/arm/arm64_bluefield_linux_gcc | 6 +- > config/arm/arm64_dpaa_linux_gcc | 6 +- > config/arm/arm64_emag_linux_gcc | 5 +- > config/arm/arm64_graviton2_linux_gcc | 6 +- > config/arm/arm64_n1sdp_linux_gcc | 6 +- > config/arm/arm64_n2_linux_gcc | 6 +- > config/arm/arm64_octeontx2_linux_gcc | 6 +- > config/arm/arm64_stingray_linux_gcc | 6 +- > config/arm/arm64_thunderx2_linux_gcc | 5 +- > config/arm/arm64_thunderxt88_linux_gcc | 5 +- > config/arm/meson.build | 180 +++++++++++++++--- > .../linux_gsg/cross_build_dpdk_for_arm64.rst | 76 +++----- > drivers/meson.build | 49 ++++- > meson.build | 2 + > meson_options.txt | 4 + > 18 files changed, 242 insertions(+), 140 deletions(-) >