Framework Components Application Programming Interface (API)
fc-t15
Main Page
Modules
Data Structures
Files
Related Pages
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
packages
ti
sdo
fc
ecpy
ecpy.h
Go to the documentation of this file.
1
/*
2
* Copyright 2013 by Texas Instruments Incorporated.
3
*
4
*/
5
6
/*
7
* Copyright (c) 2012, Texas Instruments Incorporated
8
* All rights reserved.
9
*
10
* Redistribution and use in source and binary forms, with or without
11
* modification, are permitted provided that the following conditions
12
* are met:
13
*
14
* * Redistributions of source code must retain the above copyright
15
* notice, this list of conditions and the following disclaimer.
16
*
17
* * Redistributions in binary form must reproduce the above copyright
18
* notice, this list of conditions and the following disclaimer in the
19
* documentation and/or other materials provided with the distribution.
20
*
21
* * Neither the name of Texas Instruments Incorporated nor the names of
22
* its contributors may be used to endorse or promote products derived
23
* from this software without specific prior written permission.
24
*
25
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
27
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
29
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
30
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
31
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
32
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
33
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
34
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
35
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36
*
37
*/
79
#ifndef ti_sdo_fc_ecpy_ECPY_
80
#define ti_sdo_fc_ecpy_ECPY_
81
82
83
#ifdef __cplusplus
84
extern
"C"
{
85
#endif
86
89
90
#define ti_sdo_fc_ires_NOPROTOCOLREV
91
#include <
ti/sdo/fc/ires/edma3chan/ires_edma3Chan.h
>
92
93
#define ECPY_GTNAME "ti.sdo.fc.ecpy"
94
103
#define ECPY_MODNAME "ti.sdo.fc.ecpy"
104
105
111
typedef
enum
ECPY_ParamField16b
{
112
113
ECPY_PARAMFIELD_ELEMENTSIZE
= 8,
114
ECPY_PARAMFIELD_NUMELEMENTS
= 10 ,
115
ECPY_PARAMFIELD_ELEMENTINDEX_SRC
= 16,
116
ECPY_PARAMFIELD_ELEMENTINDEX_DST
= 18,
117
ECPY_PARAMFIELD_FRAMEINDEX_SRC
= 24,
118
ECPY_PARAMFIELD_FRAMEINDEX_DST
= 26,
119
ECPY_PARAMFIELD_NUMFRAMES
= 28
120
121
}
ECPY_ParamField16b
;
122
128
typedef
enum
ECPY_ParamField32b
{
129
130
ECPY_PARAMFIELD_SRCADDR
= 4,
131
ECPY_PARAMFIELD_DSTADDR
= 12,
132
ECPY_PARAMFIELD_ELEMENTINDEXES
= 16,
133
ECPY_PARAMFIELD_FRAMEINDEXES
= 24
134
135
}
ECPY_ParamField32b
;
136
147
typedef
enum
ECPY_TransferType
{
148
154
ECPY_1D1D
,
155
169
ECPY_1D2D
,
170
182
ECPY_2D1D
,
183
195
ECPY_2D2D
196
}
ECPY_TransferType
;
197
201
typedef
struct
ECPY_Obj *
ECPY_Handle
;
202
203
208
typedef
struct
ECPY_Params
{
209
211
ECPY_TransferType
transferType
;
212
214
Void *
srcAddr
;
215
217
Void *
dstAddr
;
218
220
unsigned
short
elementSize
;
221
223
unsigned
short
numElements
;
224
226
unsigned
short
numFrames
;
227
232
short
srcElementIndex
;
233
238
short
dstElementIndex
;
239
245
short
srcFrameIndex
;
246
252
short
dstFrameIndex
;
253
254
}
ECPY_Params
;
255
256
288
#if defined(ECPY_CONFIGURE_INLINE) || defined(ECPY_INLINE_ALL)
289
#include <ti/sdo/fc/ecpy/ecpy_configure.h>
290
#else
291
Void
ECPY_configure
(ECPY_Handle handle,
ECPY_Params
* restrict params,
292
short
transferNo);
293
#endif
294
326
#if defined(ECPY_DIRECTCONFIGURE_INLINE) || defined(ECPY_INLINE_ALL)
327
#include <ti/sdo/fc/ecpy/ecpy_directconfigure.h>
328
#else
329
Void
ECPY_directConfigure
(ECPY_Handle handle,
ECPY_Params
* restrict params,
330
short
transferNo);
331
#endif
332
333
370
#if defined(ECPY_CONFIGURE16_INLINE) || defined(ECPY_INLINE_ALL)
371
#include <ti/sdo/fc/ecpy/ecpy_configure16.h>
372
#else
373
Void
ECPY_configure16
(ECPY_Handle handle,
ECPY_ParamField16b
fieldId,
374
unsigned
short
value,
short
transferNo);
375
#endif
376
415
#if defined(ECPY_DIRECTCONFIGURE16_INLINE) || defined(ECPY_INLINE_ALL)
416
#include <ti/sdo/fc/ecpy/ecpy_directconfigure16.h>
417
#else
418
Void
ECPY_directConfigure16
(ECPY_Handle handle,
ECPY_ParamField16b
fieldId,
419
unsigned
short
value,
short
transferNo);
420
#endif
421
459
#if defined(ECPY_CONFIGURE32_INLINE) || defined(ECPY_INLINE_ALL)
460
#include <ti/sdo/fc/ecpy/ecpy_configure32.h>
461
#else
462
Void
ECPY_configure32
(ECPY_Handle handle,
ECPY_ParamField32b
fieldId,
463
unsigned
int
value,
short
transferNo);
464
#endif
465
504
#if defined(ECPY_DIRECTCONFIGURE32_INLINE) || defined(ECPY_INLINE_ALL)
505
#include <ti/sdo/fc/ecpy/ecpy_directconfigure32.h>
506
#else
507
Void
ECPY_directConfigure32
(ECPY_Handle handle,
ECPY_ParamField32b
fieldId,
508
unsigned
int
value,
short
transferNo);
509
#endif
510
542
#if defined(ECPY_SETFINAL_INLINE) || defined(ECPY_INLINE_ALL)
543
#include <ti/sdo/fc/ecpy/ecpy_setfinal.h>
544
#else
545
Void
ECPY_setFinal
(ECPY_Handle handle,
short
transferNo);
546
#endif
547
579
#if defined(ECPY_DIRECTSETFINAL_INLINE) || defined(ECPY_INLINE_ALL)
580
#include <ti/sdo/fc/ecpy/ecpy_directsetfinal.h>
581
#else
582
Void
ECPY_directSetFinal
(ECPY_Handle handle,
short
transferNo);
583
#endif
584
596
Void
ECPY_setDestinationMemoryMode
(ECPY_Handle handle,
short
mode);
597
634
#if defined(ECPY_START_INLINE) || defined(ECPY_INLINE_ALL)
635
#include <ti/sdo/fc/ecpy/ecpy_start.h>
636
#else
637
Void
ECPY_start
(ECPY_Handle handle);
638
#endif
639
640
683
#if defined(ECPY_DIRECTSTARTEDMA_INLINE) || defined(ECPY_INLINE_ALL)
684
#include <ti/sdo/fc/ecpy/ecpy_directstartedma.h>
685
#else
686
Void
ECPY_directStartEdma
(ECPY_Handle handle);
687
#endif
688
692
Void
ECPY_directStartQdma
(ECPY_Handle handle);
693
694
721
#if defined(ECPY_WAIT_INLINE) || defined(ECPY_INLINE_ALL)
722
#include <ti/sdo/fc/ecpy/ecpy_wait.h>
723
#else
724
Void
ECPY_wait
(ECPY_Handle handle);
725
#endif
726
759
#if defined(ECPY_DIRECTWAIT_INLINE) || defined(ECPY_INLINE_ALL)
760
#include <ti/sdo/fc/ecpy/ecpy_directwait.h>
761
#else
762
Void
ECPY_directWait
(ECPY_Handle handle);
763
#endif
764
780
Void
ECPY_activate
(ECPY_Handle handle);
781
795
ECPY_Handle
ECPY_createHandle
(
IRES_EDMA3CHAN2_Handle
handle,
IALG_Handle
alg);
796
805
Void
ECPY_deleteHandle
(ECPY_Handle handle);
806
821
Void
ECPY_deactivate
(ECPY_Handle handle);
822
846
Void
ECPY_setEarlyCompletionMode
(ECPY_Handle handle,
short
enabled);
847
851
Void
ECPY_init
(Void);
852
856
Void
ECPY_exit
(Void);
857
861
typedef
Bool (
ECPY_PersistentAllocFxn
)(
IALG_MemRec
*memTab, Int numRecs);
862
866
typedef
Void (
ECPY_PersistentFreeFxn
)(
IALG_MemRec
*memTab, Int numRecs);
867
872
typedef
Bool (
ECPY_ScratchAllocFxn
)(
IALG_Handle
alg, Int scratchId,
873
IALG_MemRec
*memTab, Int numRecs);
878
typedef
Void (
ECPY_ScratchFreeFxn
)(Int mutexId, Void *addr, UInt size);
879
884
typedef
Int (
ECPY_getScratchIdFxn
)(
IALG_Handle
alg);
885
886
897
typedef
struct
ECPY_CfgParams
{
898
902
ECPY_PersistentAllocFxn
*
allocFxn
;
903
907
ECPY_PersistentFreeFxn
*
freeFxn
;
908
913
ECPY_ScratchAllocFxn
*
scratchAllocFxn
;
914
919
ECPY_ScratchFreeFxn
*
scratchFreeFxn
;
920
925
ECPY_getScratchIdFxn
*
getScratchIdFxn
;
926
}
ECPY_CfgParams
;
927
931
extern
__FAR__
ECPY_CfgParams
ECPY_CFG_PARAMS
;
932
935
#ifdef __cplusplus
936
}
937
#endif
/* extern "C" */
938
939
940
#endif
/* ti_sdo_fc_ecpy_ECPY_ */
941
/*
942
* @(#) ti.sdo.fc.ecpy; 1, 0, 1,; 10-29-2013 18:37:55; /db/atree/library/trees/fc/fc-t15/src/ xlibrary
943
944
*/
945
Copyright 2013, Texas Instruments Incorporated