Framework Components Application Programming Interface (API)  fc-v07
Functions | Macros | Typedefs | Variables
dskt2.h File Reference

Detailed Description

Provides services to support XDAIS algorithm instance objects.

#include <xdc/std.h>
#include <xdc/runtime/IHeap.h>
#include <ti/xdais/ialg.h>
#include <ti/xdais/ires.h>
#include <stddef.h>
Include dependency graph for dskt2.h:

Go to the source code of this file.

Functions

Void DSKT2_activateAlg (Int scratchMutexId, IALG_Handle alg)
 Prepares a XDAIS algorithm instance object to start using its scratch memory. More...
 
Int DSKT2_controlAlg (IALG_Handle alg, IALG_Cmd cmd, IALG_Status *status)
 This is a convenience API to call a XDAIS algorithm instance's algControl function. More...
 
IALG_Handle DSKT2_createAlg (Int scratchMutexId, IALG_Fxns *fxns, IALG_Handle parent, IALG_Params *params)
 Creates and initializes a XDAIS algorithm instance object. More...
 
IALG_Handle DSKT2_createAlg2 (Int scratchMutexId, IALG_Fxns *fxns, IALG_Handle parent, IALG_Params *params, xdc_runtime_IHeap_Handle extHeapId)
 Creates and initializes a XDAIS algorithm instance object. More...
 
IALG_Handle DSKT2_createAlgExt (Int scratchId, IALG_Fxns *fxns, IALG_Handle parent, IALG_Params *params)
 Creates and initializes a XDAIS algorithm instance object, allocating all algorithm memory in external memory. More...
 
Void DSKT2_deactivateAlg (Int scratchMutexId, IALG_Handle alg)
 Prepares a XDAIS algorithm instance object to give up using its scratch memory. More...
 
Int DSKT2_deactivateAll ()
 All algorithms that have been deactivated lazily are now really deactivate. Any algorithms that are still currently active will be left as is. The number of algorithms that are still active will be returned from this call. More...
 
Bool DSKT2_freeAlg (Int scratchMutexId, IALG_Handle alg)
 Deletes a XDAIS algorithm instance object and frees all persistent memory allocated for the instance object. More...
 
Bool DSKT2_allocScratch (IALG_Handle alg, Int mutexId, IALG_MemRec *memTab, Int numRecs)
 Alocates memory from a DSKT2 shared scratch group buffer. More...
 
Int DSKT2_getScratchId (IALG_Handle alg)
 
Void DSKT2_freeScratch (Int mutexId, Void *addr, UInt size)
 Alocates memory from a DSKT2 shared scratch group buffer. More...
 
Bool DSKT2_allocPersistent (IALG_MemRec *memTab, Int numRecs)
 Alocates persistent memory to the requesting algorithm. More...
 
Void DSKT2_freePersistent (IALG_MemRec *memTab, Int numRecs)
 Frees persistent memory from the requesting algorithm. More...
 

Macros

#define DSKT2_NUM_SCRATCH_GROUPS   20
 
#define DSKT2_MAX_MEM_ALLOCATION_SIZE   0xFFFF
 
#define DSKT2_NUM_SHAREDHEAPS   2
 
#define DSKT2_MODNAME   "ti.sdo.fc.dskt2"
 Name to pass to Diags_setMask() to enable logging for DSKT2 functions. For example, Diags_setMask(DSKT2_MODNAME"+EX1234567"); turns on all Log statements in this module. Diags_setMask() must be called after initialization to take effect. More...
 

Typedefs

typedef Void(* DSKT2_CacheWBInvFxn) (Ptr blockPtr, size_t byteCnt, Bool wait)
 Function prototype of cache writeback function: Writes back the memory within the range of blockPtr and blockPtr + byteCnt. More...
 

Variables

__FAR__ DSKT2_CacheWBInvFxn DSKT2_cacheWBInvFxn
 Cache writeback function pointer used by DSKT2 if not NULL. More...
 
__FAR__ xdc_runtime_IHeap_Handle DSKT2_daram0Heap
 
__FAR__ xdc_runtime_IHeap_Handle DSKT2_daram1Heap
 
__FAR__ xdc_runtime_IHeap_Handle DSKT2_daram2Heap
 
__FAR__ xdc_runtime_IHeap_Handle DSKT2_saram0Heap
 
__FAR__ xdc_runtime_IHeap_Handle DSKT2_saram1Heap
 
__FAR__ xdc_runtime_IHeap_Handle DSKT2_saram2Heap
 
__FAR__ xdc_runtime_IHeap_Handle DSKT2_iprogHeap
 
__FAR__ xdc_runtime_IHeap_Handle DSKT2_eprogHeap
 
__FAR__ xdc_runtime_IHeap_Handle DSKT2_esdataHeap
 
__FAR__ xdc_runtime_IHeap_Handle _DSKT2_heap
 
__FAR__ UInt _DSKT2_ALLOW_EXTERNAL_SCRATCH
 
__FAR__ UInt _DSKT2_DARAM_SCRATCH_SIZES []
 
__FAR__ UInt _DSKT2_SARAM_SCRATCH_SIZES []
 
__FAR__ Bool ti_sdo_fc_dskt2_DSKT2_disableLazyDeactivate
 Set this to TRUE to disable lazy deactivate feature in DSKT2. More...
 
Copyright 2016, Texas Instruments Incorporated