DPDK patches and discussions
 help / color / mirror / Atom feed
From: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
To: "Juraj Linkeš" <juraj.linkes@pantheon.tech>,
	"Bruce Richardson" <bruce.richardson@intel.com>,
	"Pavan Nikhilesh Bhagavatula" <pbhagavatula@marvell.com>
Cc: "thomas@monjalon.net" <thomas@monjalon.net>,
	"jerinj@marvell.com" <jerinj@marvell.com>,
	Jan Viktorin <viktorin@rehivetech.com>,
	Ruifeng Wang <Ruifeng.Wang@arm.com>,
	"dev@dpdk.org" <dev@dpdk.org>, nd <nd@arm.com>,
	Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>,
	nd <nd@arm.com>
Subject: Re: [dpdk-dev] [EXT] Re: [PATCH] config/arm: add ability to express arch extensions
Date: Tue, 18 May 2021 13:20:36 +0000	[thread overview]
Message-ID: <DBAPR08MB5814E9F83686628FB667AF7A982C9@DBAPR08MB5814.eurprd08.prod.outlook.com> (raw)
In-Reply-To: <59d2a824a24a457790362c6d8b25ff9b@pantheon.tech>

<snip>

> > > >
> > > >>
> > > >> >> >>
> > > >> >> >> >
> > > >> >> >> > The patch still holds true for CRC though as it is listed
> > > >> >> >> > separately below
> > > >> >> >> > https://urldefense.proofpoint.com/v2/url?u=https-
> > > >> >> >3A__developer.arm.com_architectures_cpu-2Darchitecture_a-
> > > >> >>
> > > >>2D&d=DwIFAg&c=nKjWec2b6R0mOyPaz7xtfQ&r=E3SgYMjtKCMVsB-
> > > >> >> >fmvgGV3o-
> > > >> >>
> > > >>
> > > >>>g_fjLhk5Pupi9ijohpc&m=i3kC8htMiHjXMoJWUn6QlDVZQCblbFrIJyMc
> > > >> >W
> > > >> >>
> > > >>
> > > >>>d9nAmM&s=fA4SM6O3iC2HXIK1qSbOHzxVeHoYqcfUebEOwioHC7c&
> > > >e
> > > >> >=
> > > >> >> >> > profile/exploration-tools/feature-names-for-a-profile
> > > >> >> >CRC is mandatory starting in V8.1, refer to Arm-ARM document.
> > > >> >> >
> > > >> >> >> >
> > > >> >> >> > Also, looks like sve2 support in n2 core might be
> > > >> >> >> > optional as per
> > > >> >> >above doc?
> > > >> >> >> I need to check on this. Some of the info here might not be
> > > >public
> > > >> >yet.
> > > >> >> >I found [1]. SVE2 is mandatory feature.
> > > >> >> >
> > > >> >>
> > > >> >> I see thanks for the info I will remove extension from cnxk.
> > > >> >>
> > > >> >> Do you think the extension infra is still useful for other cases? i.e.
> > > >> >older cores
> > > >> >> or cases where vendor wants to enable some extensions by
> > > >default?
> > > >> >>
> > > >> >> I found a document[1] which describes about extensions not
> > > >enabled
> > > >> >by
> > > >> >> default but supported by a given march.
> > > >> >> In case of n2 I think memory tagging is one such feature
> > > >> >I think the reference is providing a different information than
> > > >> >what you are trying to achieve here.
> > > >> >
> > > >> >It looks like you are trying to address a use case where in the
> > > >> >same CPU IP has different features enabled/disabled on different
> SoCs.
> > > >> >This is a valid use case from crypto perspective (due to export
> > > >control
> > > >> >reasons) where-in 2 different SoCs might have crypto
> > > >enabled/disabled.
> > > >> >I am not sure if other features can be enabled/disabled. But,
> > > >> >Crypto feature is a good enough reason to address such a use case.
> > > >>
> > > >> Yes, that's my intension apologies if the commit log doesn't
> > > >> clarify it
> > > >properly.
> > > >>
> > > >> >
> > > >> >IMO,  we should capture the SoC specific details in SoC specific
> > > >> >files, in this case in 'arm64_cn10k_linux_gcc'. I believe there
> > > >> >were some challenges in doing this.
> > > >>
> > > >> Since, all the flags are populated through soc_* variable and
> > > >> arm64_cn10k_linux_gcc also translates to soc_cn10k I believe the
> > > >extensions
> > > >> should be reported through
> > > >> soc_* variables.
> > > >IMO, there will be more SoCs in the future. I prefer to not grow
> > > >meson.build.
> > >
> > > Problem is native build wouldn't read arm64_*_linux_gcc, it will be
> > > really hard to parse it and read extensions if they are placed there.
> > >
> > Since our minimum meson version for DPDK is >0.49, would native-build
> > files[1] for meson offer a solution here?
> >
> 
> We need a place to define SoC specific configuration that would be accessible
> to both native and cross builds. A separate file for each SoC would be great
> and I've thought about native files in the past where we'd have:
> 1. an SoC specific file such as soc_armada_config 2. a cross file for each
> compiler, such as arm64_linux_gcc
> 
> This we'd we could use the first file in native builds (and we wouldn't need the
> platform parameter) and we'd use both files in cross builds.
> 
> I have a hazy memory of trying something similar in 0.47.1 (splitting the cross
> file into SoC config and the rest), but it didn't work, both of the files needed
> all of the mandatory sections and I suspect this is still true judging from the
> docs (even for the latest Meson).
Are we concluding there is no solution?

> 
> > /Bruce
> >
> > [1] https://mesonbuild.com/Native-environments.html
> 


  reply	other threads:[~2021-05-18 13:20 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-05 12:14 [dpdk-dev] " pbhagavatula
2021-05-05 12:27 ` Jerin Jacob
2021-05-10 13:13 ` Thomas Monjalon
2021-05-10 17:05   ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2021-05-10 17:20     ` Honnappa Nagarahalli
2021-05-10 17:48       ` Pavan Nikhilesh Bhagavatula
2021-05-10 21:09         ` Honnappa Nagarahalli
2021-05-10 21:28           ` Honnappa Nagarahalli
2021-05-11  8:57             ` Pavan Nikhilesh Bhagavatula
2021-05-11 17:08               ` Honnappa Nagarahalli
2021-05-11 18:50                 ` Pavan Nikhilesh Bhagavatula
2021-05-11 19:42                   ` Honnappa Nagarahalli
2021-05-12  9:17                     ` Pavan Nikhilesh Bhagavatula
2021-05-12  9:31                       ` Bruce Richardson
2021-05-14 11:45                         ` Juraj Linkeš
2021-05-18 13:20                           ` Honnappa Nagarahalli [this message]
2021-07-24  8:51                             ` Thomas Monjalon
2021-07-27 13:04                               ` Juraj Linkeš
2021-07-29 18:24                                 ` Pavan Nikhilesh Bhagavatula
2021-05-14 11:19                       ` Juraj Linkeš

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DBAPR08MB5814E9F83686628FB667AF7A982C9@DBAPR08MB5814.eurprd08.prod.outlook.com \
    --to=honnappa.nagarahalli@arm.com \
    --cc=Ruifeng.Wang@arm.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=jerinj@marvell.com \
    --cc=juraj.linkes@pantheon.tech \
    --cc=nd@arm.com \
    --cc=pbhagavatula@marvell.com \
    --cc=thomas@monjalon.net \
    --cc=viktorin@rehivetech.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).