diff options
Diffstat (limited to 'drivers/gpu/arm/t6xx/kbase/src/platform/arndale/mali_linux_hwc_trace.h')
-rw-r--r-- | drivers/gpu/arm/t6xx/kbase/src/platform/arndale/mali_linux_hwc_trace.h | 262 |
1 files changed, 262 insertions, 0 deletions
diff --git a/drivers/gpu/arm/t6xx/kbase/src/platform/arndale/mali_linux_hwc_trace.h b/drivers/gpu/arm/t6xx/kbase/src/platform/arndale/mali_linux_hwc_trace.h new file mode 100644 index 00000000000..4c6bd4b5ad0 --- /dev/null +++ b/drivers/gpu/arm/t6xx/kbase/src/platform/arndale/mali_linux_hwc_trace.h @@ -0,0 +1,262 @@ +/* + * + * (C) COPYRIGHT 2011-2012 ARM Limited. All rights reserved. + * + * This program is free software and is provided to you under the terms of the GNU General Public License version 2 + * as published by the Free Software Foundation, and any use by you of this program is subject to the terms of such GNU licence. + * + * A copy of the licence is included with the program, and can also be obtained from Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#if !defined(_TRACE_MALI_HWC_H) || defined(TRACE_HEADER_MULTI_READ) +#define _TRACE_MALI_HWC_H + +#undef TRACE_SYSTEM +#define TRACE_SYSTEM mali_hwc + +#include <linux/tracepoint.h> + +DECLARE_EVENT_CLASS(mali_hw_counter_template, + TP_PROTO(unsigned int val), + TP_ARGS(val), + TP_STRUCT__entry( + __field( unsigned int, val ) + ), + TP_fast_assign( + __entry->val = val; + ), + TP_printk("val=%u", __entry->val) +); + +#define DEFINE_MALI_HW_COUNTER_EVENT(name) \ +DEFINE_EVENT(mali_hw_counter_template, mali_hwc_##name, \ + TP_PROTO(unsigned int info_val), \ + TP_ARGS(info_val)) +DEFINE_MALI_HW_COUNTER_EVENT(MESSAGES_SENT); +DEFINE_MALI_HW_COUNTER_EVENT(MESSAGES_RECEIVED); +DEFINE_MALI_HW_COUNTER_EVENT(GPU_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(IRQ_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(JS0_JOBS); +DEFINE_MALI_HW_COUNTER_EVENT(JS0_TASKS); +DEFINE_MALI_HW_COUNTER_EVENT(JS0_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(JS0_WAIT_READ); +DEFINE_MALI_HW_COUNTER_EVENT(JS0_WAIT_ISSUE); +DEFINE_MALI_HW_COUNTER_EVENT(JS0_WAIT_DEPEND); +DEFINE_MALI_HW_COUNTER_EVENT(JS0_WAIT_FINISH); +DEFINE_MALI_HW_COUNTER_EVENT(JS1_JOBS); +DEFINE_MALI_HW_COUNTER_EVENT(JS1_TASKS); +DEFINE_MALI_HW_COUNTER_EVENT(JS1_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(JS1_WAIT_READ); +DEFINE_MALI_HW_COUNTER_EVENT(JS1_WAIT_ISSUE); +DEFINE_MALI_HW_COUNTER_EVENT(JS1_WAIT_DEPEND); +DEFINE_MALI_HW_COUNTER_EVENT(JS1_WAIT_FINISH); +DEFINE_MALI_HW_COUNTER_EVENT(JS2_JOBS); +DEFINE_MALI_HW_COUNTER_EVENT(JS2_TASKS); +DEFINE_MALI_HW_COUNTER_EVENT(JS2_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(JS2_WAIT_READ); +DEFINE_MALI_HW_COUNTER_EVENT(JS2_WAIT_ISSUE); +DEFINE_MALI_HW_COUNTER_EVENT(JS2_WAIT_DEPEND); +DEFINE_MALI_HW_COUNTER_EVENT(JS2_WAIT_FINISH); +DEFINE_MALI_HW_COUNTER_EVENT(JS3_JOBS); +DEFINE_MALI_HW_COUNTER_EVENT(JS3_TASKS); +DEFINE_MALI_HW_COUNTER_EVENT(JS3_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(JS3_WAIT_READ); +DEFINE_MALI_HW_COUNTER_EVENT(JS3_WAIT_ISSUE); +DEFINE_MALI_HW_COUNTER_EVENT(JS3_WAIT_DEPEND); +DEFINE_MALI_HW_COUNTER_EVENT(JS3_WAIT_FINISH); +DEFINE_MALI_HW_COUNTER_EVENT(JS4_JOBS); +DEFINE_MALI_HW_COUNTER_EVENT(JS4_TASKS); +DEFINE_MALI_HW_COUNTER_EVENT(JS4_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(JS4_WAIT_READ); +DEFINE_MALI_HW_COUNTER_EVENT(JS4_WAIT_ISSUE); +DEFINE_MALI_HW_COUNTER_EVENT(JS4_WAIT_DEPEND); +DEFINE_MALI_HW_COUNTER_EVENT(JS4_WAIT_FINISH); +DEFINE_MALI_HW_COUNTER_EVENT(JS5_JOBS); +DEFINE_MALI_HW_COUNTER_EVENT(JS5_TASKS); +DEFINE_MALI_HW_COUNTER_EVENT(JS5_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(JS5_WAIT_READ); +DEFINE_MALI_HW_COUNTER_EVENT(JS5_WAIT_ISSUE); +DEFINE_MALI_HW_COUNTER_EVENT(JS5_WAIT_DEPEND); +DEFINE_MALI_HW_COUNTER_EVENT(JS5_WAIT_FINISH); +DEFINE_MALI_HW_COUNTER_EVENT(JS6_JOBS); +DEFINE_MALI_HW_COUNTER_EVENT(JS6_TASKS); +DEFINE_MALI_HW_COUNTER_EVENT(JS6_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(JS6_WAIT_READ); +DEFINE_MALI_HW_COUNTER_EVENT(JS6_WAIT_ISSUE); +DEFINE_MALI_HW_COUNTER_EVENT(JS6_WAIT_DEPEND); +DEFINE_MALI_HW_COUNTER_EVENT(JS6_WAIT_FINISH); +DEFINE_MALI_HW_COUNTER_EVENT(JOBS_PROCESSED); +DEFINE_MALI_HW_COUNTER_EVENT(TRIANGLES); +DEFINE_MALI_HW_COUNTER_EVENT(QUADS); +DEFINE_MALI_HW_COUNTER_EVENT(POLYGONS); +DEFINE_MALI_HW_COUNTER_EVENT(POINTS); +DEFINE_MALI_HW_COUNTER_EVENT(LINES); +DEFINE_MALI_HW_COUNTER_EVENT(VCACHE_HIT); +DEFINE_MALI_HW_COUNTER_EVENT(VCACHE_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(FRONT_FACING); +DEFINE_MALI_HW_COUNTER_EVENT(BACK_FACING); +DEFINE_MALI_HW_COUNTER_EVENT(PRIM_VISIBLE); +DEFINE_MALI_HW_COUNTER_EVENT(PRIM_CULLED); +DEFINE_MALI_HW_COUNTER_EVENT(PRIM_CLIPPED); +DEFINE_MALI_HW_COUNTER_EVENT(LEVEL0); +DEFINE_MALI_HW_COUNTER_EVENT(LEVEL1); +DEFINE_MALI_HW_COUNTER_EVENT(LEVEL2); +DEFINE_MALI_HW_COUNTER_EVENT(LEVEL3); +DEFINE_MALI_HW_COUNTER_EVENT(LEVEL4); +DEFINE_MALI_HW_COUNTER_EVENT(LEVEL5); +DEFINE_MALI_HW_COUNTER_EVENT(LEVEL6); +DEFINE_MALI_HW_COUNTER_EVENT(LEVEL7); +DEFINE_MALI_HW_COUNTER_EVENT(COMMAND_1); +DEFINE_MALI_HW_COUNTER_EVENT(COMMAND_2); +DEFINE_MALI_HW_COUNTER_EVENT(COMMAND_3); +DEFINE_MALI_HW_COUNTER_EVENT(COMMAND_4); +DEFINE_MALI_HW_COUNTER_EVENT(COMMAND_4_7); +DEFINE_MALI_HW_COUNTER_EVENT(COMMAND_8_15); +DEFINE_MALI_HW_COUNTER_EVENT(COMMAND_16_63); +DEFINE_MALI_HW_COUNTER_EVENT(COMMAND_64); +DEFINE_MALI_HW_COUNTER_EVENT(COMPRESS_IN); +DEFINE_MALI_HW_COUNTER_EVENT(COMPRESS_OUT); +DEFINE_MALI_HW_COUNTER_EVENT(COMPRESS_FLUSH); +DEFINE_MALI_HW_COUNTER_EVENT(TIMESTAMPS); +DEFINE_MALI_HW_COUNTER_EVENT(PCACHE_HIT); +DEFINE_MALI_HW_COUNTER_EVENT(PCACHE_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(PCACHE_LINE); +DEFINE_MALI_HW_COUNTER_EVENT(PCACHE_STALL); +DEFINE_MALI_HW_COUNTER_EVENT(WRBUF_HIT); +DEFINE_MALI_HW_COUNTER_EVENT(WRBUF_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(WRBUF_LINE); +DEFINE_MALI_HW_COUNTER_EVENT(WRBUF_PARTIAL); +DEFINE_MALI_HW_COUNTER_EVENT(WRBUF_STALL); +DEFINE_MALI_HW_COUNTER_EVENT(ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(LOADING_DESC); +DEFINE_MALI_HW_COUNTER_EVENT(INDEX_WAIT); +DEFINE_MALI_HW_COUNTER_EVENT(INDEX_RANGE_WAIT); +DEFINE_MALI_HW_COUNTER_EVENT(VERTEX_WAIT); +DEFINE_MALI_HW_COUNTER_EVENT(PCACHE_WAIT); +DEFINE_MALI_HW_COUNTER_EVENT(WRBUF_WAIT); +DEFINE_MALI_HW_COUNTER_EVENT(BUS_READ); +DEFINE_MALI_HW_COUNTER_EVENT(BUS_WRITE); +DEFINE_MALI_HW_COUNTER_EVENT(TILER_UTLB_STALL); +DEFINE_MALI_HW_COUNTER_EVENT(TILER_UTLB_REPLAY_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(TILER_UTLB_REPLAY_FULL); +DEFINE_MALI_HW_COUNTER_EVENT(TILER_UTLB_NEW_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(TILER_UTLB_HIT); +DEFINE_MALI_HW_COUNTER_EVENT(SHADER_CORE_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_PRIMATIVES); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_PRIMATIVES_DROPPED); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_CYCLE_DESC); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_CYCLES_PLR); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_CYCLES_VERT); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_CYCLES_TRISETUP); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_CYCLES_RAST); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_THREADS); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_DUMMY_THREADS); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_QUADS_RAST); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_QUADS_EZS_TEST); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_QUADS_EZS_KILLED); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_QUADS_LZS_TEST); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_QUADS_LZS_KILLED); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_CYCLE_NO_TILE); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_NUM_TILES); +DEFINE_MALI_HW_COUNTER_EVENT(FRAG_TRANS_ELIM); +DEFINE_MALI_HW_COUNTER_EVENT(COMPUTE_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(COMPUTE_TASKS); +DEFINE_MALI_HW_COUNTER_EVENT(COMPUTE_THREADS); +DEFINE_MALI_HW_COUNTER_EVENT(COMPUTE_CYCLES_DESC); +DEFINE_MALI_HW_COUNTER_EVENT(TRIPIPE_ACTIVE); +DEFINE_MALI_HW_COUNTER_EVENT(ARITH_WORDS); +DEFINE_MALI_HW_COUNTER_EVENT(ARITH_CYCLES_REG); +DEFINE_MALI_HW_COUNTER_EVENT(ARITH_CYCLES_L0); +DEFINE_MALI_HW_COUNTER_EVENT(ARITH_FRAG_DEPEND); +DEFINE_MALI_HW_COUNTER_EVENT(LS_WORDS); +DEFINE_MALI_HW_COUNTER_EVENT(LS_ISSUES); +DEFINE_MALI_HW_COUNTER_EVENT(LS_RESTARTS); +DEFINE_MALI_HW_COUNTER_EVENT(LS_REISSUES_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(LS_REISSUES_VD); +DEFINE_MALI_HW_COUNTER_EVENT(LS_REISSUE_ATTRIB_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(LS_NO_WB); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_WORDS); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_BUBBLES); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_WORDS_L0); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_WORDS_DESC); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_THREADS); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_RECIRC_FMISS); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_RECIRC_DESC); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_RECIRC_MULTI); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_RECIRC_PMISS); +DEFINE_MALI_HW_COUNTER_EVENT(TEX_RECIRC_CONF); +DEFINE_MALI_HW_COUNTER_EVENT(LSC_READ_HITS); +DEFINE_MALI_HW_COUNTER_EVENT(LSC_READ_MISSES); +DEFINE_MALI_HW_COUNTER_EVENT(LSC_WRITE_HITS); +DEFINE_MALI_HW_COUNTER_EVENT(LSC_WRITE_MISSES); +DEFINE_MALI_HW_COUNTER_EVENT(LSC_ATOMIC_HITS); +DEFINE_MALI_HW_COUNTER_EVENT(LSC_ATOMIC_MISSES); +DEFINE_MALI_HW_COUNTER_EVENT(LSC_LINE_FETCHES); +DEFINE_MALI_HW_COUNTER_EVENT(LSC_DIRTY_LINE); +DEFINE_MALI_HW_COUNTER_EVENT(LSC_SNOOPS); +DEFINE_MALI_HW_COUNTER_EVENT(AXI_TLB_STALL); +DEFINE_MALI_HW_COUNTER_EVENT(AXI_TLB_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(AXI_TLB_TRANSACTION); +DEFINE_MALI_HW_COUNTER_EVENT(LS_TLB_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(LS_TLB_HIT); +DEFINE_MALI_HW_COUNTER_EVENT(AXI_BEATS_READ); +DEFINE_MALI_HW_COUNTER_EVENT(AXI_BEATS_WRITE); +DEFINE_MALI_HW_COUNTER_EVENT(MMU_TABLE_WALK); +DEFINE_MALI_HW_COUNTER_EVENT(MMU_REPLAY_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(MMU_REPLAY_FULL); +DEFINE_MALI_HW_COUNTER_EVENT(MMU_NEW_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(MMU_HIT); +DEFINE_MALI_HW_COUNTER_EVENT(UTLB_STALL); +DEFINE_MALI_HW_COUNTER_EVENT(UTLB_REPLAY_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(UTLB_REPLAY_FULL); +DEFINE_MALI_HW_COUNTER_EVENT(UTLB_NEW_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(UTLB_HIT); +DEFINE_MALI_HW_COUNTER_EVENT(L2_WRITE_BEATS); +DEFINE_MALI_HW_COUNTER_EVENT(L2_READ_BEATS); +DEFINE_MALI_HW_COUNTER_EVENT(L2_ANY_LOOKUP); +DEFINE_MALI_HW_COUNTER_EVENT(L2_READ_LOOKUP); +DEFINE_MALI_HW_COUNTER_EVENT(L2_SREAD_LOOKUP); +DEFINE_MALI_HW_COUNTER_EVENT(L2_READ_REPLAY); +DEFINE_MALI_HW_COUNTER_EVENT(L2_READ_SNOOP); +DEFINE_MALI_HW_COUNTER_EVENT(L2_READ_HIT); +DEFINE_MALI_HW_COUNTER_EVENT(L2_CLEAN_MISS); +DEFINE_MALI_HW_COUNTER_EVENT(L2_WRITE_LOOKUP); +DEFINE_MALI_HW_COUNTER_EVENT(L2_SWRITE_LOOKUP); +DEFINE_MALI_HW_COUNTER_EVENT(L2_WRITE_REPLAY); +DEFINE_MALI_HW_COUNTER_EVENT(L2_WRITE_SNOOP); +DEFINE_MALI_HW_COUNTER_EVENT(L2_WRITE_HIT); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_READ_FULL); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_READ_HALF); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_WRITE_FULL); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_WRITE_HALF); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_READ); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_READ_LINE); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_WRITE); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_WRITE_LINE); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_WRITE_SMALL); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_BARRIER); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_AR_STALL); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_R_BUF_FULL); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_RD_BUF_FULL); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_R_RAW); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_W_STALL); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_W_BUF_FULL); +DEFINE_MALI_HW_COUNTER_EVENT(L2_EXT_R_W_HAZARD); +DEFINE_MALI_HW_COUNTER_EVENT(L2_TAG_HAZARD); +DEFINE_MALI_HW_COUNTER_EVENT(L2_SNOOP_FULL); +DEFINE_MALI_HW_COUNTER_EVENT(L2_REPLAY_FULL); +#undef DEFINE_MALI_HW_COUNTER_EVENT + +#endif /* _TRACE_MALI_HWC_H */ + +#undef TRACE_INCLUDE_PATH +#undef linux +#define TRACE_INCLUDE_PATH MALI_KBASE_THIRDPARTY_PATH +#undef TRACE_INCLUDE_FILE +#define TRACE_INCLUDE_FILE mali_linux_hwc_trace + +/* This part must be outside protection */ +#include <trace/define_trace.h> |