1 | #if !defined(_TRACE_TEGRA_APB_DMA_H) || defined(TRACE_HEADER_MULTI_READ) |
2 | #define _TRACE_TEGRA_APB_DMA_H |
3 | |
4 | #include <linux/tracepoint.h> |
5 | #include <linux/dmaengine.h> |
6 | |
7 | #undef TRACE_SYSTEM |
8 | #define TRACE_SYSTEM tegra_apb_dma |
9 | |
10 | TRACE_EVENT(tegra_dma_tx_status, |
11 | TP_PROTO(struct dma_chan *dc, dma_cookie_t cookie, struct dma_tx_state *state), |
12 | TP_ARGS(dc, cookie, state), |
13 | TP_STRUCT__entry( |
14 | __string(chan, dev_name(&dc->dev->device)) |
15 | __field(dma_cookie_t, cookie) |
16 | __field(__u32, residue) |
17 | ), |
18 | TP_fast_assign( |
19 | __assign_str(chan, dev_name(&dc->dev->device)); |
20 | __entry->cookie = cookie; |
21 | __entry->residue = state ? state->residue : (u32)-1; |
22 | ), |
23 | TP_printk("channel %s: dma cookie %d, residue %u" , |
24 | __get_str(chan), __entry->cookie, __entry->residue) |
25 | ); |
26 | |
27 | TRACE_EVENT(tegra_dma_complete_cb, |
28 | TP_PROTO(struct dma_chan *dc, int count, void *ptr), |
29 | TP_ARGS(dc, count, ptr), |
30 | TP_STRUCT__entry( |
31 | __string(chan, dev_name(&dc->dev->device)) |
32 | __field(int, count) |
33 | __field(void *, ptr) |
34 | ), |
35 | TP_fast_assign( |
36 | __assign_str(chan, dev_name(&dc->dev->device)); |
37 | __entry->count = count; |
38 | __entry->ptr = ptr; |
39 | ), |
40 | TP_printk("channel %s: done %d, ptr %p" , |
41 | __get_str(chan), __entry->count, __entry->ptr) |
42 | ); |
43 | |
44 | TRACE_EVENT(tegra_dma_isr, |
45 | TP_PROTO(struct dma_chan *dc, int irq), |
46 | TP_ARGS(dc, irq), |
47 | TP_STRUCT__entry( |
48 | __string(chan, dev_name(&dc->dev->device)) |
49 | __field(int, irq) |
50 | ), |
51 | TP_fast_assign( |
52 | __assign_str(chan, dev_name(&dc->dev->device)); |
53 | __entry->irq = irq; |
54 | ), |
55 | TP_printk("%s: irq %d\n" , __get_str(chan), __entry->irq) |
56 | ); |
57 | |
58 | #endif /* _TRACE_TEGRA_APB_DMA_H */ |
59 | |
60 | /* This part must be outside protection */ |
61 | #include <trace/define_trace.h> |
62 | |