Pratik Patel | e7b35aa | 2012-10-24 17:34:43 -0700 | [diff] [blame] | 1 | #ifndef _LINUX_CORESIGHT_STM_H |
| 2 | #define _LINUX_CORESIGHT_STM_H |
Pratik Patel | 5ecf6a1 | 2012-04-25 18:34:59 -0700 | [diff] [blame] | 3 | |
| 4 | enum { |
Pratik Patel | 8e1e6b6 | 2012-06-29 12:24:49 -0700 | [diff] [blame] | 5 | 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 Patel | 9e0a0f5 | 2012-11-05 09:41:01 -0800 | [diff] [blame] | 10 | OST_ENTITY_QVIEW = 0xFE, |
Pratik Patel | e7b35aa | 2012-10-24 17:34:43 -0700 | [diff] [blame] | 11 | OST_ENTITY_MAX = 0xFF, |
Pratik Patel | 5ecf6a1 | 2012-04-25 18:34:59 -0700 | [diff] [blame] | 12 | }; |
| 13 | |
| 14 | enum { |
| 15 | STM_OPTION_NONE = 0x0, |
| 16 | STM_OPTION_TIMESTAMPED = 0x08, |
| 17 | STM_OPTION_GUARANTEED = 0x80, |
| 18 | }; |
| 19 | |
David Ng | 8fce132 | 2012-10-05 10:28:19 -0700 | [diff] [blame] | 20 | #ifdef __KERNEL__ |
Pratik Patel | 5ecf6a1 | 2012-04-25 18:34:59 -0700 | [diff] [blame] | 21 | #define stm_log_inv(entity_id, proto_id, data, size) \ |
| 22 | stm_trace(STM_OPTION_NONE, entity_id, proto_id, data, size) |
| 23 | |
| 24 | #define stm_log_inv_ts(entity_id, proto_id, data, size) \ |
| 25 | stm_trace(STM_OPTION_TIMESTAMPED, entity_id, proto_id, \ |
| 26 | data, size) |
| 27 | |
| 28 | #define stm_log_gtd(entity_id, proto_id, data, size) \ |
| 29 | stm_trace(STM_OPTION_GUARANTEED, entity_id, proto_id, \ |
| 30 | data, size) |
| 31 | |
| 32 | #define stm_log_gtd_ts(entity_id, proto_id, data, size) \ |
| 33 | stm_trace(STM_OPTION_GUARANTEED | STM_OPTION_TIMESTAMPED, \ |
| 34 | entity_id, proto_id, data, size) |
| 35 | |
| 36 | #define stm_log(entity_id, data, size) \ |
| 37 | stm_log_inv_ts(entity_id, 0, data, size) |
| 38 | |
Pratik Patel | 61e9170 | 2013-01-27 20:30:42 -0800 | [diff] [blame] | 39 | #ifdef CONFIG_CORESIGHT_STM |
Pratik Patel | 5ecf6a1 | 2012-04-25 18:34:59 -0700 | [diff] [blame] | 40 | extern int stm_trace(uint32_t options, uint8_t entity_id, uint8_t proto_id, |
| 41 | const void *data, uint32_t size); |
| 42 | #else |
| 43 | static inline int stm_trace(uint32_t options, uint8_t entity_id, |
| 44 | uint8_t proto_id, const void *data, uint32_t size) |
| 45 | { |
| 46 | return 0; |
| 47 | } |
| 48 | #endif |
David Ng | 8fce132 | 2012-10-05 10:28:19 -0700 | [diff] [blame] | 49 | #endif /* __KERNEL__ */ |
Pratik Patel | 5ecf6a1 | 2012-04-25 18:34:59 -0700 | [diff] [blame] | 50 | |
| 51 | #endif |