Hello,
This patch adds support for Power7 to the perfmon2 kernel code. The changes are
quite simple, happily, since Power7's PMU is programmed very similarly to the
Power5 PMU.
Signed-off-by: Corey Ashford <cjash...@us.ibm.com>
Thanks for your consideration,
- Corey
Corey Ashford
Software Engineer
IBM Linux Technology Center, Linux Toolchain
Beaverton, OR
503-578-3507
cjash...@us.ibm.com
diff --git a/arch/powerpc/perfmon/Kconfig b/arch/powerpc/perfmon/Kconfig
index 3f4bbf2..6c0128f 100644
--- a/arch/powerpc/perfmon/Kconfig
+++ b/arch/powerpc/perfmon/Kconfig
@@ -47,6 +47,14 @@ config PERFMON_POWER6
Enables support for the Power 6 hardware performance counters
If unsure, say M.
+config PERFMON_POWER7
+ tristate "Support for Power7 hardware performance counters"
+ depends on PERFMON && PPC64
+ default n
+ help
+ Enables support for the Power 7 hardware performance counters
+ If unsure, say M.
+
config PERFMON_PPC32
tristate "Support for PPC32 hardware performance counters"
depends on PERFMON && PPC32
diff --git a/arch/powerpc/perfmon/Makefile b/arch/powerpc/perfmon/Makefile
index 300661f..f989ce5 100644
--- a/arch/powerpc/perfmon/Makefile
+++ b/arch/powerpc/perfmon/Makefile
@@ -2,5 +2,6 @@ obj-$(CONFIG_PERFMON) += perfmon.o
obj-$(CONFIG_PERFMON_POWER4) += perfmon_power4.o
obj-$(CONFIG_PERFMON_POWER5) += perfmon_power5.o
obj-$(CONFIG_PERFMON_POWER6) += perfmon_power6.o
+obj-$(CONFIG_PERFMON_POWER7) += perfmon_power5.o
obj-$(CONFIG_PERFMON_PPC32) += perfmon_ppc32.o
obj-$(CONFIG_PERFMON_CELL) += perfmon_cell.o
diff --git a/arch/powerpc/perfmon/perfmon.c b/arch/powerpc/perfmon/perfmon.c
index 6e8d9cf..79b2e0d 100644
--- a/arch/powerpc/perfmon/perfmon.c
+++ b/arch/powerpc/perfmon/perfmon.c
@@ -292,6 +292,9 @@ char *pfm_arch_get_pmu_module_name(void)
return "perfmon_power6";
case PV_POWER6:
return "perfmon_power6";
+ case PV_POWER7:
+ /* PMU behaves like POWER5 */
+ return "perfmon_power5";
case PV_970:
case PV_970FX:
case PV_970MP:
diff --git a/arch/powerpc/perfmon/perfmon_power5.c
b/arch/powerpc/perfmon/perfmon_power5.c
index 332d536..15bb0a7 100644
--- a/arch/powerpc/perfmon/perfmon_power5.c
+++ b/arch/powerpc/perfmon/perfmon_power5.c
@@ -65,6 +65,8 @@ static int pfm_power5_probe_pmu(void)
return 0;
case PV_POWER5p:
return (PVR_REV(pvr) < 0x300) ? 0 : -1;
+ case PV_POWER7:
+ return 0;
default:
return -1;
}
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
perfmon2-devel mailing list
perfmon2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel