OpenCloudOS-Kernel/arch/mips/ath79
Andrew Bresticker a669efc4a3 MIPS: Add hook to get C0 performance counter interrupt
The hardware perf event driver and oprofile interpret the global
cp0_perfcount_irq differently: in the hardware perf event driver
it is an offset from MIPS_CPU_IRQ_BASE and in oprofile it is the
actual IRQ number.  This still works most of the time since
MIPS_CPU_IRQ_BASE is usually 0, but is clearly wrong.  Since the
performance counter interrupt may vary from platform to platform
like the C0 timer interrupt, add the optional get_c0_perfcount_int
hook which returns the IRQ number of the performance counter.
The hook should return < 0 if the performance counter interrupt is
shared with the timer.  If the hook is not present, the CPU vector
reported in C0_IntCtl (cp0_perfcount_irq) is used.

Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Reviewed-by: Qais Yousef <qais.yousef@imgtec.com>
Tested-by: Qais Yousef <qais.yousef@imgtec.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Bresticker <abrestic@chromium.org>
Cc: Jeffrey Deans <jeffrey.deans@imgtec.com>
Cc: Markos Chandras <markos.chandras@imgtec.com>
Cc: Paul Burton <paul.burton@imgtec.com>
Cc: Qais Yousef <qais.yousef@imgtec.com>
Cc: Jonas Gorski <jogo@openwrt.org>
Cc: John Crispin <blogic@openwrt.org>
Cc: David Daney <ddaney.cavm@gmail.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/7805/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2014-11-24 07:44:53 +01:00
..
Kconfig usb: host: remove selects of USB_ARCH_HAS_?HCI 2014-02-18 12:36:38 -08:00
Makefile MIPS: ath79: add support for the Qualcomm Atheros AP136-010 board 2013-02-19 09:36:34 +01:00
Platform MIPS: Add initial support for the Atheros AR71XX/AR724X/AR931X SoCs 2011-01-18 19:30:24 +01:00
clock.c MIPS: ath79: Switch to the clkdev framework 2013-09-03 23:22:18 +02:00
common.c MIPS: ath79: add QCA955X specific glue to ath79_device_reset_{set, clear} 2013-02-19 09:36:27 +01:00
common.h mips: delete non-required instances of include <linux/init.h> 2014-01-24 22:39:56 +01:00
dev-common.c MIPS: ath79: Remove ar933x_uart_platform.h header 2013-10-29 21:23:49 +01:00
dev-common.h MIPS: ath79: add common watchdog device 2011-01-18 19:30:26 +01:00
dev-gpio-buttons.c MIPS: ath79: Use kmemdup rather than duplicating its implementation 2012-05-15 17:49:00 +02:00
dev-gpio-buttons.h MIPS: ath79: add common GPIO buttons device 2011-01-18 19:30:27 +01:00
dev-leds-gpio.c MIPS: ath79: Use kmemdup rather than duplicating its implementation 2012-05-15 17:49:00 +02:00
dev-leds-gpio.h MIPS: ath79: add common GPIO LEDs device 2011-01-18 19:30:26 +01:00
dev-spi.c MIPS: ath79: add common SPI controller device 2011-01-18 19:30:27 +01:00
dev-spi.h MIPS: ath79: add common SPI controller device 2011-01-18 19:30:27 +01:00
dev-usb.c MIPS: ath79: add USB controller registration code for the QCA955X SoCs 2013-02-19 09:36:33 +01:00
dev-usb.h MIPS: ath79: add common USB Host Controller device 2011-12-07 22:02:44 +00:00
dev-wmac.c MIPS: ath79: add WMAC registration code for the QCA955X SoCs 2013-02-19 09:36:30 +01:00
dev-wmac.h MIPS: ath79: Rename dev-ar913x-wmac.h to dev-wmac.h 2011-12-07 22:02:48 +00:00
early_printk.c MIPS: ath79: add early printk support for the QCA955X SoCs 2013-02-19 09:36:24 +01:00
gpio.c MIPS: ath79: add GPIO setup code for the QCA955X SoCs 2013-02-19 09:36:26 +01:00
irq.c MIPS: Add hook to get C0 performance counter interrupt 2014-11-24 07:44:53 +01:00
mach-ap81.c MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
mach-ap121.c MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
mach-ap136.c MIPS: ath79: Fix argument for the ap136_pc_init function 2013-06-21 18:07:02 +02:00
mach-db120.c MIPS: ath79: Fix compilation error when CONFIG_PCI is disabled 2014-10-22 23:16:59 +02:00
mach-pb44.c MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
mach-ubnt-xm.c MIPS: ath79: remove ar724x_pci_add_data function 2012-05-15 17:49:06 +02:00
machtypes.h MIPS: ath79: add support for the Qualcomm Atheros AP136-010 board 2013-02-19 09:36:34 +01:00
pci.c MIPS: ath79: add PCI controller registration code for the QCA955X SoCs 2013-02-19 09:36:32 +01:00
pci.h MIPS: ath79: allow to specify bus number in PCI IRQ maps 2013-02-17 01:25:38 +01:00
prom.c MIPS: Add initial support for the Atheros AR71XX/AR724X/AR931X SoCs 2011-01-18 19:30:24 +01:00
setup.c MIPS: Add hook to get C0 performance counter interrupt 2014-11-24 07:44:53 +01:00