blob: c4aa4e8c6af9cda0b7e88a46cbed94dc6e3b565d [file] [log] [blame]
Jamie Iles7ada1892010-02-02 20:24:58 +01001/*
2 * linux/arch/arm/include/asm/perf_event.h
3 *
4 * Copyright (C) 2009 picoChip Designs Ltd, Jamie Iles
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 */
11
12#ifndef __ARM_PERF_EVENT_H__
13#define __ARM_PERF_EVENT_H__
14
Jamie Iles7ada1892010-02-02 20:24:58 +010015/* ARM performance counters start from 1 (in the cp15 accesses) so use the
16 * same indexes here for consistency. */
17#define PERF_EVENT_INDEX_OFFSET 1
18
Will Deacon181193f2010-04-30 11:32:44 +010019/* ARM perf PMU IDs for use by internal perf clients. */
20enum arm_perf_pmu_ids {
21 ARM_PERF_PMU_ID_XSCALE1 = 0,
22 ARM_PERF_PMU_ID_XSCALE2,
23 ARM_PERF_PMU_ID_V6,
24 ARM_PERF_PMU_ID_V6MP,
25 ARM_PERF_PMU_ID_CA8,
26 ARM_PERF_PMU_ID_CA9,
27 ARM_NUM_PMU_IDS,
28};
29
30extern enum arm_perf_pmu_ids
31armpmu_get_pmu_id(void);
32
Will Deacon929f5192010-04-30 11:34:26 +010033extern int
34armpmu_get_max_events(void);
35
Jamie Iles7ada1892010-02-02 20:24:58 +010036#endif /* __ARM_PERF_EVENT_H__ */