|
Public Types |
typedef Mword(* | Perf_read_fn )() |
enum | { Max_slot = 2,
Max_pmc = 4
} |
enum | Unit_mask_type { None,
Fixed,
Exclusive,
Bitmask
} |
enum | Perf_event_type { P5,
P6,
P4
} |
Static Public Member Functions |
static FIASCO_INIT void | init () |
static void | set_pmc_fn (Mword slot, Mword nr) |
static int | have_watchdog () |
static void | setup_watchdog (Mword timeout) |
static void | setup_loadcnt () |
static void | start_watchdog () |
static void | stop_watchdog () |
static void | touch_watchdog () |
static char const * | perf_type () |
static int | setup_pmc (Mword slot, Mword event, Mword user, Mword kern, Mword edge) |
static int | mode (Mword slot, const char **mode, const char **name, Mword *event, Mword *user, Mword *kern, Mword *edge) |
static Mword | get_max_perf_event () |
static void | get_perf_event (Mword nr, unsigned *evntsel, const char **name, const char **desc) |
static Mword | lookup_event (unsigned evntsel) |
static void | get_unit_mask (Mword nr, Unit_mask_type *type, Mword *default_value, Mword *nvalues) |
static void | get_unit_mask_entry (Mword nr, Mword idx, Mword *value, const char **desc) |
static void | split_event (Mword event, unsigned *evntsel, Mword *unit_mask) |
| Split event into event selector and unit mask (depending on perftype).
|
static void | combine_event (Mword evntsel, Mword unit_mask, Mword *event) |
| Combine event from selector and unit mask.
|
Static Public Attributes |
static Perf_read_fn | read_pmc [Max_slot] |
Static Private Attributes |
static Perf_read_fn * | read_pmc_fns |
static Perf_read_fn | read_pmc_fn [Max_slot] |
static Perf_cnt_arch * | pcnt |
static char const * | perf_type_str = "n/a" |
static Perf_event_type | perf_event_type |