53 lines
1.4 KiB
C
53 lines
1.4 KiB
C
|
#ifndef _LINUX_CORESIGHT_STM_H
|
||
|
#define _LINUX_CORESIGHT_STM_H
|
||
|
|
||
|
enum {
|
||
|
OST_ENTITY_NONE = 0x00,
|
||
|
OST_ENTITY_FTRACE_EVENTS = 0x01,
|
||
|
OST_ENTITY_TRACE_PRINTK = 0x02,
|
||
|
OST_ENTITY_TRACE_MARKER = 0x04,
|
||
|
OST_ENTITY_DEV_NODE = 0x08,
|
||
|
OST_ENTITY_DIAG = 0xEE,
|
||
|
OST_ENTITY_QVIEW = 0xFE,
|
||
|
OST_ENTITY_MAX = 0xFF,
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
STM_OPTION_NONE = 0x0,
|
||
|
STM_OPTION_TIMESTAMPED = 0x08,
|
||
|
STM_OPTION_GUARANTEED = 0x80,
|
||
|
};
|
||
|
|
||
|
#ifdef __KERNEL__
|
||
|
#define stm_log_inv(entity_id, proto_id, data, size) \
|
||
|
stm_trace(STM_OPTION_NONE, entity_id, proto_id, data, size)
|
||
|
|
||
|
#define stm_log_inv_ts(entity_id, proto_id, data, size) \
|
||
|
stm_trace(STM_OPTION_TIMESTAMPED, entity_id, proto_id, \
|
||
|
data, size)
|
||
|
|
||
|
#define stm_log_gtd(entity_id, proto_id, data, size) \
|
||
|
stm_trace(STM_OPTION_GUARANTEED, entity_id, proto_id, \
|
||
|
data, size)
|
||
|
|
||
|
#define stm_log_gtd_ts(entity_id, proto_id, data, size) \
|
||
|
stm_trace(STM_OPTION_GUARANTEED | STM_OPTION_TIMESTAMPED, \
|
||
|
entity_id, proto_id, data, size)
|
||
|
|
||
|
#define stm_log(entity_id, data, size) \
|
||
|
stm_log_inv_ts(entity_id, 0, data, size)
|
||
|
|
||
|
#ifdef CONFIG_CORESIGHT_STM
|
||
|
extern int stm_trace(uint32_t options, uint8_t entity_id, uint8_t proto_id,
|
||
|
const void *data, uint32_t size);
|
||
|
#else
|
||
|
static inline int stm_trace(uint32_t options, uint8_t entity_id,
|
||
|
uint8_t proto_id, const void *data, uint32_t size)
|
||
|
{
|
||
|
return 0;
|
||
|
}
|
||
|
#endif
|
||
|
#endif /* __KERNEL__ */
|
||
|
|
||
|
#endif
|