From 018df72dd01576ab199c6129233cdeaf1409958b Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Fri, 12 Jun 2009 13:17:43 -0400 Subject: perf_counter: Start documenting HAVE_PERF_COUNTERS requirements Help out arch porters who want to support perf counters by listing some basic requirements. Signed-off-by: Mike Frysinger Cc: Peter Zijlstra Cc: Paul Mackerras LKML-Reference: <1244827063-24046-1-git-send-email-vapier@gentoo.org> Signed-off-by: Ingo Molnar --- tools/perf/design.txt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'tools/perf') diff --git a/tools/perf/design.txt b/tools/perf/design.txt index 860e116d979..f71e0d245cb 100644 --- a/tools/perf/design.txt +++ b/tools/perf/design.txt @@ -440,3 +440,18 @@ by this process or by another, and doesn't affect any counters that this process has created on other processes. It only enables or disables the group leaders, not any other members in the groups. + +Arch requirements +----------------- + +If your architecture does not have hardware performance metrics, you can +still use the generic software counters based on hrtimers for sampling. + +So to start with, in order to add HAVE_PERF_COUNTERS to your Kconfig, you +will need at least this: + - asm/perf_counter.h - a basic stub will suffice at first + - support for atomic64 types (and associated helper functions) + - set_perf_counter_pending() implemented + +If your architecture does have hardware capabilities, you can override the +weak stub hw_perf_counter_init() to register hardware counters. -- cgit v1.2.3