[dpdk-dev] [PATCH v8 12/14] build: disable Arm drivers

Honnappa Nagarahalli Honnappa.Nagarahalli at arm.com
Tue Nov 10 16:13:32 CET 2020


<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.linkes at pantheon.tech>
> > > > > Acked-by: Bruce Richardson <bruce.richardson at 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.
Jerin, Hemant, can you comment on this?

> 
> > >
> > > > >  					['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



More information about the dev mailing list