Refer to the xaxipmon.h header file for more information about this driver.
MODIFICATION HISTORY:
Ver Who Date Changes ----- ----- -------- ----------------------------------------------------- 1.00a bss 02/27/12 First release 2.00a bss 06/23/12 Updated to support v2_00a version of IP. 3.00a bss 09/03/12 Deleted XAxiPmon_SetAgent, XAxiPmon_GetAgent APIs and modified XAxiPmon_SetMetrics, XAxiPmon_GetMetrics APIs to support v2_01a version of IP. 3.01a bss 10/25/12 Added XAxiPmon_StartCounters and XAxiPmon_StopCounters APIs (CR #683799). Added XAxiPmon_StartEventLog and XAxiPmon_StopEventLog APIs (CR #683801). Added XAxiPmon_GetMetricName API (CR #683803). Modified XAxiPmon_SetMetrics and XAxiPmon_GetMetrics (CR #683746) Added XAxiPmon_EnableEventLog, XAxiPmon_DisableMetricsCounter, XAxiPmon_EnableMetricsCounter APIs to replace macros. Added XAxiPmon_SetMetricCounterCutOff, XAxiPmon_GetMetricCounterCutOff, XAxiPmon_EnableExternalTrigger and XAxiPmon_DisableExternalTrigger APIs to support new version of IP. 4.00a bss 01/17/13 To support new version of IP: Added XAxiPmon_SetLogEnableRanges, XAxiPmon_GetLogEnableRanges, XAxiPmon_EnableMetricCounterTrigger, XAxiPmon_DisableMetricCounterTrigger, XAxiPmon_EnableEventLogTrigger, XAxiPmon_DisableEventLogTrigger, XAxiPmon_SetWriteLatencyId, XAxiPmon_SetReadLatencyId, XAxiPmon_GetWriteLatencyId, XAxiPmon_GetReadLatencyId APIs and removed XAxiPmon_SetMetricCounterCutOff, XAxiPmon_GetMetricCounterCutOff, XAxiPmon_EnableExternalTrigger and XAxiPmon_DisableExternalTrigger APIs 5.00a bss 08/26/13 To support new version of IP: Modified XAxiPmon_CfgInitialize to add Mode of APM and ScaleFactor parameter. Modified Assert functions depending on Mode. Modified XAxiPmon_GetMetricCounter and XAxiPmon_GetSampledMetricCounter to include new Counters. Modified XAxiPmon_SetSampleInterval and XAxiPmon_GetSampleInterval to remove higher 32 bit value of SampleInterval since Sample Interval Register is only 32 bit. Added XAxiPmon_SetWrLatencyStart, XAxiPmon_SetWrLatencyEnd, XAxiPmon_SetRdLatencyStart XAxiPmon_SetRdLatencyEnd, XAxiPmon_GetWrLatencyStart, XAxiPmon_GetWrLatencyEnd, XAxiPmon_GetRdLatencyStart, XAxiPmon_GetRdLatencyEnd, XAxiPmon_SetWriteIdMask, XAxiPmon_SetReadIdMask, XAxiPmon_GetWriteIdMask and XAxiPmon_GetReadIdMask APIs. Renamed: XAxiPmon_SetWriteLatencyId to XAxiPmon_SetWriteId XAxiPmon_SetReadLatencyId to XAxiPmon_SetReadId XAxiPmon_GetWriteLatencyId to XAxiPmon_GetWriteId XAxiPmon_SetReadLatencyId to XAxiPmon_GetReadId. 6.2 bss 04/21/14 Updated XAxiPmon_CfgInitialize to Reset counters and FIFOs based on Modes(CR#782671). And if both profile and trace modes are present set mode as Advanced.
#include "xaxipmon.h"
Functions | |
int | XAxiPmon_CfgInitialize (XAxiPmon *InstancePtr, XAxiPmon_Config *ConfigPtr, u32 EffectiveAddr) |
int | XAxiPmon_ResetMetricCounter (XAxiPmon *InstancePtr) |
void | XAxiPmon_ResetGlobalClkCounter (XAxiPmon *InstancePtr) |
int | XAxiPmon_ResetFifo (XAxiPmon *InstancePtr) |
void | XAxiPmon_SetIncrementerRange (XAxiPmon *InstancePtr, u8 IncrementerNum, u16 RangeUpper, u16 RangeLower) |
void | XAxiPmon_GetIncrementerRange (XAxiPmon *InstancePtr, u8 IncrementerNum, u16 *RangeUpper, u16 *RangeLower) |
void | XAxiPmon_SetSampleInterval (XAxiPmon *InstancePtr, u32 SampleInterval) |
void | XAxiPmon_GetSampleInterval (XAxiPmon *InstancePtr, u32 *SampleInterval) |
int | XAxiPmon_SetMetrics (XAxiPmon *InstancePtr, u8 Slot, u8 Metrics, u8 CounterNum) |
int | XAxiPmon_GetMetrics (XAxiPmon *InstancePtr, u8 CounterNum, u8 *Metrics, u8 *Slot) |
void | XAxiPmon_GetGlobalClkCounter (XAxiPmon *InstancePtr, u32 *CntHighValue, u32 *CntLowValue) |
u32 | XAxiPmon_GetMetricCounter (XAxiPmon *InstancePtr, u32 CounterNum) |
u32 | XAxiPmon_GetSampledMetricCounter (XAxiPmon *InstancePtr, u32 CounterNum) |
u32 | XAxiPmon_GetIncrementer (XAxiPmon *InstancePtr, u32 IncrementerNum) |
u32 | XAxiPmon_GetSampledIncrementer (XAxiPmon *InstancePtr, u32 IncrementerNum) |
void | XAxiPmon_SetSwDataReg (XAxiPmon *InstancePtr, u32 SwData) |
u32 | XAxiPmon_GetSwDataReg (XAxiPmon *InstancePtr) |
int | XAxiPmon_StartEventLog (XAxiPmon *InstancePtr, u32 FlagEnables) |
int | XAxiPmon_StopEventLog (XAxiPmon *InstancePtr) |
int | XAxiPmon_StartCounters (XAxiPmon *InstancePtr, u32 SampleInterval) |
int | XAxiPmon_StopCounters (XAxiPmon *InstancePtr) |
void | XAxiPmon_EnableMetricsCounter (XAxiPmon *InstancePtr) |
void | XAxiPmon_DisableMetricsCounter (XAxiPmon *InstancePtr) |
void | XAxiPmon_SetLogEnableRanges (XAxiPmon *InstancePtr, u32 CounterNum, u16 RangeUpper, u16 RangeLower) |
void | XAxiPmon_GetLogEnableRanges (XAxiPmon *InstancePtr, u32 CounterNum, u16 *RangeUpper, u16 *RangeLower) |
void | XAxiPmon_EnableEventLog (XAxiPmon *InstancePtr) |
void | XAxiPmon_EnableMetricCounterTrigger (XAxiPmon *InstancePtr) |
void | XAxiPmon_DisableMetricCounterTrigger (XAxiPmon *InstancePtr) |
void | XAxiPmon_EnableEventLogTrigger (XAxiPmon *InstancePtr) |
void | XAxiPmon_DisableEventLogTrigger (XAxiPmon *InstancePtr) |
const char * | XAxiPmon_GetMetricName (u8 Metrics) |
void | XAxiPmon_SetWriteId (XAxiPmon *InstancePtr, u16 WriteId) |
void | XAxiPmon_SetReadId (XAxiPmon *InstancePtr, u16 ReadId) |
u16 | XAxiPmon_GetWriteId (XAxiPmon *InstancePtr) |
u16 | XAxiPmon_GetReadId (XAxiPmon *InstancePtr) |
void | XAxiPmon_SetWrLatencyStart (XAxiPmon *InstancePtr, u8 Param) |
void | XAxiPmon_SetWrLatencyEnd (XAxiPmon *InstancePtr, u8 Param) |
void | XAxiPmon_SetRdLatencyStart (XAxiPmon *InstancePtr, u8 Param) |
void | XAxiPmon_SetRdLatencyEnd (XAxiPmon *InstancePtr, u8 Param) |
u8 | XAxiPmon_GetWrLatencyStart (XAxiPmon *InstancePtr) |
u8 | XAxiPmon_GetWrLatencyEnd (XAxiPmon *InstancePtr) |
u8 | XAxiPmon_GetRdLatencyStart (XAxiPmon *InstancePtr) |
u8 | XAxiPmon_GetRdLatencyEnd (XAxiPmon *InstancePtr) |
void | XAxiPmon_SetWriteIdMask (XAxiPmon *InstancePtr, u16 WrMask) |
void | XAxiPmon_SetReadIdMask (XAxiPmon *InstancePtr, u16 RdMask) |
u16 | XAxiPmon_GetWriteIdMask (XAxiPmon *InstancePtr) |
u16 | XAxiPmon_GetReadIdMask (XAxiPmon *InstancePtr) |
|
This function initializes a specific XAxiPmon device/instance. This function must be called prior to using the AXI Performance Monitor device.
|
|
This function disables the External trigger pulse used to start Event Log on external trigger pulse for a Slot.
|
|
This function disables the External trigger pulse used to start Metric Counters on external trigger pulse for a Slot.
|
|
This function disables the Metric Counters.
|
|
This function enables Event Logging.
|
|
This function enables External trigger pulse for Event Log so that Event Logging can be started on external trigger pulse for a Slot.
|
|
This function enables External trigger pulse so that Metric Counters can be started on external trigger pulse for a Slot.
|
|
This function enables Metric Counters.
|
|
This function returns the contents of the Global Clock Counter Register.
|
|
This function returns the contents of the Incrementer Register.
|
|
This function returns the Ranges of Incrementers Registers.
|
|
This function returns the Ranges of specified Metric Counter Log Enable Register.
|
|
This function returns the contents of the Metric Counter Register.
|
|
This function returns a name for a given Metric.
|
|
This function returns Metrics in the specified Counter from the corresponding Metric Selector Register.
|
|
This function returns Read Latency End point.
|
|
This function returns read Latency Start point.
|
|
This function returns Read ID in ID register.
|
|
This function returns Read ID Mask in ID Mask register.
|
|
This function returns the contents of the Sampled Incrementer Register.
|
|
This function returns the contents of the Sampled Metric Counter Register.
|
|
This function returns the contents of Sample Interval Register
|
|
This function returns contents of Software-written Data Register.
|
|
This function returns Write ID in ID register.
|
|
This function returns Write ID Mask in ID Mask register.
|
|
This function returns Write Latency End point.
|
|
This function returns Write Latency Start point.
|
|
This function resets Streaming FIFO of AXI Performance Monitor
|
|
This function resets Global Clock Counter of AXI Performance Monitor
|
|
This function resets all Metric Counters and Sampled Metric Counters of AXI Performance Monitor.
|
|
This function sets Ranges for Incrementers depending on parameters passed.
|
|
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
|
|
This function sets Metrics for specified Counter in the corresponding Metric Selector Register.
|
|
This function sets Latency End point to calculate read latency.
|
|
This function sets Latency Start point to calculate read latency.
|
|
This function sets Read ID in ID register.
|
|
This function sets Read ID Mask in ID Mask register.
|
|
This function sets the Sample Interval Register
|
|
This function sets Software-written Data Register.
|
|
This function sets Write ID in ID register.
|
|
This function sets Write ID Mask in ID Mask register.
|
|
This function sets Latency End point to calculate write latency.
|
|
This function sets Latency Start point to calculate write latency.
|
|
This function enables the following in the AXI Performance Monitor:
|
|
This function enables the following in the AXI Performance Monitor:
|
|
This function disables the following in the AXI Performance Monitor:
|
|
This function disables the following in the AXI Performance Monitor:
|