Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee13...
[pandora-kernel.git] / arch / mips / oprofile / op_impl.h
1 /**
2  * @file arch/alpha/oprofile/op_impl.h
3  *
4  * @remark Copyright 2002 OProfile authors
5  * @remark Read the file COPYING
6  *
7  * @author Richard Henderson <rth@twiddle.net>
8  */
9
10 #ifndef OP_IMPL_H
11 #define OP_IMPL_H 1
12
13 struct pt_regs;
14
15 extern int null_perf_irq(void);
16 extern int (*perf_irq)(void);
17
18 /* Per-counter configuration as set via oprofilefs.  */
19 struct op_counter_config {
20         unsigned long enabled;
21         unsigned long event;
22         unsigned long count;
23         /* Dummies because I am too lazy to hack the userspace tools.  */
24         unsigned long kernel;
25         unsigned long user;
26         unsigned long exl;
27         unsigned long unit_mask;
28 };
29
30 /* Per-architecture configury and hooks.  */
31 struct op_mips_model {
32         void (*reg_setup) (struct op_counter_config *);
33         void (*cpu_setup) (void * dummy);
34         int (*init)(void);
35         void (*exit)(void);
36         void (*cpu_start)(void *args);
37         void (*cpu_stop)(void *args);
38         char *cpu_type;
39         unsigned char num_counters;
40 };
41
42 #endif