⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csl_edma.h

📁 TI的DM6446的硬件平台搭建的相关例子
💻 H
📖 第 1 页 / 共 3 页
字号:
 /* ====================================================== *   @arg  edmaShObj *		Pointer to the EDMA Shadow Object - to be allocated by the user. *   @arg  edmaNum *		Instance Number of the EDMA. *   @arg  param *		Region specific parameters *   @arg  status *		Pointer to CSL Status. *   @ret  Shadow region handle * * * ====================================================== */CSL_EdmaRegionHandle  CSL_edmaRegionOpen(	/** pointer to the object that holds reference to the shadow region opened */    CSL_EdmaRegionObj           *edmaShObj,	/** instance of EDMA whose shadow region is requested for open */    CSL_InstNum                 edmaNum,	/** parameters associated */    CSL_EdmaRegionParam         *param,	/** points to the placeholder for the status (success/errors) of the call */    CSL_Status                  *status);/* * ====================================================== *   @func   CSL_EdmaRegionClose * ====================================================== *//** @brief  *	   Closes the specified EDMA Shadow region. Henceforth access *     to the shadow region resources can be obtained only  *     after a successful CSL_edmaRegionOpen Call. * */ /* ====================================================== *   @arg  hRegion *		 Shadow region handle *   @ret  CSL_Status: CSL_SOK * * * ====================================================== */CSL_Status  CSL_edmaRegionClose(	/**  Shadow region handle */    CSL_EdmaRegionHandle        hRegions);/* * ====================================================== *   @func   CSL_edmaHwRegionControl * ====================================================== *//** @brief  *	   Shadow Region level control commands are handled by this API. */ /* ====================================================== *   @arg  hRegion *		 Shadow region handle *   @arg  cmd *		Shadow Region Command *   @arg  cmdArg *	  Additional command arguments are passed to the API using this.  *    The CSL function type casts to the appropriate arguments type depending on *    the cmd.   *   @ret  CSL_Status - CSL_SOK/CSL_ESYS_BADHANDLE * * ====================================================== */CSL_Status  CSL_edmaHwRegionControl(    /**  Shadow region handle */    CSL_EdmaRegionHandle           hRegion,    /** The command to this API which indicates the action to be taken */    CSL_EdmaHwRegionControlCmd     cmd,    /** Optional argument @a void* casted */    void                           *cmdArg);/* Top level Shadow Query API *//* * ====================================================== *   @func   CSL_edmaGetHwRegionStatus * ====================================================== *//** @brief  *	   Shadow region level queries to the EDMA module are handled through this API. */ /* ====================================================== *   @arg  hRegion *		Shadow region handle *   @arg  myQuery *		Shadow region query  *   @arg  response *	  Additional query arguments are passed to the API using the response structure.  *    The query response is passed back to the user program using this pointer. *    Depending on 'myQuery' this argument is type casted appropriately. *    @ret  CSL_Status - CSL_SOK/CSL_ESYS_BADHANDLE * * ====================================================== */CSL_Status  CSL_edmaGetHwRegionStatus(    /** Shadow region handle */    CSL_EdmaRegionHandle                 hRegion,    /** The query to this API which indicates the status/setup     * to be returned */    CSL_EdmaHwRegionStatusQuery     	 myQuery,    /** Placeholder to return the status; @a void* casted */    void                                 *response);/**@}*/  /**@addtogroup CSL_EDMA_FUNCTION_CHANNEL@{*/        /* * ====================================================== *   @func   CSL_edmaChannelOpen * ====================================================== *//** @brief  *  Opens an EDMA channel to get access to the resources for a particular channel. *  On success, returns a valid handle which can be *  used to access the channel resources. On failure (when the channel is *  already open), returns NULL. *  A number of checks are performed when a channel is attempted to be opened. * */ /* ====================================================== *   @arg  edmaObj *		Pointer to the EDMA Handle Object - to be allocated by the user. *   @arg  edmaNum *		Instance Number of the EDMA. *   @arg  param *		Channel specific parameters *   @arg  status *		Pointer to CSL Status. *   @ret  Channel Handle * * * ====================================================== */ CSL_EdmaChanHandle  CSL_edmaChannelOpen(    /** Pointer to the channel object*/    CSL_EdmaChanObj            *edmaObj,    /** Module instance number */    CSL_InstNum                edmaNum,    /** Channel parameters  */    CSL_EdmaChannelParam       *param,    /** place holder for the status */    CSL_Status                 *status);/* * ====================================================== *   @func   CSL_edmaChannelClose * ====================================================== *//** @brief *     Close (Invalidate) a EDMA channel (passed as handle) after it has finished *	   operating. The channel cannot be accessed any more. The associated Param entries *     are also deallocated. * *//* ====================================================== *   @arg  hEdma *		Channel Handle *   @ret  CSL_Status * * ======================================================*/ CSL_Status  CSL_edmaChannelClose(    /** Channel Handle*/    CSL_EdmaChanHandle	      hEdma);/* * ====================================================== *   @func   CSL_edmaChannelSetup * ====================================================== *//** @brief  *     Returns the status of the setup call. * */ /* ====================================================== *   @arg  hEdma *		Channel handle *   @arg  setup *		Setup structure *   @ret  CSL Status * * ====================================================== */CSL_Status  CSL_edmaChannelSetup(    /** Channel Handle*/       CSL_EdmaChanHandle	      hEdma,    /** Setup Parameters */    CSL_EdmaHwChannelSetup      *setup);/* Higher level control API *//* * ====================================================== *   @func   CSL_edmaHwChannelControl * ====================================================== *//** @brief  *	   Channel level control commands are handled by this API. */ /* ====================================================== *   @arg  hCh *		Channel Handle *   @arg  cmd *		Channel Command *   @arg  cmdArg *	  Additional command arguments are passed to the API using this.  *    The CSL function type casts to the appropriate arguments type depending on *    the cmd.   *   @ret  CSL_Status - CSL_SOK/CSL_ESYS_BADHANDLE * * ====================================================== */CSL_Status  CSL_edmaHwChannelControl(	/** Channel Handle*/    CSL_EdmaChanHandle              hCh,    /** The command to this API which indicates the action to be taken */    CSL_EdmaHwChannelControlCmd     cmd,    /** Optional argument @a void* casted */    void                            *cmdArg);/* top level query API *//* * ====================================================== *   @func   CSL_edmaGetHwChannelStatus * ====================================================== *//** @brief  *	   Channel level queries to the EDMA module are handled through this API. */ /* ====================================================== *   @arg  hCh *		Channel Handle *   @arg  myQuery *		Channel query  *   @arg  response *	 Additional query arguments are passed to the API using the response structure.  *   The query response is passed back to the user program using this pointer. *   Depending on 'myQuery' this argument is type casted appropriately. *   @ret  CSL_Status - CSL_SOK/CSL_ESYS_BADHANDLE * * ====================================================== */CSL_Status  CSL_edmaGetHwChannelStatus(	/** Channel Handle*/    CSL_EdmaChanHandle                 hCh,    /** The query to this API which indicates the status/setup     * to be returned */    CSL_EdmaHwChannelStatusQuery    myQuery,    /** Placeholder to return the status @a void* casted */    void                           *response);/* * ====================================================== *   @func   CSL_edmaGetParamHandle * ====================================================== *//** @brief  *	  Returns the handle to the requested parameter entry. * *//* ====================================================== *   @arg  hEdma *		Channel Handle *   @arg  entryNum *		Entry number desired. *   @arg  status *		Pointer to the placeholder for the status. *   @ret  Handle to the Param entry * * * ======================================================*/CSL_EdmaParamHandle  CSL_edmaGetParamHandle(    /**  a handle to the channel instance of the specified EDMA     *   obtained  through the @a CSL_edmaOpen() call */    CSL_EdmaChanHandle            hEdma,    /**  entry number to be acquired */    Uint16                        entryNum,    /**  status of operation */    CSL_Status			      	  *status	    );  /* * ====================================================== *   @func   CSL_edmaParamSetup * ====================================================== *//** @brief  *	   Configures a EDMA Parameter Entry *	   Sets up a particular EDMA/QDMA Parameter Entry using the *	   configurations specified in the Setup Structure. *	    * *//* ====================================================== *   @arg  hParam *		Handle to the Parameter Handle *   @arg  void *	    	Pointer to the CSL_EdmaParamSetup OR *						   CSL_EdmaParamHandle OR *      				   CSL_EdmaChanHandle  *   		depending on the 3rd argument.	 *   @arg  stage	 *		Stage of the Setup i.e BASIC/LINK/CHAIN *   @ret  CSL_Status * * * ======================================================*/CSL_Status  CSL_edmaParamSetup(    /**  a handle to the param entry acquired previously by the channel */    CSL_EdmaParamHandle        hParam,    /** Pointer to setup structure which contains the     *  information to program EDMA Channel to the startup state */    void                       *pSetup,     /**        Specifies the stage of Setup i.e Could be initial, link Setup or Chain Setup. These         do not fall into the category of the Control Commands since         this does not fall into the category of the run time change of parameter         setups. The user is expected to follow this flow of parameter entry setup hence        3 diferent stages are required */    CSL_EdmaParamSetupStage    stage  );/* * ====================================================== *   @func   CSL_edmaParamWriteWord * ====================================================== *//** @brief  * This is for the ease of QDMA channels. Once the QDMA channel transfer is triggered, * subsequent triggers may be done with only writing the modified words in * the parameter entry along with the trigger word. This API achieves this  * this purpose. Most usage scenarios, the user should not be writing more than the  * trigger word entry. * *//* ====================================================== *   @arg  hParamHndl *		Handle to the Parameter Entry *   @arg  wordOffset *	    Word Offset at which the specified word is to be written *   @arg  word *		Word itself that needs to be written *   @ret  CSL_Status CSL_SOK * * * ======================================================*/CSL_Status  CSL_edmaParamWriteWord(    /** a handle to the param entry acquired previously by the QDMA channel */    CSL_EdmaParamHandle        hParamHndl,    /** word offset in the 8 word paramater entry */    Uint16                     wordOffset,    /** word to be written */    Uint32                     word );#endif/* Rev.No.   Date/Time               ECN No.          Modifier      *//* -------   ---------               -------          --------      *//* 2          Aug 10:08:58 9         2272             xkeshavm      *//*                                                                  *//* To upload API CSL 0.51 Release                                   *//********************************************************************/ 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -