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 35 36 37
38
39 import xdc.runtime.IHeap;
40
41 /*!
42 * ======== ECPY ========
43 * EDMA functional layer library.
44 */
45
46 @Template("./ECPY.xdt")
47 metaonly module ECPY {
48
49 config Bool cachedIresMode = true;
50
51 /*!
52 * ======== persistentAllocFxn ========
53 * Function for allocating persistent memory for ECPY's
54 * implementation's internal objects and for allocating memory for
55 * ECPY handle objects.
56 *
57 * The signature of the persistent alloc function is:
58 * extern Bool persistentAllocFxn(IALG_MemRec * memTab, Int numRecs);
59 */
60 config String persistentAllocFxn = null;
61
62 /*!
63 * ======== persistentFreeFxn ========
64 * Function for freeing persistent memory allocated by ECPY.
65 *
66 * The signature of hte persistentFreeFxn is:
67 *
68 * extern Void persistentFreeFxn(IALG_MemRec *memTab, Int numRecs);
69 */
70 config String persistentFreeFxn = null;
71
72 /*!
73 * ======== scratchAllocFxn ========
74 * Function for allocating scratch memory for ECPY Handle.
75 * The scratch memory can be overlayed with other algorithm instance's
76 * handle's that are created in the same scratch group to reduce footprint
77 * in high-density multi-channel environments.
78 *
79 * The signature of the shared allocation function is:
80 *
81 * extern Bool scratchAllocFxn(IALG_Handle alg, Int scratchId,
82 * IALG_MemRec * memTab, Int numRecs);
83 */
84 config String scratchAllocFxn = null;
85
86 /*!
87 * ======== scratchFreeFxn ========
88 * Function for freeing scratch memory allocated by ECPY.
89 *
90 * The signature of the scratchFreeFxn is:
91 *
92 * extern Void scratchFreeFxn(Int mutexId, Void *addr, UInt size);
93 */
94 config String scratchFreeFxn = null;
95
96 /*!
97 * ======== getScratchIdFxn ========
98 * Function for obtaining scratchId associated with IALG_Handle
99 * used for creating the algorithm instance.
100 * When set to null, ECPY assumes scratchId => -1
101 *
102 * The signature of the getScratchIdFxn is:
103 *
104 * extern Int DSKT2_getScratchId(IALG_Handle alg);
105 */
106 config String getScratchIdFxn = null;
107 }
108 109 110
111 112 113 114
115