📄 csl_cache.h
字号:
* @n None * * @b Example * @verbatim ... CACHE_wbInvL1d ((Uint32*)(0x1000),200,CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_wbInvL1d ( void *blockPtr, Uint32 byteCnt, CACHE_Wait wait);/* Global Operations *//** ============================================================================ * @n@b CACHE_wbAllL1d * * @b Description * @n Writeback All of L1D. * @n As per the specification, * @n a. The L1DWB is programmed. * * @b Arguments * @verbatim wait Whether the call is blocking (and the extent of wait) till the issue operation is completed. Whether the function must exit on completion/or not. @endverbatim * * <b> Return Value </b> * @n None * * @b Example * @verbatim ... CACHE_wbAllL1d (CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_wbAllL1d ( CACHE_Wait wait);/** ============================================================================ * @n@b CACHE_invAllL1d * * @b Description * @n Invalidates All of L1D. * @n As per the specification, * @n a. The L1DINV is programmed. * * @b Arguments * @verbatim wait Whether the call is blocking (and the extent of wait) till the issue operation is completed. Whether the function must exit on completion/or not. @endverbatim * * <b> Return Value </b> * @n None * * @b Example * @verbatim ... CACHE_invAllL1d (CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_invAllL1d ( CACHE_Wait wait);/** ============================================================================ * @n@b CACHE_wbInvAllL1d * * @b Description * @n Writeback invalidates All of L1D. * @n As per the specification, * @n a. The L1DWBINV is programmed. * * @b Arguments * @verbatim wait Whether the call is blocking (and the extent of wait) till the issue operation is completed. Whether the function must exit on completion/or not. @endverbatim * * <b> Return Value </b> * @n None * * @b Example * @verbatim ... CACHE_wbInvAllL1d (CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_wbInvAllL1d( CACHE_Wait wait /**< Whether the call is blocking (and the extent of wait) till the issue operation is completed or not*/);/**@}*//*----------------------------------------------------------------------------*\ L2\*----------------------------------------------------------------------------*//** @addtogroup CSLSYS_CACHE_L2FUNCTION@{*//** ============================================================================ * @n@b CACHE_setL2Size * * @b Description * @n Sets the L2 size. * @n As per the specification, * @n a. The old size is read from the L2CFG. * @n b. The new size is programmed in L2CFG. * @n c. L2CFG is read back to ensure it is set. * * @b Arguments * @verbatim newSize New memory size to be programmed @endverbatim * * <b> Return Value </b> * @n Old Size set for L2 (CACHE_L2Size) * * @b Example * @verbatim ... CACHE_L2Size oldSize ; oldSize = CACHE_setL2Size(CACHE_L2_32KCACHE); ... @endverbatim * ============================================================================ */CACHE_L2Size CACHE_setL2Size ( CACHE_L2Size newSize);/** ============================================================================ * @n@b CACHE_setL2Mode * * @b Description * @n Sets the L2 mode. * @n As per the specification, * @n a. The old mode is read from the L2CFG. * @n b. The new mode is programmed in L2CFG. * @n c. L2CFG is read back to ensure it is set. * * @b Arguments * @verbatim newMode New mode to be programmed @endverbatim * * <b> Return Value </b> * @n Old Mode set for L2 (CACHE_L2Mode) * * @b Example * @verbatim ... CACHE_L2Mode oldMode; oldMode = CACHE_setL2Mode(CACHE_L2_NORMAL); ... @endverbatim * ============================================================================ */CACHE_L2Mode CACHE_setL2Mode ( CACHE_L2Mode newMode);/* Block Operations *//** ============================================================================ * @n@b CACHE_wbL2 * * @b Description * @n Writes back range specified in L2. * @n As per the specification, * @n a. The start of the range that needs to be written back is programmed * into L2WBAR. * @n b. The byte count is programmed in L2WWC. * * @b Arguments * @verbatim blockPtr Start address of range to be written back byteCnt Number of bytes to be written back wait Whether the call is blocking (and the extent of wait) till the issue operation is completed or not. Whether the function must exit on completion/or not. @endverbatim * * <b> Return Value </b> * @n None * * @b Example * @verbatim ... CACHE_wbL2((Uint32*)(0x1000), 200, CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_wbL2 ( void *blockPtr, Uint32 byteCnt, CACHE_Wait wait);/** ============================================================================ * @n@b CACHE_invL2 * * @b Description * @n Invalidates range specified in L2. * @n As per the specification, * @n a. The start of the range that needs to be written back is programmed * into L2IBAR * @n b. The byte count is programmed in L2IWC. * * @b Arguments * @verbatim blockPtr Start address of range to be invalidated byteCnt Number of bytes to be invalidated wait Whether the call is blocking (and the extent of wait) till the issue operation is completed or not. Whether the function must exit on completion/or not. @endverbatim * * <b> Return Value </b> * @n None * * @b Example * @verbatim ... CACHE_invL2((Uint32*)(0x1000), 200, CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_invL2 ( void *blockPtr, Uint32 byteCnt, CACHE_Wait wait);/** ============================================================================ * @n@b CACHE_wbInvL2 * * @b Description * @n Writeback invalidated range specified in L2. * @n As per the specification, * @n a. The start of the range that needs to be written back is programmed * into L2WIBAR * @n b. The byte count is programmed in L2WIWC. * * @b Arguments * @verbatim blockPtr Start address of range to be written back invalidated byteCnt Number of bytes to be written back invalidated wait Whether the call is blocking (and the extent of wait) till the issue operation is completed or not. Whether the function must exit on completion/or not. @endverbatim * * <b> Return Value </b> * @n None * * @b Example * @verbatim ... CACHE_wbInvL2((Uint32*)(0x1000), 200, CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_wbInvL2 ( void *blockPtr, Uint32 byteCnt, CACHE_Wait wait);/* Global Operations *//** ============================================================================ * @n@b CACHE_wbAllL2 * * @b Description * @n Writes back all of L2. * @n As per the specification, * @n a. The L2WB needs to be programmed. * * @b Arguments * @verbatim wait Whether the call is blocking (and the extent of wait) till the issue operation is completed or not. Whether the function must exit on completion/or not. @endverbatim * * <b> Return Value </b> * @n None * * @b Example * @verbatim ... CACHE_wbAllL2(CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_wbAllL2 ( CACHE_Wait wait);/** ============================================================================ * @n@b CACHE_invAllL2 * * @b Description * @n Invalidates All of L2. * @n As per the specification, * @n a. The L2INV needs to be programmed. * * @b Arguments * @verbatim wait Whether the call is blocking (and the extent of wait) till the issue operation is completed or not. Whether the function must exit on completion/or not. @endverbatim * * <b> Return Value </b> * @n None * * @b Example * @verbatim ... CACHE_invAllL2(CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_invAllL2 ( CACHE_Wait wait);/** ============================================================================ * @n@b CACHE_wbInvAllL2 * * @b Description * @n Writeback invalidates All of L2. * @n As per the specification, * @n a. The L2WBINV needs to be programmed. * * @b Arguments * @verbatim wait Whether the call is blocking (and the extent of wait) till the issue operation is completed or not. Whether the function must exit on completion/or not. @endverbatim * * <b> Return Value </b> * @n None * * @b Example * @verbatim ... CACHE_wbInvAllL2(CACHE_NOWAIT); ... @endverbatim * ============================================================================ */void CACHE_wbInvAllL2 ( CACHE_Wait wait);/**@}*/#ifdef __cplusplus}#endif#endif /*_CSL_CACHE_H_*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -