> -----Original Message----- > From: Honnappa Nagarahalli <honnappa.nagaraha...@arm.com> > Sent: Tuesday, November 10, 2020 12:27 AM > 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. > I did not understand the last sentence. >
A compromise between version 7 of the series and version 8 of the series. V7 had the support for arm disabling drivers in non-cross builds in one commit and support for cross builds in another patch, v8 joined the two patches and the new version will be in between. > > > > > > 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. > I think all the platforms have moved to VFIO. It should be fine to disable > this. > Do you mean all arm platforms? If so, I'll add this to disabled drivers for all arm builds instead of just one soc. > > > > > > ['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