> This reduces the number of files from 12 to 2 for ARMv8a, and that is excluding the 13 I am adding in this series that would otherwise be unique files.
I don't have a strong opinion on this anymore, but is the number of the include files the issue here? I think the issue is the number of possible combinations and using the same TUNE_PKGARCH for different tunes (unlike 32bit arm tune files which use different). Bundling all these combinations in fewer include files doesn't IMHO improve it. With 32bit arm include files it was useful to be able to compare various include files to check that they follow the same "structure" (or to add new cortexa* one by copying existing and regex-replace). Also AVAILTUNES will now contain all possible tunes from given family (which makes it almost useless for aarch64 tunes). So instead of BSP including .inc file corresponding with the core used in the MACHINE and getting some "sane" default DEFAULTTUNE (plus some other possible options listed in AVAILTUNES) we now force every BSP to set more specific DEFAULTTUNE and then let user figure out what other DEFAULTTUNEs might be compatible with it, e.g. when someone is doing multi MACHINE builds and wants to share TUNE_PKGARCH between them (to save build time, package feed size etc). Cheers, On Mon, Sep 14, 2020 at 5:14 PM Jon Mason <[email protected]> wrote: > There is a large number of Arm Tune files located in > meta/conf/machine/include/, and to support the current and upcoming Arm > cores, more are needed. Adding more files is simply going to make it > harder to find the relevant ones for an OE/YP developer/user. Also, > there are problems with stale and erroneous configs (see my previous > series), which will only be exacerbated by having more files. > > I am proposing a reorganization of the existing tune files by including > them in the generic family include file. For example, the > tune-cortexa55.inc would be moved into arch-armv8-2a.inc, and > tune-cortexa57.inc would be moved into arch-armv8a.inc. This reduces > the number of files from 12 to 2 for ARMv8a, and that is excluding the > 13 I am adding in this series that would otherwise be unique files. > > To use, simply add > ... > DEFAULTTUNE ?= "neoversen1" > require conf/machine/include/arm/arch-armv8-2a.inc > ... > > Which is arguably what should be done anyway (instead of taking the > default of the tune include file). > See the qemuarm64 patch in the series for a working example. > > Of course, by removing the existing tune files, current users are going > to break. A simple script can be written to use sed (or similar) to > replace the relevant parts for those users that would be affected (at > least for those that are in the layer index and update regularly). > > Thanks, > Jon > > --- > > Originally sent as a RFC in > https://lists.openembedded.org/g/openembedded-core/message/142324 > > Given the generally positive feedback, sending as a patch series. > Keeping the "hard fail" of the file removal (per Richards comment in > https://lists.openembedded.org/g/openembedded-core/message/142356). > Only difference of note is the removal of the "arm64: set BASE_LIB to > lib64", as there needs to be more investigation (see > https://lists.openembedded.org/g/openembedded-core/message/142414). > > > Jon Mason (5): > arch-armv8-2a.inc: Add Cortex-A55 tunings > arch-armv8a.inc: Add existing tunings > qemuarm64: change tuning > arch-armv8a.inc: Add tunes for supported ARMv8a cores > arch-armv8-2a.inc: Add tunes for supported ARMv8.2a cores > > .../machine/include/arm/arch-armv8-2a.inc | 175 ++++++++++++++- > meta/conf/machine/include/arm/arch-armv8a.inc | 206 +++++++++++++++++- > meta/conf/machine/include/tune-cortexa32.inc | 18 -- > meta/conf/machine/include/tune-cortexa35.inc | 17 -- > meta/conf/machine/include/tune-cortexa53.inc | 18 -- > meta/conf/machine/include/tune-cortexa55.inc | 13 -- > .../include/tune-cortexa57-cortexa53.inc | 15 -- > meta/conf/machine/include/tune-cortexa57.inc | 17 -- > .../include/tune-cortexa72-cortexa53.inc | 20 -- > meta/conf/machine/include/tune-cortexa72.inc | 13 -- > .../include/tune-cortexa73-cortexa53.inc | 20 -- > meta/conf/machine/include/tune-thunderx.inc | 19 -- > meta/conf/machine/qemuarm64.conf | 3 +- > 13 files changed, 371 insertions(+), 183 deletions(-) > delete mode 100644 meta/conf/machine/include/tune-cortexa32.inc > delete mode 100644 meta/conf/machine/include/tune-cortexa35.inc > delete mode 100644 meta/conf/machine/include/tune-cortexa53.inc > delete mode 100644 meta/conf/machine/include/tune-cortexa55.inc > delete mode 100644 meta/conf/machine/include/tune-cortexa57-cortexa53.inc > delete mode 100644 meta/conf/machine/include/tune-cortexa57.inc > delete mode 100644 meta/conf/machine/include/tune-cortexa72-cortexa53.inc > delete mode 100644 meta/conf/machine/include/tune-cortexa72.inc > delete mode 100644 meta/conf/machine/include/tune-cortexa73-cortexa53.inc > delete mode 100644 meta/conf/machine/include/tune-thunderx.inc > > -- > 2.20.1 > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#142539): https://lists.openembedded.org/g/openembedded-core/message/142539 Mute This Topic: https://lists.openembedded.org/mt/76844469/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
