axipmon
Vitis Drivers API Documentation
|
Data Structures | |
struct | XAxiPmon_Config |
This typedef contains configuration information for the AXI Performance Monitor device. More... | |
struct | XAxiPmon |
The driver's instance data. More... | |
Macros | |
#define | XAxiPmon_IntrGlobalEnable(InstancePtr) |
This routine enables the Global Interrupt. More... | |
#define | XAxiPmon_IntrGlobalDisable(InstancePtr) |
This routine disables the Global Interrupt. More... | |
#define | XAxiPmon_IntrEnable(InstancePtr, Mask) |
This routine enables interrupt(s). More... | |
#define | XAxiPmon_IntrDisable(InstancePtr, Mask) |
This routine disable interrupt(s). More... | |
#define | XAxiPmon_IntrClear(InstancePtr, Mask) |
This routine clears the specified interrupt(s). More... | |
#define | XAxiPmon_IntrGetStatus(InstancePtr) |
This routine returns the Interrupt Status Register. More... | |
#define | XAxiPmon_EnableGlobalClkCounter(InstancePtr) |
This function enables the Global Clock Counter. More... | |
#define | XAxiPmon_DisableGlobalClkCounter(InstancePtr) |
This function disbles the Global Clock Counter. More... | |
#define | XAxiPmon_EnableFlag(InstancePtr, Flag) |
This function enables the specified flag in Flag Control Register. More... | |
#define | XAxiPmon_DisableFlag(InstancePtr, Flag) |
This function disables the specified flag in Flag Control Register. More... | |
#define | XAxiPmon_LoadSampleIntervalCounter(InstancePtr) |
This function loads the sample interval register value into the sample interval counter. More... | |
#define | XAxiPmon_EnableSampleIntervalCounter(InstancePtr) |
This enables the down count of the sample interval counter. More... | |
#define | XAxiPmon_DisableSampleIntervalCounter(InstancePtr) |
This disables the down count of the sample interval counter. More... | |
#define | XAxiPmon_EnableMetricCounterReset(InstancePtr) |
This enables Reset of Metric Counters when Sample Interval Counter lapses. More... | |
#define | XAxiPmon_DisableMetricCounterReset(InstancePtr) |
This disables the down count of the sample interval counter. More... | |
#define | XAxiPmon_EnableIDFilter(InstancePtr) |
This function enables the ID Filter Masking. More... | |
#define | XAxiPmon_DisableIDFilter(InstancePtr) |
This function disbles the ID Filter masking. More... | |
#define | XAxiPmon_SampleMetrics(InstancePtr) XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, XAPM_SR_OFFSET); |
This function samples Metric Counters to Sampled Metric Counters by reading Sample Register and also returns interval. More... | |
Macro for Maximum number of Counters | |
#define | XAPM_MAX_COUNTERS 10U |
Maximum number of Counters. More... | |
#define | XAPM_MAX_COUNTERS_PROFILE 48U |
Maximum number of Counters. More... | |
Indices for Metric Counters and Sampled Metric Coounters used with | |
XAxiPmon_GetMetricCounter and XAxiPmon_GetSampledMetricCounter APIs | |
#define | XAPM_METRIC_COUNTER_0 0U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_METRIC_COUNTER_1 1U |
Metric Counter 1 Register Index. More... | |
#define | XAPM_METRIC_COUNTER_2 2U |
Metric Counter 2 Register Index. More... | |
#define | XAPM_METRIC_COUNTER_3 3U |
Metric Counter 3 Register Index. More... | |
#define | XAPM_METRIC_COUNTER_4 4U |
Metric Counter 4 Register Index. More... | |
#define | XAPM_METRIC_COUNTER_5 5U |
Metric Counter 5 Register Index. More... | |
#define | XAPM_METRIC_COUNTER_6 6U |
Metric Counter 6 Register Index. More... | |
#define | XAPM_METRIC_COUNTER_7 7U |
Metric Counter 7 Register Index. More... | |
#define | XAPM_METRIC_COUNTER_8 8U |
Metric Counter 8 Register Index. More... | |
#define | XAPM_METRIC_COUNTER_9 9U |
Metric Counter 9 Register Index. More... | |
Indices for Incrementers and Sampled Incrementers used with | |
XAxiPmon_GetIncrementer and XAxiPmon_GetSampledIncrementer APIs | |
#define | XAPM_INCREMENTER_0 0U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_INCREMENTER_1 1U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_INCREMENTER_2 2U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_INCREMENTER_3 3U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_INCREMENTER_4 4U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_INCREMENTER_5 5U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_INCREMENTER_6 6U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_INCREMENTER_7 7U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_INCREMENTER_8 8U |
Metric Counter 0 Register Index. More... | |
#define | XAPM_INCREMENTER_9 9U |
Metric Counter 0 Register Index. More... | |
Macros for Metric Selector Settings | |
#define | XAPM_METRIC_SET_0 0U |
Write Transaction Count. More... | |
#define | XAPM_METRIC_SET_1 1U |
Read Transaction Count. More... | |
#define | XAPM_METRIC_SET_2 2U |
Write Byte Count. More... | |
#define | XAPM_METRIC_SET_3 3U |
Read Byte Count. More... | |
#define | XAPM_METRIC_SET_4 4U |
Write Beat Count. More... | |
#define | XAPM_METRIC_SET_5 5U |
Total Read Latency. More... | |
#define | XAPM_METRIC_SET_6 6U |
Total Write Latency. More... | |
#define | XAPM_METRIC_SET_7 7U |
Slv_Wr_Idle_Cnt. More... | |
#define | XAPM_METRIC_SET_8 8U |
Mst_Rd_Idle_Cnt. More... | |
#define | XAPM_METRIC_SET_9 9U |
Num_BValids. More... | |
#define | XAPM_METRIC_SET_10 10U |
Num_WLasts. More... | |
#define | XAPM_METRIC_SET_11 11U |
Num_RLasts. More... | |
#define | XAPM_METRIC_SET_12 12U |
Minimum Write Latency. More... | |
#define | XAPM_METRIC_SET_13 13U |
Maximum Write Latency. More... | |
#define | XAPM_METRIC_SET_14 14U |
Minimum Read Latency. More... | |
#define | XAPM_METRIC_SET_15 15U |
Maximum Read Latency. More... | |
#define | XAPM_METRIC_SET_16 16U |
Transfer Cycle Count. More... | |
#define | XAPM_METRIC_SET_17 17U |
Packet Count. More... | |
#define | XAPM_METRIC_SET_18 18U |
Data Byte Count. More... | |
#define | XAPM_METRIC_SET_19 19U |
Position Byte Count. More... | |
#define | XAPM_METRIC_SET_20 20U |
Null Byte Count. More... | |
#define | XAPM_METRIC_SET_21 21U |
Slv_Idle_Cnt. More... | |
#define | XAPM_METRIC_SET_22 22U |
Mst_Idle_Cnt. More... | |
#define | XAPM_METRIC_SET_30 30U |
External event count. More... | |
Macros for Maximum number of Agents | |
#define | XAPM_MAX_AGENTS 8U |
Maximum number of Agents. More... | |
Macros for Flags in Flag Enable Control Register | |
#define | XAPM_FLAG_WRADDR 0x00000001 |
Write Address Flag. More... | |
#define | XAPM_FLAG_FIRSTWR 0x00000002 |
First Write Flag. More... | |
#define | XAPM_FLAG_LASTWR 0x00000004 |
Last Write Flag. More... | |
#define | XAPM_FLAG_RESPONSE 0x00000008 |
Response Flag. More... | |
#define | XAPM_FLAG_RDADDR 0x00000010 |
Read Address Flag. More... | |
#define | XAPM_FLAG_FIRSTRD 0x00000020 |
First Read Flag. More... | |
#define | XAPM_FLAG_LASTRD 0x00000040 |
Last Read Flag. More... | |
#define | XAPM_FLAG_SWDATA 0x00010000 |
Software-written Data Flag. More... | |
#define | XAPM_FLAG_EVENT 0x00020000 |
Last Read Flag. More... | |
#define | XAPM_FLAG_EVNTSTOP 0x00040000 |
Last Read Flag. More... | |
#define | XAPM_FLAG_EVNTSTART 0x00080000 |
Last Read Flag. More... | |
#define | XAPM_FLAG_GCCOVF 0x00100000 |
Global Clock Counter Overflow Flag. More... | |
#define | XAPM_FLAG_SCLAPSE 0x00200000 |
Sample Counter Lapse Flag. More... | |
#define | XAPM_FLAG_MC0 0x00400000U |
Metric Counter 0 Flag. More... | |
#define | XAPM_FLAG_MC1 0x00800000U |
Metric Counter 1 Flag. More... | |
#define | XAPM_FLAG_MC2 0x01000000U |
Metric Counter 2 Flag. More... | |
#define | XAPM_FLAG_MC3 0x02000000U |
Metric Counter 3 Flag. More... | |
#define | XAPM_FLAG_MC4 0x04000000U |
Metric Counter 4 Flag. More... | |
#define | XAPM_FLAG_MC5 0x08000000U |
Metric Counter 5 Flag. More... | |
#define | XAPM_FLAG_MC6 0x10000000U |
Metric Counter 6 Flag. More... | |
#define | XAPM_FLAG_MC7 0x20000000U |
Metric Counter 7 Flag. More... | |
#define | XAPM_FLAG_MC8 0x40000000U |
Metric Counter 8 Flag. More... | |
#define | XAPM_FLAG_MC9 0x80000000U |
Metric Counter 9 Flag. More... | |
Macros for Read/Write Latency Start and End points | |
#define | XAPM_LATENCY_ADDR_ISSUE 0U |
Address Issue as start point for Latency calculation. More... | |
#define | XAPM_LATENCY_ADDR_ACCEPT 1U |
Address Acceptance as start point for Latency calculation. More... | |
#define | XAPM_LATENCY_LASTRD 0U |
Last Read as end point for Latency calculation. More... | |
#define | XAPM_LATENCY_LASTWR 0U |
Last Write as end point for Latency calculation. More... | |
#define | XAPM_LATENCY_FIRSTRD 1U |
First Read as end point for Latency calculation. More... | |
#define | XAPM_LATENCY_FIRSTWR 1U |
First Write as end point for Latency calculation. More... | |
Macros for Modes of APM | |
#define | XAPM_MODE_TRACE 2U |
APM in Trace mode. More... | |
#define | XAPM_MODE_PROFILE 1U |
APM in Profile mode. More... | |
#define | XAPM_MODE_ADVANCED 0U |
APM in Advanced mode. More... | |
Functions | |
XAxiPmon_Config * | XAxiPmon_LookupConfig (u16 DeviceId) |
Functions in xaxipmon_sinit.c. More... | |
s32 | XAxiPmon_CfgInitialize (XAxiPmon *InstancePtr, XAxiPmon_Config *ConfigPtr, UINTPTR EffectiveAddr) |
This function initializes a specific XAxiPmon device/instance. More... | |
s32 | XAxiPmon_ResetMetricCounter (XAxiPmon *InstancePtr) |
This function resets all Metric Counters and Sampled Metric Counters of AXI Performance Monitor. More... | |
void | XAxiPmon_ResetGlobalClkCounter (XAxiPmon *InstancePtr) |
This function resets Global Clock Counter of AXI Performance Monitor. More... | |
s32 | XAxiPmon_ResetFifo (XAxiPmon *InstancePtr) |
This function resets Streaming FIFO of AXI Performance Monitor. More... | |
void | XAxiPmon_SetIncrementerRange (XAxiPmon *InstancePtr, u8 IncrementerNum, u16 RangeUpper, u16 RangeLower) |
This function sets Ranges for Incrementers depending on parameters passed. More... | |
void | XAxiPmon_GetIncrementerRange (XAxiPmon *InstancePtr, u8 IncrementerNum, u16 *RangeUpper, u16 *RangeLower) |
This function returns the Ranges of Incrementers Registers. More... | |
void | XAxiPmon_SetSampleInterval (XAxiPmon *InstancePtr, u32 SampleInterval) |
This function sets the Sample Interval Register. More... | |
void | XAxiPmon_GetSampleInterval (XAxiPmon *InstancePtr, u32 *SampleInterval) |
This function returns the contents of Sample Interval Register. More... | |
s32 | XAxiPmon_SetMetrics (XAxiPmon *InstancePtr, u8 Slot, u8 Metrics, u8 CounterNum) |
This function sets Metrics for specified Counter in the corresponding Metric Selector Register. More... | |
s32 | XAxiPmon_GetMetrics (XAxiPmon *InstancePtr, u8 CounterNum, u8 *Metrics, u8 *Slot) |
This function returns Metrics in the specified Counter from the corresponding Metric Selector Register. More... | |
void | XAxiPmon_GetGlobalClkCounter (XAxiPmon *InstancePtr, u32 *CntHighValue, u32 *CntLowValue) |
This function returns the contents of the Global Clock Counter Register. More... | |
u32 | XAxiPmon_GetMetricCounter (XAxiPmon *InstancePtr, u32 CounterNum) |
This function returns the contents of the Metric Counter Register. More... | |
u32 | XAxiPmon_GetSampledMetricCounter (XAxiPmon *InstancePtr, u32 CounterNum) |
This function returns the contents of the Sampled Metric Counter Register. More... | |
u32 | XAxiPmon_GetIncrementer (XAxiPmon *InstancePtr, u32 IncrementerNum) |
This function returns the contents of the Incrementer Register. More... | |
u32 | XAxiPmon_GetSampledIncrementer (XAxiPmon *InstancePtr, u32 IncrementerNum) |
This function returns the contents of the Sampled Incrementer Register. More... | |
void | XAxiPmon_SetSwDataReg (XAxiPmon *InstancePtr, u32 SwData) |
This function sets Software-written Data Register. More... | |
u32 | XAxiPmon_GetSwDataReg (XAxiPmon *InstancePtr) |
This function returns contents of Software-written Data Register. More... | |
s32 | XAxiPmon_StartEventLog (XAxiPmon *InstancePtr, u32 FlagEnables) |
This function enables the following in the AXI Performance Monitor: More... | |
s32 | XAxiPmon_StopEventLog (XAxiPmon *InstancePtr) |
This function disables the following in the AXI Performance Monitor: More... | |
s32 | XAxiPmon_StartCounters (XAxiPmon *InstancePtr, u32 SampleInterval) |
This function enables the following in the AXI Performance Monitor: More... | |
s32 | XAxiPmon_StopCounters (XAxiPmon *InstancePtr) |
This function disables the following in the AXI Performance Monitor: More... | |
void | XAxiPmon_EnableMetricsCounter (XAxiPmon *InstancePtr) |
This function enables Metric Counters. More... | |
void | XAxiPmon_DisableMetricsCounter (XAxiPmon *InstancePtr) |
This function disables the Metric Counters. More... | |
void | XAxiPmon_SetLogEnableRanges (XAxiPmon *InstancePtr, u32 CounterNum, u16 RangeUpper, u16 RangeLower) |
This function sets the Upper and Lower Ranges for specified Metric Counter Log Enable Register.Event Logging starts when corresponding Metric Counter value falls in between these ranges. More... | |
void | XAxiPmon_GetLogEnableRanges (XAxiPmon *InstancePtr, u32 CounterNum, u16 *RangeUpper, u16 *RangeLower) |
This function returns the Ranges of specified Metric Counter Log Enable Register. More... | |
void | XAxiPmon_EnableEventLog (XAxiPmon *InstancePtr) |
This function enables Event Logging. More... | |
void | XAxiPmon_EnableMetricCounterTrigger (XAxiPmon *InstancePtr) |
This function enables External trigger pulse so that Metric Counters can be started on external trigger pulse for a Slot. More... | |
void | XAxiPmon_DisableMetricCounterTrigger (XAxiPmon *InstancePtr) |
This function disables the External trigger pulse used to start Metric Counters on external trigger pulse for a Slot. More... | |
void | XAxiPmon_EnableEventLogTrigger (XAxiPmon *InstancePtr) |
This function enables External trigger pulse for Event Log so that Event Logging can be started on external trigger pulse for a Slot. More... | |
void | XAxiPmon_DisableEventLogTrigger (XAxiPmon *InstancePtr) |
This function disables the External trigger pulse used to start Event Log on external trigger pulse for a Slot. More... | |
const char * | XAxiPmon_GetMetricName (u8 Metrics) |
This function returns a name for a given Metric. More... | |
void | XAxiPmon_SetWriteId (XAxiPmon *InstancePtr, u32 WriteId) |
This function sets Write ID in ID register. More... | |
void | XAxiPmon_SetReadId (XAxiPmon *InstancePtr, u32 ReadId) |
This function sets Read ID in ID register. More... | |
u32 | XAxiPmon_GetWriteId (XAxiPmon *InstancePtr) |
This function returns Write ID in ID register. More... | |
u32 | XAxiPmon_GetReadId (XAxiPmon *InstancePtr) |
This function returns Read ID in ID register. More... | |
void | XAxiPmon_SetWrLatencyStart (XAxiPmon *InstancePtr, u8 Param) |
This function sets Latency Start point to calculate write latency. More... | |
void | XAxiPmon_SetWrLatencyEnd (XAxiPmon *InstancePtr, u8 Param) |
This function sets Latency End point to calculate write latency. More... | |
void | XAxiPmon_SetRdLatencyStart (XAxiPmon *InstancePtr, u8 Param) |
This function sets Latency Start point to calculate read latency. More... | |
void | XAxiPmon_SetRdLatencyEnd (XAxiPmon *InstancePtr, u8 Param) |
This function sets Latency End point to calculate read latency. More... | |
u8 | XAxiPmon_GetWrLatencyStart (XAxiPmon *InstancePtr) |
This function returns Write Latency Start point. More... | |
u8 | XAxiPmon_GetWrLatencyEnd (XAxiPmon *InstancePtr) |
This function returns Write Latency End point. More... | |
u8 | XAxiPmon_GetRdLatencyStart (XAxiPmon *InstancePtr) |
This function returns read Latency Start point. More... | |
u8 | XAxiPmon_GetRdLatencyEnd (XAxiPmon *InstancePtr) |
This function returns Read Latency End point. More... | |
void | XAxiPmon_SetWriteIdMask (XAxiPmon *InstancePtr, u32 WrMask) |
This function sets Write ID Mask in ID Mask register. More... | |
void | XAxiPmon_SetReadIdMask (XAxiPmon *InstancePtr, u32 RdMask) |
This function sets Read ID Mask in ID Mask register. More... | |
u32 | XAxiPmon_GetWriteIdMask (XAxiPmon *InstancePtr) |
This function returns Write ID Mask in ID Mask register. More... | |
u32 | XAxiPmon_GetReadIdMask (XAxiPmon *InstancePtr) |
This function returns Read ID Mask in ID Mask register. More... | |
s32 | XAxiPmon_SelfTest (XAxiPmon *InstancePtr) |
Functions in xaxipmon_selftest.c. More... | |