On Mon, Jan 04, 2021 at 05:46:20PM -0500, Andrew Boyer wrote: > > > On Jan 1, 2021, at 12:19 PM, Honnappa Nagarahalli > > <honnappa.nagaraha...@arm.com> wrote: > >> > >> 30/12/2020 20:09, Andrew Boyer: > >>> > >>>> On Dec 23, 2020, at 6:47 AM, Juraj Linkeš <juraj.lin...@pantheon.tech> > >> 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. > >>>> > >>>> Add a way to specify the cpu count and numa node count for cross > >>>> builds and aarch64 -> aarch64 (SoC) builds. > >>>> > >>> > >>> Hello Juraj, > >>> This is great, you have solved a problem for me before I even knew > >>> there was one. (We have two SoCs with the same id and pn, but > >>> different core counts etc.) > >>> > >>> Can anyone fill me in on how and when this patchset is going to be taken? > >> Will it go to dpdk-next-net, or to some other branch? > >> > >> It should go in the main branch. > >> I cannot commit on any date, but for sure it would help if you can do a > >> detailed review, thanks. > > Testing on your SoC would be of great help. > > > > Hello Honnappa, Juraj, and Bruce, > > I've got most of the build working under meson. A few questions: > > 1) Bruce - when the “-Ddefault_library=both” flag is passed in, the build > fails with this error. It’s been broken for a long time; maybe this option > isn’t supported and should be blocked earlier? >
Yes, we should catch this earlier. > ../../dpdk/app/meson.build:48:3: ERROR: Tried to get unknown variable > "both_rte_ethdev". > > 2) Is there a way to disable specific libraries? I’ve pruned down the list of > drivers, which is great. This feature existed under make but I don’t see > anything about it in meson yet. > > 3) We need to build kni against the aarch64 kernel headers, but it fails. It > appears that kernel/linux/kni/meson.build doesn’t pass any cross-compile > flags in the make command it creates. The diff below shows how I hardcoded it > to get it to work for now. Thoughts on how to do this right? meson has the > path (in $PATH) and the binary prefixs (in ‘[binaries]’ in the cross file). > It must know the arch, too. > I'll try and investigate a little on these. Patches welcome, especially for issue #3 which is new to me. For #2, there has been some previous discussion about this on list before. /Bruce > --- a/kernel/linux/kni/meson.build > +++ b/kernel/linux/kni/meson.build > @@ -14,6 +14,8 @@ custom_target('rte_kni', > input: kni_sources, > output: 'rte_kni.ko', > command: ['make', '-j4', '-C', kernel_dir + '/build', > + > 'CROSS_COMPILE=/tool/toolchain/aarch64-1.1/bin/aarch64-linux-gnu-', > + 'ARCH=aarch64', > 'M=' + meson.current_build_dir(), > 'src=' + meson.current_source_dir(), > 'MODULE_CFLAGS=-include ' + meson.source_root() + > '/config/rte_config.h' + > > I will try to get to a full review soon. > > Thank you, > Andrew