op_impl.h 945 字节
Newer Older
L
Linus Torvalds 已提交
1 2 3 4 5 6 7 8 9 10 11 12
/**
 * @file arch/alpha/oprofile/op_impl.h
 *
 * @remark Copyright 2002 OProfile authors
 * @remark Read the file COPYING
 *
 * @author Richard Henderson <rth@twiddle.net>
 */

#ifndef OP_IMPL_H
#define OP_IMPL_H 1

13
extern int (*perf_irq)(void);
14

L
Linus Torvalds 已提交
15 16 17 18 19 20 21 22 23 24 25 26
/* Per-counter configuration as set via oprofilefs.  */
struct op_counter_config {
	unsigned long enabled;
	unsigned long event;
	unsigned long count;
	/* Dummies because I am too lazy to hack the userspace tools.  */
	unsigned long kernel;
	unsigned long user;
	unsigned long exl;
	unsigned long unit_mask;
};

A
Andrea Gelmini 已提交
27
/* Per-architecture configure and hooks.  */
L
Linus Torvalds 已提交
28 29
struct op_mips_model {
	void (*reg_setup) (struct op_counter_config *);
R
Robert Richter 已提交
30
	void (*cpu_setup) (void *dummy);
L
Linus Torvalds 已提交
31 32 33 34 35 36 37 38
	int (*init)(void);
	void (*exit)(void);
	void (*cpu_start)(void *args);
	void (*cpu_stop)(void *args);
	char *cpu_type;
	unsigned char num_counters;
};

39 40
void op_mips_backtrace(struct pt_regs * const regs, unsigned int depth);

L
Linus Torvalds 已提交
41
#endif