aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2010-07-18 22:18:55 +0000
committerKhem Raj <raj.khem@gmail.com>2010-07-21 10:24:49 -0700
commite7adac34e40afeb0c0ae5fe3d1207d9bf10dfabc (patch)
treef9932465ae13556f8d7fd2259d75f137f62ffa7d
parent49cd7db742d12a7cf5c88673625561524044cd72 (diff)
downloadopenembedded-e7adac34e40afeb0c0ae5fe3d1207d9bf10dfabc.tar.gz
distro: Move thumb into distro features
* Currenlty we define the thumb specific overrides in machine tune files and as machine conf files are included before the distro conf files the overrides dont get right values and set incorrectly. * This patch moves the tune-thumb.inc from machine/include into distro/include and lets distro decide on thumb and thumb-interworking features based on the machine selected. If a machine which does not support thumb like all armv4 based machines is selected then distro makes correct decision now to disable thumb and thumb-interworking based upon the machine seletected. Signed-off-by: Khem Raj <raj.khem@gmail.com> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Martin Jansa <Martin.Jansa@gmail.com>
-rw-r--r--conf/distro/angstrom-2008.1.conf1
-rw-r--r--conf/distro/gmustix.conf2
-rw-r--r--conf/distro/include/arm-thumb.inc (renamed from conf/machine/include/tune-thumb.inc)0
-rw-r--r--conf/distro/kaeilos-2010.conf1
-rw-r--r--conf/distro/kaeilos.conf1
-rw-r--r--conf/distro/micro.conf1
-rw-r--r--conf/distro/minimal.conf3
-rw-r--r--conf/distro/shr.conf1
-rw-r--r--conf/distro/slugos.conf2
-rw-r--r--conf/machine/include/ixp4xx.inc1
-rw-r--r--conf/machine/include/tune-arm1136-novfp.inc3
-rw-r--r--conf/machine/include/tune-arm1136jf-s.inc3
-rw-r--r--conf/machine/include/tune-arm1176jzf-s.inc3
-rw-r--r--conf/machine/include/tune-arm920t.inc4
-rw-r--r--conf/machine/include/tune-arm926ejs.inc3
-rw-r--r--conf/machine/include/tune-arm9tdmi.inc4
-rw-r--r--conf/machine/include/tune-armv7.inc4
-rw-r--r--conf/machine/include/tune-ep9312.inc3
-rw-r--r--conf/machine/include/tune-xscale.inc4
-rw-r--r--conf/machine/palmz31.conf3
-rw-r--r--conf/machine/palmz72.conf3
21 files changed, 11 insertions, 39 deletions
diff --git a/conf/distro/angstrom-2008.1.conf b/conf/distro/angstrom-2008.1.conf
index 7c70c84552..84e80968a8 100644
--- a/conf/distro/angstrom-2008.1.conf
+++ b/conf/distro/angstrom-2008.1.conf
@@ -136,6 +136,7 @@ PREFERRED_VERSION_binutils-cross-sdk_avr32 = "2.17"
# Toolchain virtuals:
require conf/distro/include/toolchain-${TOOLCHAIN_TYPE}.inc
+require conf/distro/include/arm-thumb.inc
PREFERRED_PROVIDER_dbus-glib = "dbus-glib"
PREFERRED_PROVIDER_hotplug = "udev"
diff --git a/conf/distro/gmustix.conf b/conf/distro/gmustix.conf
index 17f805617a..5dd519d90a 100644
--- a/conf/distro/gmustix.conf
+++ b/conf/distro/gmustix.conf
@@ -5,6 +5,8 @@
INHERIT += "package_tar package_ipk"
LIBC = "uclibc"
require conf/distro/include/${LIBC}.inc
+require conf/distro/include/arm-thumb.inc
+
TARGET_OS = "linux-uclibc"
TARGET_FPU = "soft"
IMAGE_FSTYPES = "jffs2"
diff --git a/conf/machine/include/tune-thumb.inc b/conf/distro/include/arm-thumb.inc
index cd88bb4786..cd88bb4786 100644
--- a/conf/machine/include/tune-thumb.inc
+++ b/conf/distro/include/arm-thumb.inc
diff --git a/conf/distro/kaeilos-2010.conf b/conf/distro/kaeilos-2010.conf
index 4bb637cfa6..ba374458f7 100644
--- a/conf/distro/kaeilos-2010.conf
+++ b/conf/distro/kaeilos-2010.conf
@@ -96,6 +96,7 @@ PREFERRED_VERSION_gcc-cross-intermediate ?= "${KAEILOS_GCC_VERSION}"
PREFERRED_ARM_INSTRUCTION_SET ?= "thumb"
require conf/distro/include/sane-toolchain.inc
+require conf/distro/include/arm-thumb.inc
PREFERRED_PROVIDER_dbus-glib = "dbus-glib"
PREFERRED_PROVIDER_hotplug = "udev"
diff --git a/conf/distro/kaeilos.conf b/conf/distro/kaeilos.conf
index eb12d2ed04..b1412805d1 100644
--- a/conf/distro/kaeilos.conf
+++ b/conf/distro/kaeilos.conf
@@ -124,6 +124,7 @@ PREFERRED_VERSION_binutils-cross-sdk_avr32 = "2.17"
# Toolchain virtuals:
require conf/distro/include/toolchain-${TOOLCHAIN_TYPE}.inc
+require conf/distro/include/arm-thumb.inc
PREFERRED_PROVIDER_dbus-glib = "dbus-glib"
PREFERRED_PROVIDER_hotplug = "udev"
diff --git a/conf/distro/micro.conf b/conf/distro/micro.conf
index 9885425979..fc50391f30 100644
--- a/conf/distro/micro.conf
+++ b/conf/distro/micro.conf
@@ -66,6 +66,7 @@ PREFERRED_VERSION_glibc ?= "2.10.1"
PREFERRED_VERSION_glibc-initial ?= "2.10.1"
PREFERRED_ARM_INSTRUCTION_SET ?= "thumb"
require conf/distro/include/sane-toolchain.inc
+require conf/distro/include/arm-thumb.inc
#############################################################################
# OVERRIDES adjusted from bitbake.conf to feature the MACHINE_CLASS
diff --git a/conf/distro/minimal.conf b/conf/distro/minimal.conf
index e400c14d65..9a081309e1 100644
--- a/conf/distro/minimal.conf
+++ b/conf/distro/minimal.conf
@@ -16,7 +16,7 @@ DISTRO_VERSION = "dev-snapshot-${SRCDATE}"
DISTRO_TYPE ?= "debug"
# Ensure some form of release config, so error out if someone thinks he knows better
-DISTRO_CHECK := "${@bb.data.getVar('DISTRO_VERSION',d,1) or bb.fatal('Remove this line or set a dummy DISTRO_VERSION")
+DISTRO_CHECK := "${@bb.data.getVar('DISTRO_VERSION',d,1) or bb.fatal('Remove this line or set a dummy DISTRO_VERSION')}"
#############################################################################
# FEATURE SELECTION
@@ -86,6 +86,7 @@ MACHINE_KERNEL_VERSION = "2.6"
#############################################################################
LIBC ?= "eglibc"
require conf/distro/include/sane-toolchain.inc
+require conf/distro/include/arm-thumb.inc
#############################################################################
# PREFERRED VERSIONS
diff --git a/conf/distro/shr.conf b/conf/distro/shr.conf
index f0167da3a8..9fd156fc1f 100644
--- a/conf/distro/shr.conf
+++ b/conf/distro/shr.conf
@@ -159,6 +159,7 @@ PREFERRED_VERSION_eglibc ?= "2.12"
PREFERRED_VERSION_eglibc-initial ?= "2.12"
PREFERRED_GCC_VERSION ?= "4.5"
require conf/distro/include/sane-toolchain.inc
+require conf/distro/include/arm-thumb.inc
# Set some java bits
require conf/distro/include/sane-toolchain-java.inc
diff --git a/conf/distro/slugos.conf b/conf/distro/slugos.conf
index 5a2f0dc620..5f9c06ca0b 100644
--- a/conf/distro/slugos.conf
+++ b/conf/distro/slugos.conf
@@ -22,3 +22,5 @@ require conf/distro/include/slugos.inc
# Can be either glibc or eglibc (or perhaps even uclibc)
LIBC ?= "eglibc"
require conf/distro/include/${LIBC}.inc
+require conf/distro/include/arm-thumb.inc
+
diff --git a/conf/machine/include/ixp4xx.inc b/conf/machine/include/ixp4xx.inc
index 192cbb121b..cf7f0dd603 100644
--- a/conf/machine/include/ixp4xx.inc
+++ b/conf/machine/include/ixp4xx.inc
@@ -22,7 +22,6 @@ IMAGE_FSTYPES ?= "jffs2 tar.gz"
EXTRA_IMAGECMD_jffs2 = "--pad --eraseblock=0x20000 -n"
require conf/machine/include/tune-xscale.inc
-require conf/machine/include/tune-thumb.inc
#-------------------------------------------------------------------------------
# Board defaults
diff --git a/conf/machine/include/tune-arm1136-novfp.inc b/conf/machine/include/tune-arm1136-novfp.inc
index e1f7945a0f..58134b7d40 100644
--- a/conf/machine/include/tune-arm1136-novfp.inc
+++ b/conf/machine/include/tune-arm1136-novfp.inc
@@ -5,6 +5,3 @@ TARGET_CC_ARCH = "-march=armv6j -mtune=arm1136jf-s"
FEED_ARCH = "armv6-novfp"
BASE_PACKAGE_ARCH = "armv6-novfp"
PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6-novfp"
-
-# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
-require conf/machine/include/tune-thumb.inc
diff --git a/conf/machine/include/tune-arm1136jf-s.inc b/conf/machine/include/tune-arm1136jf-s.inc
index c532b9c816..2944cc7166 100644
--- a/conf/machine/include/tune-arm1136jf-s.inc
+++ b/conf/machine/include/tune-arm1136jf-s.inc
@@ -2,6 +2,3 @@ TARGET_CC_ARCH = "-march=armv6j -mtune=arm1136jf-s -mfpu=vfp -mfloat-abi=softfp"
FEED_ARCH = "armv6"
BASE_PACKAGE_ARCH = "armv6"
PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6"
-
-# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
-require conf/machine/include/tune-thumb.inc
diff --git a/conf/machine/include/tune-arm1176jzf-s.inc b/conf/machine/include/tune-arm1176jzf-s.inc
index b7c5291731..ee2884b0a9 100644
--- a/conf/machine/include/tune-arm1176jzf-s.inc
+++ b/conf/machine/include/tune-arm1176jzf-s.inc
@@ -2,6 +2,3 @@ TARGET_CC_ARCH = "-march=armv6j -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=softfp
FEED_ARCH = "armv6"
BASE_PACKAGE_ARCH = "armv6"
PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6"
-
-# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
-require conf/machine/include/tune-thumb.inc
diff --git a/conf/machine/include/tune-arm920t.inc b/conf/machine/include/tune-arm920t.inc
index 5a373e9d80..fee5c586c9 100644
--- a/conf/machine/include/tune-arm920t.inc
+++ b/conf/machine/include/tune-arm920t.inc
@@ -2,7 +2,3 @@ FEED_ARCH = "armv4t"
BASE_PACKAGE_ARCH = "armv4t"
TARGET_CC_ARCH = "-march=armv4t -mtune=arm920t"
PACKAGE_EXTRA_ARCHS += "armv4 armv4t"
-
-# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
-require conf/machine/include/tune-thumb.inc
-
diff --git a/conf/machine/include/tune-arm926ejs.inc b/conf/machine/include/tune-arm926ejs.inc
index f6f5064548..f41e460999 100644
--- a/conf/machine/include/tune-arm926ejs.inc
+++ b/conf/machine/include/tune-arm926ejs.inc
@@ -5,6 +5,3 @@ PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te"
# For gcc 4.x you need:
TARGET_CC_ARCH = "-march=armv5te -mtune=arm926ej-s"
BASE_PACKAGE_ARCH = "armv5te"
-
-# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
-require conf/machine/include/tune-thumb.inc
diff --git a/conf/machine/include/tune-arm9tdmi.inc b/conf/machine/include/tune-arm9tdmi.inc
index a11ee381d5..d788b5304f 100644
--- a/conf/machine/include/tune-arm9tdmi.inc
+++ b/conf/machine/include/tune-arm9tdmi.inc
@@ -2,7 +2,3 @@ FEED_ARCH = "armv4t"
BASE_PACKAGE_ARCH = "armv4t"
PACKAGE_EXTRA_ARCHS += "armv4 armv4t"
TARGET_CC_ARCH = "-mcpu=arm9tdmi -mtune=arm9tdmi"
-
-# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
-require conf/machine/include/tune-thumb.inc
-
diff --git a/conf/machine/include/tune-armv7.inc b/conf/machine/include/tune-armv7.inc
index 05ec3da1ac..379a3eb011 100644
--- a/conf/machine/include/tune-armv7.inc
+++ b/conf/machine/include/tune-armv7.inc
@@ -5,7 +5,3 @@ TARGET_CC_ARCH = "-march=armv7 -mfpu=vfp -mfloat-abi=softfp"
FEED_ARCH = "armv7"
PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6 armv7"
BASE_PACKAGE_ARCH = "armv7"
-
-# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
-require conf/machine/include/tune-thumb.inc
-
diff --git a/conf/machine/include/tune-ep9312.inc b/conf/machine/include/tune-ep9312.inc
index c8770e0783..7458281172 100644
--- a/conf/machine/include/tune-ep9312.inc
+++ b/conf/machine/include/tune-ep9312.inc
@@ -5,9 +5,6 @@ PACKAGE_EXTRA_ARCHS += "armv4t ep9312"
BASE_PACKAGE_ARCH = "ep9312"
FEED_ARCH = "ep9312"
-# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
-require conf/machine/include/tune-thumb.inc
-
FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O -fno-signed-zeros"
DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer -g"
SELECTED_OPTIMIZATION = "${@bb.data.getVar(['FULL_OPTIMIZATION', 'DEBUG_OPTIMIZATION'][bb.data.getVar('DEBUG_BUILD', d, 1) == '1'], d, 1)}"
diff --git a/conf/machine/include/tune-xscale.inc b/conf/machine/include/tune-xscale.inc
index 3a6bd0e659..f0f58bc30d 100644
--- a/conf/machine/include/tune-xscale.inc
+++ b/conf/machine/include/tune-xscale.inc
@@ -7,7 +7,3 @@ TARGET_CC_ARCH = "-march=armv5te -mtune=xscale"
TARGET_CC_KERNEL_ARCH = "-march=armv5te -mtune=xscale"
PACKAGE_EXTRA_ARCHS += "${@['armv4b armv4tb armv5teb', 'armv4 armv4t armv5te'][ bb.data.getVar('TARGET_ARCH', d, 1) == 'arm']}"
BASE_PACKAGE_ARCH = "${@['armv5teb', 'armv5te'][bb.data.getVar('TARGET_ARCH', d, 1) == 'arm']}"
-
-# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
-require conf/machine/include/tune-thumb.inc
-
diff --git a/conf/machine/palmz31.conf b/conf/machine/palmz31.conf
index 0332952edc..9fb5f7ead9 100644
--- a/conf/machine/palmz31.conf
+++ b/conf/machine/palmz31.conf
@@ -11,9 +11,6 @@ MACHINE_DISPLAY_HEIGHT_PIXELS = "160"
SERIAL_CONSOLE = "115200 ttyS0"
-# Use tune-xscale per default. Machine independent feeds should be built with tune-strongarm.
-require conf/machine/include/tune-thumb.inc
-
MACHINE_EXTRA_RRECOMMENDS += "kernel-module-i2c-pxa \
kernel-module-i2c-algo-pxa \
kernel-module-i2c-dev \
diff --git a/conf/machine/palmz72.conf b/conf/machine/palmz72.conf
index 502c11a284..9766434690 100644
--- a/conf/machine/palmz72.conf
+++ b/conf/machine/palmz72.conf
@@ -11,9 +11,6 @@ MACHINE_DISPLAY_HEIGHT_PIXELS = "320"
SERIAL_CONSOLE = "115200 ttyS0"
-# Use tune-xscale per default. Machine independent feeds should be built with tune-strongarm.
-require conf/machine/include/tune-thumb.inc
-
MACHINE_EXTRA_RRECOMMENDS += "kernel-module-i2c-pxa \
kernel-module-i2c-algo-pxa \
kernel-module-i2c-dev \