[dpdk-dev] [PATCH 7/7] build: add meson support for dpaaX platforms

Hemant Agrawal hemant.agrawal at nxp.com
Thu Mar 1 07:10:00 CET 2018


On 2/28/2018 8:14 PM, Bruce Richardson wrote:
> On Tue, Feb 27, 2018 at 10:55:52PM +0530, Hemant Agrawal wrote:
>> Signed-off-by: Akhil Goyal <akhil.goyal at nxp.com>
>> Signed-off-by: Hemant Agrawal <hemant.agrawal at nxp.com>
>> ---
> 
> Thanks for this. Some comments inline below.
> 
> /Bruce
<snip>..



>> diff --git a/drivers/bus/fslmc/meson.build b/drivers/bus/fslmc/meson.build
>> new file mode 100644
>> index 0000000..87475ee
>> --- /dev/null
>> +++ b/drivers/bus/fslmc/meson.build
>> @@ -0,0 +1,28 @@
>> +# SPDX-License-Identifier: BSD-3-Clause
>> +# Copyright 2018 NXP
>> +
>> +if host_machine.system() != 'linux'
>> +        build = false
>> +endif
>> +
>> +deps += ['eal', 'ethdev', 'eventdev']
> 
> Another minor nit - eal isn't strictly necessary here as both ethdev and
> eventdev already depend on it, and dependencies are recursive.
> Explicitly calling out all dependencies is not wrong, but in previous
> prototyping I found that meson takes a lot longer to run when it has to
> sort through all the dependency chains. That's why in other libs and
> drivers I tried to keep the dependency lists to a minimum.
> As well as this, EAL is a standard dependency, so it's already in the
> deps array at this point.
> 

yes, it worked.

>> +sources = files('qbman/qbman_portal.c',
>> +		'qbman/qbman_debug.c',
>> +		'mc/dpmng.c',
>> +		'mc/dpbp.c',
>> +		'mc/dpio.c',
>> +		'mc/mc_sys.c',
>> +		'mc/dpcon.c',
>> +		'mc/dpci.c',
>> +		'portal/dpaa2_hw_dpio.c',
>> +		'portal/dpaa2_hw_dpbp.c',
>> +		'portal/dpaa2_hw_dpci.c',
>> +		'fslmc_vfio.c',
>> +		'fslmc_bus.c')
>> +
>> +allow_experimental_apis = true
>> +
>> +includes += include_directories('../../../lib/librte_eal/linuxapp/eal')
> 
> Is this not covered by the dependency on eal? Is it accessing things
> directly in the EAL internals?

We are accessing eal_vfio.h. so it is needed.

../drivers/bus/fslmc/fslmc_vfio.h:12:10: fatal error: eal_vfio.h: No 
such file or directory
  #include <eal_vfio.h>

> 
>> +includes += include_directories('mc', 'qbman/include', 'portal')
>> +dpdk_conf.set('CONFIG_RTE_ARCH_ARM_TUNE', 'cortex-a72')
> 
> This setting seems strange here? How is it used, and why set only inside
> this particular driver?
> 

We can remove it

>> +cflags += ['-D_GNU_SOURCE']
>> diff --git a/drivers/bus/meson.build b/drivers/bus/meson.build
>> index c6af500..2187f6b 100644
>> --- a/drivers/bus/meson.build
>> +++ b/drivers/bus/meson.build
>> @@ -1,7 +1,7 @@
>>   # SPDX-License-Identifier: BSD-3-Clause
>>   # Copyright(c) 2017 Intel Corporation
>>   
>> -drivers = ['pci', 'vdev']
>> -std_deps = ['eal']
>> +drivers = ['pci', 'vdev', 'fslmc', 'dpaa']
> 
> Please keep alphabetical order.
> 
>> +std_deps = ['eal', 'kvargs']
> 
> No big issue with this line change, but did you consider just making
> kvargs a dependency of the fslmc and dpaa buses directly, rather than
> making pci and vdev also depend on them?
> 
Yes. it will work



More information about the dev mailing list