axipmon
Xilinx Vitis Drivers API Documentation
Axipmon_v6_9

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...
 
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)   (Xil_In32((BaseAddress) + (RegOffset)))
 Read a register of the AXI Performance Monitor device. More...
 
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)   (Xil_Out32((BaseAddress) + (RegOffset), (Data)))
 Write a register of the AXI Performance Monitor device. More...
 
#define XAPM_TEST_RANGEUPPER_VALUE   16U
 Test Value for Upper Range. More...
 
#define XAPM_TEST_RANGELOWER_VALUE   8U
 Test Value for Lower Range. More...
 

Functions

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...
 
XAxiPmon_ConfigXAxiPmon_LookupConfig (u16 DeviceId)
 Functions in xaxipmon_sinit.c. More...
 
s32 XAxiPmon_SelfTest (XAxiPmon *InstancePtr)
 Functions in xaxipmon_selftest.c. More...
 

Variables

XAxiPmon_Config XAxiPmon_ConfigTable [XPAR_XAXIPMON_NUM_INSTANCES]
 This table contains configuration information for each System Monitor/ADC device in the system. More...
 
XAxiPmon_Config XAxiPmon_ConfigTable []
 This table contains configuration information for each System Monitor/ADC device in the system. 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...
 

Register offsets of AXIMONITOR in the Device Config

The following constants provide access to each of the registers of the AXI PERFORMANCE MONITOR device.

#define XAPM_GCC_HIGH_OFFSET   0x00000000U
 Global Clock Counter 32 to 63 bits. More...
 
#define XAPM_GCC_LOW_OFFSET   0x00000004U
 Global Clock Counter Lower 0-31 bits. More...
 
#define XAPM_SI_HIGH_OFFSET   0x00000020U
 Sample Interval MSB. More...
 
#define XAPM_SI_LOW_OFFSET   0x00000024U
 Sample Interval LSB. More...
 
#define XAPM_SICR_OFFSET   0x00000028U
 Sample Interval Control Register. More...
 
#define XAPM_SR_OFFSET   0x0000002CU
 Sample Register. More...
 
#define XAPM_GIE_OFFSET   0x00000030U
 Global Interrupt Enable Register. More...
 
#define XAPM_IE_OFFSET   0x00000034U
 Interrupt Enable Register. More...
 
#define XAPM_IS_OFFSET   0x00000038U
 Interrupt Status Register. More...
 
#define XAPM_MSR0_OFFSET   0x00000044U
 Metric Selector 0 Register. More...
 
#define XAPM_MSR1_OFFSET   0x00000048U
 Metric Selector 1 Register. More...
 
#define XAPM_MSR2_OFFSET   0x0000004CU
 Metric Selector 2 Register. More...
 
#define XAPM_MC0_OFFSET   0x00000100U
 Metric Counter 0 Register. More...
 
#define XAPM_INC0_OFFSET   0x00000104U
 Incrementer 0 Register. More...
 
#define XAPM_RANGE0_OFFSET   0x00000108U
 Range 0 Register. More...
 
#define XAPM_MC0LOGEN_OFFSET   0x0000010CU
 Metric Counter 0 Log Enable Register. More...
 
#define XAPM_MC1_OFFSET   0x00000110U
 Metric Counter 1 Register. More...
 
#define XAPM_INC1_OFFSET   0x00000114U
 Incrementer 1 Register. More...
 
#define XAPM_RANGE1_OFFSET   0x00000118U
 Range 1 Register. More...
 
#define XAPM_MC1LOGEN_OFFSET   0x0000011CU
 Metric Counter 1 Log Enable Register. More...
 
#define XAPM_MC2_OFFSET   0x00000120U
 Metric Counter 2 Register. More...
 
#define XAPM_INC2_OFFSET   0x00000124U
 Incrementer 2 Register. More...
 
#define XAPM_RANGE2_OFFSET   0x00000128U
 Range 2 Register. More...
 
#define XAPM_MC2LOGEN_OFFSET   0x0000012CU
 Metric Counter 2 Log Enable Register. More...
 
#define XAPM_MC3_OFFSET   0x00000130U
 Metric Counter 3 Register. More...
 
#define XAPM_INC3_OFFSET   0x00000134U
 Incrementer 3 Register. More...
 
#define XAPM_RANGE3_OFFSET   0x00000138U
 Range 3 Register. More...
 
#define XAPM_MC3LOGEN_OFFSET   0x0000013CU
 Metric Counter 3 Log Enable Register. More...
 
#define XAPM_MC4_OFFSET   0x00000140U
 Metric Counter 4 Register. More...
 
#define XAPM_INC4_OFFSET   0x00000144U
 Incrementer 4 Register. More...
 
#define XAPM_RANGE4_OFFSET   0x00000148U
 Range 4 Register. More...
 
#define XAPM_MC4LOGEN_OFFSET   0x0000014CU
 Metric Counter 4 Log Enable Register. More...
 
#define XAPM_MC5_OFFSET   0x00000150U
 Metric Counter 5 Register. More...
 
#define XAPM_INC5_OFFSET   0x00000154U
 Incrementer 5 Register. More...
 
#define XAPM_RANGE5_OFFSET   0x00000158U
 Range 5 Register. More...
 
#define XAPM_MC5LOGEN_OFFSET   0x0000015CU
 Metric Counter 5 Log Enable Register. More...
 
#define XAPM_MC6_OFFSET   0x00000160U
 Metric Counter 6 Register. More...
 
#define XAPM_INC6_OFFSET   0x00000164U
 Incrementer 6 Register. More...
 
#define XAPM_RANGE6_OFFSET   0x00000168U
 Range 6 Register. More...
 
#define XAPM_MC6LOGEN_OFFSET   0x0000016CU
 Metric Counter 6 Log Enable Register. More...
 
#define XAPM_MC7_OFFSET   0x00000170U
 Metric Counter 7 Register. More...
 
#define XAPM_INC7_OFFSET   0x00000174U
 Incrementer 7 Register. More...
 
#define XAPM_RANGE7_OFFSET   0x00000178U
 Range 7 Register. More...
 
#define XAPM_MC7LOGEN_OFFSET   0x0000017CU
 Metric Counter 7 Log Enable Register. More...
 
#define XAPM_MC8_OFFSET   0x00000180U
 Metric Counter 8 Register. More...
 
#define XAPM_INC8_OFFSET   0x00000184U
 Incrementer 8 Register. More...
 
#define XAPM_RANGE8_OFFSET   0x00000188U
 Range 8 Register. More...
 
#define XAPM_MC8LOGEN_OFFSET   0x0000018CU
 Metric Counter 8 Log Enable Register. More...
 
#define XAPM_MC9_OFFSET   0x00000190U
 Metric Counter 9 Register. More...
 
#define XAPM_INC9_OFFSET   0x00000194U
 Incrementer 9 Register. More...
 
#define XAPM_RANGE9_OFFSET   0x00000198U
 Range 9 Register. More...
 
#define XAPM_MC9LOGEN_OFFSET   0x0000019CU
 Metric Counter 9 Log Enable Register. More...
 
#define XAPM_SMC0_OFFSET   0x00000200U
 Sampled Metric Counter 0 Register. More...
 
#define XAPM_SINC0_OFFSET   0x00000204U
 Sampled Incrementer 0 Register. More...
 
#define XAPM_SMC1_OFFSET   0x00000210U
 Sampled Metric Counter 1 Register. More...
 
#define XAPM_SINC1_OFFSET   0x00000214U
 Sampled Incrementer 1 Register. More...
 
#define XAPM_SMC2_OFFSET   0x00000220U
 Sampled Metric Counter 2 Register. More...
 
#define XAPM_SINC2_OFFSET   0x00000224U
 Sampled Incrementer 2 Register. More...
 
#define XAPM_SMC3_OFFSET   0x00000230U
 Sampled Metric Counter 3 Register. More...
 
#define XAPM_SINC3_OFFSET   0x00000234U
 Sampled Incrementer 3 Register. More...
 
#define XAPM_SMC4_OFFSET   0x00000240U
 Sampled Metric Counter 4 Register. More...
 
#define XAPM_SINC4_OFFSET   0x00000244U
 Sampled Incrementer 4 Register. More...
 
#define XAPM_SMC5_OFFSET   0x00000250U
 Sampled Metric Counter 5 Register. More...
 
#define XAPM_SINC5_OFFSET   0x00000254U
 Sampled Incrementer 5 Register. More...
 
#define XAPM_SMC6_OFFSET   0x00000260U
 Sampled Metric Counter 6 Register. More...
 
#define XAPM_SINC6_OFFSET   0x00000264U
 Sampled Incrementer 6 Register. More...
 
#define XAPM_SMC7_OFFSET   0x00000270U
 Sampled Metric Counter 7 Register. More...
 
#define XAPM_SINC7_OFFSET   0x00000274U
 Sampled Incrementer 7 Register. More...
 
#define XAPM_SMC8_OFFSET   0x00000280U
 Sampled Metric Counter 8 Register. More...
 
#define XAPM_SINC8_OFFSET   0x00000284U
 Sampled Incrementer 8 Register. More...
 
#define XAPM_SMC9_OFFSET   0x00000290U
 Sampled Metric Counter 9 Register. More...
 
#define XAPM_SINC9_OFFSET   0x00000294U
 Sampled Incrementer 9 Register. More...
 
#define XAPM_MC10_OFFSET   0x000001A0U
 Metric Counter 10 Register. More...
 
#define XAPM_MC11_OFFSET   0x000001B0U
 Metric Counter 11 Register. More...
 
#define XAPM_MC12_OFFSET   0x00000500U
 Metric Counter 12 Register. More...
 
#define XAPM_MC13_OFFSET   0x00000510U
 Metric Counter 13 Register. More...
 
#define XAPM_MC14_OFFSET   0x00000520U
 Metric Counter 14 Register. More...
 
#define XAPM_MC15_OFFSET   0x00000530U
 Metric Counter 15 Register. More...
 
#define XAPM_MC16_OFFSET   0x00000540U
 Metric Counter 16 Register. More...
 
#define XAPM_MC17_OFFSET   0x00000550U
 Metric Counter 17 Register. More...
 
#define XAPM_MC18_OFFSET   0x00000560U
 Metric Counter 18 Register. More...
 
#define XAPM_MC19_OFFSET   0x00000570U
 Metric Counter 19 Register. More...
 
#define XAPM_MC20_OFFSET   0x00000580U
 Metric Counter 20 Register. More...
 
#define XAPM_MC21_OFFSET   0x00000590U
 Metric Counter 21 Register. More...
 
#define XAPM_MC22_OFFSET   0x000005A0U
 Metric Counter 22 Register. More...
 
#define XAPM_MC23_OFFSET   0x000005B0U
 Metric Counter 23 Register. More...
 
#define XAPM_MC24_OFFSET   0x00000700U
 Metric Counter 24 Register. More...
 
#define XAPM_MC25_OFFSET   0x00000710U
 Metric Counter 25 Register. More...
 
#define XAPM_MC26_OFFSET   0x00000720U
 Metric Counter 26 Register. More...
 
#define XAPM_MC27_OFFSET   0x00000730U
 Metric Counter 27 Register. More...
 
#define XAPM_MC28_OFFSET   0x00000740U
 Metric Counter 28 Register. More...
 
#define XAPM_MC29_OFFSET   0x00000750U
 Metric Counter 29 Register. More...
 
#define XAPM_MC30_OFFSET   0x00000760U
 Metric Counter 30 Register. More...
 
#define XAPM_MC31_OFFSET   0x00000770U
 Metric Counter 31 Register. More...
 
#define XAPM_MC32_OFFSET   0x00000780U
 Metric Counter 32 Register. More...
 
#define XAPM_MC33_OFFSET   0x00000790U
 Metric Counter 33 Register. More...
 
#define XAPM_MC34_OFFSET   0x000007A0U
 Metric Counter 34 Register. More...
 
#define XAPM_MC35_OFFSET   0x000007B0U
 Metric Counter 35 Register. More...
 
#define XAPM_MC36_OFFSET   0x00000900U
 Metric Counter 36 Register. More...
 
#define XAPM_MC37_OFFSET   0x00000910U
 Metric Counter 37 Register. More...
 
#define XAPM_MC38_OFFSET   0x00000920U
 Metric Counter 38 Register. More...
 
#define XAPM_MC39_OFFSET   0x00000930U
 Metric Counter 39 Register. More...
 
#define XAPM_MC40_OFFSET   0x00000940U
 Metric Counter 40 Register. More...
 
#define XAPM_MC41_OFFSET   0x00000950U
 Metric Counter 41 Register. More...
 
#define XAPM_MC42_OFFSET   0x00000960U
 Metric Counter 42 Register. More...
 
#define XAPM_MC43_OFFSET   0x00000970U
 Metric Counter 43 Register. More...
 
#define XAPM_MC44_OFFSET   0x00000980U
 Metric Counter 44 Register. More...
 
#define XAPM_MC45_OFFSET   0x00000990U
 Metric Counter 45 Register. More...
 
#define XAPM_MC46_OFFSET   0x000009A0U
 Metric Counter 46 Register. More...
 
#define XAPM_MC47_OFFSET   0x000009B0U
 Metric Counter 47 Register. More...
 
#define XAPM_SMC10_OFFSET   0x000002A0U
 Sampled Metric Counter 10 Register. More...
 
#define XAPM_SMC11_OFFSET   0x000002B0U
 Sampled Metric Counter 11 Register. More...
 
#define XAPM_SMC12_OFFSET   0x00000600U
 Sampled Metric Counter 12 Register. More...
 
#define XAPM_SMC13_OFFSET   0x00000610U
 Sampled Metric Counter 13 Register. More...
 
#define XAPM_SMC14_OFFSET   0x00000620U
 Sampled Metric Counter 14 Register. More...
 
#define XAPM_SMC15_OFFSET   0x00000630U
 Sampled Metric Counter 15 Register. More...
 
#define XAPM_SMC16_OFFSET   0x00000640U
 Sampled Metric Counter 16 Register. More...
 
#define XAPM_SMC17_OFFSET   0x00000650U
 Sampled Metric Counter 17 Register. More...
 
#define XAPM_SMC18_OFFSET   0x00000660U
 Sampled Metric Counter 18 Register. More...
 
#define XAPM_SMC19_OFFSET   0x00000670U
 Sampled Metric Counter 19 Register. More...
 
#define XAPM_SMC20_OFFSET   0x00000680U
 Sampled Metric Counter 20 Register. More...
 
#define XAPM_SMC21_OFFSET   0x00000690U
 Sampled Metric Counter 21 Register. More...
 
#define XAPM_SMC22_OFFSET   0x000006A0U
 Sampled Metric Counter 22 Register. More...
 
#define XAPM_SMC23_OFFSET   0x000006B0U
 Sampled Metric Counter 23 Register. More...
 
#define XAPM_SMC24_OFFSET   0x00000800U
 Sampled Metric Counter 24 Register. More...
 
#define XAPM_SMC25_OFFSET   0x00000810U
 Sampled Metric Counter 25 Register. More...
 
#define XAPM_SMC26_OFFSET   0x00000820U
 Sampled Metric Counter 26 Register. More...
 
#define XAPM_SMC27_OFFSET   0x00000830U
 Sampled Metric Counter 27 Register. More...
 
#define XAPM_SMC28_OFFSET   0x00000840U
 Sampled Metric Counter 28 Register. More...
 
#define XAPM_SMC29_OFFSET   0x00000850U
 Sampled Metric Counter 29 Register. More...
 
#define XAPM_SMC30_OFFSET   0x00000860U
 Sampled Metric Counter 30 Register. More...
 
#define XAPM_SMC31_OFFSET   0x00000870U
 Sampled Metric Counter 31 Register. More...
 
#define XAPM_SMC32_OFFSET   0x00000880U
 Sampled Metric Counter 32 Register. More...
 
#define XAPM_SMC33_OFFSET   0x00000890U
 Sampled Metric Counter 33 Register. More...
 
#define XAPM_SMC34_OFFSET   0x000008A0U
 Sampled Metric Counter 34 Register. More...
 
#define XAPM_SMC35_OFFSET   0x000008B0U
 Sampled Metric Counter 35 Register. More...
 
#define XAPM_SMC36_OFFSET   0x00000A00U
 Sampled Metric Counter 36 Register. More...
 
#define XAPM_SMC37_OFFSET   0x00000A10U
 Sampled Metric Counter 37 Register. More...
 
#define XAPM_SMC38_OFFSET   0x00000A20U
 Sampled Metric Counter 38 Register. More...
 
#define XAPM_SMC39_OFFSET   0x00000A30U
 Sampled Metric Counter 39 Register. More...
 
#define XAPM_SMC40_OFFSET   0x00000A40U
 Sampled Metric Counter 40 Register. More...
 
#define XAPM_SMC41_OFFSET   0x00000A50U
 Sampled Metric Counter 41 Register. More...
 
#define XAPM_SMC42_OFFSET   0x00000A60U
 Sampled Metric Counter 42 Register. More...
 
#define XAPM_SMC43_OFFSET   0x00000A70U
 Sampled Metric Counter 43 Register. More...
 
#define XAPM_SMC44_OFFSET   0x00000A80U
 Sampled Metric Counter 44 Register. More...
 
#define XAPM_SMC45_OFFSET   0x00000A90U
 Sampled Metric Counter 45 Register. More...
 
#define XAPM_SMC46_OFFSET   0x00000AA0U
 Sampled Metric Counter 46 Register. More...
 
#define XAPM_SMC47_OFFSET   0x00000AB0U
 Sampled Metric Counter 47 Register. More...
 
#define XAPM_CTL_OFFSET   0x00000300U
 Control Register. More...
 
#define XAPM_ID_OFFSET   0x00000304U
 Latency ID Register. More...
 
#define XAPM_IDMASK_OFFSET   0x00000308U
 ID Mask Register. More...
 
#define XAPM_RID_OFFSET   0x0000030CU
 Latency Write ID Register. More...
 
#define XAPM_RIDMASK_OFFSET   0x00000310U
 Read ID Mask Register. More...
 
#define XAPM_FEC_OFFSET   0x00000400U
 Flag Enable Control Register. More...
 
#define XAPM_SWD_OFFSET   0x00000404U
 Software-written Data Register. More...
 

AXI Monitor Sample Interval Control Register mask(s)

#define XAPM_SICR_MCNTR_RST_MASK   0x00000100U
 Enable the Metric Counter Reset. More...
 
#define XAPM_SICR_LOAD_MASK   0x00000002U
 Load the Sample Interval Register Value into the counter. More...
 
#define XAPM_SICR_ENABLE_MASK   0x00000001U
 Enable the downcounter. More...
 

Interrupt Status/Enable Register Bit Definitions and Masks

#define XAPM_IXR_MC9_OVERFLOW_MASK   0x00001000U
 Metric Counter 9 Overflow> More...
 
#define XAPM_IXR_MC8_OVERFLOW_MASK   0x00000800U
 Metric Counter 8 Overflow> More...
 
#define XAPM_IXR_MC7_OVERFLOW_MASK   0x00000400U
 Metric Counter 7 Overflow> More...
 
#define XAPM_IXR_MC6_OVERFLOW_MASK   0x00000200U
 Metric Counter 6 Overflow> More...
 
#define XAPM_IXR_MC5_OVERFLOW_MASK   0x00000100U
 Metric Counter 5 Overflow> More...
 
#define XAPM_IXR_MC4_OVERFLOW_MASK   0x00000080U
 Metric Counter 4 Overflow> More...
 
#define XAPM_IXR_MC3_OVERFLOW_MASK   0x00000040U
 Metric Counter 3 Overflow> More...
 
#define XAPM_IXR_MC2_OVERFLOW_MASK   0x00000020U
 Metric Counter 2 Overflow> More...
 
#define XAPM_IXR_MC1_OVERFLOW_MASK   0x00000010U
 Metric Counter 1 Overflow> More...
 
#define XAPM_IXR_MC0_OVERFLOW_MASK   0x00000008U
 Metric Counter 0 Overflow> More...
 
#define XAPM_IXR_FIFO_FULL_MASK   0x00000004U
 Event Log FIFO full> More...
 
#define XAPM_IXR_SIC_OVERFLOW_MASK   0x00000002U
 Sample Interval Counter Overflow> More...
 
#define XAPM_IXR_GCC_OVERFLOW_MASK   0x00000001U
 Global Clock Counter Overflow> More...
 
#define XAPM_IXR_ALL_MASK
 

AXI Monitor Control Register mask(s)

#define XAPM_CR_FIFO_RESET_MASK   0x02000000U
 FIFO Reset. More...
 
#define XAPM_CR_GCC_RESET_MASK   0x00020000U
 Global Clk Counter Reset. More...
 
#define XAPM_CR_GCC_ENABLE_MASK   0x00010000U
 Global Clk Counter Enable. More...
 
#define XAPM_CR_EVTLOG_EXTTRIGGER_MASK   0x00000200U
 
 Enable External trigger

to start event Log More...

 
#define XAPM_CR_EVENTLOG_ENABLE_MASK   0x00000100U
 Event Log Enable. More...
 
#define XAPM_CR_RDLATENCY_END_MASK   0x00000080U
 Write Latency End point. More...
 
#define XAPM_CR_RDLATENCY_START_MASK   0x00000040U
 Read Latency Start point. More...
 
#define XAPM_CR_WRLATENCY_END_MASK   0x00000020U
 Write Latency End point. More...
 
#define XAPM_CR_WRLATENCY_START_MASK   0x00000010U
 Write Latency Start point. More...
 
#define XAPM_CR_IDFILTER_ENABLE_MASK   0x00000008U
 ID Filter Enable. More...
 
#define XAPM_CR_MCNTR_EXTTRIGGER_MASK   0x00000004U
 Enable External trigger to start Metric Counters. More...
 
#define XAPM_CR_MCNTR_RESET_MASK   0x00000002U
 Metrics Counter Reset. More...
 
#define XAPM_CR_MCNTR_ENABLE_MASK   0x00000001U
 Metrics Counter Enable. More...
 

AXI Monitor ID Register mask(s)

#define XAPM_ID_RID_MASK   0xFFFF0000U
 Read ID. More...
 
#define XAPM_ID_WID_MASK   0x0000FFFFU
 Write ID. More...
 

AXI Monitor ID Mask Register mask(s)

#define XAPM_MASKID_RID_MASK   0xFFFF0000U
 Read ID Mask. More...
 
#define XAPM_MASKID_WID_MASK   0x0000FFFFU
 Write ID Mask. More...
 

Macro Definition Documentation

#define XAPM_CR_EVENTLOG_ENABLE_MASK   0x00000100U
#define XAPM_CR_EVTLOG_EXTTRIGGER_MASK   0x00000200U

 Enable External trigger

to start event Log

Referenced by XAxiPmon_DisableEventLogTrigger(), and XAxiPmon_EnableEventLogTrigger().

#define XAPM_CR_FIFO_RESET_MASK   0x02000000U

FIFO Reset.

Referenced by XAxiPmon_ResetFifo().

#define XAPM_CR_GCC_ENABLE_MASK   0x00010000U

Global Clk Counter Enable.

Referenced by XAxiPmon_StartCounters(), and XAxiPmon_StopCounters().

#define XAPM_CR_GCC_RESET_MASK   0x00020000U

Global Clk Counter Reset.

Referenced by XAxiPmon_ResetGlobalClkCounter().

#define XAPM_CR_IDFILTER_ENABLE_MASK   0x00000008U

ID Filter Enable.

#define XAPM_CR_MCNTR_ENABLE_MASK   0x00000001U
#define XAPM_CR_MCNTR_EXTTRIGGER_MASK   0x00000004U

Enable External trigger to start Metric Counters.

Referenced by XAxiPmon_DisableMetricCounterTrigger(), and XAxiPmon_EnableMetricCounterTrigger().

#define XAPM_CR_MCNTR_RESET_MASK   0x00000002U

Metrics Counter Reset.

Referenced by XAxiPmon_ResetMetricCounter().

#define XAPM_CR_RDLATENCY_END_MASK   0x00000080U

Write Latency End point.

Referenced by XAxiPmon_GetRdLatencyEnd(), and XAxiPmon_SetRdLatencyEnd().

#define XAPM_CR_RDLATENCY_START_MASK   0x00000040U

Read Latency Start point.

Referenced by XAxiPmon_GetRdLatencyStart(), and XAxiPmon_SetRdLatencyStart().

#define XAPM_CR_WRLATENCY_END_MASK   0x00000020U

Write Latency End point.

Referenced by XAxiPmon_GetWrLatencyEnd(), and XAxiPmon_SetWrLatencyEnd().

#define XAPM_CR_WRLATENCY_START_MASK   0x00000010U

Write Latency Start point.

Referenced by XAxiPmon_GetWrLatencyStart(), and XAxiPmon_SetWrLatencyStart().

#define XAPM_FEC_OFFSET   0x00000400U

Flag Enable Control Register.

Referenced by XAxiPmon_StartEventLog().

#define XAPM_FLAG_EVENT   0x00020000

Last Read Flag.

#define XAPM_FLAG_EVNTSTART   0x00080000

Last Read Flag.

#define XAPM_FLAG_EVNTSTOP   0x00040000

Last Read Flag.

#define XAPM_FLAG_FIRSTRD   0x00000020

First Read Flag.

#define XAPM_FLAG_FIRSTWR   0x00000002

First Write Flag.

#define XAPM_FLAG_GCCOVF   0x00100000

Global Clock Counter Overflow Flag.

#define XAPM_FLAG_LASTRD   0x00000040

Last Read Flag.

#define XAPM_FLAG_LASTWR   0x00000004

Last Write Flag.

#define XAPM_FLAG_MC0   0x00400000U

Metric Counter 0 Flag.

#define XAPM_FLAG_MC1   0x00800000U

Metric Counter 1 Flag.

#define XAPM_FLAG_MC2   0x01000000U

Metric Counter 2 Flag.

#define XAPM_FLAG_MC3   0x02000000U

Metric Counter 3 Flag.

#define XAPM_FLAG_MC4   0x04000000U

Metric Counter 4 Flag.

#define XAPM_FLAG_MC5   0x08000000U

Metric Counter 5 Flag.

#define XAPM_FLAG_MC6   0x10000000U

Metric Counter 6 Flag.

#define XAPM_FLAG_MC7   0x20000000U

Metric Counter 7 Flag.

#define XAPM_FLAG_MC8   0x40000000U

Metric Counter 8 Flag.

#define XAPM_FLAG_MC9   0x80000000U

Metric Counter 9 Flag.

#define XAPM_FLAG_RDADDR   0x00000010

Read Address Flag.

#define XAPM_FLAG_RESPONSE   0x00000008

Response Flag.

#define XAPM_FLAG_SCLAPSE   0x00200000

Sample Counter Lapse Flag.

#define XAPM_FLAG_SWDATA   0x00010000

Software-written Data Flag.

#define XAPM_FLAG_WRADDR   0x00000001

Write Address Flag.

#define XAPM_GCC_HIGH_OFFSET   0x00000000U

Global Clock Counter 32 to 63 bits.

Referenced by XAxiPmon_GetGlobalClkCounter().

#define XAPM_GCC_LOW_OFFSET   0x00000004U

Global Clock Counter Lower 0-31 bits.

Referenced by XAxiPmon_GetGlobalClkCounter().

#define XAPM_GIE_OFFSET   0x00000030U

Global Interrupt Enable Register.

#define XAPM_ID_OFFSET   0x00000304U
#define XAPM_ID_RID_MASK   0xFFFF0000U

Read ID.

Referenced by XAxiPmon_GetReadId(), and XAxiPmon_SetReadId().

#define XAPM_ID_WID_MASK   0x0000FFFFU

Write ID.

Referenced by XAxiPmon_GetWriteId(), and XAxiPmon_SetWriteId().

#define XAPM_IDMASK_OFFSET   0x00000308U
#define XAPM_IE_OFFSET   0x00000034U

Interrupt Enable Register.

#define XAPM_INC0_OFFSET   0x00000104U

Incrementer 0 Register.

Referenced by XAxiPmon_GetIncrementer().

#define XAPM_INC1_OFFSET   0x00000114U

Incrementer 1 Register.

#define XAPM_INC2_OFFSET   0x00000124U

Incrementer 2 Register.

#define XAPM_INC3_OFFSET   0x00000134U

Incrementer 3 Register.

#define XAPM_INC4_OFFSET   0x00000144U

Incrementer 4 Register.

#define XAPM_INC5_OFFSET   0x00000154U

Incrementer 5 Register.

#define XAPM_INC6_OFFSET   0x00000164U

Incrementer 6 Register.

#define XAPM_INC7_OFFSET   0x00000174U

Incrementer 7 Register.

#define XAPM_INC8_OFFSET   0x00000184U

Incrementer 8 Register.

#define XAPM_INC9_OFFSET   0x00000194U

Incrementer 9 Register.

#define XAPM_INCREMENTER_0   0U

Metric Counter 0 Register Index.

Referenced by AxiPmonInterruptExample(), AxiPmonPolledExample(), and XAxiPmon_SelfTest().

#define XAPM_INCREMENTER_1   1U

Metric Counter 0 Register Index.

#define XAPM_INCREMENTER_2   2U

Metric Counter 0 Register Index.

#define XAPM_INCREMENTER_3   3U

Metric Counter 0 Register Index.

#define XAPM_INCREMENTER_4   4U

Metric Counter 0 Register Index.

#define XAPM_INCREMENTER_5   5U

Metric Counter 0 Register Index.

#define XAPM_INCREMENTER_6   6U

Metric Counter 0 Register Index.

#define XAPM_INCREMENTER_7   7U

Metric Counter 0 Register Index.

#define XAPM_INCREMENTER_8   8U

Metric Counter 0 Register Index.

#define XAPM_INCREMENTER_9   9U

Metric Counter 0 Register Index.

#define XAPM_IS_OFFSET   0x00000038U

Interrupt Status Register.

#define XAPM_IXR_FIFO_FULL_MASK   0x00000004U

Event Log FIFO full>

#define XAPM_IXR_GCC_OVERFLOW_MASK   0x00000001U

Global Clock Counter Overflow>

#define XAPM_IXR_MC0_OVERFLOW_MASK   0x00000008U

Metric Counter 0 Overflow>

#define XAPM_IXR_MC1_OVERFLOW_MASK   0x00000010U

Metric Counter 1 Overflow>

#define XAPM_IXR_MC2_OVERFLOW_MASK   0x00000020U

Metric Counter 2 Overflow>

#define XAPM_IXR_MC3_OVERFLOW_MASK   0x00000040U

Metric Counter 3 Overflow>

#define XAPM_IXR_MC4_OVERFLOW_MASK   0x00000080U

Metric Counter 4 Overflow>

#define XAPM_IXR_MC5_OVERFLOW_MASK   0x00000100U

Metric Counter 5 Overflow>

#define XAPM_IXR_MC6_OVERFLOW_MASK   0x00000200U

Metric Counter 6 Overflow>

#define XAPM_IXR_MC7_OVERFLOW_MASK   0x00000400U

Metric Counter 7 Overflow>

#define XAPM_IXR_MC8_OVERFLOW_MASK   0x00000800U

Metric Counter 8 Overflow>

#define XAPM_IXR_MC9_OVERFLOW_MASK   0x00001000U

Metric Counter 9 Overflow>

#define XAPM_IXR_SIC_OVERFLOW_MASK   0x00000002U

Sample Interval Counter Overflow>

Referenced by AxiPmonInterruptExample().

#define XAPM_LATENCY_ADDR_ACCEPT   1U

Address Acceptance as start point for Latency calculation.

Referenced by XAxiPmon_GetRdLatencyStart(), XAxiPmon_GetWrLatencyStart(), XAxiPmon_SetRdLatencyStart(), and XAxiPmon_SetWrLatencyStart().

#define XAPM_LATENCY_ADDR_ISSUE   0U

Address Issue as start point for Latency calculation.

Referenced by XAxiPmon_GetRdLatencyStart(), and XAxiPmon_GetWrLatencyStart().

#define XAPM_LATENCY_FIRSTRD   1U

First Read as end point for Latency calculation.

Referenced by XAxiPmon_GetRdLatencyEnd(), and XAxiPmon_SetRdLatencyEnd().

#define XAPM_LATENCY_FIRSTWR   1U

First Write as end point for Latency calculation.

Referenced by XAxiPmon_GetWrLatencyEnd(), and XAxiPmon_SetWrLatencyEnd().

#define XAPM_LATENCY_LASTRD   0U

Last Read as end point for Latency calculation.

Referenced by XAxiPmon_GetRdLatencyEnd().

#define XAPM_LATENCY_LASTWR   0U

Last Write as end point for Latency calculation.

Referenced by XAxiPmon_GetWrLatencyEnd().

#define XAPM_MASKID_RID_MASK   0xFFFF0000U

Read ID Mask.

Referenced by XAxiPmon_GetReadIdMask(), and XAxiPmon_SetReadIdMask().

#define XAPM_MASKID_WID_MASK   0x0000FFFFU

Write ID Mask.

Referenced by XAxiPmon_GetWriteIdMask(), and XAxiPmon_SetWriteIdMask().

#define XAPM_MAX_AGENTS   8U

Maximum number of Agents.

Referenced by XAxiPmon_SetMetrics().

#define XAPM_MAX_COUNTERS_PROFILE   48U

Maximum number of Counters.

Referenced by XAxiPmon_GetMetricCounter(), and XAxiPmon_GetSampledMetricCounter().

#define XAPM_MC0_OFFSET   0x00000100U

Metric Counter 0 Register.

Referenced by XAxiPmon_GetMetricCounter().

#define XAPM_MC0LOGEN_OFFSET   0x0000010CU

Metric Counter 0 Log Enable Register.

Referenced by XAxiPmon_GetLogEnableRanges(), and XAxiPmon_SetLogEnableRanges().

#define XAPM_MC10_OFFSET   0x000001A0U

Metric Counter 10 Register.

Referenced by XAxiPmon_GetMetricCounter().

#define XAPM_MC11_OFFSET   0x000001B0U

Metric Counter 11 Register.

#define XAPM_MC12_OFFSET   0x00000500U

Metric Counter 12 Register.

Referenced by XAxiPmon_GetMetricCounter().

#define XAPM_MC13_OFFSET   0x00000510U

Metric Counter 13 Register.

#define XAPM_MC14_OFFSET   0x00000520U

Metric Counter 14 Register.

#define XAPM_MC15_OFFSET   0x00000530U

Metric Counter 15 Register.

#define XAPM_MC16_OFFSET   0x00000540U

Metric Counter 16 Register.

#define XAPM_MC17_OFFSET   0x00000550U

Metric Counter 17 Register.

#define XAPM_MC18_OFFSET   0x00000560U

Metric Counter 18 Register.

#define XAPM_MC19_OFFSET   0x00000570U

Metric Counter 19 Register.

#define XAPM_MC1_OFFSET   0x00000110U

Metric Counter 1 Register.

#define XAPM_MC1LOGEN_OFFSET   0x0000011CU

Metric Counter 1 Log Enable Register.

#define XAPM_MC20_OFFSET   0x00000580U

Metric Counter 20 Register.

#define XAPM_MC21_OFFSET   0x00000590U

Metric Counter 21 Register.

#define XAPM_MC22_OFFSET   0x000005A0U

Metric Counter 22 Register.

#define XAPM_MC23_OFFSET   0x000005B0U

Metric Counter 23 Register.

#define XAPM_MC24_OFFSET   0x00000700U

Metric Counter 24 Register.

Referenced by XAxiPmon_GetMetricCounter().

#define XAPM_MC25_OFFSET   0x00000710U

Metric Counter 25 Register.

#define XAPM_MC26_OFFSET   0x00000720U

Metric Counter 26 Register.

#define XAPM_MC27_OFFSET   0x00000730U

Metric Counter 27 Register.

#define XAPM_MC28_OFFSET   0x00000740U

Metric Counter 28 Register.

#define XAPM_MC29_OFFSET   0x00000750U

Metric Counter 29 Register.

#define XAPM_MC2_OFFSET   0x00000120U

Metric Counter 2 Register.

#define XAPM_MC2LOGEN_OFFSET   0x0000012CU

Metric Counter 2 Log Enable Register.

#define XAPM_MC30_OFFSET   0x00000760U

Metric Counter 30 Register.

#define XAPM_MC31_OFFSET   0x00000770U

Metric Counter 31 Register.

#define XAPM_MC32_OFFSET   0x00000780U

Metric Counter 32 Register.

#define XAPM_MC33_OFFSET   0x00000790U

Metric Counter 33 Register.

#define XAPM_MC34_OFFSET   0x000007A0U

Metric Counter 34 Register.

#define XAPM_MC35_OFFSET   0x000007B0U

Metric Counter 35 Register.

#define XAPM_MC36_OFFSET   0x00000900U

Metric Counter 36 Register.

Referenced by XAxiPmon_GetMetricCounter().

#define XAPM_MC37_OFFSET   0x00000910U

Metric Counter 37 Register.

#define XAPM_MC38_OFFSET   0x00000920U

Metric Counter 38 Register.

#define XAPM_MC39_OFFSET   0x00000930U

Metric Counter 39 Register.

#define XAPM_MC3_OFFSET   0x00000130U

Metric Counter 3 Register.

#define XAPM_MC3LOGEN_OFFSET   0x0000013CU

Metric Counter 3 Log Enable Register.

#define XAPM_MC40_OFFSET   0x00000940U

Metric Counter 40 Register.

#define XAPM_MC41_OFFSET   0x00000950U

Metric Counter 41 Register.

#define XAPM_MC42_OFFSET   0x00000960U

Metric Counter 42 Register.

#define XAPM_MC43_OFFSET   0x00000970U

Metric Counter 43 Register.

#define XAPM_MC44_OFFSET   0x00000980U

Metric Counter 44 Register.

#define XAPM_MC45_OFFSET   0x00000990U

Metric Counter 45 Register.

#define XAPM_MC46_OFFSET   0x000009A0U

Metric Counter 46 Register.

#define XAPM_MC47_OFFSET   0x000009B0U

Metric Counter 47 Register.

#define XAPM_MC4_OFFSET   0x00000140U

Metric Counter 4 Register.

#define XAPM_MC4LOGEN_OFFSET   0x0000014CU

Metric Counter 4 Log Enable Register.

#define XAPM_MC5_OFFSET   0x00000150U

Metric Counter 5 Register.

#define XAPM_MC5LOGEN_OFFSET   0x0000015CU

Metric Counter 5 Log Enable Register.

#define XAPM_MC6_OFFSET   0x00000160U

Metric Counter 6 Register.

#define XAPM_MC6LOGEN_OFFSET   0x0000016CU

Metric Counter 6 Log Enable Register.

#define XAPM_MC7_OFFSET   0x00000170U

Metric Counter 7 Register.

#define XAPM_MC7LOGEN_OFFSET   0x0000017CU

Metric Counter 7 Log Enable Register.

#define XAPM_MC8_OFFSET   0x00000180U

Metric Counter 8 Register.

#define XAPM_MC8LOGEN_OFFSET   0x0000018CU

Metric Counter 8 Log Enable Register.

#define XAPM_MC9_OFFSET   0x00000190U

Metric Counter 9 Register.

#define XAPM_MC9LOGEN_OFFSET   0x0000019CU

Metric Counter 9 Log Enable Register.

#define XAPM_METRIC_COUNTER_0   0U

Metric Counter 0 Register Index.

Referenced by ApmMetricConfig(), AxiPmonInterruptExample(), AxiPmonPolledExample(), and OcmTransaction().

#define XAPM_METRIC_COUNTER_1   1U

Metric Counter 1 Register Index.

Referenced by ApmMetricConfig(), and OcmTransaction().

#define XAPM_METRIC_COUNTER_2   2U

Metric Counter 2 Register Index.

#define XAPM_METRIC_COUNTER_3   3U

Metric Counter 3 Register Index.

#define XAPM_METRIC_COUNTER_4   4U

Metric Counter 4 Register Index.

#define XAPM_METRIC_COUNTER_5   5U

Metric Counter 5 Register Index.

#define XAPM_METRIC_COUNTER_6   6U

Metric Counter 6 Register Index.

#define XAPM_METRIC_COUNTER_7   7U

Metric Counter 7 Register Index.

#define XAPM_METRIC_COUNTER_8   8U

Metric Counter 8 Register Index.

#define XAPM_METRIC_COUNTER_9   9U

Metric Counter 9 Register Index.

#define XAPM_METRIC_SET_0   0U
#define XAPM_METRIC_SET_1   1U

Read Transaction Count.

Referenced by OcmTransaction(), and XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_10   10U

Num_WLasts.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_11   11U

Num_RLasts.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_12   12U

Minimum Write Latency.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_13   13U

Maximum Write Latency.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_14   14U

Minimum Read Latency.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_15   15U

Maximum Read Latency.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_16   16U

Transfer Cycle Count.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_17   17U

Packet Count.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_18   18U

Data Byte Count.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_19   19U

Position Byte Count.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_2   2U

Write Byte Count.

Referenced by OcmTransaction(), and XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_20   20U

Null Byte Count.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_21   21U

Slv_Idle_Cnt.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_22   22U

Mst_Idle_Cnt.

Referenced by XAxiPmon_GetMetricName(), and XAxiPmon_SetMetrics().

#define XAPM_METRIC_SET_3   3U

Read Byte Count.

Referenced by OcmTransaction(), and XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_30   30U

External event count.

Referenced by XAxiPmon_GetMetricName(), and XAxiPmon_SetMetrics().

#define XAPM_METRIC_SET_4   4U

Write Beat Count.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_5   5U

Total Read Latency.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_6   6U

Total Write Latency.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_7   7U

Slv_Wr_Idle_Cnt.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_8   8U

Mst_Rd_Idle_Cnt.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_METRIC_SET_9   9U

Num_BValids.

Referenced by XAxiPmon_GetMetricName().

#define XAPM_MSR0_OFFSET   0x00000044U

Metric Selector 0 Register.

Referenced by XAxiPmon_GetMetrics(), and XAxiPmon_SetMetrics().

#define XAPM_MSR1_OFFSET   0x00000048U

Metric Selector 1 Register.

Referenced by XAxiPmon_GetMetrics(), and XAxiPmon_SetMetrics().

#define XAPM_MSR2_OFFSET   0x0000004CU

Metric Selector 2 Register.

Referenced by XAxiPmon_GetMetrics(), and XAxiPmon_SetMetrics().

#define XAPM_RANGE0_OFFSET   0x00000108U

Range 0 Register.

Referenced by XAxiPmon_GetIncrementerRange(), and XAxiPmon_SetIncrementerRange().

#define XAPM_RANGE1_OFFSET   0x00000118U

Range 1 Register.

#define XAPM_RANGE2_OFFSET   0x00000128U

Range 2 Register.

#define XAPM_RANGE3_OFFSET   0x00000138U

Range 3 Register.

#define XAPM_RANGE4_OFFSET   0x00000148U

Range 4 Register.

#define XAPM_RANGE5_OFFSET   0x00000158U

Range 5 Register.

#define XAPM_RANGE6_OFFSET   0x00000168U

Range 6 Register.

#define XAPM_RANGE7_OFFSET   0x00000178U

Range 7 Register.

#define XAPM_RANGE8_OFFSET   0x00000188U

Range 8 Register.

#define XAPM_RANGE9_OFFSET   0x00000198U

Range 9 Register.

#define XAPM_RID_OFFSET   0x0000030CU

Latency Write ID Register.

Referenced by XAxiPmon_GetReadId(), and XAxiPmon_SetReadId().

#define XAPM_RIDMASK_OFFSET   0x00000310U

Read ID Mask Register.

Referenced by XAxiPmon_GetReadIdMask(), and XAxiPmon_SetReadIdMask().

#define XAPM_SI_HIGH_OFFSET   0x00000020U

Sample Interval MSB.

#define XAPM_SI_LOW_OFFSET   0x00000024U

Sample Interval LSB.

Referenced by XAxiPmon_GetSampleInterval(), and XAxiPmon_SetSampleInterval().

#define XAPM_SICR_ENABLE_MASK   0x00000001U

Enable the downcounter.

#define XAPM_SICR_LOAD_MASK   0x00000002U

Load the Sample Interval Register Value into the counter.

#define XAPM_SICR_MCNTR_RST_MASK   0x00000100U

Enable the Metric Counter Reset.

#define XAPM_SICR_OFFSET   0x00000028U

Sample Interval Control Register.

#define XAPM_SINC0_OFFSET   0x00000204U

Sampled Incrementer 0 Register.

Referenced by XAxiPmon_GetSampledIncrementer().

#define XAPM_SINC1_OFFSET   0x00000214U

Sampled Incrementer 1 Register.

#define XAPM_SINC2_OFFSET   0x00000224U

Sampled Incrementer 2 Register.

#define XAPM_SINC3_OFFSET   0x00000234U

Sampled Incrementer 3 Register.

#define XAPM_SINC4_OFFSET   0x00000244U

Sampled Incrementer 4 Register.

#define XAPM_SINC5_OFFSET   0x00000254U

Sampled Incrementer 5 Register.

#define XAPM_SINC6_OFFSET   0x00000264U

Sampled Incrementer 6 Register.

#define XAPM_SINC7_OFFSET   0x00000274U

Sampled Incrementer 7 Register.

#define XAPM_SINC8_OFFSET   0x00000284U

Sampled Incrementer 8 Register.

#define XAPM_SINC9_OFFSET   0x00000294U

Sampled Incrementer 9 Register.

#define XAPM_SMC0_OFFSET   0x00000200U

Sampled Metric Counter 0 Register.

Referenced by XAxiPmon_GetSampledMetricCounter().

#define XAPM_SMC10_OFFSET   0x000002A0U

Sampled Metric Counter 10 Register.

Referenced by XAxiPmon_GetSampledMetricCounter().

#define XAPM_SMC11_OFFSET   0x000002B0U

Sampled Metric Counter 11 Register.

#define XAPM_SMC12_OFFSET   0x00000600U

Sampled Metric Counter 12 Register.

Referenced by XAxiPmon_GetSampledMetricCounter().

#define XAPM_SMC13_OFFSET   0x00000610U

Sampled Metric Counter 13 Register.

#define XAPM_SMC14_OFFSET   0x00000620U

Sampled Metric Counter 14 Register.

#define XAPM_SMC15_OFFSET   0x00000630U

Sampled Metric Counter 15 Register.

#define XAPM_SMC16_OFFSET   0x00000640U

Sampled Metric Counter 16 Register.

#define XAPM_SMC17_OFFSET   0x00000650U

Sampled Metric Counter 17 Register.

#define XAPM_SMC18_OFFSET   0x00000660U

Sampled Metric Counter 18 Register.

#define XAPM_SMC19_OFFSET   0x00000670U

Sampled Metric Counter 19 Register.

#define XAPM_SMC1_OFFSET   0x00000210U

Sampled Metric Counter 1 Register.

#define XAPM_SMC20_OFFSET   0x00000680U

Sampled Metric Counter 20 Register.

#define XAPM_SMC21_OFFSET   0x00000690U

Sampled Metric Counter 21 Register.

#define XAPM_SMC22_OFFSET   0x000006A0U

Sampled Metric Counter 22 Register.

#define XAPM_SMC23_OFFSET   0x000006B0U

Sampled Metric Counter 23 Register.

#define XAPM_SMC24_OFFSET   0x00000800U

Sampled Metric Counter 24 Register.

Referenced by XAxiPmon_GetSampledMetricCounter().

#define XAPM_SMC25_OFFSET   0x00000810U

Sampled Metric Counter 25 Register.

#define XAPM_SMC26_OFFSET   0x00000820U

Sampled Metric Counter 26 Register.

#define XAPM_SMC27_OFFSET   0x00000830U

Sampled Metric Counter 27 Register.

#define XAPM_SMC28_OFFSET   0x00000840U

Sampled Metric Counter 28 Register.

#define XAPM_SMC29_OFFSET   0x00000850U

Sampled Metric Counter 29 Register.

#define XAPM_SMC2_OFFSET   0x00000220U

Sampled Metric Counter 2 Register.

#define XAPM_SMC30_OFFSET   0x00000860U

Sampled Metric Counter 30 Register.

#define XAPM_SMC31_OFFSET   0x00000870U

Sampled Metric Counter 31 Register.

#define XAPM_SMC32_OFFSET   0x00000880U

Sampled Metric Counter 32 Register.

#define XAPM_SMC33_OFFSET   0x00000890U

Sampled Metric Counter 33 Register.

#define XAPM_SMC34_OFFSET   0x000008A0U

Sampled Metric Counter 34 Register.

#define XAPM_SMC35_OFFSET   0x000008B0U

Sampled Metric Counter 35 Register.

#define XAPM_SMC36_OFFSET   0x00000A00U

Sampled Metric Counter 36 Register.

Referenced by XAxiPmon_GetSampledMetricCounter().

#define XAPM_SMC37_OFFSET   0x00000A10U

Sampled Metric Counter 37 Register.

#define XAPM_SMC38_OFFSET   0x00000A20U

Sampled Metric Counter 38 Register.

#define XAPM_SMC39_OFFSET   0x00000A30U

Sampled Metric Counter 39 Register.

#define XAPM_SMC3_OFFSET   0x00000230U

Sampled Metric Counter 3 Register.

#define XAPM_SMC40_OFFSET   0x00000A40U

Sampled Metric Counter 40 Register.

#define XAPM_SMC41_OFFSET   0x00000A50U

Sampled Metric Counter 41 Register.

#define XAPM_SMC42_OFFSET   0x00000A60U

Sampled Metric Counter 42 Register.

#define XAPM_SMC43_OFFSET   0x00000A70U

Sampled Metric Counter 43 Register.

#define XAPM_SMC44_OFFSET   0x00000A80U

Sampled Metric Counter 44 Register.

#define XAPM_SMC45_OFFSET   0x00000A90U

Sampled Metric Counter 45 Register.

#define XAPM_SMC46_OFFSET   0x00000AA0U

Sampled Metric Counter 46 Register.

#define XAPM_SMC47_OFFSET   0x00000AB0U

Sampled Metric Counter 47 Register.

#define XAPM_SMC4_OFFSET   0x00000240U

Sampled Metric Counter 4 Register.

#define XAPM_SMC5_OFFSET   0x00000250U

Sampled Metric Counter 5 Register.

#define XAPM_SMC6_OFFSET   0x00000260U

Sampled Metric Counter 6 Register.

#define XAPM_SMC7_OFFSET   0x00000270U

Sampled Metric Counter 7 Register.

#define XAPM_SMC8_OFFSET   0x00000280U

Sampled Metric Counter 8 Register.

#define XAPM_SMC9_OFFSET   0x00000290U

Sampled Metric Counter 9 Register.

#define XAPM_SR_OFFSET   0x0000002CU

Sample Register.

#define XAPM_SWD_OFFSET   0x00000404U

Software-written Data Register.

Referenced by XAxiPmon_GetSwDataReg(), and XAxiPmon_SetSwDataReg().

#define XAPM_TEST_RANGELOWER_VALUE   8U

Test Value for Lower Range.

Referenced by XAxiPmon_SelfTest().

#define XAPM_TEST_RANGEUPPER_VALUE   16U

Test Value for Upper Range.

Referenced by XAxiPmon_SelfTest().

#define XAxiPmon_DisableFlag (   InstancePtr,
  Flag 
)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_FEC_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
XAPM_FEC_OFFSET) & ~(Flag));
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_FEC_OFFSET
Flag Enable Control Register.
Definition: xaxipmon_hw.h:475

This function disables the specified flag in Flag Control Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Flagis one of the XAPM_FLAG_* masks defined in xaxipmon.h*
Returns
None
Note
C-Style signature: void XAxiPmon_DisableFlag(XAxiPmon *InstancePtr)
#define XAxiPmon_DisableGlobalClkCounter (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_CTL_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_CTL_OFFSET
Control Register.
Definition: xaxipmon_hw.h:465
#define XAPM_CR_GCC_ENABLE_MASK
Global Clk Counter Enable.
Definition: xaxipmon_hw.h:571

This function disbles the Global Clock Counter.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
C-Style signature: void XAxiPmon_DisableGlobalClkCounter(XAxiPmon *InstancePtr)

Referenced by AxiPmonPolledExample().

#define XAxiPmon_DisableIDFilter (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_CTL_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_CTL_OFFSET
Control Register.
Definition: xaxipmon_hw.h:465
#define XAPM_CR_IDFILTER_ENABLE_MASK
ID Filter Enable.
Definition: xaxipmon_hw.h:592

This function disbles the ID Filter masking.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
C-Style signature: void XAxiPmon_DisableIDFilter(XAxiPmon *InstancePtr)
#define XAxiPmon_DisableMetricCounterReset (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_SICR_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_SICR_OFFSET
Sample Interval Control Register.
Definition: xaxipmon_hw.h:90
#define XAPM_SICR_MCNTR_RST_MASK
Enable the Metric Counter Reset.
Definition: xaxipmon_hw.h:490

This disables the down count of the sample interval counter.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
C-Style signature: void XAxiPmon_DisableMetricCounterReset(XAxiPmon *InstancePtr)
#define XAxiPmon_DisableSampleIntervalCounter (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_SICR_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_SICR_OFFSET
Sample Interval Control Register.
Definition: xaxipmon_hw.h:90
#define XAPM_SICR_ENABLE_MASK
Enable the downcounter.
Definition: xaxipmon_hw.h:498

This disables the down count of the sample interval counter.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
C-Style signature: void XAxiPmon_DisableSampleIntervalCounter(XAxiPmon *InstancePtr)

Referenced by AxiPmonInterruptExample().

#define XAxiPmon_EnableFlag (   InstancePtr,
  Flag 
)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_FEC_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
XAPM_FEC_OFFSET) | (Flag));
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_FEC_OFFSET
Flag Enable Control Register.
Definition: xaxipmon_hw.h:475

This function enables the specified flag in Flag Control Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Flagis one of the XAPM_FLAG_* masks defined in xaxipmon.h
Returns
None
Note
C-Style signature: void XAxiPmon_EnableFlag(XAxiPmon *InstancePtr)
#define XAxiPmon_EnableGlobalClkCounter (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_CTL_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_CTL_OFFSET
Control Register.
Definition: xaxipmon_hw.h:465
#define XAPM_CR_GCC_ENABLE_MASK
Global Clk Counter Enable.
Definition: xaxipmon_hw.h:571

This function enables the Global Clock Counter.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
C-Style signature: void XAxiPmon_EnableGlobalClkCounter(XAxiPmon *InstancePtr)

Referenced by AxiPmonPolledExample().

#define XAxiPmon_EnableIDFilter (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_CTL_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_CTL_OFFSET
Control Register.
Definition: xaxipmon_hw.h:465
#define XAPM_CR_IDFILTER_ENABLE_MASK
ID Filter Enable.
Definition: xaxipmon_hw.h:592

This function enables the ID Filter Masking.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
C-Style signature: void XAxiPmon_EnableIDFilter(XAxiPmon *InstancePtr)
#define XAxiPmon_EnableMetricCounterReset (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_SICR_OFFSET,\
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_SICR_OFFSET
Sample Interval Control Register.
Definition: xaxipmon_hw.h:90
#define XAPM_SICR_MCNTR_RST_MASK
Enable the Metric Counter Reset.
Definition: xaxipmon_hw.h:490

This enables Reset of Metric Counters when Sample Interval Counter lapses.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
C-Style signature: void XAxiPmon_EnableMetricCounterReset(XAxiPmon *InstancePtr)
#define XAxiPmon_EnableSampleIntervalCounter (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_SICR_OFFSET,\
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_SICR_OFFSET
Sample Interval Control Register.
Definition: xaxipmon_hw.h:90
#define XAPM_SICR_ENABLE_MASK
Enable the downcounter.
Definition: xaxipmon_hw.h:498

This enables the down count of the sample interval counter.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
C-Style signature: void XAxiPmon_EnableSampleIntervalCounter(XAxiPmon *InstancePtr)

Referenced by AxiPmonInterruptExample(), and XAxiPmon_StartCounters().

#define XAxiPmon_IntrClear (   InstancePtr,
  Mask 
)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_IS_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
XAPM_IS_OFFSET) | (Mask));
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_IS_OFFSET
Interrupt Status Register.
Definition: xaxipmon_hw.h:98

This routine clears the specified interrupt(s).

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Maskis the mask to clear. Bit positions of 1 will be cleared. This mask is formed by OR'ing XAPM_IXR_* bits defined in xaxipmon_hw.h.
Returns
None.
Note
C-Style signature: void XAxiPmon_IntrClear(XAxiPmon *InstancePtr, u32 Mask)
#define XAxiPmon_IntrDisable (   InstancePtr,
  Mask 
)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_IE_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
XAPM_IE_OFFSET) | (Mask));
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_IE_OFFSET
Interrupt Enable Register.
Definition: xaxipmon_hw.h:97

This routine disable interrupt(s).

Use the XAPM_IXR_* constants defined in xaxipmon_hw.h to create the bit-mask to disable interrupts.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Maskis the mask to disable. Bit positions of 1 will be disabled. Bit positions of 0 will keep the previous setting. This mask is formed by OR'ing XAPM_IXR_* bits defined in xaxipmon_hw.h.
Returns
None.
Note
C-Style signature: void XAxiPmon_IntrEnable(XAxiPmon *InstancePtr, u32 Mask)

Referenced by AxiPmonInterruptExample().

#define XAxiPmon_IntrEnable (   InstancePtr,
  Mask 
)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_IE_OFFSET, \
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
XAPM_IE_OFFSET) | (Mask));
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_IE_OFFSET
Interrupt Enable Register.
Definition: xaxipmon_hw.h:97

This routine enables interrupt(s).

Use the XAPM_IXR_* constants defined in xaxipmon_hw.h to create the bit-mask to enable interrupts.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Maskis the mask to enable. Bit positions of 1 will be enabled. Bit positions of 0 will keep the previous setting. This mask is formed by OR'ing XAPM_IXR__* bits defined in xaxipmon_hw.h.
Returns
None.
Note
C-Style signature: void XAxiPmon_IntrEnable(XAxiPmon *InstancePtr, u32 Mask)

Referenced by AxiPmonInterruptExample().

#define XAxiPmon_IntrGetStatus (   InstancePtr)
Value:
XAxiPmon_ReadReg((InstancePtr)->Config.BaseAddress, \
#define XAxiPmon_ReadReg(BaseAddress, RegOffset)
Read a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:648
#define XAPM_IS_OFFSET
Interrupt Status Register.
Definition: xaxipmon_hw.h:98

This routine returns the Interrupt Status Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
Interrupt Status Register contents
Note
C-Style signature: void XAxiPmon_IntrClear(XAxiPmon *InstancePtr)
#define XAxiPmon_IntrGlobalDisable (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, \
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_GIE_OFFSET
Global Interrupt Enable Register.
Definition: xaxipmon_hw.h:94

This routine disables the Global Interrupt.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None.
Note
C-Style signature: void XAxiPmon_IntrGlobalDisable(XAxiPmon *InstancePtr)

Referenced by AxiPmonInterruptExample().

#define XAxiPmon_IntrGlobalEnable (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, \
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_GIE_OFFSET
Global Interrupt Enable Register.
Definition: xaxipmon_hw.h:94

This routine enables the Global Interrupt.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None.
Note
C-Style signature: void XAxiPmon_IntrGlobalEnable(XAxiPmon *InstancePtr)

Referenced by AxiPmonInterruptExample().

#define XAxiPmon_LoadSampleIntervalCounter (   InstancePtr)
Value:
XAxiPmon_WriteReg((InstancePtr)->Config.BaseAddress, XAPM_SICR_OFFSET, \
#define XAxiPmon_WriteReg(BaseAddress, RegOffset, Data)
Write a register of the AXI Performance Monitor device.
Definition: xaxipmon_hw.h:668
#define XAPM_SICR_LOAD_MASK
Load the Sample Interval Register Value into the counter.
Definition: xaxipmon_hw.h:493
#define XAPM_SICR_OFFSET
Sample Interval Control Register.
Definition: xaxipmon_hw.h:90

This function loads the sample interval register value into the sample interval counter.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
C-Style signature: void XAxiPmon_LoadSampleIntervalCounter(XAxiPmon *InstancePtr)

Referenced by AxiPmonInterruptExample(), and XAxiPmon_StartCounters().

#define XAxiPmon_ReadReg (   BaseAddress,
  RegOffset 
)    (Xil_In32((BaseAddress) + (RegOffset)))

Read a register of the AXI Performance Monitor device.

This macro provides register access to all registers using the register offsets defined above.

Parameters
BaseAddresscontains the base address of the device.
RegOffsetis the offset of the register to read.
Returns
The contents of the register.
Note
C-style Signature: u32 XAxiPmon_ReadReg(u32 BaseAddress, u32 RegOffset);

Referenced by XAxiPmon_DisableEventLogTrigger(), XAxiPmon_DisableMetricCounterTrigger(), XAxiPmon_DisableMetricsCounter(), XAxiPmon_EnableEventLog(), XAxiPmon_EnableEventLogTrigger(), XAxiPmon_EnableMetricCounterTrigger(), XAxiPmon_EnableMetricsCounter(), XAxiPmon_GetGlobalClkCounter(), XAxiPmon_GetIncrementer(), XAxiPmon_GetIncrementerRange(), XAxiPmon_GetLogEnableRanges(), XAxiPmon_GetMetricCounter(), XAxiPmon_GetMetrics(), XAxiPmon_GetRdLatencyEnd(), XAxiPmon_GetRdLatencyStart(), XAxiPmon_GetReadId(), XAxiPmon_GetReadIdMask(), XAxiPmon_GetSampledIncrementer(), XAxiPmon_GetSampledMetricCounter(), XAxiPmon_GetSampleInterval(), XAxiPmon_GetSwDataReg(), XAxiPmon_GetWriteId(), XAxiPmon_GetWriteIdMask(), XAxiPmon_GetWrLatencyEnd(), XAxiPmon_GetWrLatencyStart(), XAxiPmon_ResetFifo(), XAxiPmon_ResetGlobalClkCounter(), XAxiPmon_ResetMetricCounter(), XAxiPmon_SetMetrics(), XAxiPmon_SetRdLatencyEnd(), XAxiPmon_SetRdLatencyStart(), XAxiPmon_SetReadId(), XAxiPmon_SetReadIdMask(), XAxiPmon_SetWriteId(), XAxiPmon_SetWriteIdMask(), XAxiPmon_SetWrLatencyEnd(), XAxiPmon_SetWrLatencyStart(), XAxiPmon_StartCounters(), XAxiPmon_StartEventLog(), XAxiPmon_StopCounters(), and XAxiPmon_StopEventLog().

#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.

i.e. the number of clocks in between previous read to the current read of sample register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
Interval. i.e. the number of clocks in between previous read to the current read of sample register.
Note
C-Style signature: u32 XAxiPmon_SampleMetrics(XAxiPmon *InstancePtr)
#define XAxiPmon_WriteReg (   BaseAddress,
  RegOffset,
  Data 
)    (Xil_Out32((BaseAddress) + (RegOffset), (Data)))

Function Documentation

s32 XAxiPmon_CfgInitialize ( XAxiPmon InstancePtr,
XAxiPmon_Config ConfigPtr,
UINTPTR  EffectiveAddr 
)

This function initializes a specific XAxiPmon device/instance.

Functions in xaxipmon.c.

This function must be called prior to using the AXI Performance Monitor device.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
ConfigPtrpoints to the XAxiPmon device configuration structure.
EffectiveAddris the device base address in the virtual memory address space. If the address translation is not used then the physical address is passed. Unexpected errors may occur if the address mapping is changed after this function is invoked.
Returns
  • XST_SUCCESS if successful.
Note
The user needs to first call the XAxiPmon_LookupConfig() API which returns the Configuration structure pointer which is passed as a parameter to the XAxiPmon_CfgInitialize() API.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::DeviceId, XAxiPmon_Config::FifoDepth, XAxiPmon_Config::FifoWidth, XAxiPmon_Config::GlobalClkCounterWidth, XAxiPmon_Config::HaveSampledCounters, XAxiPmon_Config::Is32BitFiltering, XAxiPmon_Config::IsEventCount, XAxiPmon_Config::IsEventLog, XAxiPmon::IsReady, XAxiPmon_Config::MetricSampleCounterWidth, XAxiPmon::Mode, XAxiPmon_Config::ModeAdvanced, XAxiPmon_Config::ModeProfile, XAxiPmon_Config::ModeTrace, XAxiPmon_Config::NumberofCounters, XAxiPmon_Config::NumberofSlots, XAxiPmon_Config::ScaleFactor, XAxiPmon_Config::TidWidth, XAPM_MODE_ADVANCED, XAPM_MODE_PROFILE, XAPM_MODE_TRACE, XAxiPmon_ResetFifo(), XAxiPmon_ResetGlobalClkCounter(), and XAxiPmon_ResetMetricCounter().

Referenced by AxiPmonInterruptExample(), AxiPmonPolledExample(), and main().

void XAxiPmon_DisableEventLogTrigger ( XAxiPmon InstancePtr)

This function disables the External trigger pulse used to start Event Log on external trigger pulse for a Slot.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_EVTLOG_EXTTRIGGER_MASK, XAPM_CTL_OFFSET, XAPM_MODE_PROFILE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_DisableMetricCounterTrigger ( XAxiPmon InstancePtr)

This function disables the External trigger pulse used to start Metric Counters on external trigger pulse for a Slot.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_MCNTR_EXTTRIGGER_MASK, XAPM_CTL_OFFSET, XAPM_MODE_TRACE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_DisableMetricsCounter ( XAxiPmon InstancePtr)
void XAxiPmon_EnableEventLog ( XAxiPmon InstancePtr)

This function enables Event Logging.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::IsEventLog, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_EVENTLOG_ENABLE_MASK, XAPM_CTL_OFFSET, XAPM_MODE_ADVANCED, XAPM_MODE_TRACE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

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.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_EVTLOG_EXTTRIGGER_MASK, XAPM_CTL_OFFSET, XAPM_MODE_PROFILE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

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.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_MCNTR_EXTTRIGGER_MASK, XAPM_CTL_OFFSET, XAPM_MODE_TRACE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_EnableMetricsCounter ( XAxiPmon InstancePtr)
void XAxiPmon_GetGlobalClkCounter ( XAxiPmon InstancePtr,
u32 *  CntHighValue,
u32 *  CntLowValue 
)

This function returns the contents of the Global Clock Counter Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
CntHighValueis the user space pointer with which upper 32 bits of Global Clock Counter has to be filled
CntLowValueis the user space pointer with which lower 32 bits of Global Clock Counter has to be filled
Returns
None.
Note
None.

References XAxiPmon::Config, XAxiPmon_Config::GlobalClkCounterWidth, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_GCC_HIGH_OFFSET, XAPM_GCC_LOW_OFFSET, XAPM_MODE_ADVANCED, and XAxiPmon_ReadReg.

Referenced by AxiPmonPolledExample().

u32 XAxiPmon_GetIncrementer ( XAxiPmon InstancePtr,
u32  IncrementerNum 
)

This function returns the contents of the Incrementer Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
IncrementerNumis the number of the Incrementer register to read.Use the XAPM_INCREMENTER_* defines for the Incrementer number.The valid values are 0 (XAPM_INCREMENTER_0) to 9 (XAPM_INCREMENTER_9).
IncrementerNumis the number of the specified Incrementer register
Returns
RegValue is content of specified Metric Incrementer register.
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::IsEventCount, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_INC0_OFFSET, XAPM_MAX_COUNTERS, XAPM_MODE_ADVANCED, and XAxiPmon_ReadReg.

void XAxiPmon_GetIncrementerRange ( XAxiPmon InstancePtr,
u8  IncrementerNum,
u16 *  RangeUpper,
u16 *  RangeLower 
)

This function returns the Ranges of Incrementers Registers.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
IncrementerNumspecifies the Incrementer for which Ranges need to be returned.
RangeUpperspecifies the user reference variable which returns the Upper Range Value of the specified Incrementer.
RangeLowerspecifies the user reference variable which returns the Lower Range Value of the specified Incrementer.
Returns
None.
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MAX_COUNTERS, XAPM_MODE_ADVANCED, XAPM_RANGE0_OFFSET, and XAxiPmon_ReadReg.

Referenced by XAxiPmon_SelfTest().

void XAxiPmon_GetLogEnableRanges ( XAxiPmon InstancePtr,
u32  CounterNum,
u16 *  RangeUpper,
u16 *  RangeLower 
)

This function returns the Ranges of specified Metric Counter Log Enable Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
CounterNumis the Metric Counter number for which Ranges are to be returned.Use the XAPM_METRIC_COUNTER* defines for the counter number in xaxipmon.h. The valid values are 0 (XAPM_METRIC_COUNTER_0) to 9 (XAPM_METRIC_COUNTER_9).
RangeUpperspecifies the user reference variable which returns the Upper Range Value of the specified Metric Counter Log Enable Register.
RangeLowerspecifies the user reference variable which returns the Lower Range Value of the specified Metric Counter Log Enable Register.
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::IsEventCount, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MAX_COUNTERS, XAPM_MC0LOGEN_OFFSET, XAPM_MODE_ADVANCED, and XAxiPmon_ReadReg.

u32 XAxiPmon_GetMetricCounter ( XAxiPmon InstancePtr,
u32  CounterNum 
)

This function returns the contents of the Metric Counter Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
CounterNumis the number of the Metric Counter to be read. Use the XAPM_METRIC_COUNTER* defines for the counter number in xaxipmon.h. The valid values are 0 (XAPM_METRIC_COUNTER_0) to 47(XAPM_METRIC_COUNTER_47).
Returns
RegValue is the content of specified Metric Counter.
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MAX_COUNTERS_PROFILE, XAPM_MC0_OFFSET, XAPM_MC10_OFFSET, XAPM_MC12_OFFSET, XAPM_MC24_OFFSET, XAPM_MC36_OFFSET, XAPM_MODE_TRACE, and XAxiPmon_ReadReg.

Referenced by AxiPmonPolledExample(), and ReadMetrics().

const char * XAxiPmon_GetMetricName ( u8  Metrics)
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.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
CounterNumis the Counter Number. The valid values are 0 to 9.
Metricsis a reference parameter from application where metrics of specified counter is filled.
Slotis a reference parameter in which slot Id of specified counter is filled
Returns
XST_SUCCESS if Success XST_FAILURE if Failure
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MAX_COUNTERS, XAPM_MODE_ADVANCED, XAPM_MSR0_OFFSET, XAPM_MSR1_OFFSET, XAPM_MSR2_OFFSET, and XAxiPmon_ReadReg.

u8 XAxiPmon_GetRdLatencyEnd ( XAxiPmon InstancePtr)

This function returns Read Latency End point.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
Returns 0 - XAPM_LATENCY_LASTRD or 1 - XAPM_LATENCY_FIRSTRD.
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_CR_RDLATENCY_END_MASK, XAPM_CTL_OFFSET, XAPM_LATENCY_FIRSTRD, XAPM_LATENCY_LASTRD, and XAxiPmon_ReadReg.

u8 XAxiPmon_GetRdLatencyStart ( XAxiPmon InstancePtr)

This function returns read Latency Start point.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
Returns 0 - XAPM_LATENCY_ADDR_ISSUE or 1 - XAPM_LATENCY_ADDR_ACCEPT
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_CR_RDLATENCY_START_MASK, XAPM_CTL_OFFSET, XAPM_LATENCY_ADDR_ACCEPT, XAPM_LATENCY_ADDR_ISSUE, and XAxiPmon_ReadReg.

u32 XAxiPmon_GetReadId ( XAxiPmon InstancePtr)

This function returns Read ID in ID register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
ReadId is the required Read ID in ID register.
Note
None. If ID filtering for write is of 32 bits(for Zynq MP APM) width then 32 bit XAPM_RID_OFFSET contents are returned or if it is 16 bit width then higher 16 bits of XAPM_ID_OFFSET register are returned.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::Is32BitFiltering, XAxiPmon::IsReady, XAPM_ID_OFFSET, XAPM_ID_RID_MASK, XAPM_RID_OFFSET, and XAxiPmon_ReadReg.

u32 XAxiPmon_GetReadIdMask ( XAxiPmon InstancePtr)

This function returns Read ID Mask in ID Mask register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
RdMask is the required Read ID Mask in ID Mask register.
Note
If ID masking for read is of 32 bits(for Zynq MP APM) width then 32 bit XAPM_RIDMASK_OFFSET contents are returned or if it is 16 bit width then higher 16 bits of XAPM_IDMASK_OFFSET register are returned.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::Is32BitFiltering, XAxiPmon::IsReady, XAPM_IDMASK_OFFSET, XAPM_MASKID_RID_MASK, XAPM_RIDMASK_OFFSET, and XAxiPmon_ReadReg.

u32 XAxiPmon_GetSampledIncrementer ( XAxiPmon InstancePtr,
u32  IncrementerNum 
)

This function returns the contents of the Sampled Incrementer Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
IncrementerNumis the number of the Sampled Incrementer register to read.Use the XAPM_INCREMENTER_* defines for the Incrementer number.The valid values are 0 (XAPM_INCREMENTER_0) to 9 (XAPM_INCREMENTER_9).
IncrementerNumis the number of the specified Sampled Incrementer register
Returns
RegValue is content of specified Sampled Incrementer register.
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::HaveSampledCounters, XAxiPmon_Config::IsEventCount, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MAX_COUNTERS, XAPM_MODE_ADVANCED, XAPM_SINC0_OFFSET, and XAxiPmon_ReadReg.

u32 XAxiPmon_GetSampledMetricCounter ( XAxiPmon InstancePtr,
u32  CounterNum 
)

This function returns the contents of the Sampled Metric Counter Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
CounterNumis the number of the Sampled Metric Counter to read. Use the XAPM_METRIC_COUNTER* defines for the counter number in xaxipmon.h. The valid values are 0 (XAPM_METRIC_COUNTER_0) to 47(XAPM_METRIC_COUNTER_47).
Returns
RegValue is the content of specified Sampled Metric Counter.
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::HaveSampledCounters, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MAX_COUNTERS_PROFILE, XAPM_MODE_ADVANCED, XAPM_MODE_PROFILE, XAPM_MODE_TRACE, XAPM_SMC0_OFFSET, XAPM_SMC10_OFFSET, XAPM_SMC12_OFFSET, XAPM_SMC24_OFFSET, XAPM_SMC36_OFFSET, and XAxiPmon_ReadReg.

Referenced by AxiPmonInterruptExample().

void XAxiPmon_GetSampleInterval ( XAxiPmon InstancePtr,
u32 *  SampleInterval 
)

This function returns the contents of Sample Interval Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
SampleIntervalis a pointer where the Sample Interval Counter value is returned.
Returns
None.
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MODE_TRACE, XAPM_SI_LOW_OFFSET, and XAxiPmon_ReadReg.

u32 XAxiPmon_GetSwDataReg ( XAxiPmon InstancePtr)

This function returns contents of Software-written Data Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
SwData.
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_SWD_OFFSET, and XAxiPmon_ReadReg.

u32 XAxiPmon_GetWriteId ( XAxiPmon InstancePtr)

This function returns Write ID in ID register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
WriteId is the required Write ID in ID register.
Note
None. If ID filtering for write is of 32 bits(for Zynq MP APM) width then 32 bit XAPM_ID_OFFSET contents are returned or if it is 16 bit width then lower 16 bits of XAPM_ID_OFFSET register are returned.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::Is32BitFiltering, XAxiPmon::IsReady, XAPM_ID_OFFSET, XAPM_ID_WID_MASK, and XAxiPmon_ReadReg.

u32 XAxiPmon_GetWriteIdMask ( XAxiPmon InstancePtr)

This function returns Write ID Mask in ID Mask register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
WrMask is the required Write ID Mask in ID Mask register.
Note
If ID masking for write is of 32 bits(for Zynq MP APM) width then 32 bit XAPM_IDMASK_OFFSET contents are returned or if it is 16 bit width then lower 16 bits of XAPM_IDMASK_OFFSET register are returned.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::Is32BitFiltering, XAxiPmon::IsReady, XAPM_IDMASK_OFFSET, XAPM_MASKID_WID_MASK, and XAxiPmon_ReadReg.

u8 XAxiPmon_GetWrLatencyEnd ( XAxiPmon InstancePtr)

This function returns Write Latency End point.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
Returns 0 - XAPM_LATENCY_LASTWR or 1 - XAPM_LATENCY_FIRSTWR.
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_CR_WRLATENCY_END_MASK, XAPM_CTL_OFFSET, XAPM_LATENCY_FIRSTWR, XAPM_LATENCY_LASTWR, and XAxiPmon_ReadReg.

u8 XAxiPmon_GetWrLatencyStart ( XAxiPmon InstancePtr)

This function returns Write Latency Start point.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
Returns 0 - XAPM_LATENCY_ADDR_ISSUE or 1 - XAPM_LATENCY_ADDR_ACCEPT
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_CR_WRLATENCY_START_MASK, XAPM_CTL_OFFSET, XAPM_LATENCY_ADDR_ACCEPT, XAPM_LATENCY_ADDR_ISSUE, and XAxiPmon_ReadReg.

XAxiPmon_Config * XAxiPmon_LookupConfig ( u16  DeviceId)

Functions in xaxipmon_sinit.c.

This function looks up the device configuration based on the unique device ID.

The table XAxiPmon_ConfigTable contains the configuration info for each device in the system.

Parameters
DeviceIdcontains the ID of the device for which the device configuration pointer is to be returned.
Returns
  • A pointer to the configuration found.
  • NULL if the specified device ID was not found.
Note
None.

Referenced by AxiPmonInterruptExample(), AxiPmonPolledExample(), and main().

s32 XAxiPmon_ResetFifo ( XAxiPmon InstancePtr)

This function resets Streaming FIFO of AXI Performance Monitor.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
XST_SUCCESS
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::IsEventLog, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_FIFO_RESET_MASK, XAPM_CTL_OFFSET, XAPM_MODE_ADVANCED, XAPM_MODE_PROFILE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

Referenced by XAxiPmon_CfgInitialize().

void XAxiPmon_ResetGlobalClkCounter ( XAxiPmon InstancePtr)

This function resets Global Clock Counter of AXI Performance Monitor.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
None.
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_GCC_RESET_MASK, XAPM_CTL_OFFSET, XAPM_MODE_ADVANCED, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

Referenced by ApmMetricConfig(), XAxiPmon_CfgInitialize(), and XAxiPmon_SelfTest().

s32 XAxiPmon_ResetMetricCounter ( XAxiPmon InstancePtr)

This function resets all Metric Counters and Sampled Metric Counters of AXI Performance Monitor.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
XST_SUCCESS
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_MCNTR_RESET_MASK, XAPM_CTL_OFFSET, XAPM_MODE_TRACE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

Referenced by ApmMetricConfig(), XAxiPmon_CfgInitialize(), and XAxiPmon_SelfTest().

s32 XAxiPmon_SelfTest ( XAxiPmon InstancePtr)

Functions in xaxipmon_selftest.c.

Run a self-test on the driver/device.

The test

  • Resets the device,
  • Writes a value into the Range Registers of Incrementer 0 and reads it back for comparison.
  • Resets the device again.
Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
  • XST_SUCCESS if the value read from the Range Register of Incrementer 0 is the same as the value written.
  • XST_FAILURE Otherwise
Note
This is a destructive test in that resets of the device are performed. Refer to the device specification for the device status after the reset operation.

References XAxiPmon::IsReady, XAPM_INCREMENTER_0, XAPM_TEST_RANGELOWER_VALUE, XAPM_TEST_RANGEUPPER_VALUE, XAxiPmon_GetIncrementerRange(), XAxiPmon_ResetGlobalClkCounter(), XAxiPmon_ResetMetricCounter(), and XAxiPmon_SetIncrementerRange().

Referenced by AxiPmonInterruptExample(), and AxiPmonPolledExample().

void XAxiPmon_SetIncrementerRange ( XAxiPmon InstancePtr,
u8  IncrementerNum,
u16  RangeUpper,
u16  RangeLower 
)

This function sets Ranges for Incrementers depending on parameters passed.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
IncrementerNumspecifies the Incrementer for which Ranges need to be set
RangeUpperspecifies the Upper limit in 32 bit Register
RangeLowerspecifies the Lower limit in 32 bit Register
Returns
None.
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MAX_COUNTERS, XAPM_MODE_ADVANCED, XAPM_RANGE0_OFFSET, and XAxiPmon_WriteReg.

Referenced by AxiPmonInterruptExample(), AxiPmonPolledExample(), and XAxiPmon_SelfTest().

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.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
CounterNumis the Metric Counter number for which Ranges are to be assigned.Use the XAPM_METRIC_COUNTER* defines for the counter number in xaxipmon.h. The valid values are 0 (XAPM_METRIC_COUNTER_0) to 9 (XAPM_METRIC_COUNTER_9).
RangeUpperspecifies the Upper limit in 32 bit Register
RangeLowerspecifies the Lower limit in 32 bit Register
Returns
None
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::IsEventCount, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MAX_COUNTERS, XAPM_MC0LOGEN_OFFSET, XAPM_MODE_ADVANCED, and XAxiPmon_WriteReg.

s32 XAxiPmon_SetMetrics ( XAxiPmon InstancePtr,
u8  Slot,
u8  Metrics,
u8  CounterNum 
)

This function sets Metrics for specified Counter in the corresponding Metric Selector Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Slotis the slot ID for which specified counter has to be connected.
Metricsis one of the Metric Sets. User has to use XAPM_METRIC_SET_* macros in xaxipmon.h for this parameter
CounterNumis the Counter Number. The valid values are 0 to 9.
Returns
XST_SUCCESS if Success XST_FAILURE if Failure
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MAX_AGENTS, XAPM_MAX_COUNTERS, XAPM_METRIC_SET_22, XAPM_METRIC_SET_30, XAPM_MODE_ADVANCED, XAPM_MSR0_OFFSET, XAPM_MSR1_OFFSET, XAPM_MSR2_OFFSET, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

Referenced by ApmMetricConfig(), AxiPmonInterruptExample(), and AxiPmonPolledExample().

void XAxiPmon_SetRdLatencyEnd ( XAxiPmon InstancePtr,
u8  Param 
)

This function sets Latency End point to calculate read latency.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Paramis XAPM_LATENCY_LASTRD or XAPM_LATENCY_FIRSTRD in xaxipmon.h.
Returns
None
Note
Param can be 0 - XAPM_LATENCY_LASTRD or 1 - XAPM_LATENCY_FIRSTRD

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_CR_RDLATENCY_END_MASK, XAPM_CTL_OFFSET, XAPM_LATENCY_FIRSTRD, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_SetRdLatencyStart ( XAxiPmon InstancePtr,
u8  Param 
)

This function sets Latency Start point to calculate read latency.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Paramis XAPM_LATENCY_ADDR_ISSUE or XAPM_LATENCY_ADDR_ACCEPT in xaxipmon.h.
Returns
None
Note
Param can be 0 - XAPM_LATENCY_ADDR_ISSUE or 1 - XAPM_LATENCY_ADDR_ACCEPT

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_CR_RDLATENCY_START_MASK, XAPM_CTL_OFFSET, XAPM_LATENCY_ADDR_ACCEPT, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_SetReadId ( XAxiPmon InstancePtr,
u32  ReadId 
)

This function sets Read ID in ID register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
ReadIdis the Read ID to be written in ID register.
Returns
None.
Note
If ID filtering for read is of 32 bits(for Zynq MP APM) width then ReadId is written to XAPM_RID_OFFSET or if it is 16 bit width then lower 16 bits of ReadId are written to XAPM_ID_OFFSET.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::Is32BitFiltering, XAxiPmon::IsReady, XAPM_ID_OFFSET, XAPM_ID_RID_MASK, XAPM_RID_OFFSET, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_SetReadIdMask ( XAxiPmon InstancePtr,
u32  RdMask 
)

This function sets Read ID Mask in ID Mask register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
RdMaskis the Read ID mask to be written in ID Mask register.
Returns
None.
Note
If ID masking for read is of 32 bits(for Zynq MP APM) width then RdMask is written to XAPM_RIDMASK_OFFSET or if it is 16 bit width then lower 16 bits of RdMask are written to XAPM_IDMASK_OFFSET.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::Is32BitFiltering, XAxiPmon::IsReady, XAPM_IDMASK_OFFSET, XAPM_MASKID_RID_MASK, XAPM_RIDMASK_OFFSET, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_SetSampleInterval ( XAxiPmon InstancePtr,
u32  SampleInterval 
)

This function sets the Sample Interval Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
SampleIntervalis the Sample Interval value to be set
Returns
None
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_MODE_TRACE, XAPM_SI_LOW_OFFSET, and XAxiPmon_WriteReg.

Referenced by AxiPmonInterruptExample(), and XAxiPmon_StartCounters().

void XAxiPmon_SetSwDataReg ( XAxiPmon InstancePtr,
u32  SwData 
)

This function sets Software-written Data Register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
SwDatais the Software written Data.
Returns
None.
Note
None.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_SWD_OFFSET, and XAxiPmon_WriteReg.

void XAxiPmon_SetWriteId ( XAxiPmon InstancePtr,
u32  WriteId 
)

This function sets Write ID in ID register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
WriteIdis the Write ID to be written in ID register.
Returns
None.
Note
If ID filtering for write is of 32 bits(for Zynq MP APM) width then WriteID is written to XAPM_ID_OFFSET or if it is 16 bit width then lower 16 bits of WriteID are written to XAPM_ID_OFFSET.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::Is32BitFiltering, XAxiPmon::IsReady, XAPM_ID_OFFSET, XAPM_ID_WID_MASK, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_SetWriteIdMask ( XAxiPmon InstancePtr,
u32  WrMask 
)

This function sets Write ID Mask in ID Mask register.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
WrMaskis the Write ID mask to be written in ID register.
Returns
None.
Note
If ID masking for write is of 32 bits(for Zynq MP APM) width then WrMask is written to XAPM_IDMASK_OFFSET or if it is 16 bit width then lower 16 bits of WrMask are written to XAPM_IDMASK_OFFSET.

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::Is32BitFiltering, XAxiPmon::IsReady, XAPM_IDMASK_OFFSET, XAPM_MASKID_WID_MASK, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_SetWrLatencyEnd ( XAxiPmon InstancePtr,
u8  Param 
)

This function sets Latency End point to calculate write latency.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Paramis XAPM_LATENCY_LASTWR or XAPM_LATENCY_FIRSTWR in xaxipmon.h.
Returns
None
Note
Param can be 0 - XAPM_LATENCY_LASTWR or 1 - XAPM_LATENCY_FIRSTWR

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_CR_WRLATENCY_END_MASK, XAPM_CTL_OFFSET, XAPM_LATENCY_FIRSTWR, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

void XAxiPmon_SetWrLatencyStart ( XAxiPmon InstancePtr,
u8  Param 
)

This function sets Latency Start point to calculate write latency.

Parameters
InstancePtris a pointer to the XAxiPmon instance.
Paramis XAPM_LATENCY_ADDR_ISSUE or XAPM_LATENCY_ADDR_ACCEPT in xaxipmon.h.
Returns
None
Note
Param can be 0 - XAPM_LATENCY_ADDR_ISSUE or 1 - XAPM_LATENCY_ADDR_ACCEPT

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon::IsReady, XAPM_CR_WRLATENCY_START_MASK, XAPM_CTL_OFFSET, XAPM_LATENCY_ADDR_ACCEPT, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

s32 XAxiPmon_StartCounters ( XAxiPmon InstancePtr,
u32  SampleInterval 
)

This function enables the following in the AXI Performance Monitor:

  • Global clock counter
  • All metric counters
  • All sampled metric counters
Parameters
InstancePtris a pointer to the XAxiPmon instance.
SampleIntervalis the sample interval for the sampled metric counters
Returns
XST_SUCCESS
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::IsEventCount, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_GCC_ENABLE_MASK, XAPM_CR_MCNTR_ENABLE_MASK, XAPM_CTL_OFFSET, XAPM_MODE_ADVANCED, XAPM_MODE_PROFILE, XAxiPmon_EnableSampleIntervalCounter, XAxiPmon_LoadSampleIntervalCounter, XAxiPmon_ReadReg, XAxiPmon_SetSampleInterval(), and XAxiPmon_WriteReg.

Referenced by ApmMetricConfig().

s32 XAxiPmon_StartEventLog ( XAxiPmon InstancePtr,
u32  FlagEnables 
)

This function enables the following in the AXI Performance Monitor:

  • Event logging
Parameters
InstancePtris a pointer to the XAxiPmon instance.
FlagEnablesis a value to write to the flag enables register defined by XAPM_FEC_OFFSET. It is recommended to use the XAPM_FEC_*_MASK mask bits to generate. A value of 0x0 will disable all events to the event log streaming FIFO.
Returns
XST_SUCCESS
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::IsEventLog, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_EVENTLOG_ENABLE_MASK, XAPM_CTL_OFFSET, XAPM_FEC_OFFSET, XAPM_MODE_ADVANCED, XAPM_MODE_TRACE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

s32 XAxiPmon_StopCounters ( XAxiPmon InstancePtr)

This function disables the following in the AXI Performance Monitor:

  • Global clock counter
  • All metric counters
Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
XST_SUCCESS
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::IsEventCount, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_GCC_ENABLE_MASK, XAPM_CR_MCNTR_ENABLE_MASK, XAPM_CTL_OFFSET, XAPM_MODE_ADVANCED, XAPM_MODE_PROFILE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

Referenced by ReadMetrics().

s32 XAxiPmon_StopEventLog ( XAxiPmon InstancePtr)

This function disables the following in the AXI Performance Monitor:

  • Event logging
Parameters
InstancePtris a pointer to the XAxiPmon instance.
Returns
XST_SUCCESS
Note
None

References XAxiPmon_Config::BaseAddress, XAxiPmon::Config, XAxiPmon_Config::IsEventLog, XAxiPmon::IsReady, XAxiPmon::Mode, XAPM_CR_EVENTLOG_ENABLE_MASK, XAPM_CTL_OFFSET, XAPM_MODE_ADVANCED, XAPM_MODE_TRACE, XAxiPmon_ReadReg, and XAxiPmon_WriteReg.

Variable Documentation

XAxiPmon_Config XAxiPmon_ConfigTable[]

This table contains configuration information for each System Monitor/ADC device in the system.

XAxiPmon_Config XAxiPmon_ConfigTable[XPAR_XAXIPMON_NUM_INSTANCES]
Initial value:
=
{
{
XPAR_AXI_PERF_MON_0_DEVICE_ID,
XPAR_AXI_PERF_MON_0_BASEADDR,
XPAR_AXI_PERF_MON_0_GLOBAL_COUNT_WIDTH,
XPAR_AXI_PERF_MON_0_METRICS_SAMPLE_COUNT_WIDTH
}
}

This table contains configuration information for each System Monitor/ADC device in the system.