1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
33
34 import xdc.runtime.IHeap;
35
36 /*!
37 * ======== ECPY ========
38 * EDMA functional layer library.
39 */
40
41 @Template("./ECPY.xdt")
42 metaonly module ECPY {
43
44 config Bool cachedIresMode = true;
45
46 /*!
47 * ======== persistentAllocFxn ========
48 * Function for allocating persistent memory for ECPY's
49 * implementation's internal objects and for allocating memory for
50 * ECPY handle objects.
51 *
52 * The signature of the persistent alloc function is:
53 * extern Bool persistentAllocFxn(IALG_MemRec * memTab, Int numRecs);
54 */
55 config String persistentAllocFxn = null;
56
57 /*!
58 * ======== persistentFreeFxn ========
59 * Function for freeing persistent memory allocated by ECPY.
60 *
61 * The signature of hte persistentFreeFxn is:
62 *
63 * extern Void persistentFreeFxn(IALG_MemRec *memTab, Int numRecs);
64 */
65 config String persistentFreeFxn = null;
66
67 /*!
68 * ======== scratchAllocFxn ========
69 * Function for allocating scratch memory for ECPY Handle.
70 * The scratch memory can be overlayed with other algorithm instance's
71 * handle's that are created in the same scratch group to reduce footprint
72 * in high-density multi-channel environments.
73 *
74 * The signature of the shared allocation function is:
75 *
76 * extern Bool scratchAllocFxn(IALG_Handle alg, Int scratchId,
77 * IALG_MemRec * memTab, Int numRecs);
78 */
79 config String scratchAllocFxn = null;
80
81 /*!
82 * ======== scratchFreeFxn ========
83 * Function for freeing scratch memory allocated by ECPY.
84 *
85 * The signature of the scratchFreeFxn is:
86 *
87 * extern Void scratchFreeFxn(Int mutexId, Void *addr, UInt size);
88 */
89 config String scratchFreeFxn = null;
90
91 /*!
92 * ======== getScratchIdFxn ========
93 * Function for obtaining scratchId associated with IALG_Handle
94 * used for creating the algorithm instance.
95 * When set to null, ECPY assumes scratchId => -1
96 *
97 * The signature of the getScratchIdFxn is:
98 *
99 * extern Int DSKT2_getScratchId(IALG_Handle alg);
100 */
101 config String getScratchIdFxn = null;
102 }
103 104 105