> -----Original Message----- > From: Honnappa Nagarahalli <honnappa.nagaraha...@arm.com> > Sent: Sunday, November 8, 2020 9:19 PM > To: Juraj Linkeš <juraj.lin...@pantheon.tech>; bruce.richard...@intel.com; > Ruifeng Wang <ruifeng.w...@arm.com>; Phil Yang <phil.y...@arm.com>; > vcchu...@amazon.com; Dharmik Thakkar <dharmik.thak...@arm.com>; > jerinjac...@gmail.com; hemant.agra...@nxp.com; Ajit Khaparde > (ajit.khapa...@broadcom.com) <ajit.khapa...@broadcom.com>; > ferruh.yi...@intel.com; acon...@redhat.com > Cc: dev@dpdk.org; nd <n...@arm.com>; Honnappa Nagarahalli > <honnappa.nagaraha...@arm.com>; nd <n...@arm.com> > Subject: RE: [PATCH v8 12/14] build: disable Arm drivers > > <snip> > > > > > A few options that disabled drivers in the old makefiles were > > improperly ported to the meson build system. Fix this by adding a to > > the list of disabled > The fixes need to be separated into a different commit as they need to be > backported. > It would be good to get the fix patch as the first patch, it will be easy to > backport. >
Ok, I'll add support for disabling drivers for native and cross builds (that will be an independent easily portable change) and put the rest into a separate patch. That would be a compromise between v7 and v8. > > drivers, similarly how the command line option works. Remove unneeded > > driver options ported from the old makefile system. > > Add support for removing drivers for cross builds. > > > > Signed-off-by: Juraj Linkeš <juraj.lin...@pantheon.tech> > > Acked-by: Bruce Richardson <bruce.richard...@intel.com> > > --- > > config/arm/arm64_armada_linux_gcc | 1 + > > config/arm/arm64_armv8_linux_gcc | 3 +++ > > config/arm/meson.build | 7 +++---- > > drivers/meson.build | 6 +++++- > > meson.build | 1 + > > 5 files changed, 13 insertions(+), 5 deletions(-) > > > > diff --git a/config/arm/arm64_armada_linux_gcc > > b/config/arm/arm64_armada_linux_gcc > > index 73945fbb4..7383f42e2 100644 > > --- a/config/arm/arm64_armada_linux_gcc > > +++ b/config/arm/arm64_armada_linux_gcc > > @@ -17,3 +17,4 @@ endian = 'little' > > implementer_id = '0x56' > > max_lcores = 16 > > max_numa_nodes = 1 > > +disabled_drivers = ['bus/dpaa', 'bus/fslmc', 'common/dpaax'] > > diff --git a/config/arm/arm64_armv8_linux_gcc > > b/config/arm/arm64_armv8_linux_gcc > > index fb24be5fc..245e06e5f 100644 > > --- a/config/arm/arm64_armv8_linux_gcc > > +++ b/config/arm/arm64_armv8_linux_gcc > > @@ -52,3 +52,6 @@ part_number = 'generic' > > # max_lcores = n # will set RTE_MAX_LCORE > > max_lcores = 256 > > max_numa_nodes = 4 > > + > > +# disabled_drivers = ['bus/dpaa', 'crypto'] > > + # add to the set of disabled libraries > > diff --git a/config/arm/meson.build b/config/arm/meson.build index > > e9bb60045..a39a35b6a 100644 > > --- a/config/arm/meson.build > > +++ b/config/arm/meson.build > > @@ -3,6 +3,9 @@ > > # Copyright(c) 2017 Cavium, Inc > > # Copyright(c) 2020 PANTHEON.tech s.r.o. > > > > +# disable Arm drivers for all builds > > +disabled_drivers += ['net/avp', 'net/fm10k'] > > + > > # common flags to all aarch64 builds, with lowest priority > > flags_common_default = [ > > # Accelarate rte_memcpy. Be sure to run unit test > > (memcpy_perf_autotest) @@ -17,9 +20,6 @@ flags_common_default = [ > > # ['RTE_ARM64_MEMCPY_ALIGN_MASK', 0xF], > > # ['RTE_ARM64_MEMCPY_STRICT_ALIGN', false], > > > > - ['RTE_NET_FM10K', false], > > - ['RTE_NET_AVP', false], > > - > > ['RTE_SCHED_VECTOR', false], > > ['RTE_ARM_USE_WFE', false], > > ['RTE_ARCH_ARM64', true], > > @@ -124,7 +124,6 @@ implementers = { > > ['RTE_MACHINE', '"octeontx2"'], > > ['RTE_ARM_FEATURE_ATOMICS', > > true], > > ['RTE_USE_C11_MEM_MODEL', true], > > - ['RTE_EAL_IGB_UIO', false], > Does this need to go to octeon tx2 cross file? > Possibly. Based on my understanding of the old makefile config (which could be wrong), I think there are two categories here: 1. drivers which were disabled because they weren't supported at all or just on that platform. 2. drivers which were explicitly disabled no matter the support. If this is in category 1, we should investigate whether support was not added. If we don't know, it's better to disable it, in which case I'll put it to the cross file. > > ['RTE_MAX_LCORE', 36], > > ['RTE_MAX_NUMA_NODES', 1] > > ] > > diff --git a/drivers/meson.build b/drivers/meson.build index > > 4bb7e9218..a997387ad 100644 > > --- a/drivers/meson.build > > +++ b/drivers/meson.build > > @@ -18,9 +18,13 @@ subdirs = [ > > 'baseband', # depends on common and bus. > > ] > > > > -disabled_drivers = run_command(list_dir_globs, > > get_option('disable_drivers'), > > +disabled_drivers += run_command(list_dir_globs, > > +get_option('disable_drivers'), > > ).stdout().split() > > > > +if meson.is_cross_build() > > + disabled_drivers += meson.get_cross_property('disabled_drivers', []) > > +endif > > + > > default_cflags = machine_args > > default_cflags += ['-DALLOW_EXPERIMENTAL_API'] default_cflags += ['- > > DALLOW_INTERNAL_API'] diff --git a/meson.build b/meson.build index > > 61d9a4f5f..8dadd70dc 100644 > > --- a/meson.build > > +++ b/meson.build > > @@ -21,6 +21,7 @@ dpdk_drivers = [] > > dpdk_extra_ldflags = [] > > dpdk_libs_disabled = [] > > dpdk_drvs_disabled = [] > > +disabled_drivers = [] > > abi_version_file = files('ABI_VERSION') > > > > if host_machine.cpu_family().startswith('x86') > > -- > > 2.20.1