2 #define TRACE_INCLUDE_PATH ../../drivers/staging/android/trace
3 #define TRACE_SYSTEM ion
5 #if !defined(_TRACE_ION_H) || defined(TRACE_HEADER_MULTI_READ)
8 #include <linux/tracepoint.h>
10 DECLARE_EVENT_CLASS(ion_buffer_op,
11 TP_PROTO(const char* client, void* buf, unsigned int size),
12 TP_ARGS(client, buf, size),
14 __string(client, client)
16 __field(unsigned int, size)
19 __assign_str(client, client);
23 TP_printk("client=%s,buffer=%p:%d",
24 __get_str(client), __entry->buf, __entry->size)
26 DEFINE_EVENT(ion_buffer_op, ion_buffer_alloc,
27 TP_PROTO(const char* client, void* buffer, unsigned int size),
28 TP_ARGS(client, buffer, size));
30 DEFINE_EVENT(ion_buffer_op, ion_buffer_free,
31 TP_PROTO(const char* client, void* buffer, unsigned int size),
32 TP_ARGS(client, buffer, size));
34 DEFINE_EVENT(ion_buffer_op, ion_buffer_import,
35 TP_PROTO(const char* client, void* buffer, unsigned int size),
36 TP_ARGS(client, buffer, size));
38 DEFINE_EVENT(ion_buffer_op, ion_buffer_destroy,
39 TP_PROTO(const char* client, void* buffer, unsigned int size),
40 TP_ARGS(client, buffer, size));
42 DEFINE_EVENT(ion_buffer_op, ion_kernel_unmap,
43 TP_PROTO(const char* client, void* buffer, unsigned int size),
44 TP_ARGS(client, buffer, size));
46 TRACE_EVENT(ion_buffer_share,
47 TP_PROTO(const char* client, void* buf, unsigned int size, int fd),
48 TP_ARGS(client, buf, size, fd),
50 __string(client, client)
52 __field(unsigned int, size)
56 __assign_str(client, client);
61 TP_printk("client=%s,buffer=%p:%d,fd=%d",
62 __get_str(client), __entry->buf, __entry->size, __entry->fd)
65 DECLARE_EVENT_CLASS(ion_client_op,
66 TP_PROTO(const char* client),
69 __string(client, client)
72 __assign_str(client, client);
74 TP_printk("client=%s", __get_str(client))
76 DEFINE_EVENT(ion_client_op, ion_client_create,
77 TP_PROTO(const char* client),
79 DEFINE_EVENT(ion_client_op, ion_client_destroy,
80 TP_PROTO(const char* client),
83 DECLARE_EVENT_CLASS(ion_iommu_op,
84 TP_PROTO(const char* client, void* buf, unsigned int size,
85 const char* iommu_dev, unsigned int iommu_addr,
86 unsigned int iommu_size, unsigned int map_cnt),
87 TP_ARGS(client, buf, size, iommu_dev, iommu_addr, iommu_size, map_cnt),
89 __string(client, client)
91 __field(unsigned int, size)
92 __string(iommu_dev, iommu_dev)
93 __field(unsigned int, iommu_addr)
94 __field(unsigned int, iommu_size)
95 __field(unsigned int, map_cnt)
98 __assign_str(client, client);
100 __entry->size = size;
101 __assign_str(iommu_dev, iommu_dev);
102 __entry->iommu_addr = iommu_addr;
103 __entry->iommu_size = iommu_size;
104 __entry->map_cnt = map_cnt;
106 TP_printk("client=%s,buffer=%p:%d,iommu=%s,map=%08x:%d,map_count=%d",
107 __get_str(client), __entry->buf, __entry->size,
108 __get_str(iommu_dev), __entry->iommu_addr, __entry->iommu_size,
111 DEFINE_EVENT(ion_iommu_op, ion_iommu_map,
112 TP_PROTO(const char* client, void* buf, unsigned int size,
113 const char* iommu_dev, unsigned int iommu_addr,
114 unsigned int iommu_size, unsigned int map_cnt),
115 TP_ARGS(client, buf, size, iommu_dev, iommu_addr, iommu_size, map_cnt));
116 DEFINE_EVENT(ion_iommu_op, ion_iommu_unmap,
117 TP_PROTO(const char* client, void* buf, unsigned int size,
118 const char* iommu_dev, unsigned int iommu_addr,
119 unsigned int iommu_size, unsigned int map_cnt),
120 TP_ARGS(client, buf, size, iommu_dev, iommu_addr, iommu_size, map_cnt));
121 DEFINE_EVENT(ion_iommu_op, ion_iommu_release,
122 TP_PROTO(const char* client, void* buf, unsigned int size,
123 const char* iommu_dev, unsigned int iommu_addr,
124 unsigned int iommu_size, unsigned int map_cnt),
125 TP_ARGS(client, buf, size, iommu_dev, iommu_addr, iommu_size, map_cnt));
127 DECLARE_EVENT_CLASS(ion_kmap_op,
128 TP_PROTO(const char* client, void* buf, unsigned int size, void* kaddr),
129 TP_ARGS(client, buf, size, kaddr),
131 __string(client, client)
133 __field(unsigned int, size)
134 __field(void*, kaddr)
137 __assign_str(client, client);
139 __entry->size = size;
140 __entry->kaddr = kaddr;
142 TP_printk("client=%s,buffer=%p:%d,kaddr=%p",
143 __get_str(client), __entry->buf, __entry->size, __entry->kaddr)
145 DEFINE_EVENT(ion_kmap_op, ion_kernel_map,
146 TP_PROTO(const char* client, void* buffer, unsigned int size, void* kaddr),
147 TP_ARGS(client, buffer, size, kaddr));
149 DECLARE_EVENT_CLASS(ion_mmap_op,
150 TP_PROTO(const char* client, unsigned int buf, unsigned int size,
151 unsigned long vm_start, unsigned long vm_end),
152 TP_ARGS(client, buf, size, vm_start, vm_end),
154 __string(client, client)
155 __field(unsigned int, buf)
156 __field(unsigned int, size)
157 __field(unsigned long, vm_start)
158 __field(unsigned long, vm_end)
161 __assign_str(client, client);
163 __entry->size = size;
164 __entry->vm_start = vm_start;
165 __entry->vm_end = vm_end;
167 TP_printk("client=%s,buffer=%08x:%d,vma[%08lx:%08lx]",
168 __get_str(client), __entry->buf, __entry->size,
169 __entry->vm_start, __entry->vm_end)
172 DEFINE_EVENT(ion_mmap_op, ion_buffer_mmap,
173 TP_PROTO(const char* client, unsigned int buf, unsigned int size,
174 unsigned long vm_start, unsigned long vm_end),
175 TP_ARGS(client, buf, size, vm_start, vm_end));
177 DEFINE_EVENT(ion_mmap_op, ion_buffer_munmap,
178 TP_PROTO(const char* client, unsigned int buf, unsigned int size,
179 unsigned long vm_start, unsigned long vm_end),
180 TP_ARGS(client, buf, size, vm_start, vm_end));
182 #endif /* _TRACE_ION_H */
184 /* This part must be outside protection */
185 #include <trace/define_trace.h>