Channel Specific Interface
[Instance Wide Interface]


Modules

 Resource Type

Typedefs

typedef void(* EDMA3_RM_TccCallback )(unsigned int tcc, EDMA3_RM_TccStatus status, void *appData)
 TCC callback - caters to channel-specific events like "Event Miss Error" or "Transfer Complete". Runs in ISR context.

Functions

EDMA3_RM_Result EDMA3_RM_registerTccCb (EDMA3_RM_Handle hEdmaResMgr, const EDMA3_RM_ResDesc *channelObj, unsigned int tcc, EDMA3_RM_TccCallback tccCb, void *cbData)
 Register Interrupt / Completion Handler for a given TCC.
EDMA3_RM_Result EDMA3_RM_unregisterTccCb (EDMA3_RM_Handle hEdmaResMgr, const EDMA3_RM_ResDesc *channelObj)
 Unregister the previously registered callback function against a DMA/QDMA channel.

Detailed Description

Channel Specific Interface of the EDMA3 Interrupt Manager Layer

Typedef Documentation

typedef void(* EDMA3_RM_TccCallback)(unsigned int tcc, EDMA3_RM_TccStatus status, void *appData)

TCC callback - caters to channel-specific events like "Event Miss Error" or "Transfer Complete". Runs in ISR context.

appData is passed by the application during Register'ing of TCC Callback function.


Function Documentation

EDMA3_RM_Result EDMA3_RM_registerTccCb ( EDMA3_RM_Handle  hEdmaResMgr,
const EDMA3_RM_ResDesc channelObj,
unsigned int  tcc,
EDMA3_RM_TccCallback  tccCb,
void *  cbData 
)

Register Interrupt / Completion Handler for a given TCC.

This function enables the interrupts in IESR/IESRH, only if the callback function provided by the user is NON-NULL. Moreover, if a call-back function is already registered against that TCC, the API fails with the error code EDMA3_RM_E_CALLBACK_ALREADY_REGISTERED. For a NULL callback function, this API returns error.

Parameters:
hEdmaResMgr [IN] Handle to the previously opened EDMA3 Resource Manager Instance
channelObj [IN] Channel ID and type (DMA or QDMA Channel), allocated earlier, and corresponding to which a callback function needs to be registered against the associated TCC.
tcc [IN] TCC against which the handler needs to be registered.
tccCb [IN] The Callback function to be registered against the TCC.
cbData [IN] Callback data to be passed while calling the callback function.
Returns:
EDMA3_RM_SOK or EDMA3_RM Error Code
Note:
This function is re-entrant for unique tcc values. It is non- re-entrant for same tcc value.

Enable the interrupts in IESR/IESRH, only if the Callback function is NOT NULL.

References EDMA3_RM_TccCallbackParams::cbData, EDMA3_RM_E_CALLBACK_ALREADY_REGISTERED, EDMA3_RM_E_INVALID_PARAM, EDMA3_RM_RES_DMA_CHANNEL, EDMA3_RM_RES_QDMA_CHANNEL, EDMA3_RM_Obj::gblCfgParams, EDMA3_RM_GblConfigParams::numDmaChannels, EDMA3_RM_GblConfigParams::numQdmaChannels, EDMA3_RM_GblConfigParams::numTccs, EDMA3_RM_Instance::pResMgrObjHandle, EDMA3_RM_ResDesc::resId, EDMA3_RM_Instance::shadowRegs, EDMA3_RM_TccCallbackParams::tccCb, and EDMA3_RM_ResDesc::type.

EDMA3_RM_Result EDMA3_RM_unregisterTccCb ( EDMA3_RM_Handle  hEdmaResMgr,
const EDMA3_RM_ResDesc channelObj 
)

Unregister the previously registered callback function against a DMA/QDMA channel.

This function unregisters the previously registered callback function against a DMA/QDMA channel by removing any stored callback function. Moreover, it clears the interrupt enable register (IESR/IESRH) by writing to the IECR/ IECRH register, for the TCC associated with that particular channel.

Parameters:
hEdmaResMgr [IN] Handle to the previously opened EDMA3 Resource Manager Instance
channelObj [IN] Channel ID and type, allocated earlier (DMA or QDMA Channel ONLY), and corresponding to which a TCC is there. Against that TCC, the callback needs to be un-registered.
Returns:
EDMA3_RM_SOK or EDMA3_RM Error Code.
Note:
This function is re-entrant for unique (channelObj->type + channelObj->resId) combination. It is non-re-entrant for same channelObj Resource.

References EDMA3_RM_TccCallbackParams::cbData, EDMA3_RM_E_INVALID_PARAM, EDMA3_RM_RES_DMA_CHANNEL, EDMA3_RM_RES_QDMA_CHANNEL, EDMA3_RM_Obj::gblCfgParams, EDMA3_RM_GblConfigParams::numDmaChannels, EDMA3_RM_GblConfigParams::numQdmaChannels, EDMA3_RM_Instance::pResMgrObjHandle, EDMA3_RM_ResDesc::resId, EDMA3_RM_Instance::shadowRegs, EDMA3_RM_TccCallbackParams::tccCb, and EDMA3_RM_ResDesc::type.


Generated on Tue Jul 7 19:26:48 2009 for EDMA3 Resource Manager by  doxygen 1.5.9