pandora: defconfig: update
[pandora-kernel.git] / arch / powerpc / include / asm / trace.h
1 #undef TRACE_SYSTEM
2 #define TRACE_SYSTEM powerpc
3
4 #if !defined(_TRACE_POWERPC_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define _TRACE_POWERPC_H
6
7 #include <linux/tracepoint.h>
8
9 struct pt_regs;
10
11 TRACE_EVENT(irq_entry,
12
13         TP_PROTO(struct pt_regs *regs),
14
15         TP_ARGS(regs),
16
17         TP_STRUCT__entry(
18                 __field(struct pt_regs *, regs)
19         ),
20
21         TP_fast_assign(
22                 __entry->regs = regs;
23         ),
24
25         TP_printk("pt_regs=%p", __entry->regs)
26 );
27
28 TRACE_EVENT(irq_exit,
29
30         TP_PROTO(struct pt_regs *regs),
31
32         TP_ARGS(regs),
33
34         TP_STRUCT__entry(
35                 __field(struct pt_regs *, regs)
36         ),
37
38         TP_fast_assign(
39                 __entry->regs = regs;
40         ),
41
42         TP_printk("pt_regs=%p", __entry->regs)
43 );
44
45 TRACE_EVENT(timer_interrupt_entry,
46
47         TP_PROTO(struct pt_regs *regs),
48
49         TP_ARGS(regs),
50
51         TP_STRUCT__entry(
52                 __field(struct pt_regs *, regs)
53         ),
54
55         TP_fast_assign(
56                 __entry->regs = regs;
57         ),
58
59         TP_printk("pt_regs=%p", __entry->regs)
60 );
61
62 TRACE_EVENT(timer_interrupt_exit,
63
64         TP_PROTO(struct pt_regs *regs),
65
66         TP_ARGS(regs),
67
68         TP_STRUCT__entry(
69                 __field(struct pt_regs *, regs)
70         ),
71
72         TP_fast_assign(
73                 __entry->regs = regs;
74         ),
75
76         TP_printk("pt_regs=%p", __entry->regs)
77 );
78
79 #ifdef CONFIG_PPC_PSERIES
80 extern void hcall_tracepoint_regfunc(void);
81 extern void hcall_tracepoint_unregfunc(void);
82
83 TRACE_EVENT_FN(hcall_entry,
84
85         TP_PROTO(unsigned long opcode, unsigned long *args),
86
87         TP_ARGS(opcode, args),
88
89         TP_STRUCT__entry(
90                 __field(unsigned long, opcode)
91         ),
92
93         TP_fast_assign(
94                 __entry->opcode = opcode;
95         ),
96
97         TP_printk("opcode=%lu", __entry->opcode),
98
99         hcall_tracepoint_regfunc, hcall_tracepoint_unregfunc
100 );
101
102 TRACE_EVENT_FN(hcall_exit,
103
104         TP_PROTO(unsigned long opcode, unsigned long retval,
105                 unsigned long *retbuf),
106
107         TP_ARGS(opcode, retval, retbuf),
108
109         TP_STRUCT__entry(
110                 __field(unsigned long, opcode)
111                 __field(unsigned long, retval)
112         ),
113
114         TP_fast_assign(
115                 __entry->opcode = opcode;
116                 __entry->retval = retval;
117         ),
118
119         TP_printk("opcode=%lu retval=%lu", __entry->opcode, __entry->retval),
120
121         hcall_tracepoint_regfunc, hcall_tracepoint_unregfunc
122 );
123 #endif
124
125 #endif /* _TRACE_POWERPC_H */
126
127 #undef TRACE_INCLUDE_PATH
128 #undef TRACE_INCLUDE_FILE
129
130 #define TRACE_INCLUDE_PATH asm
131 #define TRACE_INCLUDE_FILE trace
132
133 #include <trace/define_trace.h>