Skip to content

RFC OPTDEFAULTTUNE for arm tune files

Martin Jansa openembedded-core 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest5 patches 14 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/5arch-arm: add ARMPKGSFX_CPU to TUNE_PKGARCH because we're using different TUNE_CCARGSmeta/conf/machine/include/arm/README meta/conf/machine/include/arm/arch-arm.inc meta/conf/machine/include/tune-arm926ejs.inc +1 more+12 -60 replies
2/5tune-xscale, tune-arm926ejs: add OPTDEFAULTTUNE variable and use more generic DEFAULTTUNE as defaultmeta/conf/bitbake.conf meta/conf/machine/include/tune-arm926ejs.inc meta/conf/machine/include/tune-xscale.inc+5 -214 replies
3/5optimized-tune.inc: add optional distro includemeta/conf/distro/include/optimized-tune.inc+2 -00 replies
4/5bitbake.conf: add TUNE_CCARGS[vardepvalue]meta/conf/bitbake.conf+1 -00 replies
5/5tune-xscale, tune-arm926ejs: drop ARMPKGSFX_CPU, change ARMPKGARCH insteadmeta/conf/machine/include/arm/README meta/conf/machine/include/arm/arch-arm.inc meta/conf/machine/include/tune-arm926ejs.inc +1 more+7 -120 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [RFC 0/5] OPTDEFAULTTUNE for arm tune files

This patchset is just RFC because I've modified and tested it only for tune-arm926ejs and tune-xscale (because I've tried to build qemuarm and same builddir).

Also I have no strong opinion about used TUNE as suffix (see 1. patch) or as ARMPKGARCH (see last patch, which reverts most of 1. patch).

And what's even bigger mess are PACKAGE_EXTRA_ARCHS, because to be correct we should repeat all tune-armv5te variations with xscale prefix/suffix too, while most people will have only
armv5te and (armv5te-xscale or xscale-te)
current tune files allow also armv4t-xscale etc...

But FWIW with this patchset I can build openssl for qemuarm and qemuarmx, everything except openssl is shared and built just once and also just once in feed.

qemuarmx is the same like qemuarm but using tune-xscale, see
http://git.openembedded.org/openembedded-core-contrib/log/?h=jansa/qemu-tests

If we decide this is right way to fix it then it should be extended to all arm tune files. And also somehow set default DEFAULTTUNE to OPTDEFAULTTUNE if PACKAGE_ARCH == MACHINE_ARCH (in this case we know we won't share the feed, so why use best mtune available).

This allows finer control of which DEFAULTTUNE to use

1) default: don't use mtune, optimize only for march (don't mix mtune in the same feed).

2) include optimized-tune.inc in distro.conf: use mtune only for some packages, but with separate package feed for them

3) DEFAULTTUNE = ${OPTDEFAULTTUNE} in distro.conf: always use best mtune available for MACHINE, but unlike current default, don't mix them in same package feed

More info in thread:
http://lists.linuxtogo.org/pipermail/openembedded-core/2012-September/029414.html

The following changes since commit 5e03d1e83d0536a2fc69a88d3e5407108836203f:

gcc: Use 4.7.2 release tarball (2012-09-21 14:55:26 +0100)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib jansa/tune
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=jansa/tune

Martin Jansa (5):
arch-arm: add ARMPKGSFX_CPU to TUNE_PKGARCH because we're using
different TUNE_CCARGS
tune-xscale, tune-arm926ejs: add OPTDEFAULTTUNE variable and use more
generic DEFAULTTUNE as default
optimized-tune.inc: add optional distro include bitbake.conf: add TUNE_CCARGS[vardepvalue]
tune-xscale, tune-arm926ejs: drop ARMPKGSFX_CPU, change ARMPKGARCH
instead

 meta/conf/bitbake.conf                       | 2 ++
 meta/conf/distro/include/optimized-tune.inc  | 2 ++
 meta/conf/machine/include/tune-arm926ejs.inc | 7 ++++---
 meta/conf/machine/include/tune-xscale.inc    | 8 +++++---
 4 files changed, 13 insertions(+), 6 deletions(-)
 create mode 100644 meta/conf/distro/include/optimized-tune.inc
Signature · 1 line
1.7.12