36 #ifndef ARM_TRC_PKT_TYPES_ETMV4_H_INCLUDED
37 #define ARM_TRC_PKT_TYPES_ETMV4_H_INCLUDED
383 #define ETE_ARCH_VERSION 0x5
385 #define ETE_OPFLG_PKTDEC_SRCADDR_N_ATOMS 0x00010000
enum _ocsd_core_profile ocsd_core_profile_t
enum _ocsd_arch_version ocsd_arch_version_t
struct _etmv4_addr_val_t etmv4_addr_val_t
struct _ocsd_etmv4_i_pkt ocsd_etmv4_i_pkt
struct _ocsd_etmv4_d_pkt ocsd_etmv4_d_pkt
enum _ocsd_etmv4_i_pkt_type ocsd_etmv4_i_pkt_type
struct _ocsd_etmv4_cfg ocsd_etmv4_cfg
enum _ocsd_etmv4_d_pkt_type ocsd_etmv4_d_pkt_type
struct _etmv4_context_t etmv4_context_t
union _etmv4_trace_info_t etmv4_trace_info_t
@ ETM4_PKT_I_ADDR_CTXT_L_32IS0
@ ETM4_PKT_I_ADDR_L_32IS1
@ ETM4_PKT_I_ADDR_L_64IS0
@ ETM4_PKT_I_UNNUM_DS_MKR
@ ETE_PKT_I_SRC_ADDR_L_32IS0
@ ETM4_PKT_I_BAD_TRACEMODE
@ ETE_PKT_I_COMMIT_WIN_MV
@ ETE_PKT_I_SRC_ADDR_MATCH
@ ETM4_PKT_I_RESERVED_CFG
@ ETM4_PKT_I_BAD_SEQUENCE
@ ETE_PKT_I_SRC_ADDR_L_32IS1
@ ETE_PKT_I_SRC_ADDR_S_IS0
@ ETM4_PKT_I_OVERFLOW
b00000101
@ ETE_PKT_I_SRC_ADDR_L_64IS1
@ ETM4_PKT_I_INCOMPLETE_EOT
@ ETM4_PKT_I_DISCARD
b00000011
@ ETM4_PKT_I_ADDR_CTXT_L_64IS1
@ ETM4_PKT_I_ASYNC
b00000000
@ ETM4_PKT_I_ADDR_CTXT_L_32IS1
@ ETM4_PKT_I_ADDR_L_64IS1
@ ETM4_PKT_I_ADDR_L_32IS0
@ ETM4_PKT_I_ADDR_CTXT_L_64IS0
@ ETM4_PKT_I_CANCEL_F1_MISPRED
@ ETE_PKT_I_SRC_ADDR_S_IS1
@ ETE_PKT_I_SRC_ADDR_L_64IS0
@ ETM4_PKT_D_BAD_SEQUENCE
invalid sequence for packet type
@ ETM4_PKT_DADDR_P1_F7
b11110101
@ ETM4_PKT_D_NOTSYNC
no sync found yet
@ ETM4_PKT_DVAL_P2_F2
b00110xxx
@ ETM4_PKT_DADDR_P1_F2
b10xxxxxx
@ ETM4_PKT_D_NO_HEADER
waiting for a header byte
@ ETM4_PKT_DSUPPRESSION
b00000011
@ ETM4_PKT_D_NO_ERR_TYPE
error packet has no header based type. Use with unknown/res packet types.
@ ETM4_PKT_DVAL_P2_F5
b00011xxx
@ ETM4_PKT_D_ASYNC
b00000000
@ ETM4_PKT_DADDR_P1_F4
b0110xxxx
@ ETM4_PKT_DADDR_P1_F3
b000101xx
@ ETM4_PKT_DTRACE_INFO
b00000001
@ ETM4_PKT_DADDR_P1_F6
b1111011x
@ ETM4_PKT_DVAL_P2_F4
b000100xx
@ ETM4_PKT_DVAL_P2_F1
b0010xxxx
@ ETM4_PKT_D_BAD_TRACEMODE
invalid packet type for this trace mode.
@ ETM4_PKT_DTIMESTAMP
b00000010
@ ETM4_PKT_D_OVERFLOW
b00000101
@ ETM4_PKT_DEVENT
b00000100
@ ETM4_PKT_DADDR_P1_F1
b0111xxxx
@ ETM4_PKT_DUNNUM_DS_MKR
b00000001
@ ETM4_PKT_DADDR_P1_F5
b11111xxx
@ ETM4_PKT_D_RESERVED
packet type reserved.
@ ETM4_PKT_D_DISCARD
b00000011
@ ETM4_PKT_D_EXTENSION
b00000000
@ ETM4_PKT_D_INCOMPLETE_EOT
flushing incomplete packet at end of trace.
@ ETM4_PKT_DVAL_P2_F6
b00111xxx
@ ETM4_PKT_DVAL_P2_F3
b010xxxxx
ocsd_vaddr_t val
Address value.
uint8_t isa
instruction set.
uint32_t SF
sixty four bit
uint32_t VMID
current VMID
uint32_t NSE
PE FEAT_RME: root / realm indicator.
uint32_t updated_v
updated VMID
uint32_t updated_c
updated CtxtID
uint32_t ctxtID
Current ctxtID.
uint32_t updated
updated this context packet (otherwise same as last time)
uint32_t EL
exception level.
ocsd_core_profile_t core_prof
ocsd_arch_version_t arch_ver
ocsd_etmv4_d_pkt_type err_type
ocsd_etmv4_d_pkt_type type
struct _ocsd_etmv4_i_pkt::@17::@24 bits
uint8_t dsm_val
Data Sync Marker number, or unnumbered atom count - packet type determines.
struct _ocsd_etmv4_i_pkt::@13 exception_info
ocsd_etmv4_i_pkt_type type
uint32_t commit_elem_valid
struct _ocsd_etmv4_i_pkt::@16 Q_pkt
uint32_t p0_key
current P0 key value for data packet synchronisation
etmv4_trace_info_t trace_info
trace info structure - programmed configuration of trace capture.
ocsd_pkt_vaddr v_addr
most recently broadcast address packet
uint32_t cond_r_key_valid
uint32_t addr_interp
address value interpretation
uint32_t spec_depth_valid
uint8_t bits_changed
bits updated in this timestamp packet.
struct _ocsd_etmv4_i_pkt::@14 cond_instr
ocsd_etmv4_i_pkt_type err_type
uint32_t m_fault_pending
M class fault pending.
uint32_t curr_spec_depth
current speculation depth
uint8_t v_addr_ISA
ISA for the address packet. (0 = IS0 / 1 = IS1)
struct _ocsd_etmv4_i_pkt::@12 ts
uint32_t cc_threshold
cycle count threshold - from trace info.
struct _ocsd_etmv4_i_pkt::@15 cond_result
uint32_t cycle_count
cycle count
ocsd_pkt_atom atom
atom elements - number of atoms indicates validity of packet
etmv4_context_t context
current context for PE
uint8_t event_val
Event value on event packet.
uint8_t addr_exact_match_idx
address match index in this packet.
uint32_t cond_c_key_valid
uint32_t exceptionType
exception number
uint32_t trace_info_valid
uint64_t timestamp
current timestamp value
union _ocsd_etmv4_i_pkt::@17 pkt_valid
valid bits for packet elements (addresses have their own valid bits).
uint32_t m_type
1 if M class exception.
OpenCSD: Common "C" types for trace packets.
uint32_t cond_enabled
conditional trace enabled type.
uint32_t cc_enabled
1 if cycle count enabled
uint32_t in_trans_state
1 if starting trace when in a transactional state (ETE trace).
uint32_t val
trace info full value.
uint32_t p0_load
1 if tracing with P0 load elements (for data trace)
uint32_t p0_store
1 if tracing with P0 store elements (for data trace)
struct _etmv4_trace_info_t::@9 bits
bitfields for trace info value.