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() >= 0x46) && ((
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 hasTSMarker() 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 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