blob: 0f8e3827a89b314aa47ea827e9d109cbeb8406d9 [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,
Will Deacon0c205cb2011-06-03 17:40:15 +010027 ARM_PERF_PMU_ID_CA5,
Will Deacon14abd032011-01-19 14:24:38 +000028 ARM_PERF_PMU_ID_CA15,
Will Deacon181193f2010-04-30 11:32:44 +010029 ARM_NUM_PMU_IDS,
30};
31
32extern enum arm_perf_pmu_ids
33armpmu_get_pmu_id(void);
34
Will Deacon929f5192010-04-30 11:34:26 +010035extern int
36armpmu_get_max_events(void);
37
Jamie Iles7ada1892010-02-02 20:24:58 +010038#endif /* __ARM_PERF_EVENT_H__ */