Skip to contentSkip to conversation

tune: update arm7a and cortexa8 tune files

PATCH In review Darren Hart 4 participants 9 messages Aug 19, 2011 – Aug 24, 2011

lore
Share & tools
lore
#0 lore raw

cover tune: update arm7a and cortexa8 tune files

Correct some typographical errors in the arm7a and cortexa8 files. Add support for the hard floating point abi. Leave the default as cortexa8-neon.

These are in preparation to enable hardfp for meta-yocto's beagleboard BSP.

The following changes since commit 8aa14b444f16c4fd0afe93eccd238a8fb2bc0292:

newt: update distro tracking fields (2011-08-19 09:29:20 -0700)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib dvhart/tune-cortexa8
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dvhart/tune-cortexa8

Darren Hart (3):
tune: add missing closing quote to arch-armv7a.inc for AVAILTUNES
tune: remove thumb flag from non-thumb cortexa8 tune variables
tune: Add hard floating point variants of cortexa8 tunes

 meta/conf/machine/include/arm/arch-armv7a.inc |    2 +-
 meta/conf/machine/include/tune-cortexa8.inc   |   20 +++++++++++++++-----
 2 files changed, 16 insertions(+), 6 deletions(-)
Signature · 1 line
1.7.6
#1 lore raw

PATCH 1/3 tune: add missing closing quote to arch-armv7a.inc for AVAILTUNES

A closing quote was missing for an AVAILTUNES append operation, add it.

CC Jason Kridner <[email protected]>
CC Koen Kooi <[email protected]>
---
 meta/conf/machine/include/arm/arch-armv7a.inc |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/conf/machine/include/arm/arch-armv7a.inc +1 -1
index 704f86b..d508352 100644
@@ -20,7 +20,7 @@ PACKAGE_EXTRA_ARCHS_tune-armv7at = "${PACKAGE_EXTRA_ARCHS_tune-armv7t} armv7a ar
 PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon"
 
 # VFP Tunes
-AVAILTUNES += "armv7hf armv7thf armv7hf-neon armv7thf-neon
+AVAILTUNES += "armv7hf armv7thf armv7hf-neon armv7thf-neon"
 TUNE_FEATURES_tune-armv7ahf ?= "${TUNE_FEATURES_tune-armv7a} callconvention-hard"
 TUNE_FEATURES_tune-armv7athf ?= "${TUNE_FEATURES_tune-armv7at} callconvention-hard"
 TUNE_FEATURES_tune-armv7ahf-neon ?= "${TUNE_FEATURES_tune-armv7a-neon} callconvention-hard"
Signature · 1 line
1.7.6
#2 lore raw

PATCH 2/3 tune: remove thumb flag from non-thumb cortexa8 tune variables

The thumb flag "t" appears to have been copy/pasted to all the PACKAGE_EXTRA_ARCHS tune variables. Remove it from the non-thumb versions.

CC Jason Kridner <[email protected]>
CC Koen Kooi <[email protected]>
---
 meta/conf/machine/include/tune-cortexa8.inc |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
meta/conf/machine/include/tune-cortexa8.inc +2 -2
index 02b560c..67c5f0b 100644
@@ -10,7 +10,7 @@ TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8"
 TUNE_FEATURES_tune-cortexa8t = "${TUNE_FEATURES_tune-armv7at} cortexa8"
 TUNE_FEATURES_tune-cortexa8-neon = "${TUNE_FEATURES_tune-cortexa8} neon"
 
-PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}"
 
Signature · 1 line
1.7.6
#3 lore raw

Re: [PATCH 2/3] tune: remove thumb flag from non-thumb cortexa8 tune variables

Quoted 3 lines · Darren Hart

The thumb flag "t" appears to have been copy/pasted to all the PACKAGE_EXTRA_ARCHS tune variables. Remove it from the non-thumb versions.

hmmm non thumb versions can run thumb packages. So I think its ok to have t in EXTRA_ARCHS

Quoted 21 lines
CC Jason Kridner<[email protected]>
CC Koen Kooi<[email protected]>
---
  meta/conf/machine/include/tune-cortexa8.inc |    4 ++--
  1 files changed, 2 insertions(+), 2 deletions(-)
meta/conf/machine/include/tune-cortexa8.inc +2 -2
index 02b560c..67c5f0b 100644
@@ -10,7 +10,7 @@ TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8"
  TUNE_FEATURES_tune-cortexa8t = "${TUNE_FEATURES_tune-armv7at} cortexa8"
  TUNE_FEATURES_tune-cortexa8-neon = "${TUNE_FEATURES_tune-cortexa8} neon"
 
-PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}"
  PACKAGE_EXTRA_ARCHS_tune-cortexa8t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}"
 
#4 lore raw

Re: [PATCH 2/3] tune: remove thumb flag from non-thumb cortexa8 tune variables

Quoted 7 lines · Khem Raj
Quoted 3 lines · Darren Hart

The thumb flag "t" appears to have been copy/pasted to all the PACKAGE_EXTRA_ARCHS tune variables. Remove it from the non-thumb versions.

hmmm non thumb versions can run thumb packages. So I think its ok to have t in EXTRA_ARCHS

Er, really? If it can run thumb code, in what sense is it a "non thumb" version?

p.

#5 lore raw

Re: [PATCH 2/3] tune: remove thumb flag from non-thumb cortexa8 tune variables

Quoted 6 lines · Phil Blundell
Quoted 5 lines · Khem Raj
Quoted 3 lines · Darren Hart

The thumb flag "t" appears to have been copy/pasted to all the PACKAGE_EXTRA_ARCHS tune variables. Remove it from the non-thumb versions.

Quoted 6 lines
Quoted 2 lines

hmmm non thumb versions can run thumb packages. So I think its ok to have t in EXTRA_ARCHS

Er, really?  If it can run thumb code, in what sense is it a "non thumb" version?

It was for armv7 pov here not for all arms like v4
with EABI, on cortex and interworking being mandatory it should run thumb code thats what I meant.

Quoted 9 lines

p.

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#6 lore raw

Re: [PATCH 2/3] tune: remove thumb flag from non-thumb cortexa8 tune variables

In reply to Khem Raj
Quoted 7 lines · Khem Raj
Quoted 3 lines · Darren Hart

The thumb flag "t" appears to have been copy/pasted to all the PACKAGE_EXTRA_ARCHS tune variables. Remove it from the non-thumb versions.

hmmm non thumb versions can run thumb packages. So I think its ok to have t in EXTRA_ARCHS

Perhaps I'm confused with respect how these are used... see below.

Quoted 16 lines
Quoted 16 lines
CC Jason Kridner<[email protected]>
CC Koen Kooi<[email protected]>
---
  meta/conf/machine/include/tune-cortexa8.inc |    4 ++--
  1 files changed, 2 insertions(+), 2 deletions(-)
meta/conf/machine/include/tune-cortexa8.inc +0 -0
index 02b560c..67c5f0b 100644
@@ -10,7 +10,7 @@ TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8"
  TUNE_FEATURES_tune-cortexa8t = "${TUNE_FEATURES_tune-armv7at} cortexa8"
  TUNE_FEATURES_tune-cortexa8-neon = "${TUNE_FEATURES_tune-cortexa8} neon"
 
Quoted 2 lines

meta/conf/machine/include/tune-cortexa8.inc TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8" · line 13

Quoted 2 lines
meta/conf/machine/include/tune-cortexa8.inc +1 -1
-PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}"

If we don't drop the t, do we need to add the non-t version as well?, ie:
-PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}" +PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} ${PACKAGE_EXTRA_ARCHS_tune-armv7at}"

Quoted 1 line

meta/conf/machine/include/tune-cortexa8.inc TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8" · line 14

Quoted 1 line
meta/conf/machine/include/tune-cortexa8.inc +0 -0
  PACKAGE_EXTRA_ARCHS_tune-cortexa8t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"

Here we're adding thumb to thumb, so I took that to mean we needed to add non-thumb to the non-thumb tune definitions.

Quoted 2 lines
Quoted 2 lines
meta/conf/machine/include/tune-cortexa8.inc +1 -1
-PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}"
Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
#7 lore raw

Re: [PATCH 2/3] tune: remove thumb flag from non-thumb cortexa8 tune variables

In reply to Darren Hart
Quoted 15 lines · Darren Hart

The thumb flag "t" appears to have been copy/pasted to all the PACKAGE_EXTRA_ARCHS tune variables. Remove it from the non-thumb versions.

CC Jason Kridner <[email protected]>
CC Koen Kooi <[email protected]>
---
 meta/conf/machine/include/tune-cortexa8.inc |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
meta/conf/machine/include/tune-cortexa8.inc +0 -0
index 02b560c..67c5f0b 100644

meta/conf/machine/include/tune-cortexa8.inc TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8" · line 15

Quoted 8 lines
meta/conf/machine/include/tune-cortexa8.inc +2 -2
@@ -10,7 +10,7 @@ TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8"
 TUNE_FEATURES_tune-cortexa8t = "${TUNE_FEATURES_tune-armv7at} cortexa8"
 TUNE_FEATURES_tune-cortexa8-neon = "${TUNE_FEATURES_tune-cortexa8} neon"
 
-PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}"

I'm not convinced this is a mistake. Even if you select the cortexa8 tune, the machine can still accept thumb packages, we're just not building them so I think in these cases, PACKAGE_EXTRA_ARCHS is correct and is intended to be more inclusive.

I've therefore not taken this change.

Cheers,

Richard

#8 lore raw

PATCH 3/3 tune: Add hard floating point variants of cortexa8 tunes

In reply to Darren Hart

Enable machines or distros to select the hard floating point abi for cortexa8 machines. I left out the arm7a thumb+neon combinations as they were not present in the original non-hf set.

CC Jason Kridner <[email protected]>
CC Koen Kooi <[email protected]>
---
 meta/conf/machine/include/tune-cortexa8.inc |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)
meta/conf/machine/include/tune-cortexa8.inc +13 -3
index 67c5f0b..edd1717 100644
@@ -5,12 +5,22 @@ require conf/machine/include/arm/arch-armv7a.inc
 TUNEVALID[cortexa8] = "Enable Cortex-A8 specific processor optimizations"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa8", "-mtune=cortex-a8", "", d)}"
 
-AVAILTUNES += "cortexa8 cortexa8t"
+# Little Endian base configs
+AVAILTUNES += "cortexa8 cortexa8t cortexa8-neon"
 TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8"
 TUNE_FEATURES_tune-cortexa8t = "${TUNE_FEATURES_tune-armv7at} cortexa8"
-TUNE_FEATURES_tune-cortexa8-neon = "${TUNE_FEATURES_tune-cortexa8} neon"
-
+TUNE_FEATURES_tune-cortexa8-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa8"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}"
 
+# VFP Tunes
+AVAILTUNES += "cortexa8hf cortexa8thf cortexa8hf-neon"
+TUNE_FEATURES_tune-cortexa8hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa8"
+TUNE_FEATURES_tune-cortexa8thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa8"
+TUNE_FEATURES_tune-cortexa8hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa8"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf}"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}"
+
+
Signature · 1 line
1.7.6