Skip to contentSkip to conversation

Fix arm/tune-features for thumb instruction set

PATCH In review Khem Raj 3 participants 11 messages Jan 27, 2012 – Jan 31, 2012

lore
Share & tools
lore

Khem Raj

author
#0 lore raw

cover Fix arm/tune-features for thumb instruction set

There are three new patches addressing the issue where thumb was being added to OVERRIDES for thumb capable cores but not denoting if the mode used for code compliation was thumb. This was originally the case in oe.dev this patch make it behave in that way

thumb-intework addition to OVERRIDES had a reverse logic fixed it

now we dont need to have tune-thumb-arm.inc anymore. Distro's using it will have to delete it from there usage if they are depending on oe-core version of this file. Just setting ARM_INSTRUCTION_SET = "thumb" should be sufficient to change the mode.

The following changes since commit 6437e7315a0f2e077f9d69e4b65b48280ea8edbc:

shadow-sysroot: Simplfy login.defs installation (2012-01-26 20:52:32 +0000)

are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/misc-fixes
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/misc-fixes

Khem Raj (5):
gdb-common: Drop elfutils from DEPENDS
task-core-tools: Divide it into 3 recipes
arm/tune: Correct the logic which added thumb-interwork to OVERRIDES tunearch/arm: Differentiate between thumb code generation and thumb
capability
tune-thumb.inc: Delete

 .../conf/distro/include/distro_tracking_fields.inc |   26 +++++--
 .../conf/machine/include/arm/feature-arm-thumb.inc |   20 ++++-
 meta/conf/machine/include/tune-strongarm1100.inc   |    4 +-
 meta/conf/machine/include/tune-thumb.inc           |   32 --------
 meta/conf/multilib.conf                            |    4 +-
 meta/recipes-core/tasks/task-core-tools-debug.bb   |   26 ++++++
 ...sk-core-tools.bb => task-core-tools-profile.bb} |   81 ++++++--------------
 .../recipes-core/tasks/task-core-tools-testapps.bb |   46 +++++++++++
 meta/recipes-devtools/gdb/gdb-common.inc           |    6 +-
 9 files changed, 138 insertions(+), 107 deletions(-)
 delete mode 100644 meta/conf/machine/include/tune-thumb.inc
 create mode 100644 meta/recipes-core/tasks/task-core-tools-debug.bb
 rename meta/recipes-core/tasks/{task-core-tools.bb => task-core-tools-profile.bb} (48%)
 create mode 100644 meta/recipes-core/tasks/task-core-tools-testapps.bb
Signature · 1 line
1.7.8.3
author
#1 lore raw

PATCH 1/5 gdb-common: Drop elfutils from DEPENDS

---
 meta/recipes-devtools/gdb/gdb-common.inc |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
meta/recipes-devtools/gdb/gdb-common.inc +3 -3
index d728139..930a71b 100644
@@ -2,7 +2,7 @@ DESCRIPTION = "gdb - GNU debugger"
 HOMEPAGE = "http://www.gnu.org/software/gdb/"
 LICENSE="GPLv3+"
 SECTION = "devel"
-DEPENDS = "ncurses readline elfutils ${LTTNGUST}"
+DEPENDS = "ncurses readline ${LTTNGUST}"
 
 LTTNGUST = "lttng-ust"
 LTTNGUST_libc-uclibc = ""
@@ -11,7 +11,7 @@ LTTNGUST_mipsel = ""
 LTTNGUST_mips64 = ""
 LTTNGUST_mips64el = ""
 
-INC_PR = "r4"
+INC_PR = "r5"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
 		file://COPYING.LIB;md5=9f604d8a4f8e74f4f5140845a21b6674 \
@@ -40,7 +40,7 @@ EXPAT = "--without-expat"
 
 EXTRA_OECONF = "--disable-gdbtk --disable-tui --disable-x \
                 --with-curses --disable-multilib --with-system-readline --disable-sim \
-                ${GDBPROPREFIX} --with-libelf=${STAGING_DIR_TARGET} ${EXPAT} \
+                ${GDBPROPREFIX} ${EXPAT} \
                 ${@base_contains('DISTRO_FEATURES', 'multiarch', '--enable-64-bit-bfd', '', d)} \
                "
 
Signature · 1 line
1.7.8.3
author
#2 lore raw

PATCH 2/5 task-core-tools: Divide it into 3 recipes

task-core-tools-debug, task-core-tools-profile, task-core-tools-testapps otherwise if we choose one through PACKAGE_GROUPS all packages are built since they are in same recipe.

---
 .../conf/distro/include/distro_tracking_fields.inc |   26 +++++--
 meta/conf/multilib.conf                            |    4 +-
 meta/recipes-core/tasks/task-core-tools-debug.bb   |   26 ++++++
 ...sk-core-tools.bb => task-core-tools-profile.bb} |   81 ++++++--------------
 .../recipes-core/tasks/task-core-tools-testapps.bb |   46 +++++++++++
 5 files changed, 119 insertions(+), 64 deletions(-)
 create mode 100644 meta/recipes-core/tasks/task-core-tools-debug.bb
 rename meta/recipes-core/tasks/{task-core-tools.bb => task-core-tools-profile.bb} (48%)
 create mode 100644 meta/recipes-core/tasks/task-core-tools-testapps.bb
meta/conf/distro/include/distro_tracking_fields.inc +20 -6
index a047315..bbef8c3 100644
@@ -2467,12 +2467,26 @@ RECIPE_LATEST_RELEASE_DATE_pn-task-core-nfs="n/a"
 RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-nfs="n/a"
 RECIPE_MAINTAINER_pn-task-core-nfs = "Dongxiao Xu <[email protected]>"
 
-RECIPE_STATUS_pn-task-core-tools="green"
-RECIPE_LATEST_VERSION_pn-task-core-tools="1.0"
-RECIPE_NO_OF_PATCHES_pn-task-core-tools="0"
-RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools="n/a"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools="n/a"
-RECIPE_MAINTAINER_pn-task-core-tools = "Dongxiao Xu <[email protected]>"
+RECIPE_STATUS_pn-task-core-tools-debug="green"
+RECIPE_LATEST_VERSION_pn-task-core-tools-debug="1.0"
+RECIPE_NO_OF_PATCHES_pn-task-core-tools-debug="0"
+RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools-debug="n/a"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools-debug="n/a"
+RECIPE_MAINTAINER_pn-task-core-tools-profile = "Dongxiao Xu <[email protected]>"
+
+RECIPE_STATUS_pn-task-core-tools-profile="green"
+RECIPE_LATEST_VERSION_pn-task-core-tools-profile="1.0"
+RECIPE_NO_OF_PATCHES_pn-task-core-tools-profile="0"
+RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools-profile="n/a"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools-profile="n/a"
+RECIPE_MAINTAINER_pn-task-core-tools-profile = "Dongxiao Xu <[email protected]>"
+
+RECIPE_STATUS_pn-task-core-tools-testapps="green"
+RECIPE_LATEST_VERSION_pn-task-core-tools-testapps="1.0"
+RECIPE_NO_OF_PATCHES_pn-task-core-tools-testapps="0"
+RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools-testapps="n/a"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools-testapps="n/a"
+RECIPE_MAINTAINER_pn-task-core-tools-testapps = "Dongxiao Xu <[email protected]>"
 
 RECIPE_STATUS_pn-gst-meta-base="green"
 DISTRO_PN_ALIAS_pn-gst-meta-base = "Meego=gstreamer Fedora=gstreamer OpenSuSE=gstreamer Ubuntu=gstreamer0.10 Mandriva=gstreamer0.10 Debian=gstreamer0.10"
meta/conf/multilib.conf +3 -1
index 9554519..d366fd3 100644
@@ -393,7 +393,9 @@ BBCLASSEXTEND_append_pn-task-core-lsb = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-nfs = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-ssh-dropbear = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-ssh-openssh = " ${MULTILIBS}"
-BBCLASSEXTEND_append_pn-task-core-tools = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-tools-debug = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-tools-profile = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-tools-testapps = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-x11 = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-x11-sato = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-tasks = " ${MULTILIBS}"
meta/recipes-core/tasks/task-core-tools-debug.bb new file +26 -0
new file mode 100644
index 0000000..3c92f3f
@@ -0,0 +1,26 @@
+#
+# Copyright (C) 2008 OpenedHand Ltd.
+#
+
+DESCRIPTION = "Debug tools tasks for OE-Core"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+PACKAGES = "\
+    ${PN} \
+    ${PN}-dbg \
+    ${PN}-dev \
+    "
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+ALLOW_EMPTY = "1"
+
+RDEPENDS_${PN} = "\
+    gdb \
+    gdbserver \
+    tcf-agent \
+    rsync \
+    strace \
+    "
meta/recipes-core/tasks/task-core-tools-profile.bb renamed from meta/recipes-core/tasks/task-core-tools.bb +24 -57

115 lines not on this page · raw message

meta/recipes-core/tasks/task-core-tools-testapps.bb new file +46 -0

46 lines not on this page · raw message

Signature · 1 line
1.7.8.3
#3 lore raw

Re: [PATCH 2/5] task-core-tools: Divide it into 3 recipes

Quoted 12 lines · Khem Raj

task-core-tools-debug, task-core-tools-profile, task-core-tools-testapps otherwise if we choose one through PACKAGE_GROUPS all packages are built since they are in same recipe.

---
  .../conf/distro/include/distro_tracking_fields.inc |   26 +++++--
  meta/conf/multilib.conf                            |    4 +-
  meta/recipes-core/tasks/task-core-tools-debug.bb   |   26 ++++++
  ...sk-core-tools.bb =>  task-core-tools-profile.bb} |   81 ++++++--------------
  .../recipes-core/tasks/task-core-tools-testapps.bb |   46 +++++++++++
  5 files changed, 119 insertions(+), 64 deletions(-)
Quoted 4 lines

create mode 100644 meta/recipes-core/tasks/task-core-tools-debug.bb rename meta/recipes-core/tasks/{task-core-tools.bb => task-core-tools-profile.bb} (48%) create mode 100644 meta/recipes-core/tasks/task-core-tools-testapps.bb

This patch is going to require some coordination with meta-yocto and possibly other layers that currently have .bbappends on the task-core-tools.

It may be as simple as moving the dependency into this new -profile.bb task file.

I am going to hold this one for now.

Sau!

Quoted 262 lines
meta/conf/distro/include/distro_tracking_fields.inc +20 -6
index a047315..bbef8c3 100644
@@ -2467,12 +2467,26 @@ RECIPE_LATEST_RELEASE_DATE_pn-task-core-nfs="n/a"
  RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-nfs="n/a"
  RECIPE_MAINTAINER_pn-task-core-nfs = "Dongxiao Xu<[email protected]>"
 
-RECIPE_STATUS_pn-task-core-tools="green"
-RECIPE_LATEST_VERSION_pn-task-core-tools="1.0"
-RECIPE_NO_OF_PATCHES_pn-task-core-tools="0"
-RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools="n/a"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools="n/a"
-RECIPE_MAINTAINER_pn-task-core-tools = "Dongxiao Xu<[email protected]>"
+RECIPE_STATUS_pn-task-core-tools-debug="green"
+RECIPE_LATEST_VERSION_pn-task-core-tools-debug="1.0"
+RECIPE_NO_OF_PATCHES_pn-task-core-tools-debug="0"
+RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools-debug="n/a"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools-debug="n/a"
+RECIPE_MAINTAINER_pn-task-core-tools-profile = "Dongxiao Xu<[email protected]>"
+
+RECIPE_STATUS_pn-task-core-tools-profile="green"
+RECIPE_LATEST_VERSION_pn-task-core-tools-profile="1.0"
+RECIPE_NO_OF_PATCHES_pn-task-core-tools-profile="0"
+RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools-profile="n/a"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools-profile="n/a"
+RECIPE_MAINTAINER_pn-task-core-tools-profile = "Dongxiao Xu<[email protected]>"
+
+RECIPE_STATUS_pn-task-core-tools-testapps="green"
+RECIPE_LATEST_VERSION_pn-task-core-tools-testapps="1.0"
+RECIPE_NO_OF_PATCHES_pn-task-core-tools-testapps="0"
+RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools-testapps="n/a"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools-testapps="n/a"
+RECIPE_MAINTAINER_pn-task-core-tools-testapps = "Dongxiao Xu<[email protected]>"
 
  RECIPE_STATUS_pn-gst-meta-base="green"
  DISTRO_PN_ALIAS_pn-gst-meta-base = "Meego=gstreamer Fedora=gstreamer OpenSuSE=gstreamer Ubuntu=gstreamer0.10 Mandriva=gstreamer0.10 Debian=gstreamer0.10"
meta/conf/multilib.conf +3 -1
index 9554519..d366fd3 100644
@@ -393,7 +393,9 @@ BBCLASSEXTEND_append_pn-task-core-lsb = " ${MULTILIBS}"
  BBCLASSEXTEND_append_pn-task-core-nfs = " ${MULTILIBS}"
  BBCLASSEXTEND_append_pn-task-core-ssh-dropbear = " ${MULTILIBS}"
  BBCLASSEXTEND_append_pn-task-core-ssh-openssh = " ${MULTILIBS}"
-BBCLASSEXTEND_append_pn-task-core-tools = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-tools-debug = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-tools-profile = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-tools-testapps = " ${MULTILIBS}"
  BBCLASSEXTEND_append_pn-task-core-x11 = " ${MULTILIBS}"
  BBCLASSEXTEND_append_pn-task-core-x11-sato = " ${MULTILIBS}"
  BBCLASSEXTEND_append_pn-tasks = " ${MULTILIBS}"
meta/recipes-core/tasks/task-core-tools-debug.bb new file +26 -0
new file mode 100644
index 0000000..3c92f3f
@@ -0,0 +1,26 @@
+#
+# Copyright (C) 2008 OpenedHand Ltd.
+#
+
+DESCRIPTION = "Debug tools tasks for OE-Core"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+PACKAGES = "\
+    ${PN} \
+    ${PN}-dbg \
+    ${PN}-dev \
+    "
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+ALLOW_EMPTY = "1"
+
+RDEPENDS_${PN} = "\
+    gdb \
+    gdbserver \
+    tcf-agent \
+    rsync \
+    strace \
+    "
meta/recipes-core/tasks/task-core-tools-profile.bb renamed from meta/recipes-core/tasks/task-core-tools.bb +24 -57
similarity index 48%
rename from meta/recipes-core/tasks/task-core-tools.bb
rename to meta/recipes-core/tasks/task-core-tools-profile.bb
index 1a42f15..254d3f5 100644
@@ -2,42 +2,30 @@
  # Copyright (C) 2008 OpenedHand Ltd.
  #
 
-DESCRIPTION = "Tools tasks for OE-Core"
+DESCRIPTION = "Profile tools tasks for OE-Core"
  LICENSE = "MIT"
  LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
                      file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-PR = "r15"
 
  PACKAGES = "\
-    task-core-tools-debug \
-    task-core-tools-debug-dbg \
-    task-core-tools-debug-dev \
-    task-core-tools-profile \
-    task-core-tools-profile-dbg \
-    task-core-tools-profile-dev \
-    task-core-tools-testapps \
-    task-core-tools-testapps-dbg \
-    task-core-tools-testapps-dev \
+    ${PN} \
+    ${PN}-dbg \
+    ${PN}-dev \
      "
 
  PACKAGE_ARCH = "${MACHINE_ARCH}"
 
  ALLOW_EMPTY = "1"
 
-# kexec-tools doesn't work on Mips
-KEXECTOOLS ?= "kexec"
-KEXECTOOLS_mips ?= ""
-KEXECTOOLS_mipsel ?= ""
-KEXECTOOLS_powerpc ?= ""
-
-RDEPENDS_task-core-tools-debug = "\
-    gdb \
-    gdbserver \
-    tcf-agent \
-    rsync \
-    strace"
+RRECOMMENDS_${PN} = "\
+    perf \
+    trace-cmd \
+    kernel-module-oprofile \
+    blktrace \
+    sysprof \
+    "
 
-RDEPENDS_task-core-tools-profile = "\
+PROFILETOOLS = "\
      oprofile \
      oprofileui-server \
      powertop \
@@ -45,14 +33,6 @@ RDEPENDS_task-core-tools-profile = "\
      lttng-control \
      lttng-viewer"
 
-RRECOMMENDS_task-core-tools-profile = "\
-    perf \
-    trace-cmd \
-    kernel-module-oprofile \
-    blktrace \
-    sysprof \
-    "
-
  # systemtap needs elfutils which is not fully buildable on uclibc
  # hence we exclude it from uclibc based builds
  SYSTEMTAP = "systemtap"
@@ -66,6 +46,13 @@ SYSTEMTAP_libc-uclibc = ""
 
  LTTNGUST = "lttng-ust"
  LTTNGUST_libc-uclibc = ""
+LTTNGUST_mips = ""
+
+# valgrind does not work on mips
+
+VALGRIND = "valgrind"
+VALGRIND_libc-uclibc = ""
+VALGRIND_mips = ""
 
  #    exmap-console
  #    exmap-server
@@ -74,29 +61,9 @@ LTTNGUST_libc-uclibc = ""
  # qemux86/qemux86-64/qemuppc/qemuarm/emenlow/atom-pc since upstream liburcu
  # (which is required by lttng-ust) may not build on other platforms, like
  # MIPS.
-RDEPENDS_task-core-tools-profile_append_qemux86 = " valgrind lttng-ust ${SYSTEMTAP}"
-RDEPENDS_task-core-tools-profile_append_qemux86-64 = " ${LTTNGUST} ${SYSTEMTAP}"
-RDEPENDS_task-core-tools-profile_append_qemuppc = " ${LTTNGUST} ${SYSTEMTAP}"
-RDEPENDS_task-core-tools-profile_append_qemuarm = " ${LTTNGUST} ${SYSTEMTAP}"
-
-RDEPENDS_task-core-tools-testapps = "\
-    blktool \
-    fstests \
-    tslib-calibrate \
-    tslib-tests \
-    lrzsz \
-    ${KEXECTOOLS} \
-    alsa-utils-amixer \
-    alsa-utils-aplay \
-    owl-video \
-    gst-meta-video \
-    gst-meta-audio \
-    mesa-demos \
-    x11perf \
-    xrestop \
-    xwininfo \
-    xprop \
-    xvideo-tests \
-    clutter-box2d \
-    ltp \
+RDEPENDS_${PN} = "\
+    ${PROFILETOOLS} \
+    ${LTTNGUST} \
+    ${SYSTEMTAP} \
+    ${VALGRIND} \
      "
meta/recipes-core/tasks/task-core-tools-testapps.bb new file +46 -0
new file mode 100644
index 0000000..b5847f8
@@ -0,0 +1,46 @@
+#
+# Copyright (C) 2008 OpenedHand Ltd.
+#
+
+DESCRIPTION = "Test apps task for OE-Core"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+PACKAGES = "\
+    ${PN} \
+    ${PN}-dbg \
+    ${PN}-dev \
+    "
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+ALLOW_EMPTY = "1"
+
+# kexec-tools doesn't work on Mips
+KEXECTOOLS ?= "kexec"
+KEXECTOOLS_mips ?= ""
+KEXECTOOLS_mipsel ?= ""
+KEXECTOOLS_powerpc ?= ""
+
+RDEPENDS_${PN} = "\
+    blktool \
+    fstests \
+    tslib-calibrate \
+    tslib-tests \
+    lrzsz \
+    ${KEXECTOOLS} \
+    alsa-utils-amixer \
+    alsa-utils-aplay \
+    owl-video \
+    gst-meta-video \
+    gst-meta-audio \
+    mesa-demos \
+    x11perf \
+    xrestop \
+    xwininfo \
+    xprop \
+    xvideo-tests \
+    clutter-box2d \
+    ltp \
+    "
author
#4 lore raw

Re: [PATCH 2/5] task-core-tools: Divide it into 3 recipes

Quoted 7 lines · Saul Wold

This patch is going to require some coordination with meta-yocto and possibly other layers that currently have .bbappends on the task-core-tools.

It may be as simple as moving the dependency into this new -profile.bb task file.

I am going to hold this one for now.

Are there other layers than meta-intel and meta-yocto that needs it. Please speak up. Can I request meta-yocto and meta-intel maintainers to please coordinate fixing the respective layers. Fix is that if you have been appending to profile tools then move those respective bbappends to now append to taks-core-tools-profile.bb. If you need help let me know.

Thanks

-Khem

#5 lore raw

Re: [PATCH 2/5] task-core-tools: Divide it into 3 recipes

Quoted 4 lines · Khem Raj
Quoted 3 lines · Saul Wold

This patch is going to require some coordination with meta-yocto and possibly other layers that currently have .bbappends on the task-core-tools.

Quoted 8 lines
Quoted 4 lines

It may be as simple as moving the dependency into this new -profile.bb task file.

I am going to hold this one for now.

Are there other layers than meta-intel and meta-yocto that needs it. Please speak up. Can I request meta-yocto and meta-intel maintainers to please coordinate fixing the respective layers. Fix is that if you have been appending

I've created a meta-intel branch ready to be pulled in when this is:

http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel/log/?h=tzanussi/task-core-tools-rename

Tom

author
#6 lore raw

Re: [PATCH 2/5] task-core-tools: Divide it into 3 recipes

Quoted 10 lines · Tom Zanussi
Quoted 9 lines · Khem Raj
Quoted 7 lines · Saul Wold

This patch is going to require some coordination with meta-yocto and possibly other layers that currently have .bbappends on the task-core-tools.

It may be as simple as moving the dependency into this new -profile.bb task file.

I am going to hold this one for now.

Quoted 7 lines
Quoted 3 lines

Are there other layers than meta-intel and meta-yocto that needs it. Please speak up. Can I request meta-yocto and meta-intel maintainers to please coordinate fixing the respective layers. Fix is that if you have been appending

I've created a meta-intel branch ready to be pulled in when this is:

http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel/log/?h=tzanussi/task-core-tools-rename

thanks Tom. meta-yocto maintainer needs to fix
http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta-yocto/recipes-core/tasks/task-core-tools.bbappend

Quoted 8 lines

Tom

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

#7 lore raw

Re: [PATCH 2/5] task-core-tools: Divide it into 3 recipes

Quoted 15 lines · Khem Raj
Quoted 14 lines · Tom Zanussi
Quoted 12 lines · Khem Raj
Quoted 7 lines · Saul Wold

This patch is going to require some coordination with meta-yocto and possibly other layers that currently have .bbappends on the task-core-tools.

It may be as simple as moving the dependency into this new -profile.bb task file.

I am going to hold this one for now.

Are there other layers than meta-intel and meta-yocto that needs it. Please speak up. Can I request meta-yocto and meta-intel maintainers to please coordinate fixing the respective layers. Fix is that if you have been appending

Quoted 7 lines
Quoted 3 lines

I've created a meta-intel branch ready to be pulled in when this is:

http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel/log/?h=tzanussi/task-core-tools-rename

thanks Tom. meta-yocto maintainer needs to fix
http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta-yocto/recipes-core/tasks/task-core-tools.bbappend

I will take care of this tomorrow, just wanted to make sure any other places that needed it got the attention.

Sau!

Quoted 14 lines
Quoted 8 lines

Tom

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

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

author
#8 lore raw

PATCH 3/5 arm/tune: Correct the logic which added thumb-interwork to OVERRIDES

In reply to Khem Raj

Add no-thumb-interwork to TUNE_FEATURES for angstrom

---
 .../conf/machine/include/arm/feature-arm-thumb.inc |    2 +-
 meta/conf/machine/include/tune-strongarm1100.inc   |    4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)
meta/conf/machine/include/arm/feature-arm-thumb.inc +1 -1
index b7d6061..da29102 100644
@@ -21,6 +21,6 @@ ARMPKGSFX_THUMB .= "${@bb.utils.contains("TUNE_FEATURES", [ "armv7", "thumb" ],
 # turn this off - the actual cost is very small.
 TUNEVALID[no-thumb-interwork] = "Disable mixing of thumb and ARM functions"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", "-mno-thumb-interwork", "-mthumb-interwork", d)}"
-OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", ":thumb-interwork", "", d)}"
+OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", "", ":thumb-interwork", d)}"
 
 TARGET_CC_KERNEL_ARCH += "-mno-thumb-interwork -marm"
meta/conf/machine/include/tune-strongarm1100.inc +1 -3
index 66bab8e..8bd5be7 100644
@@ -6,7 +6,5 @@ TUNEVALID[strongarm] = "Enable Strongarm 1100 series processor optimizations"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "strongarm", "-mtune=strongarm1100", "", d)}"
 
 AVAILTUNES += "strongarm"
-TUNE_FEATURES_tune-strongarm = "${TUNE_FEATURES_tune-armv4} strongarm"
+TUNE_FEATURES_tune-strongarm = "${TUNE_FEATURES_tune-armv4} strongarm no-thumb-interwork"
 PACKAGE_EXTRA_ARCHS_tune-strongarm = "${PACKAGE_EXTRA_ARCHS_tune-armv4}"
-
-
Signature · 1 line
1.7.8.3
author
#9 lore raw

PATCH 4/5 tunearch/arm: Differentiate between thumb code generation and thumb capability

In reply to Khem Raj

We have diverged a bit from oe.dev where thumb in OVERRIDES meant the code was being compiled in thumb mode. With tunearch this got a different meaning where it meant that if a core is capable of generating thumb code them we will have this in overrides. With this patch I am trying to address the problem where 'thumbmode' in TUNE_FEATURES means that code will be compiled in thumb mode by default and 'thumb' is to denote that core is capable of thumb instruction set.

---
 .../conf/machine/include/arm/feature-arm-thumb.inc |   18 ++++++++++++++----
 1 files changed, 14 insertions(+), 4 deletions(-)
meta/conf/machine/include/arm/feature-arm-thumb.inc +14 -4
index da29102..cb6f4e7 100644
@@ -4,10 +4,20 @@
 # encoded RISC sub-set. Thumb code is smaller (maybe 70% of the ARM size)
 # but requires more instructions (140% for 70% smaller code) so may be
 # slower.
-TUNEVALID[thumb] = "Use thumb instructions instead of ARM"
-ARM_THUMB_M_OPT = "${@['-marm', '-mthumb'][d.getVar('ARM_INSTRUCTION_SET', 1) == 'thumb']}"
-TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "", d)}"
-OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "thumb", ":thumb", "", d)}"
+
+# 'thumbmode' in TUNE_FEATURES means default ISA for code generation is thumb
+# 'thumb' in TUNE_FEATURES means the core supports thumb ISA but code
+# generation can happen in arm or thumb
+# having 'thumbmode' would imply 'thumb' naturally
+
+TUNEVALID[thumbmode] = "Use THUMB instruction set instead of ARM"
+ARM_INSTRUCTION_SET ?= "arm"
+AVAILTUNES += "${@bb.utils.contains("ARM_INSTRUCTION_SET", "thumb", "thumbmode", "", d)}"
+TUNE_FEATURES_tune-thumbmode += "${@bb.utils.contains("ARM_INSTRUCTION_SET", "thumb", "thumbmode", "", d)}"
+TUNE_CCARGS += "${@bb.utils.contains("ARM_INSTRUCTION_SET", "thumb", "-mthumb", "-marm", d)}"
+OVERRIDES .= "${@bb.utils.contains("ARM_INSTRUCTION_SET", "thumb", ":thumb", "", d)}"
+
+TUNEVALID[thumb] = "THUMB instruction set capable ARM core"
 
 # Note armv7 will hit on armv7a as well
 ARMPKGSFX_THUMB .= "${@bb.utils.contains("TUNE_FEATURES", [ "armv4", "thumb" ], "t", "", d)}"
Signature · 1 line
1.7.8.3
author
#10 lore raw

PATCH 5/5 tune-thumb.inc: Delete

In reply to Khem Raj

The same functionality is provided by
machine/include/arm/feature-arm-thumb.inc
Setting ARM_INSTRUCTION_SET = "thumb"
in distro configs should be enough

---
 meta/conf/machine/include/tune-thumb.inc |   32 ------------------------------
 1 files changed, 0 insertions(+), 32 deletions(-)
 delete mode 100644 meta/conf/machine/include/tune-thumb.inc
meta/conf/machine/include/tune-thumb.inc deleted +0 -32
deleted file mode 100644
index 214e3b6..0000000
@@ -1,32 +0,0 @@
-#tune file for thumb instructions
-
-ARM_INSTRUCTION_SET ?= "arm"
-# "arm" "thumb"
-#    The instruction set the compiler should use when generating application
-#    code.  The kernel is always compiled with arm code at present.  arm code
-#    is the original 32 bit ARM instruction set, thumb code is the 16 bit
-#    encoded RISC sub-set.  Thumb code is smaller (maybe 70% of the ARM size)
-#    but requires more instructions (140% for 70% smaller code) so may be
-#    slower.
-
-THUMB_INTERWORK ?= "yes"
-# "yes" "no"
-#    Whether to compile with code to allow interworking between the two
-#    instruction sets.  This allows thumb code to be executed on a primarily
-#    arm system and vice versa.  It is strongly recommended that DISTROs not
-#    turn this off - the actual cost is very small.
-
-OVERRIDE_THUMB = "${@['', ':thumb'][d.getVar('ARM_INSTRUCTION_SET', 1) == 'thumb']}"
-OVERRIDE_INTERWORK = "${@['', ':thumb-interwork'][d.getVar('THUMB_INTERWORK', 1) == 'yes']}"
-OVERRIDES .= "${OVERRIDE_THUMB}${OVERRIDE_INTERWORK}"
-
-#    Compiler and linker options for application code and kernel code.  These
-#    options ensure that the compiler has the correct settings for the selected
-#    instruction set and interworking.
-ARM_INTERWORK_M_OPT = "${@['-mno-thumb-interwork', '-mthumb-interwork'][d.getVar('THUMB_INTERWORK', 1) == 'yes']}"
-ARM_THUMB_M_OPT = "${@['-marm', '-mthumb'][d.getVar('ARM_INSTRUCTION_SET', 1) == 'thumb']}"
-
-#
-TUNE_CCARGS +=  "${ARM_INTERWORK_M_OPT} ${ARM_THUMB_M_OPT}"
-TARGET_CC_KERNEL_ARCH  += "-mno-thumb-interwork -marm"
-
Signature · 1 line
1.7.8.3