summaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/exception.h
diff options
context:
space:
mode:
authorJamie Iles <jamie@jamieiles.com>2011-10-08 11:20:42 +0100
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2012-11-26 16:54:33 +0100
commitb796c0373ef4bb04d166f3d87b7422991fd810cb (patch)
tree8550f198a94b440e90cb43be20e9aa8c58c62433 /arch/arm/include/asm/exception.h
parent3d0df2fd2b9deec41cec0ba1f0d7dbb2be618a31 (diff)
ARM: 7115/4: move __exception and friends to asm/exception.h
The definition of __exception_irq_entry for CONFIG_FUNCTION_GRAPH_TRACER=y needs linux/ftrace.h, but this creates a circular dependency with it's current home in asm/system.h. Create asm/exception.h and update all current users. v4: - rebase to rmk/for-next v3: - remove redundant includes of linux/ftrace.h v2: - document the usage restricitions of __exception* Cc: Zoltan Devai <zdevai@gmail.com> Signed-off-by: Jamie Iles <jamie@jamieiles.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/exception.h')
-rw-r--r--arch/arm/include/asm/exception.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/arm/include/asm/exception.h b/arch/arm/include/asm/exception.h
new file mode 100644
index 000000000000..5abaf5bbd985
--- /dev/null
+++ b/arch/arm/include/asm/exception.h
@@ -0,0 +1,19 @@
+/*
+ * Annotations for marking C functions as exception handlers.
+ *
+ * These should only be used for C functions that are called from the low
+ * level exception entry code and not any intervening C code.
+ */
+#ifndef __ASM_ARM_EXCEPTION_H
+#define __ASM_ARM_EXCEPTION_H
+
+#include <linux/ftrace.h>
+
+#define __exception __attribute__((section(".exception.text")))
+#ifdef CONFIG_FUNCTION_GRAPH_TRACER
+#define __exception_irq_entry __irq_entry
+#else
+#define __exception_irq_entry __exception
+#endif
+
+#endif /* __ASM_ARM_EXCEPTION_H */