Loading...
Searching...
No Matches
EtmV3Config Class Reference
OpenCSD Library : Trace Source Protocol Configuration.

Interpreter class for etm v3 config structure. More...

`#include <trc_cmp_cfg_etmv3.h>`

Inheritance diagram for EtmV3Config:
[legend]
Collaboration diagram for EtmV3Config:
[legend]

## Public Types

enum | EtmTraceMode { TM_INSTR_ONLY , TM_I_DATA_VAL , TM_I_DATA_ADDR , TM_I_DATA_VAL_ADDR , TM_DATAONLY_VAL , TM_DATAONLY_ADDR , TM_DATAONLY_VAL_ADDR }
| combination enum to describe trace mode. More...

## Public Member Functions

| EtmV3Config ()
| EtmV3Config (const ocsd_etmv3_cfg *cfg_regs)
| ~EtmV3Config ()
| operator const ocsd_etmv3_cfg & () const
| cast operator returning struct const reference
| operator const ocsd_etmv3_cfg * () const
| cast operator returning struct const pointer
EtmTraceMode const | GetTraceMode () const
| return trace mode
const int | CtxtIDBytes () const
| number of context ID bytes traced 1,2,4;
ETMV3 configuration
EtmV3Config & | operator= (const ocsd_etmv3_cfg *p_cfg)
| copy assignment operator for C-API base structure into class.
const bool | isInstrTrace () const
| instruction trace present.
const bool | isDataValTrace () const
| data value trace present.
const bool | isDataAddrTrace () const
| data address trace present.
const bool | isDataTrace () const
| either or both data trace types present.
const bool | isCycleAcc () const
| return true if cycle accurate tracing enabled.
const int | MinorRev () const
| return X revision in 3.X
const bool | isV7MArch () const
| source is V7M architecture
const bool | isAltBranch () const
| Alternate branch packet encoding used.
const bool | hasVirtExt () const
| processor has virtualisation extensions.
const bool | isVMIDTrace () const
| VMID tracing enabled.
const bool | hasTS () const
| Timestamps implemented in trace.
const bool | isTSEnabled () const
| Timestamp trace is enabled.
const bool | TSPkt64 () const
| timestamp packet is 64 bits in size.
virtual const uint8_t | getTraceID () const
| CoreSight Trace ID for this device.
const ocsd_arch_version_t | getArchVersion () const
| architecture version
const ocsd_core_profile_t | getCoreProfile () const
| core profile.
Public Member Functions inherited from CSConfig
| CSConfig ()
virtual | ~CSConfig ()

## Static Public Attributes

static const uint32_t | CTRL_DATAVAL = 0x4
static const uint32_t | CTRL_DATAADDR = 0x8
static const uint32_t | CTRL_CYCLEACC = 0x1000
static const uint32_t | CTRL_DATAONLY = 0x100000
static const uint32_t | CTRL_TS_ENA = (0x1 << 28)
static const uint32_t | CTRL_VMID_ENA = (0x1 << 30)
static const uint32_t | CCER_HAS_TS = (0x1 << 22)
static const uint32_t | CCER_VIRTEXT = (0x1 << 26)
static const uint32_t | CCER_TS64BIT = (0x1 << 29)
static const uint32_t | IDR_ALTBRANCH = 0x100000

## Detailed Description

Interpreter class for etm v3 config structure.

Provides quick value interpretation methods for the ETMv3 config register values. Primarily inlined for efficient code.

Definition at line 58 of file trc_cmp_cfg_etmv3.h.

## Member Enumeration Documentation

## EtmTraceMode

enum EtmV3Config::EtmTraceMode

combination enum to describe trace mode.

Enumerator
TM_INSTR_ONLY | instruction only trace
TM_I_DATA_VAL | instruction + data value
TM_I_DATA_ADDR | instruction + data address
TM_I_DATA_VAL_ADDR | instr + data value + data address
TM_DATAONLY_VAL | data value trace
TM_DATAONLY_ADDR | data address trace
TM_DATAONLY_VAL_ADDR | data value + address trace

Definition at line 90 of file trc_cmp_cfg_etmv3.h.

## Constructor & Destructor Documentation

## EtmV3Config() [1/2]

EtmV3Config::EtmV3Config | ( |  | ) |

Default constructor

## EtmV3Config() [2/2]

EtmV3Config::EtmV3Config | ( | const ocsd_etmv3_cfg * | cfg_regs | ) |

## ~EtmV3Config()

EtmV3Config::~EtmV3Config | ( |  | ) |

inline

Definition at line 63 of file trc_cmp_cfg_etmv3.h.

## Member Function Documentation

## CtxtIDBytes()

const int EtmV3Config::CtxtIDBytes | ( |  | ) | const

number of context ID bytes traced 1,2,4;

## GetTraceMode()

EtmTraceMode const EtmV3Config::GetTraceMode | ( |  | ) | const

return trace mode

## operator const ocsd_etmv3_cfg &()

EtmV3Config::operator const ocsd_etmv3_cfg & | ( |  | ) | const

inline

cast operator returning struct const reference

Definition at line 85 of file trc_cmp_cfg_etmv3.h.

## operator const ocsd_etmv3_cfg *()

EtmV3Config::operator const ocsd_etmv3_cfg * | ( |  | ) | const

inline

cast operator returning struct const pointer

Definition at line 87 of file trc_cmp_cfg_etmv3.h.

## Member Data Documentation

## CCER_HAS_TS

const uint32_t EtmV3Config::CCER_HAS_TS = (0x1 << 22)

static

Definition at line 73 of file trc_cmp_cfg_etmv3.h.

## CCER_TS64BIT

const uint32_t EtmV3Config::CCER_TS64BIT = (0x1 << 29)

static

Definition at line 75 of file trc_cmp_cfg_etmv3.h.

## CCER_VIRTEXT

const uint32_t EtmV3Config::CCER_VIRTEXT = (0x1 << 26)

static

Definition at line 74 of file trc_cmp_cfg_etmv3.h.

## CTRL_CYCLEACC

const uint32_t EtmV3Config::CTRL_CYCLEACC = 0x1000

static

Definition at line 68 of file trc_cmp_cfg_etmv3.h.

## CTRL_DATAADDR

const uint32_t EtmV3Config::CTRL_DATAADDR = 0x8

static

Definition at line 67 of file trc_cmp_cfg_etmv3.h.

## CTRL_DATAONLY

const uint32_t EtmV3Config::CTRL_DATAONLY = 0x100000

static

Definition at line 69 of file trc_cmp_cfg_etmv3.h.

## CTRL_DATAVAL

const uint32_t EtmV3Config::CTRL_DATAVAL = 0x4

static

Default destructor

Definition at line 66 of file trc_cmp_cfg_etmv3.h.

## CTRL_TS_ENA

const uint32_t EtmV3Config::CTRL_TS_ENA = (0x1 << 28)

static

Definition at line 70 of file trc_cmp_cfg_etmv3.h.

## CTRL_VMID_ENA

const uint32_t EtmV3Config::CTRL_VMID_ENA = (0x1 << 30)

static

Definition at line 71 of file trc_cmp_cfg_etmv3.h.

## IDR_ALTBRANCH

const uint32_t EtmV3Config::IDR_ALTBRANCH = 0x100000

static

Definition at line 77 of file trc_cmp_cfg_etmv3.h.

The documentation for this class was generated from the following file:

- /build/libopencsd-8WV101/libopencsd-1.5.5/decoder/include/opencsd/etmv3/trc_cmp_cfg_etmv3.h