36#ifndef ARM_TRC_CMP_CFG_ETMV4_H_INCLUDED
37#define ARM_TRC_CMP_CFG_ETMV4_H_INCLUDED
117 const uint32_t
cidSize()
const;
119 const uint32_t
daSize()
const;
120 const uint32_t
dvSize()
const;
121 const uint32_t
ccSize()
const;
185 bool m_condTraceCalc;
198 return (
bool)((
m_cfg.reg_idr0 & 0x6) == 0x6);
203 return (
bool)((
m_cfg.reg_idr0 & 0x18) == 0x18);
208 return (
bool)((
m_cfg.reg_idr0 & 0x20) == 0x20);
213 return (
bool)((
m_cfg.reg_idr0 & 0x40) == 0x40);
218 return (
bool)((
m_cfg.reg_idr0 & 0x80) == 0x80);
223 return (
bool)((
m_cfg.reg_idr0 & 0x200) == 0x200);
228 return ((
m_cfg.reg_idr0 >> 10) & 0x3) + 1;
238 if(!m_QSuppCalc) CalcQSupp();
244 if(!m_QSuppCalc) CalcQSupp();
245 return (
bool)(m_QSuppType !=
Q_NONE);
250 if(!m_QSuppCalc) CalcQSupp();
251 return m_QSuppFilter;
256 return (
bool)((
m_cfg.reg_idr0 & 0x20000) == 0x20000);
261 return (
FullVersion() >= 0x51) && ((
m_cfg.reg_idr0 & 0x800000) == 0x800000);
266 uint32_t tsSizeF = (
m_cfg.reg_idr0 >> 24) & 0x1F;
281 return (
bool)((
m_cfg.reg_idr0 & 0x40000000) == 0x0);
303 return ((
m_cfg.reg_idr2 & 0x1F) == 0x8) ? 64 : 32;
308 return (((
m_cfg.reg_idr2 >> 5) & 0x1F) == 0x4) ? 32 : 0;
322 uint32_t daSizeF = ((
m_cfg.reg_idr2 >> 15) & 0x1F);
324 return (((
m_cfg.reg_idr2 >> 15) & 0x1F) == 0x8) ? 64 : 32;
330 uint32_t dvSizeF = ((
m_cfg.reg_idr2 >> 20) & 0x1F);
332 return (((
m_cfg.reg_idr2 >> 20) & 0x1F) == 0x8) ? 64 : 32;
338 return ((
m_cfg.reg_idr2 >> 25) & 0xF) + 12;
343 return (
bool)((
m_cfg.reg_idr2 & 0x20000000) == 0x20000000) && (
MinVersion() > 0);
356 return m_cfg.reg_idr8;
361 return (
m_cfg.reg_idr9 == 0) ? 1 :
m_cfg.reg_idr9;
366 return m_cfg.reg_idr10;
371 return m_cfg.reg_idr11;
376 return m_cfg.reg_idr12;
381 return m_cfg.reg_idr13;
391 return (uint8_t)(
m_cfg.reg_traceidr & 0x7F);
412 return ((
m_cfg.reg_configr & 0x6) != 0);
422 return ((
m_cfg.reg_configr & (0x1 << 3)) != 0);
427 return ((
m_cfg.reg_configr & (0x1 << 4)) != 0);
432 return ((
m_cfg.reg_configr & (0x1 << 6)) != 0);
437 return ((
m_cfg.reg_configr & (0x1 << 7)) != 0);
442 bool vmidOptVal = ((
m_cfg.reg_configr & (0x1 << 15)) != 0);
448 vmidOptVal = ((
m_cfg.reg_idr2 & (0x1 << 30)) != 0);
458 switch((
m_cfg.reg_configr >> 8) & 0x7)
467 m_condTraceCalc =
true;
474 return ((
m_cfg.reg_configr & (0x1 << 11)) != 0);
479 return ((
m_cfg.reg_configr & (0x1 << 12)) != 0);
484 return ((
m_cfg.reg_configr & (0x3 << 13)) != 0);
EtmV4Config(const ocsd_etmv4_cfg *cfg_regs)
enum EtmV4Config::_condType condType
const ocsd_core_profile_t & coreProfile() const
EtmV4Config & operator=(const ocsd_etmv4_cfg *p_cfg)
copy assignment operator for base structure into class.
const ocsd_arch_version_t & archVersion() const
enum EtmV4Config::_QSuppType QSuppType
enum _ocsd_core_profile ocsd_core_profile_t
enum _ocsd_arch_version ocsd_arch_version_t
const bool enabledLSP0Trace() const
const QSuppType getQSuppType()
const bool enabledRetStack() const
const uint32_t MaxSpecDepth() const
const bool hasDataTrace() const
const LSP0_t LSP0Type() const
const bool vmidOpt() const
const uint8_t numEvents() const
virtual const uint8_t getTraceID() const
CoreSight Trace ID for this device.
const bool enabledDATrace() const
const bool hasCondTrace() const
const condType hasCondType() const
const bool hasRetStack() const
const uint32_t daSize() const
const bool wfiwfeBranch() const
const uint32_t iaSizeMax() const
const bool enabledCCI() const
const uint8_t MajVersion() const
const uint32_t cidSize() const
const bool commTransP0() const
const bool hasCycleCountI() const
const uint32_t ccSize() const
const bool LSasInstP0() const
const bool enabledDataTrace() const
const bool enabledVMID() const
const uint32_t vmidSize()
const CondITrace_t enabledCondITrace()
const bool enabledVMIDOpt() const
const uint32_t CondSpecKeyMax() const
const uint8_t FullVersion() const
const uint32_t P1_Key_Max() const
const bool hasBranchBroadcast() const
const bool eteHasTSMarker() const
const uint32_t dvSize() const
const uint32_t P1_Spcl_Key_Max() const
const uint32_t CondKeyMaxIncr() const
const bool hasTrcExcpData() const
const uint32_t P0_Key_Max() const
const uint32_t TimeStampSize() const
const uint32_t CondKeyMax() const
const bool enabledDVTrace() const
const bool enabledBrBroad() const
const bool enabledTS() const
const bool commitOpt1() const
const bool enabledQE() const
const bool enabledCID() const
const uint8_t MinVersion() const
struct _ocsd_etmv4_cfg ocsd_etmv4_cfg