On Wed, Sep 9, 2020 at 6:59 PM Mark Hatle <mark.ha...@kernel.crashing.org> wrote: > > I like the direction of this work, but one comment.. (down below) > > On 9/9/20 5:45 PM, Jon Mason wrote: > > Migrate the settings in tune-cortexa55.inc to arch-armv8-2a.inc. This > > will allow for a single file to include all of the tunings of a family > > of processors. This will reduce the proliferation of unique files per > > processor currently occuring in conf/machine/include/ > > > > Signed-off-by: Jon Mason <jon.ma...@arm.com> > > --- > > .../machine/include/arm/arch-armv8-2a.inc | 31 ++++++++++++++----- > > meta/conf/machine/include/tune-cortexa55.inc | 12 ------- > > 2 files changed, 23 insertions(+), 20 deletions(-) > > delete mode 100644 meta/conf/machine/include/tune-cortexa55.inc > > > > diff --git a/meta/conf/machine/include/arm/arch-armv8-2a.inc > > b/meta/conf/machine/include/arm/arch-armv8-2a.inc > > index b40ebf176e43..38564a17d98b 100644 > > --- a/meta/conf/machine/include/arm/arch-armv8-2a.inc > > +++ b/meta/conf/machine/include/arm/arch-armv8-2a.inc > > @@ -1,4 +1,19 @@ > > -DEFAULTTUNE ?= "armv8-2a" > > +# > > +# Tune Settings for Cortex-A55 > > +# > > +TUNEVALID[cortexa55] = "Enable Cortex-A55 specific processor optimizations" > > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa55', ' > > -mcpu=cortex-a55', '', d)}" > > + > > +# Little Endian base configs > > +AVAILTUNES += "cortexa55" > > +ARMPKGARCH_tune-cortexa55 = "cortexa55" > > +TUNE_FEATURES_tune-cortexa55 = "aarch64 cortexa55 > > crypto" > > +PACKAGE_EXTRA_ARCHS_tune-cortexa55 = > > "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa55" > > + > > +# > > +# Defaults for ARMv8-a > > +# > > +DEFAULTTUNE ?= "armv8-2a" > > > > TUNEVALID[armv8-2a] = "Enable instructions for ARMv8-a" > > TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv8-2a', ' > > -march=armv8.2-a', '', d)}" > > @@ -8,10 +23,10 @@ MACHINEOVERRIDES =. > > "${@bb.utils.contains('TUNE_FEATURES', 'armv8-2a', 'armv8-2a > > require conf/machine/include/arm/arch-armv8a.inc > > > > # Little Endian base configs > > -AVAILTUNES += "armv8-2a armv8-2a-crypto" > > -ARMPKGARCH_tune-armv8-2a ?= "armv8-2a" > > -ARMPKGARCH_tune-armv8-2a-crypto ?= "armv8-2a" > > -TUNE_FEATURES_tune-armv8-2a = "aarch64 armv8-2a" > > -TUNE_FEATURES_tune-armv8-2a-crypto = > > "${TUNE_FEATURES_tune-armv8-2a} crypto" > > -PACKAGE_EXTRA_ARCHS_tune-armv8-2a = > > "${PACKAGE_EXTRA_ARCHS_tune-armv8a} armv8-2a" > > -PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto = > > "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a} armv8-2a-crypto" > > +AVAILTUNES += "armv8-2a > > armv8-2a-crypto" > > +ARMPKGARCH_tune-armv8-2a ?= "armv8-2a" > > +ARMPKGARCH_tune-armv8-2a-crypto ?= "armv8-2a" > > +TUNE_FEATURES_tune-armv8-2a = "aarch64 armv8-2a" > > +TUNE_FEATURES_tune-armv8-2a-crypto = > > "${TUNE_FEATURES_tune-armv8-2a} crypto" > > +PACKAGE_EXTRA_ARCHS_tune-armv8-2a = > > "${PACKAGE_EXTRA_ARCHS_tune-armv8a} armv8-2a" > > +PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto = > > "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a} armv8-2a-crypto" > > It may make sense, instead of deleting it, to have just the 'require > conf/machine/include/arm/arch-armv8-2a.inc' file for transition. (If a > transition period is NOT required or desired, then this isn't necessary!) > > Tricky part is how to notify someone they're in the midst of the transition > period, and using the deprecated behavior. > > (In past work, I've had a class that looked for a variable to exist, if it did > it printed the contents as warning messages to the console after parsing. I'd > love to see something like this as standard behavior for future cases like > this.)
Fantastic idea. I hate the idea of breaking backward compat. Any newly added tunes would not need this, so no extra files for my new 13. Question 1. How can we do this warning? Is there something I can steal from as a basis? Question 2. How long do we keep this compat around? Thanks, Jon > > > diff --git a/meta/conf/machine/include/tune-cortexa55.inc > > b/meta/conf/machine/include/tune-cortexa55.inc > > deleted file mode 100644 > > index 099b6d72851a..000000000000 > > --- a/meta/conf/machine/include/tune-cortexa55.inc > > +++ /dev/null > > @@ -1,12 +0,0 @@ > > -DEFAULTTUNE ?= "cortexa55" > > - > > -TUNEVALID[cortexa55] = "Enable Cortex-A55 specific processor optimizations" > > -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa55', ' > > -mcpu=cortex-a55', '', d)}" > > - > > -require conf/machine/include/arm/arch-armv8-2a.inc > > - > > -# Little Endian base configs > > -AVAILTUNES += "cortexa55" > > -ARMPKGARCH_tune-cortexa55 = "cortexa55" > > -TUNE_FEATURES_tune-cortexa55 = "aarch64 cortexa55 crypto" > > -PACKAGE_EXTRA_ARCHS_tune-cortexa55 = > > "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa55" > > > > > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#142333): https://lists.openembedded.org/g/openembedded-core/message/142333 Mute This Topic: https://lists.openembedded.org/mt/76744241/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-