Functions | Defines | Data Structures | Typedefs | Enumerations | Variables

ecpy.h File Reference


Detailed Description

ECPY Definitions (C64P) - Functional DMA Library for use with the EDMA3 DMA peripheral. Provides a comprehensive list of DMA operations an algorithm can perform on logical DMA channels it acquires through the IRES_EDMA3CHAN protocol.

WARNING: THIS IS NOT THE FINAL REVISION OF ECPY INTERFACE. IT IS SUBJECT TO CHANGES PER REVIEW FEEDBACK. ADDITIONALLY, CURRENTLY IT IS AN API DEFINITION ONLY, IMPLEMENTATION AND COLLATERAL SUPPORT WILL BE ADDED IN FUTURE FC RELEASES.

#include <ti/sdo/fc/ires/edma3chan/ires_edma3Chan.h>
Include dependency graph for ecpy.h:

Go to the source code of this file.

Functions

Void ECPY_configure (ECPY_Handle handle, ECPY_Params *restrict params, short transferNo)
 Configure all DMA transfer settings for the logical channel.
Void ECPY_directConfigure (ECPY_Handle handle, ECPY_Params *restrict params, short transferNo)
Void ECPY_configure16 (ECPY_Handle handle, ECPY_ParamField16b fieldId, unsigned short value, short transferNo)
 Modify the 16-bit DMA transfer parameter, indicated by the parameter field id, fieldId, of the current channel settings.
Void ECPY_directConfigure16 (ECPY_Handle handle, ECPY_ParamField16b fieldId, unsigned short value, short transferNo)
Void ECPY_configure32 (ECPY_Handle handle, ECPY_ParamField32b fieldId, unsigned int value, short transferNo)
 Modify the 32-bit DMA transfer parameter, indicated by the parameter field id, fieldId, of the current channel settings.
Void ECPY_directConfigure32 (ECPY_Handle handle, ECPY_ParamField32b fieldId, unsigned int value, short transferNo)
Void ECPY_setFinal (ECPY_Handle handle, short transferNo)
 Indicate that a given transfer will be the last in a sequence of linked transfers.
Void ECPY_directSetFinal (ECPY_Handle handle, short transferNo)
Void ECPY_setDestinationMemoryMode (ECPY_Handle handle, short mode)
 Indicate the memory space that DMA transfers submitted to the channel associated with the handle will modify. This information can be used for channel to TC Queue mapping for avoiding known Silicon GEM lockup issues or for performance improvements.
Void ECPY_start (ECPY_Handle handle)
 Submit a single or linked transfer using the most recently configured transfer parameter settings.
Void ECPY_directStartEdma (ECPY_Handle handle)
Void ECPY_directStartQdma (ECPY_Handle handle)
Void ECPY_wait (ECPY_Handle handle)
 Wait for all data transfers on a logical channel to complete.
Void ECPY_directWait (ECPY_Handle handle)
 Wait for all EDMA data transfers submitted to the logical channel via ECPY_directStartEdma to complete.
Void ECPY_activate (ECPY_Handle handle)
 Activate the given channel.
ECPY_Handle ECPY_createHandle (IRES_EDMA3CHAN2_Handle handle, IALG_Handle alg)
 Create an ECPY Handle using the supplied IRES_EDMA3CHAN handle.
Void ECPY_deleteHandle (ECPY_Handle handle)
 Delete ECPY_Handle.
Void ECPY_deactivate (ECPY_Handle handle)
 Deactivates the given channel.
Void ECPY_init (Void)
 Initialize the ECPY module. Called by framework.
Void ECPY_exit (Void)
 Finalization of the ECPY module.

Defines

#define ti_sdo_fc_ires_NOPROTOCOLREV
#define ECPY_GTNAME   "ti.sdo.fc.ecpy"
#define ECPY_MODNAME   "ti.sdo.fc.ecpy"
 Name to pass to Diags_setMask() to enable logging for ECPY functions. For example, Diags_setMask(ECPY_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect.

Data Structures

struct  ECPY_Obj
 ECPY_Obj defines the structure of the dma channel handle that is used to manage state about the EDMA3 channel. More...
struct  ECPY_Params
 DMA transfer specific parameters. Defines the configuration of a logical channel. More...
struct  ECPY_CfgParams
 The module configuration structure for ECPY. It is set at design time by the system integrator to register customize memory allocation/free implementations. More...

Typedefs

typedef enum ECPY_ParamField16b ECPY_ParamField16b
 ECPY 16-bit param field structure. These values are passed to ECPY_configure16() to indicate the field of the ECPY_Params structure to be changed.
typedef enum ECPY_ParamField32b ECPY_ParamField32b
 ECPY 32-bit param field structure. These values are passed to ECPY_configure32() to indicate the field of the ECPY_Params structure to be changed.
typedef enum ECPY_TransferType ECPY_TransferType
 ECPY DMA Transfer Types:
typedef struct ECPY_Obj ECPY_Obj
 ECPY_Obj defines the structure of the dma channel handle that is used to manage state about the EDMA3 channel.
typedef struct ECPY_ObjECPY_Handle
 Handle to "logical" ECPY Channel.
typedef struct ECPY_Params ECPY_Params
 DMA transfer specific parameters. Defines the configuration of a logical channel.
typedef Bool( ECPY_PersistentAllocFxn )(IALG_MemRec *memTab, Int numRecs)
 Memory allocation function signature for module configuration.
typedef Void( ECPY_PersistentFreeFxn )(IALG_MemRec *memTab, Int numRecs)
 Memory deallocation function signature for module configuration.
typedef struct ECPY_CfgParams ECPY_CfgParams
 The module configuration structure for ECPY. It is set at design time by the system integrator to register customize memory allocation/free implementations.

Enumerations

enum  ECPY_ParamField16b {
  ECPY_PARAMFIELD_ELEMENTSIZE = 8,
  ECPY_PARAMFIELD_NUMELEMENTS = 10,
  ECPY_PARAMFIELD_ELEMENTINDEX_SRC = 16,
  ECPY_PARAMFIELD_ELEMENTINDEX_DST = 18,
  ECPY_PARAMFIELD_FRAMEINDEX_SRC = 24,
  ECPY_PARAMFIELD_FRAMEINDEX_DST = 26,
  ECPY_PARAMFIELD_NUMFRAMES = 28
}
 

ECPY 16-bit param field structure. These values are passed to ECPY_configure16() to indicate the field of the ECPY_Params structure to be changed.

More...
enum  ECPY_ParamField32b {
  ECPY_PARAMFIELD_SRCADDR = 4,
  ECPY_PARAMFIELD_DSTADDR = 12,
  ECPY_PARAMFIELD_ELEMENTINDEXES = 16,
  ECPY_PARAMFIELD_FRAMEINDEXES = 24
}
 

ECPY 32-bit param field structure. These values are passed to ECPY_configure32() to indicate the field of the ECPY_Params structure to be changed.

More...
enum  ECPY_TransferType {
  ECPY_1D1D,
  ECPY_1D2D,
  ECPY_2D1D,
  ECPY_2D2D
}
 

ECPY DMA Transfer Types:

More...

Variables

__FAR__ ECPY_CfgParams ECPY_CFG_PARAMS
 Initialization parameters for the ECPY module.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Copyright 2010, Texas Instruments Incorporated