![]() |
![]() |
Functions | |
CSL_IDEF_INLINE void | CSL_XMC_setXMPAXH (Uint32 index, CSL_XMC_XMPAXH *mpaxh) |
CSL_IDEF_INLINE void | CSL_XMC_setXMPAXL (Uint32 index, CSL_XMC_XMPAXL *mpaxl) |
CSL_IDEF_INLINE void | CSL_XMC_getXMPAXH (Uint32 index, CSL_XMC_XMPAXH *mpaxh) |
CSL_IDEF_INLINE void | CSL_XMC_getXMPAXL (Uint32 index, CSL_XMC_XMPAXL *mpaxl) |
CSL_IDEF_INLINE Uint32 | CSL_XMC_getFaultAddress (void) |
CSL_IDEF_INLINE void | CSL_XMC_clearFault (void) |
CSL_IDEF_INLINE void | CSL_XMC_getFaultStatus (CSL_XMC_MPFSR *xmpfsr) |
CSL_IDEF_INLINE void | CSL_XMC_invalidatePrefetchBuffer (void) |
CSL_IDEF_INLINE void | CSL_XMC_loadAnalysisCounterEnable (void) |
CSL_IDEF_INLINE void | CSL_XMC_setAnalysisCounterEnableMode (CSL_XMC_ACEN_MODE acenMode) |
CSL_IDEF_INLINE void | CSL_XMC_resetAnalysisCounters (void) |
CSL_IDEF_INLINE void | CSL_XMC_setPrefetchCommand (Uint8 inv, Uint8 acEnLoad, CSL_XMC_ACEN_MODE acenMode, Uint8 acRst) |
CSL_IDEF_INLINE CSL_XMC_ACEN_MODE | CSL_XMC_getAnalysisCounterEnableStatus (void) |
CSL_IDEF_INLINE Uint32 | CSL_XMC_getNumPrefetchSent (void) |
CSL_IDEF_INLINE Uint32 | CSL_XMC_getNumPrefetchCanceled (void) |
CSL_IDEF_INLINE Uint32 | CSL_XMC_getNumPrefetchHits (void) |
CSL_IDEF_INLINE Uint32 | CSL_XMC_getNumPrefetchMisses (void) |
CSL_IDEF_INLINE void | CSL_XMC_getPrefetchAddress (Uint32 index, CSL_XMC_XPFADDR *xpfaddr) |
CSL_IDEF_INLINE void | CSL_XMC_setMDMAPriority (Uint32 priority) |
CSL_IDEF_INLINE Uint32 | CSL_XMC_getMDMAPriority (void) |
CSL_IDEF_INLINE void CSL_XMC_clearFault | ( | void | ) |
============================================================================
CSL_XMC_clearFault
Description
This function clears the fault information.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
XMPFCR register configured with the value passed. Fault address and status registers are cleared.
Writes
XMC_XMPFCR_MPFCLR=1
Affects
XMC_XMPFAR_FADDR=0, XMC_XMPFSR_LOCAL=0, XMC_XMPFSR_SR=0, XMC_XMPFSR_SX=0, XMC_XMPFSR_UR=0, XMC_XMPFSR_UW=0, XMC_XMPFSR_UW=0
Example
CSL_XMC_clearFault ();
=============================================================================
CSL_IDEF_INLINE CSL_XMC_ACEN_MODE CSL_XMC_getAnalysisCounterEnableStatus | ( | void | ) |
============================================================================
CSL_XMC_getAnalysisCounterEnableStatus
Description
This function returns the Analysis counter enable mode by reading the contents of 'ACEN' bits from the XPFACS register.
Arguments
None
Return Value CSL_XMC_ACEN_MODE - Event counting mode
Pre Condition
None
Post Condition
CSL_XMC_XPFACS_ACEN bits read and returned
Reads
XMC_XPFACS_ACEN
Example
CSL_XMC_ACEN_MODE acenMode; // Read ACEN Mode Status acenMode = CSL_XMC_getAnalysisCounterEnableStatus (); if (acenMode == CSL_XMC_ACEN_MODE_COUNT_DISABLE) { ... }
=============================================================================
CSL_IDEF_INLINE Uint32 CSL_XMC_getFaultAddress | ( | void | ) |
============================================================================
CSL_XMC_getFaultAddress
Description
This function gets the access address causing the fault.
Arguments
None
Return Value Uint32
Pre Condition
None
Post Condition
None
Reads
XMC_XMPFAR_FADDR
Example
Uint32 faultAddr; faultAddr = CSL_XMC_getFaultAddress ();
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_getFaultStatus | ( | CSL_XMC_MPFSR * | xmpfsr | ) |
============================================================================
CSL_XMC_getFaultStatus
Description
This function gets the contents of Fault Status Register XMPFSR.
Arguments
xmpfsr CSL_XMC_MPFSR structure that needs to be filled in from XMPFSR register
Return Value
None
Pre Condition
None
Post Condition
None
Reads
XMC_XMPFSR_LOCAL, XMC_XMPFSR_SR, XMC_XMPFSR_SX, XMC_XMPFSR_UR, XMC_XMPFSR_UW, XMC_XMPFSR_UW
Example
CSL_XMC_MPFSR xmpfsr; CSL_XMC_getFaultStatus (&xmpfsr);
=============================================================================
CSL_IDEF_INLINE Uint32 CSL_XMC_getMDMAPriority | ( | void | ) |
============================================================================
CSL_XMC_getMDMAPriority
Description
This function retrieves the priority of transaction submissions to Master DMA (MDMA).
Arguments
None
Return Value Uint32
Pre Condition
None
Post Condition
None
Reads
XMC_MDMAARBX_PRI
Example
Uint32 priority; priority = CSL_XMC_getMDMAPriority ();
=============================================================================
CSL_IDEF_INLINE Uint32 CSL_XMC_getNumPrefetchCanceled | ( | void | ) |
============================================================================
CSL_XMC_getNumPrefetchCanceled
Description
This function returns the contents of XPFAC1 register, i.e., the number of prefetch requests canceled (prefetch requests that returned a non-zero rstatus or other error).
Arguments
None
Return Value Uint32
Pre Condition
None
Post Condition
None
Reads
XMC_XPFAC1_CANCELED
Example
Uint32 numPrefetchCanceled; // Read Prefetch request canceled numPrefetchCanceled = CSL_XMC_getNumPrefetchCanceled ();
=============================================================================
CSL_IDEF_INLINE Uint32 CSL_XMC_getNumPrefetchHits | ( | void | ) |
============================================================================
CSL_XMC_getNumPrefetchHits
Description
This function returns the contents of XPFAC2 register, i.e., the number of demand prefetch requests that resulted in a successful prefetch.
Arguments
None
Return Value Uint32
Pre Condition
None
Post Condition
None
Reads
XMC_XPFAC2_HIT
Example
Uint32 numPrefetchHits; // Read Number of Prefetch request hits numPrefetchHits = CSL_XMC_getNumPrefetchHits ();
=============================================================================
CSL_IDEF_INLINE Uint32 CSL_XMC_getNumPrefetchMisses | ( | void | ) |
============================================================================
CSL_XMC_getNumPrefetchMisses
Description
This function returns the contents of XPFAC3 register, i.e., the number of prefetch requests that resulted in a miss and had to be submitted as a demand prefetch request into the system.
Arguments
None
Return Value Uint32
Pre Condition
None
Post Condition
None
Reads
XMC_XPFAC3_MISS
Example
Uint32 numPrefetchMisses; // Read Number of Prefetch request misses numPrefetchMisses = CSL_XMC_getNumPrefetchMisses ();
=============================================================================
CSL_IDEF_INLINE Uint32 CSL_XMC_getNumPrefetchSent | ( | void | ) |
============================================================================
CSL_XMC_getNumPrefetchSent
Description
This function returns the contents of XPFAC0 register, i.e., the number of prefetch requests sent into the system.
Arguments
None
Return Value Uint32
Pre Condition
None
Post Condition
None
Reads
XMC_XPFAC0_SENT
Example
Uint32 numPrefetchSent; // Read Prefetch request sent count numPrefetchSent = CSL_XMC_getNumPrefetchSent ();
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_getPrefetchAddress | ( | Uint32 | index, | |
CSL_XMC_XPFADDR * | xpfaddr | |||
) |
============================================================================
CSL_XMC_getPrefetchAddress
Description
This function gets the contents of XPFADDR register.
Arguments
index Index into the set of 8 registers xpfaddr CSL_XMC_XPFADDR structure that needs to be filled from XPFADDR register
Return Value
None
Pre Condition
None
Post Condition
None
Reads
XMC_XPFADDR_ADDR, XMC_XPFADDR_DIR, XMC_XPFADDR_DPH, XMC_XPFADDR_DVH, XMC_XPFADDR_AVH, XMC_XPFADDR_DPL, XMC_XPFADDR_DVL, XMC_XPFADDR_AVL
Example
Uint32 index = 0; CSL_XMC_XPFADDR xpfaddr; CSL_XMC_getPrefetchAddress (index, &xpfaddr);
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_getXMPAXH | ( | Uint32 | index, | |
CSL_XMC_XMPAXH * | mpaxh | |||
) |
============================================================================
CSL_XMC_getXMPAXH
Description
This function gets the contents of XMPAXH register.
Arguments
index Index into the set of 16 XMPAXH registers mpaxh CSL_XMC_XMPAXH structure that needs to be populated with XMPAXH register contents.
Return Value
None
Pre Condition
None
Post Condition
None
Reads
XMC_XMPAXH_SEGSZ, XMC_XMPAXH_BADDR
Example
Uint32 index = 0; CSL_XMC_XMPAXH mpaxh; CSL_XMC_getXMPAXH (index, &mpaxh);
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_getXMPAXL | ( | Uint32 | index, | |
CSL_XMC_XMPAXL * | mpaxl | |||
) |
============================================================================
CSL_XMC_getXMPAXL
Description
This function gets the contents of XMPAXL register.
Arguments
index Index into the set of 16 registers mpaxl CSL_XMC_XMPAXL structure that needs to be populated with XMPAXL register contents.
Return Value
None
Pre Condition
None
Post Condition
None
Reads
XMC_XMPAXL_RADDR, XMC_XMPAXL_UX, XMC_XMPAXL_UW, XMC_XMPAXL_UR, XMC_XMPAXL_SX, XMC_XMPAXL_SW, XMC_XMPAXL_SR
Example
Uint32 index = 0; CSL_XMC_XMPAXL mpaxl; CSL_XMC_getXMPAXL (index, &mpaxl);
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_invalidatePrefetchBuffer | ( | void | ) |
============================================================================
CSL_XMC_invalidatePrefetchBuffer
Description
This function when called marks all slots in the data prefetch buffer and program prefetch buffer invalid by writing 1 in the XPFCMD register's INV bit.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
CSL_XMC_XPFCMD_INV bit set to 1 and data and program prefetch buffers are invalidated.
Writes
XMC_XPFCMD_INV=1
Affects
XMC_XPFADDR_DVH=0, XMC_XPFADDR_DVL=0
Example
* CSL_XMC_invalidatePrefetchBuffer ();
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_loadAnalysisCounterEnable | ( | void | ) |
============================================================================
CSL_XMC_loadAnalysisCounterEnable
Description
This function when called sets the 'ACENL' bit of the XPFCMD register, thus triggering a copy/load of ACEN bits (Analysis counter enable mode) into ACEN bits of XPFACS register.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
CSL_XMC_XPFCMD_ACENL bit set to 1 and ACEN bits value is loaded into the ACEN bits of XPFACS register.
Writes
XMC_XPFCMD_ACENL=1
Affects
XMC_XPFACS_ACEN
Example
* CSL_XMC_loadAnalysisCounterEnable ();
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_resetAnalysisCounters | ( | void | ) |
============================================================================
CSL_XMC_resetAnalysisCounters
Description
This function when called sets the 'ACRST' bit of the XPFCMD register, thus triggering a clear/reset operation on the prefetch analysis counter registers.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
CSL_XMC_XPFCMD_ACRST bit set to 1 and prefetch analysis counter registers are cleared.
Writes
XMC_XPFCMD_ACRST=1
Affects
XMC_XPFAC0_SENT=0, XMC_XPFAC1_CANCELED=0, XMC_XPFAC2_HIT=0, XMC_XPFAC3_MISS=0
Example
* CSL_XMC_resetAnalysisCounters ();
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_setAnalysisCounterEnableMode | ( | CSL_XMC_ACEN_MODE | acenMode | ) |
============================================================================
CSL_XMC_setAnalysisCounterEnableMode
Description
This function when called sets up the Event counting mode by writing to the 'ACEN' bits of the XPFCMD register.
Arguments
acenMode Analyis counter mode.
Return Value
None
Pre Condition
None
Post Condition
CSL_XMC_XPFCMD_ACEN bits written with the Analysis counter mode specified.
Writes
XMC_XPFCMD_ACEN
Example
// Enable both program and data events CSL_XMC_setAnalysisCounterEnableMode (CSL_XMC_ACEN_MODE_COUNT_ALL);
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_setMDMAPriority | ( | Uint32 | priority | ) |
============================================================================
CSL_XMC_setMDMAPriority
Description
This function configures the priority of transaction submissions to Master DMA (MDMA).
Arguments
priority Priority value to set for MDMA transactions.
Return Value
None
Pre Condition
None
Post Condition
None
Writes
XMC_MDMAARBX_PRI
Example
Uint32 priority = 4; CSL_XMC_setMDMAPriority (priority);
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_setPrefetchCommand | ( | Uint8 | inv, | |
Uint8 | acEnLoad, | |||
CSL_XMC_ACEN_MODE | acenMode, | |||
Uint8 | acRst | |||
) |
============================================================================
CSL_XMC_setPrefetchCommand
Description
This function sets up the contents of the XPFCMD register based on the inputs specified.
Arguments
inv Invalidate Prefetch Buffer command flag. When set to 1, data and program prefetch buffers are invalidated. acEnLoad Analysis Counter Enable Load flag. When set to 1, the Analysis Counter Enable mode is loaded into the XPFACS status register. acEnMode Analyis counter enable mode. Specifies the event counting mode for the prefetcher. acRst Analysis counter Reset flag. When set to 1, resets all the prefetch event counters.
Return Value
None
Pre Condition
None
Post Condition
CSL_XMC_XPFCMD written with the settings specified.
Writes
XMC_XPFCMD_INV, XMC_XPFCMD_ACENL, XMC_XPFCMD_ACEN, XMC_XPFCMD_ACRST
Example
// Issue the following prefetch commands: // - Dont invalidate prefetch buffers // - Enable Analysis Counter Enable load // - Enable both program and data event counting // - Dont reset the prefetch counters CSL_XMC_setPrefetchCommand (0, 1, CSL_XMC_ACEN_MODE_COUNT_ALL, 0);
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_setXMPAXH | ( | Uint32 | index, | |
CSL_XMC_XMPAXH * | mpaxh | |||
) |
============================================================================
CSL_XMC_setXMPAXH
Description
This function sets the contents of XMPAXH register indicated by the index here.
Arguments
index Index into the set of 16 registers (0-15) mpaxh CSL_XMC_XMPAXH structure that needs to be set into the register
Return Value
None
Pre Condition
None
Post Condition
Corresponding XMPAXH register configured with the value passed.
Writes
XMC_XMPAXH_SEGSZ, XMC_XMPAXH_BADDR
Example
Uint32 index = 0; CSL_XMC_XMPAXH mpaxh; mpaxh.segSize = 4; mpaxh.baseAddress = 0x1000; CSL_XMC_setXMPAXH (index, &mpaxh);
=============================================================================
CSL_IDEF_INLINE void CSL_XMC_setXMPAXL | ( | Uint32 | index, | |
CSL_XMC_XMPAXL * | mpaxl | |||
) |
============================================================================
CSL_XMC_setXMPAXL
Description
This function sets the contents of XMPAXL register corresponding to the index specified.
Arguments
index Index into the set of 16 registers (0-15) mpaxl CSL_XMC_XMPAXL structure that needs to be set into the register
Return Value
None
Pre Condition
None
Post Condition
Corresponding XMPAXL register configured with the value passed.
Writes
XMC_XMPAXL_RADDR, XMC_XMPAXL_UX, XMC_XMPAXL_UW, XMC_XMPAXL_UR, XMC_XMPAXL_SX, XMC_XMPAXL_SW, XMC_XMPAXL_SR
Example
Uint32 index = 0; CSL_XMC_XMPAXL mpaxl; mpaxl.ux = 1; mpaxl.uw = 1; mpaxl.ur = 1; mpaxl.sx = 1; mpaxl.sw = 1; mpaxl.sr = 1; mpaxl.rAddr = 0x4000 ; CSL_XMC_setXMPAXL (index, &mpaxl);
=============================================================================