34 #ifndef ARM_TRC_PKT_DECODE_PTM_H_INCLUDED 35 #define ARM_TRC_PKT_DECODE_PTM_H_INCLUDED 51 void initAtomPkt(
const ocsd_pkt_atom &atom,
const ocsd_trc_index_t &root_index);
55 const ocsd_trc_index_t
pktIndex()
const;
62 ocsd_trc_index_t m_root_index;
68 m_root_index = root_index;
73 return (m_atom.En_bits & 0x1) ? ATOM_E : ATOM_N;
110 virtual ocsd_datapath_resp_t processPacket();
111 virtual ocsd_datapath_resp_t onEOT();
112 virtual ocsd_datapath_resp_t onReset();
113 virtual ocsd_datapath_resp_t onFlush();
114 virtual ocsd_err_t onProtocolConfig();
130 ocsd_datapath_resp_t decodePacket();
131 ocsd_datapath_resp_t contProcess();
132 ocsd_datapath_resp_t processIsync();
133 ocsd_datapath_resp_t processBranch();
134 ocsd_datapath_resp_t processWPUpdate();
135 ocsd_datapath_resp_t processAtom();
136 ocsd_err_t traceInstrToWP(
bool &bWPFound,
const waypoint_trace_t traceWPOp = TRACE_WAYPOINT,
const ocsd_vaddr_t nextAddrMatch = 0);
137 ocsd_datapath_resp_t processAtomRange(
const ocsd_atm_val A,
const char *pkt_msg,
const waypoint_trace_t traceWPOp = TRACE_WAYPOINT,
const ocsd_vaddr_t nextAddrMatch = 0);
138 void checkPendingNacc(ocsd_datapath_resp_t &resp);
156 processor_state_t m_curr_state;
158 const bool processStateIsCont()
const;
163 typedef struct _ptm_pe_addr_state {
165 ocsd_vaddr_t instr_addr;
169 ptm_pe_addr_state m_curr_pe_state;
170 ocsd_pe_context m_pe_context;
175 ocsd_instr_info m_instr_info;
177 bool m_mem_nacc_pending;
178 ocsd_vaddr_t m_nacc_addr;
180 bool m_i_sync_pe_ctxt;
190 inline const bool TrcPktDecodePtm::processStateIsCont()
const 192 return (
bool)(m_curr_state >= CONT_ISYNC);
195 #endif // ARM_TRC_PKT_DECODE_PTM_H_INCLUDED
void initAtomPkt(const ocsd_pkt_atom &atom, const ocsd_trc_index_t &root_index)
initialise the atom and index values
const ocsd_atm_val getCurrAtomVal() const
OpenCSD : Trace Packet decoder base class.
Generic trace element class.
void clearAtom()
clear the current atom, set the next.
const int numAtoms() const
number of atoms
const ocsd_trc_index_t pktIndex() const
originating packet index
virtual const uint8_t getCoreSightTraceID()
OpenCSD : Decoder Generic trace element output class.