aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/perf_event.h
diff options
context:
space:
mode:
authorJamie Iles <jamie.iles@picochip.com>2010-02-02 20:24:58 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-02-12 17:25:53 +0000
commit7ada189f5c8627662c23f49b3e68463f86fc511e (patch)
tree3b4b15586e3e81ec0bbca292dd9a1ed8175e717e /arch/arm/include/asm/perf_event.h
parent1618fdd9602c689de2f820a88cb3e283a39c3d90 (diff)
downloadkernel_samsung_smdk4412-7ada189f5c8627662c23f49b3e68463f86fc511e.zip
kernel_samsung_smdk4412-7ada189f5c8627662c23f49b3e68463f86fc511e.tar.gz
kernel_samsung_smdk4412-7ada189f5c8627662c23f49b3e68463f86fc511e.tar.bz2
ARM: 5900/2: arm: enable support for software perf events
The perf events subsystem allows counting of both hardware and software events. This patch implements the bare minimum for software performance events. Cc: Peter Zijlstra <peterz@infradead.org> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Jamie Iles <jamie.iles@picochip.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/perf_event.h')
-rw-r--r--arch/arm/include/asm/perf_event.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/arch/arm/include/asm/perf_event.h b/arch/arm/include/asm/perf_event.h
new file mode 100644
index 0000000..49e3049
--- /dev/null
+++ b/arch/arm/include/asm/perf_event.h
@@ -0,0 +1,31 @@
+/*
+ * linux/arch/arm/include/asm/perf_event.h
+ *
+ * Copyright (C) 2009 picoChip Designs Ltd, Jamie Iles
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ */
+
+#ifndef __ARM_PERF_EVENT_H__
+#define __ARM_PERF_EVENT_H__
+
+/*
+ * NOP: on *most* (read: all supported) ARM platforms, the performance
+ * counter interrupts are regular interrupts and not an NMI. This
+ * means that when we receive the interrupt we can call
+ * perf_event_do_pending() that handles all of the work with
+ * interrupts enabled.
+ */
+static inline void
+set_perf_event_pending(void)
+{
+}
+
+/* ARM performance counters start from 1 (in the cp15 accesses) so use the
+ * same indexes here for consistency. */
+#define PERF_EVENT_INDEX_OFFSET 1
+
+#endif /* __ARM_PERF_EVENT_H__ */