linux/arch/arm
Will Deacon 8c1fc96f6f ARM: 6072/1: oprofile: use perf-events framework as backend
There are currently two hardware performance monitoring subsystems in
the kernel for ARM: OProfile and perf-events. This creates the
following problems:

1.) Duplicate PMU accessor code. Inevitable code drift may lead to
bugs in one framework that are fixed in the other.

2.) Locking issues. OProfile doesn't reprogram hardware counters
between profiling runs if the events to be monitored have not been
changed. This means that other profiling frameworks cannot use the
counters if OProfile is in use.

3.) Due to differences in the two frameworks, it may not be possible to
compare the results obtained by OProfile with those obtained by perf.

This patch removes the OProfile PMU driver code and replaces it with
calls to perf, therefore solving the issues mentioned above.

The only userspace-visible change is the lack of SCU counter support
for 11MPCore. This is currently unsupported by OProfile userspace tools anyway and therefore shouldn't cause any problems.

Cc: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Robert Richter <robert.richter@amd.com>
Cc: Jamie Iles <jamie.iles@picochip.com>
Cc: Jean Pihet <jpihet@mvista.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-05-17 11:53:58 +01:00
..
boot ARM: 6026/1: ARM: Add support for LZMA-compressed kernel images 2010-04-14 12:05:36 +01:00
common Merge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa', 'spear' and 'versatile' into devel 2010-05-17 11:53:39 +01:00
configs Merge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa', 'spear' and 'versatile' into devel 2010-05-17 11:53:39 +01:00
include/asm ARM: 6071/1: perf-events: allow modules to query the number of hardware counters 2010-05-17 11:53:58 +01:00
kernel ARM: 6071/1: perf-events: allow modules to query the number of hardware counters 2010-05-17 11:53:58 +01:00
lib
mach-aaec2000 ARM: 5910/1: ARM: Add tmp register for addruart and loadsp 2010-02-12 17:27:52 +00:00
mach-at91 Merge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa', 'spear' and 'versatile' into devel 2010-05-17 11:53:39 +01:00
mach-bcmring ARM: 6047/1: ARM: BCMRING: register PMU IRQ during board initialisation 2010-04-29 18:03:22 +01:00
mach-clps711x ARM: Remove useless linux/bootmem.h includes 2010-05-15 15:03:48 +01:00
mach-davinci Merge branch 'for-next' into for-linus 2010-03-08 16:55:37 +01:00
mach-dove Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-ebsa110 ARM: 5910/1: ARM: Add tmp register for addruart and loadsp 2010-02-12 17:27:52 +00:00
mach-ep93xx ARM: 6124/1: ep93xx: SPI driver platform support code 2010-05-13 12:19:52 +01:00
mach-footbridge Merge branch 'misc2' into devel 2010-02-25 22:09:41 +00:00
mach-gemini Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-03-01 09:15:15 -08:00
mach-h720x ARM: 5910/1: ARM: Add tmp register for addruart and loadsp 2010-02-12 17:27:52 +00:00
mach-integrator ARM: Indirect round/set_rate operations through clk structure 2010-05-02 09:35:38 +01:00
mach-iop13xx Merge branch 'misc2' into devel 2010-02-25 22:09:41 +00:00
mach-iop32x ARM: 5943/1: iop: n2100: enable serial interrupt 2010-04-29 18:03:49 +01:00
mach-iop33x Merge branch 'misc2' into devel 2010-02-25 22:09:41 +00:00
mach-ixp4xx ARM: Remove useless linux/bootmem.h includes 2010-05-15 15:03:48 +01:00
mach-ixp23xx Merge branch 'misc2' into devel 2010-02-25 22:09:41 +00:00
mach-ixp2000 Merge branch 'misc2' into devel 2010-02-25 22:09:41 +00:00
mach-kirkwood Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-ks8695 ARM: 5910/1: ARM: Add tmp register for addruart and loadsp 2010-02-12 17:27:52 +00:00
mach-l7200 ARM: 5910/1: ARM: Add tmp register for addruart and loadsp 2010-02-12 17:27:52 +00:00
mach-lh7a40x Merge branch 'misc2' into devel 2010-02-25 22:09:41 +00:00
mach-loki Merge branch 'misc2' into devel 2010-02-25 22:09:41 +00:00
mach-mmp Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-msm Merge branch 'misc2' into devel 2010-02-25 22:09:41 +00:00
mach-mv78xx0 Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-mx1 Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-mx2 Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-mx3 Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-mx5 mx51_babbage: Fix ckih2 parameter in mx51_clocks_init function 2010-02-24 10:29:14 +01:00
mach-mx25 Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-mxc91231 Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-netx ARM: 5910/1: ARM: Add tmp register for addruart and loadsp 2010-02-12 17:27:52 +00:00
mach-nomadik ARM: 6104/1: nomadik-gpio: use clk API 2010-05-06 20:17:20 +01:00
mach-ns9xxx Merge branch 'misc2' into devel 2010-02-25 22:09:41 +00:00
mach-nuc93x ARM: 5859/1: Add nuc93x platform support 2010-01-27 22:03:00 +00:00
mach-omap1 ARM: Remove useless linux/bootmem.h includes 2010-05-15 15:03:48 +01:00
mach-omap2 Merge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa', 'spear' and 'versatile' into devel 2010-05-17 11:53:39 +01:00
mach-orion5x Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-pnx4008 Merge branches 'clks' and 'pnx' into devel 2010-02-25 22:10:38 +00:00
mach-pxa Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-03-12 16:00:54 -08:00
mach-realview Merge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa', 'spear' and 'versatile' into devel 2010-05-17 11:53:39 +01:00
mach-rpc ARM: Fix RiscPC decompressor build errors 2010-03-15 22:04:54 +00:00
mach-s3c24a0/include/mach Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-s3c64xx ARM: SAMSUNG: Fixup commit 4e6d488af3 2010-03-15 23:11:41 +00:00
mach-s3c2400
mach-s3c2410 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-03-12 16:04:50 -08:00
mach-s3c2412 ARM: SAMSUNG: Remove dma-plat.h to allow plat-s3c64xx to be removed 2010-02-21 23:10:35 +00:00
mach-s3c2440 ARM: S3C2440: Fix s3c2440 cpufreq compilation post move. 2010-03-15 22:43:12 +00:00
mach-s3c2443 ARM: Merge next-samsung-s3c2443-clock 2010-03-07 22:56:19 +00:00
mach-s5p6440 ARM: SAMSUNG: Fixup commit 4e6d488af3 2010-03-15 23:11:41 +00:00
mach-s5p6442 ARM: SAMSUNG: Fixup commit 4e6d488af3 2010-03-15 23:11:41 +00:00
mach-s5pc100 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-03-12 16:04:50 -08:00
mach-s5pv210 Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
mach-sa1100 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-03-12 16:00:54 -08:00
mach-shark ARM: 5910/1: ARM: Add tmp register for addruart and loadsp 2010-02-12 17:27:52 +00:00
mach-shmobile ARM: mach-shmobile: ap4evb SDHI0 platform data V2 2010-03-15 12:06:47 +09:00
mach-spear3xx ARM: 6091/1: ST SPEAr: Adding support for shared irq layer 2010-05-04 16:54:54 +01:00
mach-spear6xx ARM: 6091/1: ST SPEAr: Adding support for shared irq layer 2010-05-04 16:54:54 +01:00
mach-stmp37xx
mach-stmp378x
mach-u300 ARM: 6034/1: ARM: U300: set f_max to 24 MHz for MMCI 2010-04-14 16:08:18 +01:00
mach-ux500 ARM: 6104/1: nomadik-gpio: use clk API 2010-05-06 20:17:20 +01:00
mach-versatile ARM: Indirect round/set_rate operations through clk structure 2010-05-02 09:35:38 +01:00
mach-vexpress ARM: 6057/1: Realview: register PMU IRQs during board initialisation 2010-05-02 09:35:40 +01:00
mach-w90x900 NUC900 LCD Controller Driver 2010-03-12 15:52:34 -08:00
mm Merge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa', 'spear' and 'versatile' into devel 2010-05-17 11:53:39 +01:00
nwfpe ARM: nwfpe: allow debugging output to be configured at runtime 2010-05-15 15:03:51 +01:00
oprofile ARM: 6072/1: oprofile: use perf-events framework as backend 2010-05-17 11:53:58 +01:00
plat-iop ARM: 6048/1: ARM: iop3xx: register PMU IRQs during board initialisation 2010-04-29 18:03:49 +01:00
plat-mxc Merge branch 'origin' into devel-stable 2010-03-08 20:21:04 +00:00
plat-nomadik ARM: 6107/1: plat-nomadik: use the MTU clocksrc for sched_clock 2010-05-13 12:22:42 +01:00
plat-omap omap: McBSP: Drop unnecessary status/error bit clearing on reg_cacheretrieved register values 2010-03-12 09:16:09 -08:00
plat-orion [ARM] Orion: fix PCIe inbound window programming when RAM size is not a power of two 2009-12-28 23:50:49 -05:00
plat-pxa ARM: 6049/1: ARM: pxa: register PMU IRQs during board initialisation 2010-04-29 18:08:05 +01:00
plat-s3c24xx ARM: S3C2440: Fix s3c2440 cpufreq compilation post move. 2010-03-15 22:43:12 +00:00
plat-s5p ARM: S5PV210: Update Kconfig and Makefiles 2010-02-24 22:47:23 +00:00
plat-s5pc1xx ARM: SAMSUNG: Remove empty gpio-core.h and use central plat/gpio-core.h 2010-01-19 18:46:02 +09:00
plat-samsung ARM: SAMSUNG: Fix build error from stale define in <plat/uncompress.h> 2010-03-15 22:57:18 +00:00
plat-spear ARM: 6091/1: ST SPEAr: Adding support for shared irq layer 2010-05-04 16:54:54 +01:00
plat-stmp3xxx Merge branches 'clks' and 'pnx' into devel 2010-02-25 22:10:38 +00:00
plat-versatile ARM: Indirect round/set_rate operations through clk structure 2010-05-02 09:35:38 +01:00
tools ARM: Update mach-types 2010-02-20 14:17:16 +00:00
vfp Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-03-01 09:15:15 -08:00
Kconfig Merge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa', 'spear' and 'versatile' into devel 2010-05-17 11:53:39 +01:00
Kconfig-nommu
Kconfig.debug ARM: SAMSUNG: Move plat-s3c Kconfig entries to plat-samsung and plat-s3c24xx 2010-02-24 01:52:06 +00:00
Makefile Merge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa', 'spear' and 'versatile' into devel 2010-05-17 11:53:39 +01:00