XDAIS  dais-x04
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Data Fields

IDMA3_Obj holds the private state associated with each logical DMA channel. More...

#include <idma3.h>

Collaboration diagram for IDMA3_Obj:
Collaboration graph

Data Fields

unsigned short numTccs
unsigned short numPaRams
unsigned char * tccTable
Uns * paRamAddr
unsigned short qdmaChan
Bool transferPending
Void * env
IDMA3_ProtocolHandle protocol
Bool persistent

Detailed Description

IDMA3_Obj holds the private state associated with each logical DMA channel.


Field Documentation

unsigned short IDMA3_Obj::numTccs

The number of TCCs allocated to this channel.

unsigned short IDMA3_Obj::numPaRams

The number of PaRam entries allocated to this channel.

unsigned char* IDMA3_Obj::tccTable

TCCs assigned to channel

Uns* IDMA3_Obj::paRamAddr

PaRAMs assigned to channel

unsigned short IDMA3_Obj::qdmaChan

Physical QDMA Channel assigned to handle

Bool IDMA3_Obj::transferPending

Set to true when a new transfer is started on this channel. Set to false when a wait/sync operation is performed on this channel.

Void* IDMA3_Obj::env

IDMA3_ProtocolHandle ('protocol') dependent private channel memory. The memory for the 'env' is allocated and reclaimed by the framework when this IDMA3 channel has been requested with a non-NULL 'protocol'.

The size, type and alignment of the allocated 'env' memory is obtained by calling the channel's 'protocol'->getEnvMemRec() function.

During channel creation, the 'env' pointer must always be created as a private & persistent memory assigned to the IDMA3 channel object. However, the framework/resource manager is also allowed to allocate requested internal 'env' memory as 'scratch' memory which can only be used when the channel is in active state. In the 'scratch' allocation case, the framework/resource manager must still allocate the 'env' as 'persistent', possibly in external memory, and must pass the address of the 'scratch' 'internal' 'env' memory in the first word of the 'env' memory.

If the channel 'env' memory is created as 'persistent' with no 'scratch' shadow, then the first word of the env memory must be set to NULL.

IDMA3_ProtocolHandle IDMA3_Obj::protocol

The channel protocol functions used by the DMA manager to determine memory requirements for the 'env'

Bool IDMA3_Obj::persistent

Indicates if the channel has been allocated with persistent property.


The documentation for this struct was generated from the following file:
Copyright 2013, Texas Instruments Incorporated