oprofile: add AArch64 support
authorMarcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Wed, 16 Jan 2013 16:03:26 +0000 (17:03 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 16 Jan 2013 16:10:39 +0000 (16:10 +0000)
(From OE-Core rev: 169b9afcf2d357fdcf254a380d21d17701685834)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch [new file with mode: 0644]
meta/recipes-kernel/oprofile/oprofile_0.9.8.bb

diff --git a/meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch b/meta/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-AArch64-architecture.patch
new file mode 100644 (file)
index 0000000..195bfb2
--- /dev/null
@@ -0,0 +1,31 @@
+From 27edaef9c6d66dfc324630ef40cb27e78031eeeb Mon Sep 17 00:00:00 2001
+From: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
+Date: Tue, 15 Jan 2013 07:37:33 +0100
+Subject: [PATCH] Add rmb() definition for AArch64 architecture
+
+Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
+
+Upstream-status: backport
+---
+ libperf_events/operf_utils.h | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/libperf_events/operf_utils.h b/libperf_events/operf_utils.h
+index 815d51d..2df00b7 100644
+--- a/libperf_events/operf_utils.h
++++ b/libperf_events/operf_utils.h
+@@ -148,6 +148,11 @@ void op_release_resources(void);
+ #define cpu_relax()   asm volatile("":::"memory")
+ #endif
++#ifdef __aarch64__
++#define rmb()         asm volatile("dmb ld" ::: "memory")
++#define cpu_relax()   asm volatile("yield" ::: "memory")
++#endif
++
+ #ifdef __mips__
+ #include <asm/unistd.h>
+ #define rmb()         asm volatile(                                   \
+-- 
+1.8.0
+
index 939c1ba..d283b5c 100644 (file)
@@ -2,7 +2,8 @@ require oprofile.inc
 
 PR = "${INC_PR}.0"
 
-SRC_URI += "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz"
+SRC_URI += "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
+            file://0001-Add-rmb-definition-for-AArch64-architecture.patch"
 
 SRC_URI[md5sum] = "6d127023af1dd1cf24e15411229f3cc8"
 SRC_URI[sha256sum] = "ab45900fa1a23e5d5badf3c0a55f26c17efe6e184efcf00b371433751fa761bc"