Merge tag 'clk-for-linus-3.12' of git://git.linaro.org/people/mturquette/linux
[platform/adaptation/renesas_rcar/renesas_kernel.git] / drivers / oprofile / oprof.h
1 /**
2  * @file oprof.h
3  *
4  * @remark Copyright 2002 OProfile authors
5  * @remark Read the file COPYING
6  *
7  * @author John Levon <levon@movementarian.org>
8  */
9
10 #ifndef OPROF_H
11 #define OPROF_H
12
13 int oprofile_setup(void);
14 void oprofile_shutdown(void);
15
16 int oprofilefs_register(void);
17 void oprofilefs_unregister(void);
18
19 int oprofile_start(void);
20 void oprofile_stop(void);
21
22 struct oprofile_operations;
23
24 extern unsigned long oprofile_buffer_size;
25 extern unsigned long oprofile_cpu_buffer_size;
26 extern unsigned long oprofile_buffer_watershed;
27 extern unsigned long oprofile_time_slice;
28
29 extern struct oprofile_operations oprofile_ops;
30 extern unsigned long oprofile_started;
31 extern unsigned long oprofile_backtrace_depth;
32
33 struct dentry;
34
35 void oprofile_create_files(struct dentry *root);
36 int oprofile_timer_init(struct oprofile_operations *ops);
37 #ifdef CONFIG_OPROFILE_NMI_TIMER
38 int op_nmi_timer_init(struct oprofile_operations *ops);
39 #else
40 static inline int op_nmi_timer_init(struct oprofile_operations *ops)
41 {
42         return -ENODEV;
43 }
44 #endif
45
46
47 int oprofile_set_ulong(unsigned long *addr, unsigned long val);
48 int oprofile_set_timeout(unsigned long time);
49
50 #endif /* OPROF_H */