blob: 298fc9ae889be91ad73c238fb9122c5ad6d4cce0 [file] [log] [blame]
Pratik Patele7b35aa2012-10-24 17:34:43 -07001#ifndef _LINUX_CORESIGHT_STM_H
2#define _LINUX_CORESIGHT_STM_H
Pratik Patel5ecf6a12012-04-25 18:34:59 -07003
4enum {
Pratik Patel8e1e6b62012-06-29 12:24:49 -07005 OST_ENTITY_NONE = 0x00,
6 OST_ENTITY_FTRACE_EVENTS = 0x01,
7 OST_ENTITY_TRACE_PRINTK = 0x02,
8 OST_ENTITY_TRACE_MARKER = 0x04,
9 OST_ENTITY_DEV_NODE = 0x08,
Pratik Patel11a33ef2013-06-07 13:49:53 -070010 OST_ENTITY_DIAG = 0xEE,
Pratik Patel9e0a0f52012-11-05 09:41:01 -080011 OST_ENTITY_QVIEW = 0xFE,
Pratik Patele7b35aa2012-10-24 17:34:43 -070012 OST_ENTITY_MAX = 0xFF,
Pratik Patel5ecf6a12012-04-25 18:34:59 -070013};
14
15enum {
16 STM_OPTION_NONE = 0x0,
17 STM_OPTION_TIMESTAMPED = 0x08,
18 STM_OPTION_GUARANTEED = 0x80,
19};
20
David Ng8fce1322012-10-05 10:28:19 -070021#ifdef __KERNEL__
Pratik Patel5ecf6a12012-04-25 18:34:59 -070022#define stm_log_inv(entity_id, proto_id, data, size) \
23 stm_trace(STM_OPTION_NONE, entity_id, proto_id, data, size)
24
25#define stm_log_inv_ts(entity_id, proto_id, data, size) \
26 stm_trace(STM_OPTION_TIMESTAMPED, entity_id, proto_id, \
27 data, size)
28
29#define stm_log_gtd(entity_id, proto_id, data, size) \
30 stm_trace(STM_OPTION_GUARANTEED, entity_id, proto_id, \
31 data, size)
32
33#define stm_log_gtd_ts(entity_id, proto_id, data, size) \
34 stm_trace(STM_OPTION_GUARANTEED | STM_OPTION_TIMESTAMPED, \
35 entity_id, proto_id, data, size)
36
37#define stm_log(entity_id, data, size) \
38 stm_log_inv_ts(entity_id, 0, data, size)
39
Pratik Patel61e91702013-01-27 20:30:42 -080040#ifdef CONFIG_CORESIGHT_STM
Pratik Patel5ecf6a12012-04-25 18:34:59 -070041extern int stm_trace(uint32_t options, uint8_t entity_id, uint8_t proto_id,
42 const void *data, uint32_t size);
43#else
44static inline int stm_trace(uint32_t options, uint8_t entity_id,
45 uint8_t proto_id, const void *data, uint32_t size)
46{
47 return 0;
48}
49#endif
David Ng8fce1322012-10-05 10:28:19 -070050#endif /* __KERNEL__ */
Pratik Patel5ecf6a12012-04-25 18:34:59 -070051
52#endif