XDAIS  dais-x04
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
acpy2.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2006-2013, Texas Instruments Incorporated
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * * Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  *
12  * * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the distribution.
15  *
16  * * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  *
32  */
33 /*
34  * @file acpy2.h
35  *
36  * @brief Declaration of the ACPY2 interface. (Deprecated)
37  *
38  * @acpyDeprecated
39  *
40  *
41 
42  */
43 
44 #ifndef ACPY2_
45 #define ACPY2_
46 
47 #include "idma2.h"
48 
49 #ifdef __cplusplus
50 extern "C" {
51 #endif
52 
53 /*
54  * ======== ACPY2_complete ========
55  * Check to see if all dma transfers on logical channel are finished. This
56  * is a non-blocking call.
57  */
58 extern Int ACPY2_complete(IDMA2_Handle handle);
59 
60 /*
61  * ======= ACPY2_configure ========
62  * Configure logical channel.
63  */
64 extern Void ACPY2_configure(IDMA2_Handle handle, IDMA2_Params *params);
65 
66 /*
67  * ======== ACPY2_exit ========
68  * Finalization of the ACPY2 module
69  */
70 extern Void ACPY2_exit(Void);
71 
72 /*
73  * ======== ACPY2_getChanObjSize ========
74  * Called by framework. Returns the channel object size.
75  */
76 extern Uns ACPY2_getChanObjSize(Void);
77 
78 /*
79  * ======== ACPY2_init ========
80  * Initialize the ACPY2 module. Called by framework
81  */
82 extern Void ACPY2_init(Void);
83 
84 /*
85  * ======== ACPY2_initChannel ========
86  * Called by the framework. Initialize the channel state.
87  * Associate the channel with the provided queueId.
88  */
89 extern Void ACPY2_initChannel(IDMA2_Handle handle, Int queueId);
90 
91 /*
92  * ======== ACPY2_setDstFrameIndex ========
93  * Set the Destination Frame Index.
94  */
95 extern Void ACPY2_setDstFrameIndex(IDMA2_Handle handle, Int frameIndex);
96 
97 /*
98  * ======== ACPY2_setNumFrames ========
99  * Set the Number of Frames
100  */
101 extern Void ACPY2_setNumFrames(IDMA2_Handle handle, Uns numFrames);
102 
103 /*
104  * ======== ACPY2_setSrcFrameIndex ========
105  * Set the Source Frame Index.
106  */
107 extern Void ACPY2_setSrcFrameIndex(IDMA2_Handle handle, Int frameIndex);
108 
109 /*
110  * ======= ACPY2_start ========
111  * Submit the transfer specific information. The DMA manager will handle
112  * the request, and program the DMA device.
113  */
114 extern Void ACPY2_start(IDMA2_Handle handle,IDMA2_AdrPtr src,
115  IDMA2_AdrPtr dst, Uns count);
116 
117 /*
118  * ======= ACPY2_startAligned ========
119  * Submit the transfer specific information. The DMA manager will
120  * handle the request, and program the DMA device. Requires aligned
121  * addresses and index parameters
122  */
123 extern Void ACPY2_startAligned(IDMA2_Handle handle,IDMA2_AdrPtr src,
124  IDMA2_AdrPtr dst, Uns count);
125 
126 /*
127  * ======= ACPY2_wait ========
128  * Wait for all data transfer on logical channel to complete. This is a
129  * blocking call.
130  */
131 extern Void ACPY2_wait(IDMA2_Handle handle);
132 
133 #ifdef __cplusplus
134 }
135 #endif
136 
137 #endif /* ACPY2_ */
138 
139 
Copyright 2013, Texas Instruments Incorporated