[keystone-rtos/edma3_lld.git] / packages / ti / sdo / edma3 / rm / docs / html / edma3__common_8h.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3 <title>EDMA3 Resource Manager: edma3_common.h File Reference</title>
4 <link href="tabs.css" rel="stylesheet" type="text/css">
5 <link href="doxygen.css" rel="stylesheet" type="text/css">
6 </head><body>
7 <!-- Generated by Doxygen 1.5.9 -->
8 <div class="navigation" id="top">
9 <div class="tabs">
10 <ul>
11 <li><a href="index.html"><span>Main Page</span></a></li>
12 <li><a href="modules.html"><span>Modules</span></a></li>
13 <li><a href="annotated.html"><span>Data Structures</span></a></li>
14 <li class="current"><a href="files.html"><span>Files</span></a></li>
15 </ul>
16 </div>
17 <div class="tabs">
18 <ul>
19 <li><a href="files.html"><span>File List</span></a></li>
20 <li><a href="globals.html"><span>Globals</span></a></li>
21 </ul>
22 </div>
23 </div>
24 <div class="contents">
25 <h1>edma3_common.h File Reference</h1>EDMA3 Common header provides generic defines/typedefs and debugging info.
26 <a href="#_details">More...</a>
27 <p>
29 <p>
30 <a href="edma3__common_8h_source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
31 <tr><td></td></tr>
32 <tr><td colspan="2"><br><h2>Defines</h2></td></tr>
33 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#95d167e96cea8543867e2fdfbe3d97a3">EDMA3_RM_DEBUG</a></td></tr>
35 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#f0a1515a16188594f26f98514ce41e86">EDMA3_DRV_DEBUG</a></td></tr>
37 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#a8cecfc5c5c054d2875c03e77b7be15d">TRUE</a> (1u)</td></tr>
39 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#a93f0eb578d23995850d61f7d61c55c1">FALSE</a> (0u)</td></tr>
41 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a> 0u</td></tr>
43 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#52193425a534f0300b090bb7cd179525">EDMA3_RM_SOK</a> (0u)</td></tr>
45 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#7e70ebba4133b77d0ca56f2d7ce8e5d1">EDMA3_DRV_SOK</a> (0u)</td></tr>
47 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#1ad673455e987d4c73ffafbc0397a94d">EDMA3_OSSEM_NO_TIMEOUT</a> (-1)</td></tr>
49 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#c0a8c4796cfea4faa83af1312d5581a3">EDMA3_MAX_EDMA3_INSTANCES</a> (1u)</td></tr>
51 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#d1b6598052537b21e1bac1396d83283d">EDMA3_MAX_DMA_CH</a> (64u)</td></tr>
53 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#53cb7194d40b561e3e344047e4bcba6c">EDMA3_MAX_QDMA_CH</a> (8u)</td></tr>
55 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#6efe909ba58367860b4d33f7b064f61c">EDMA3_MAX_PARAM_SETS</a> (512u)</td></tr>
57 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#725e3c1bfe499aaf8e94801641520fb7">EDMA3_MAX_LOGICAL_CH</a></td></tr>
59 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#8b1f0200d6e9ce5e63260344f0df2e70">EDMA3_MAX_TCC</a> (64u)</td></tr>
61 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#b729347ef7ac47d1be5daf20d1a37d41">EDMA3_MAX_EVT_QUE</a> (8u)</td></tr>
63 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#4556524519837a5db31a68b2fcab2f92">EDMA3_MAX_TC</a> (8u)</td></tr>
65 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#b66e82d478696453dc0da3e2ce7aeba6">EDMA3_MAX_REGIONS</a> (8u)</td></tr>
67 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#e36f5716a1f71e0592cd56cfc1c666f9">EDMA3_MAX_DMA_CHAN_DWRDS</a> (EDMA3_MAX_DMA_CH / 32u)</td></tr>
69 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#529a369bd7e08444b0165fdc57dd184f">EDMA3_MAX_QDMA_CHAN_DWRDS</a> (1u)</td></tr>
71 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#c892aabf5793d1cc5ea4fe12e5ff8942">EDMA3_MAX_PARAM_DWRDS</a> (EDMA3_MAX_PARAM_SETS / 32u)</td></tr>
73 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#7c52efbf0cbf19edf8eca9119f09b9fb">EDMA3_MAX_TCC_DWRDS</a> (EDMA3_MAX_TCC / 32u)</td></tr>
75 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#82d94e422d4ca63d8448a22a7f8c1e34">EDMA3_OS_PROTECT_INTERRUPT</a> 1</td></tr>
77 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#9f4c42dea3b2b9ae8ace97b29a085b0c">EDMA3_OS_PROTECT_SCHEDULER</a> 2</td></tr>
79 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#f46bf9c940218707ab12c46a9b021872">EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION</a> 3</td></tr>
81 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#54741e8654bb460ce3ef3c0091d7df41">EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR</a> 4</td></tr>
83 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#2cd3a0c5f17dd064d1649f8e630c20de">EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR</a> 5</td></tr>
85 <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
86 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef int </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#92509a51dd7317a97b313dd3a542b8fd">EDMA3_RM_Result</a></td></tr>
88 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef int </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#3476a90e368dd33d8e80805d3a2e80d7">EDMA3_DRV_Result</a></td></tr>
90 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void * </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#5de00d3f01e8a0fcc22cfbdf8fb1b372">EDMA3_RM_Handle</a></td></tr>
92 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void * </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#ee1231e7821da58418a37103a05effc4">EDMA3_DRV_Handle</a></td></tr>
94 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void * </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#f0395ad0dbb01a7a1e4df5a059b42c75">EDMA3_OS_Sem_Handle</a></td></tr>
96 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
97 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#1d031d64f3cc0a4b15ba4d02e6de7571">lisrEdma3ComplHandler0</a> (unsigned int arg)</td></tr>
99 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#d3b8c878f8dcf15a65c493e668532246">lisrEdma3CCErrHandler0</a> (unsigned int arg)</td></tr>
101 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#45b2a68c0e53296ff8e8e6748a9c9476">lisrEdma3TC0ErrHandler0</a> (unsigned int arg)</td></tr>
103 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#08808de4e3a6f09275e3446601eb2238">lisrEdma3TC1ErrHandler0</a> (unsigned int arg)</td></tr>
105 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#0f211b2ebc69aa9ad7356db0cfd6651d">lisrEdma3TC2ErrHandler0</a> (unsigned int arg)</td></tr>
107 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#5b7e22f8bd3b05f3736a2744db4c9121">lisrEdma3TC3ErrHandler0</a> (unsigned int arg)</td></tr>
109 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#6073ffa3c9e90c0df12ce5c98888509b">lisrEdma3TC4ErrHandler0</a> (unsigned int arg)</td></tr>
111 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#0c15f020fee99a310d4ced5ecc475880">lisrEdma3TC5ErrHandler0</a> (unsigned int arg)</td></tr>
113 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#3e4f0b5f3e7aca00eb69cef6c12e58ff">lisrEdma3TC6ErrHandler0</a> (unsigned int arg)</td></tr>
115 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#c7531bb216cf6ceea73c70cef9659414">lisrEdma3TC7ErrHandler0</a> (unsigned int arg)</td></tr>
117 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#cd7568cb09bf308af7c9501652af0de1">edma3OsProtectEntry</a> (int level, unsigned int *intState)</td></tr>
119 <tr><td class="mdescLeft"> </td><td class="mdescRight">EDMA3 OS Protect Entry. <a href="#cd7568cb09bf308af7c9501652af0de1"></a><br></td></tr>
120 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#f060890d10b8010c147ee0cfd0695e74">edma3OsProtectExit</a> (int level, unsigned int intState)</td></tr>
122 <tr><td class="mdescLeft"> </td><td class="mdescRight">EDMA3 OS Protect Exit. <a href="#f060890d10b8010c147ee0cfd0695e74"></a><br></td></tr>
123 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="edma3__common_8h.html#3476a90e368dd33d8e80805d3a2e80d7">EDMA3_DRV_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#95102dc57149b720e77734cd95717835">edma3OsSemTake</a> (<a class="el" href="edma3__common_8h.html#f0395ad0dbb01a7a1e4df5a059b42c75">EDMA3_OS_Sem_Handle</a> hSem, int mSecTimeout)</td></tr>
125 <tr><td class="mdescLeft"> </td><td class="mdescRight">EDMA3 OS Semaphore Take. <a href="#95102dc57149b720e77734cd95717835"></a><br></td></tr>
126 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="edma3__common_8h.html#3476a90e368dd33d8e80805d3a2e80d7">EDMA3_DRV_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="edma3__common_8h.html#a5225bb19a1c4b64c8f55452c8c05c9c">edma3OsSemGive</a> (<a class="el" href="edma3__common_8h.html#f0395ad0dbb01a7a1e4df5a059b42c75">EDMA3_OS_Sem_Handle</a> hSem)</td></tr>
128 <tr><td class="mdescLeft"> </td><td class="mdescRight">EDMA3 OS Semaphore Give. <a href="#a5225bb19a1c4b64c8f55452c8c05c9c"></a><br></td></tr>
129 </table>
130 <hr><h2>Detailed Description</h2>
131 EDMA3 Common header provides generic defines/typedefs and debugging info.
132 <p>
133 This file contains the generic defines and typedefs and the debugging info that are common across interfaces of EDMA Res Mgr and EDMA Driver and visible to the application.<p>
134 (C) Copyright 2006, Texas Instruments, Inc <hr><h2>Define Documentation</h2>
135 <a class="anchor" name="f0a1515a16188594f26f98514ce41e86"></a><!-- doxytag: member="edma3_common.h::EDMA3_DRV_DEBUG" ref="f0a1515a16188594f26f98514ce41e86" args="" -->
136 <div class="memitem">
137 <div class="memproto">
138 <table class="memname">
139 <tr>
140 <td class="memname">#define EDMA3_DRV_DEBUG </td>
141 </tr>
142 </table>
143 </div>
144 <div class="memdoc">
146 <p>
147 define to enable/disable EDMA3 Driver debug messages
148 </div>
149 </div><p>
150 <a class="anchor" name="7e70ebba4133b77d0ca56f2d7ce8e5d1"></a><!-- doxytag: member="edma3_common.h::EDMA3_DRV_SOK" ref="7e70ebba4133b77d0ca56f2d7ce8e5d1" args="" -->
151 <div class="memitem">
152 <div class="memproto">
153 <table class="memname">
154 <tr>
155 <td class="memname">#define EDMA3_DRV_SOK (0u) </td>
156 </tr>
157 </table>
158 </div>
159 <div class="memdoc">
161 <p>
162 EDMA3 Driver Result OK
163 </div>
164 </div><p>
165 <a class="anchor" name="d1b6598052537b21e1bac1396d83283d"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_DMA_CH" ref="d1b6598052537b21e1bac1396d83283d" args="" -->
166 <div class="memitem">
167 <div class="memproto">
168 <table class="memname">
169 <tr>
170 <td class="memname">#define EDMA3_MAX_DMA_CH (64u) </td>
171 </tr>
172 </table>
173 </div>
174 <div class="memdoc">
176 <p>
177 Maximum DMA channels supported by the EDMA3 Controller
178 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l07014">allocAnyContigRes()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l02703">EDMA3_RM_freeLogicalChannel()</a>.</p>
180 </div>
181 </div><p>
182 <a class="anchor" name="e36f5716a1f71e0592cd56cfc1c666f9"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_DMA_CHAN_DWRDS" ref="e36f5716a1f71e0592cd56cfc1c666f9" args="" -->
183 <div class="memitem">
184 <div class="memproto">
185 <table class="memname">
186 <tr>
187 <td class="memname">#define EDMA3_MAX_DMA_CHAN_DWRDS (EDMA3_MAX_DMA_CH / 32u) </td>
188 </tr>
189 </table>
190 </div>
191 <div class="memdoc">
193 <p>
194 Maximum Words (4-bytes region) required for the book-keeping information specific to the maximum possible DMA channels.
195 </div>
196 </div><p>
197 <a class="anchor" name="c0a8c4796cfea4faa83af1312d5581a3"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_EDMA3_INSTANCES" ref="c0a8c4796cfea4faa83af1312d5581a3" args="" -->
198 <div class="memitem">
199 <div class="memproto">
200 <table class="memname">
201 <tr>
202 <td class="memname">#define EDMA3_MAX_EDMA3_INSTANCES (1u) </td>
203 </tr>
204 </table>
205 </div>
206 <div class="memdoc">
208 <p>
209 Defines used to support the maximum resources supported by the EDMA3 controller. These are used to allocate the maximum memory for different data structures of the EDMA3 Driver and Resource Manager. Maximum EDMA3 Controllers on the SoC
210 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l00367">EDMA3_RM_create()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00548">EDMA3_RM_delete()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05434">EDMA3_RM_getGblConfigParams()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00642">EDMA3_RM_open()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l06589">edma3GlobalRegionInit()</a>.</p>
212 </div>
213 </div><p>
214 <a class="anchor" name="b729347ef7ac47d1be5daf20d1a37d41"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_EVT_QUE" ref="b729347ef7ac47d1be5daf20d1a37d41" args="" -->
215 <div class="memitem">
216 <div class="memproto">
217 <table class="memname">
218 <tr>
219 <td class="memname">#define EDMA3_MAX_EVT_QUE (8u) </td>
220 </tr>
221 </table>
222 </div>
223 <div class="memdoc">
225 <p>
226 Maximum Event Queues supported by the EDMA3 Controller
227 </div>
228 </div><p>
229 <a class="anchor" name="725e3c1bfe499aaf8e94801641520fb7"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_LOGICAL_CH" ref="725e3c1bfe499aaf8e94801641520fb7" args="" -->
230 <div class="memitem">
231 <div class="memproto">
232 <table class="memname">
233 <tr>
234 <td class="memname">#define EDMA3_MAX_LOGICAL_CH </td>
235 </tr>
236 </table>
237 </div>
238 <div class="memdoc">
240 <p>
241 <b>Value:</b><div class="fragment"><pre class="fragment">(<a class="code" href="edma3__common_8h.html#d1b6598052537b21e1bac1396d83283d">EDMA3_MAX_DMA_CH</a> + \
242 <a class="code" href="edma3__common_8h.html#6efe909ba58367860b4d33f7b064f61c">EDMA3_MAX_PARAM_SETS</a> + \
243 <a class="code" href="edma3__common_8h.html#53cb7194d40b561e3e344047e4bcba6c">EDMA3_MAX_QDMA_CH</a>)
244 </pre></div>Maximum Logical channels supported by the EDMA3 Package
245 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l00367">EDMA3_RM_create()</a>.</p>
247 </div>
248 </div><p>
249 <a class="anchor" name="c892aabf5793d1cc5ea4fe12e5ff8942"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_PARAM_DWRDS" ref="c892aabf5793d1cc5ea4fe12e5ff8942" args="" -->
250 <div class="memitem">
251 <div class="memproto">
252 <table class="memname">
253 <tr>
254 <td class="memname">#define EDMA3_MAX_PARAM_DWRDS (EDMA3_MAX_PARAM_SETS / 32u) </td>
255 </tr>
256 </table>
257 </div>
258 <div class="memdoc">
260 <p>
261 Maximum Words (4-bytes region) required for the book-keeping information specific to the maximum possible PaRAM Sets.
262 </div>
263 </div><p>
264 <a class="anchor" name="6efe909ba58367860b4d33f7b064f61c"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_PARAM_SETS" ref="6efe909ba58367860b4d33f7b064f61c" args="" -->
265 <div class="memitem">
266 <div class="memproto">
267 <table class="memname">
268 <tr>
269 <td class="memname">#define EDMA3_MAX_PARAM_SETS (512u) </td>
270 </tr>
271 </table>
272 </div>
273 <div class="memdoc">
275 <p>
276 Maximum PaRAM Sets supported by the EDMA3 Controller
277 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l02074">EDMA3_RM_allocLogicalChannel()</a>.</p>
279 </div>
280 </div><p>
281 <a class="anchor" name="53cb7194d40b561e3e344047e4bcba6c"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_QDMA_CH" ref="53cb7194d40b561e3e344047e4bcba6c" args="" -->
282 <div class="memitem">
283 <div class="memproto">
284 <table class="memname">
285 <tr>
286 <td class="memname">#define EDMA3_MAX_QDMA_CH (8u) </td>
287 </tr>
288 </table>
289 </div>
290 <div class="memdoc">
292 <p>
293 Maximum QDMA channels supported by the EDMA3 Controller
294 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l07014">allocAnyContigRes()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02074">EDMA3_RM_allocLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02703">EDMA3_RM_freeLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04993">EDMA3_RM_getPaRAM()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05165">EDMA3_RM_getPaRAMPhyAddr()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l04830">EDMA3_RM_setPaRAM()</a>.</p>
296 </div>
297 </div><p>
298 <a class="anchor" name="529a369bd7e08444b0165fdc57dd184f"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_QDMA_CHAN_DWRDS" ref="529a369bd7e08444b0165fdc57dd184f" args="" -->
299 <div class="memitem">
300 <div class="memproto">
301 <table class="memname">
302 <tr>
303 <td class="memname">#define EDMA3_MAX_QDMA_CHAN_DWRDS (1u) </td>
304 </tr>
305 </table>
306 </div>
307 <div class="memdoc">
309 <p>
310 Maximum Words (4-bytes region) required for the book-keeping information specific to the maximum possible QDMA channels.
311 </div>
312 </div><p>
313 <a class="anchor" name="b66e82d478696453dc0da3e2ce7aeba6"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_REGIONS" ref="b66e82d478696453dc0da3e2ce7aeba6" args="" -->
314 <div class="memitem">
315 <div class="memproto">
316 <table class="memname">
317 <tr>
318 <td class="memname">#define EDMA3_MAX_REGIONS (8u) </td>
319 </tr>
320 </table>
321 </div>
322 <div class="memdoc">
324 <p>
325 Maximum Shadow Regions supported by the EDMA3 Controller
326 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l00953">EDMA3_RM_close()</a>.</p>
328 </div>
329 </div><p>
330 <a class="anchor" name="4556524519837a5db31a68b2fcab2f92"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_TC" ref="4556524519837a5db31a68b2fcab2f92" args="" -->
331 <div class="memitem">
332 <div class="memproto">
333 <table class="memname">
334 <tr>
335 <td class="memname">#define EDMA3_MAX_TC (8u) </td>
336 </tr>
337 </table>
338 </div>
339 <div class="memdoc">
341 <p>
342 Maximum Transfer Controllers supported by the EDMA3 Controller
343 </div>
344 </div><p>
345 <a class="anchor" name="8b1f0200d6e9ce5e63260344f0df2e70"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_TCC" ref="8b1f0200d6e9ce5e63260344f0df2e70" args="" -->
346 <div class="memitem">
347 <div class="memproto">
348 <table class="memname">
349 <tr>
350 <td class="memname">#define EDMA3_MAX_TCC (64u) </td>
351 </tr>
352 </table>
353 </div>
354 <div class="memdoc">
356 <p>
357 Maximum TCCs (Interrupt Channels) supported by the EDMA3 Controller
358 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l07014">allocAnyContigRes()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00367">EDMA3_RM_create()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02703">EDMA3_RM_freeLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03529">EDMA3_RM_unregisterTccCb()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l05934">edma3CCErrHandler()</a>.</p>
360 </div>
361 </div><p>
362 <a class="anchor" name="7c52efbf0cbf19edf8eca9119f09b9fb"></a><!-- doxytag: member="edma3_common.h::EDMA3_MAX_TCC_DWRDS" ref="7c52efbf0cbf19edf8eca9119f09b9fb" args="" -->
363 <div class="memitem">
364 <div class="memproto">
365 <table class="memname">
366 <tr>
367 <td class="memname">#define EDMA3_MAX_TCC_DWRDS (EDMA3_MAX_TCC / 32u) </td>
368 </tr>
369 </table>
370 </div>
371 <div class="memdoc">
373 <p>
374 Maximum Words (4-bytes region) required for the book-keeping information specific to the maximum possible TCCs.
375 </div>
376 </div><p>
377 <a class="anchor" name="82d94e422d4ca63d8448a22a7f8c1e34"></a><!-- doxytag: member="edma3_common.h::EDMA3_OS_PROTECT_INTERRUPT" ref="82d94e422d4ca63d8448a22a7f8c1e34" args="" -->
378 <div class="memitem">
379 <div class="memproto">
380 <table class="memname">
381 <tr>
382 <td class="memname">#define EDMA3_OS_PROTECT_INTERRUPT 1 </td>
383 </tr>
384 </table>
385 </div>
386 <div class="memdoc">
388 <p>
389 Defines for the level of OS protection needed when calling <a class="el" href="edma3__common_8h.html#cd7568cb09bf308af7c9501652af0de1" title="EDMA3 OS Protect Entry.">edma3OsProtectEntry()</a> Protection from All Interrupts required
390 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l00953">EDMA3_RM_close()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01710">EDMA3_RM_freeResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00642">EDMA3_RM_open()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l06637">edma3ShadowRegionInit()</a>.</p>
392 </div>
393 </div><p>
394 <a class="anchor" name="54741e8654bb460ce3ef3c0091d7df41"></a><!-- doxytag: member="edma3_common.h::EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR" ref="54741e8654bb460ce3ef3c0091d7df41" args="" -->
395 <div class="memitem">
396 <div class="memproto">
397 <table class="memname">
398 <tr>
399 <td class="memname">#define EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR 4 </td>
400 </tr>
401 </table>
402 </div>
403 <div class="memdoc">
405 <p>
406 Protection from EDMA3 CC Error Interrupt required
407 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l05934">edma3CCErrHandler()</a>.</p>
409 </div>
410 </div><p>
411 <a class="anchor" name="2cd3a0c5f17dd064d1649f8e630c20de"></a><!-- doxytag: member="edma3_common.h::EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR" ref="2cd3a0c5f17dd064d1649f8e630c20de" args="" -->
412 <div class="memitem">
413 <div class="memproto">
414 <table class="memname">
415 <tr>
416 <td class="memname">#define EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR 5 </td>
417 </tr>
418 </table>
419 </div>
420 <div class="memdoc">
422 <p>
423 Protection from EDMA3 TC Error Interrupt required
424 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
426 </div>
427 </div><p>
428 <a class="anchor" name="f46bf9c940218707ab12c46a9b021872"></a><!-- doxytag: member="edma3_common.h::EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION" ref="f46bf9c940218707ab12c46a9b021872" args="" -->
429 <div class="memitem">
430 <div class="memproto">
431 <table class="memname">
432 <tr>
433 <td class="memname">#define EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION 3 </td>
434 </tr>
435 </table>
436 </div>
437 <div class="memdoc">
439 <p>
440 Protection from EDMA3 Transfer Completion Interrupt required
441 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l05778">edma3ComplHandler()</a>.</p>
443 </div>
444 </div><p>
445 <a class="anchor" name="9f4c42dea3b2b9ae8ace97b29a085b0c"></a><!-- doxytag: member="edma3_common.h::EDMA3_OS_PROTECT_SCHEDULER" ref="9f4c42dea3b2b9ae8ace97b29a085b0c" args="" -->
446 <div class="memitem">
447 <div class="memproto">
448 <table class="memname">
449 <tr>
450 <td class="memname">#define EDMA3_OS_PROTECT_SCHEDULER 2 </td>
451 </tr>
452 </table>
453 </div>
454 <div class="memdoc">
456 <p>
457 Protection from scheduling required
458 </div>
459 </div><p>
460 <a class="anchor" name="1ad673455e987d4c73ffafbc0397a94d"></a><!-- doxytag: member="edma3_common.h::EDMA3_OSSEM_NO_TIMEOUT" ref="1ad673455e987d4c73ffafbc0397a94d" args="" -->
461 <div class="memitem">
462 <div class="memproto">
463 <table class="memname">
464 <tr>
465 <td class="memname">#define EDMA3_OSSEM_NO_TIMEOUT (-1) </td>
466 </tr>
467 </table>
468 </div>
469 <div class="memdoc">
471 <p>
472 Blocking call without timeout
473 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l03695">EDMA3_RM_allocContiguousResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01103">EDMA3_RM_allocResource()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l04382">EDMA3_RM_setCCRegister()</a>.</p>
475 </div>
476 </div><p>
477 <a class="anchor" name="95d167e96cea8543867e2fdfbe3d97a3"></a><!-- doxytag: member="edma3_common.h::EDMA3_RM_DEBUG" ref="95d167e96cea8543867e2fdfbe3d97a3" args="" -->
478 <div class="memitem">
479 <div class="memproto">
480 <table class="memname">
481 <tr>
482 <td class="memname">#define EDMA3_RM_DEBUG </td>
483 </tr>
484 </table>
485 </div>
486 <div class="memdoc">
488 <p>
489 define to enable/disable Resource Manager debug messages
490 </div>
491 </div><p>
492 <a class="anchor" name="52193425a534f0300b090bb7cd179525"></a><!-- doxytag: member="edma3_common.h::EDMA3_RM_SOK" ref="52193425a534f0300b090bb7cd179525" args="" -->
493 <div class="memitem">
494 <div class="memproto">
495 <table class="memname">
496 <tr>
497 <td class="memname">#define EDMA3_RM_SOK (0u) </td>
498 </tr>
499 </table>
500 </div>
501 <div class="memdoc">
503 <p>
504 EDMA3 Resource Manager Result OK
505 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l07014">allocAnyContigRes()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03695">EDMA3_RM_allocContiguousResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02074">EDMA3_RM_allocLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01103">EDMA3_RM_allocResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04696">EDMA3_RM_checkAndClearTcc()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00953">EDMA3_RM_close()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00367">EDMA3_RM_create()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00548">EDMA3_RM_delete()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04257">EDMA3_RM_freeContiguousResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02703">EDMA3_RM_freeLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01710">EDMA3_RM_freeResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05325">EDMA3_RM_getBaseAddress()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04475">EDMA3_RM_getCCRegister()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05434">EDMA3_RM_getGblConfigParams()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05498">EDMA3_RM_getInstanceInitCfg()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04993">EDMA3_RM_getPaRAM()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05165">EDMA3_RM_getPaRAMPhyAddr()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05597">EDMA3_RM_Ioctl()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03060">EDMA3_RM_mapEdmaChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03217">EDMA3_RM_mapQdmaChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00642">EDMA3_RM_open()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03369">EDMA3_RM_registerTccCb()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04382">EDMA3_RM_setCCRegister()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04830">EDMA3_RM_setPaRAM()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03529">EDMA3_RM_unregisterTccCb()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04560">EDMA3_RM_waitAndClearTcc()</a>, <a class="el" href="edma3resmgr_8c_source.html#l06865">findBit()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l07129">gblChngAllocContigRes()</a>.</p>
507 </div>
508 </div><p>
509 <a class="anchor" name="a93f0eb578d23995850d61f7d61c55c1"></a><!-- doxytag: member="edma3_common.h::FALSE" ref="a93f0eb578d23995850d61f7d61c55c1" args="" -->
510 <div class="memitem">
511 <div class="memproto">
512 <table class="memname">
513 <tr>
514 <td class="memname">#define FALSE (0u) </td>
515 </tr>
516 </table>
517 </div>
518 <div class="memdoc">
520 <p>
521 FALSE
522 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l03695">EDMA3_RM_allocContiguousResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01103">EDMA3_RM_allocResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04696">EDMA3_RM_checkAndClearTcc()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00953">EDMA3_RM_close()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00367">EDMA3_RM_create()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02703">EDMA3_RM_freeLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01710">EDMA3_RM_freeResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03060">EDMA3_RM_mapEdmaChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03217">EDMA3_RM_mapQdmaChannel()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l04560">EDMA3_RM_waitAndClearTcc()</a>.</p>
524 </div>
525 </div><p>
526 <a class="anchor" name="070d2ce7b6bb7e5c05602aa8c308d0c4"></a><!-- doxytag: member="edma3_common.h::NULL" ref="070d2ce7b6bb7e5c05602aa8c308d0c4" args="" -->
527 <div class="memitem">
528 <div class="memproto">
529 <table class="memname">
530 <tr>
531 <td class="memname">#define NULL 0u </td>
532 </tr>
533 </table>
534 </div>
535 <div class="memdoc">
537 <p>
538 Define for NULL values
539 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l07014">allocAnyContigRes()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03695">EDMA3_RM_allocContiguousResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02074">EDMA3_RM_allocLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01103">EDMA3_RM_allocResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04696">EDMA3_RM_checkAndClearTcc()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00953">EDMA3_RM_close()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00367">EDMA3_RM_create()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00548">EDMA3_RM_delete()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04257">EDMA3_RM_freeContiguousResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02703">EDMA3_RM_freeLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01710">EDMA3_RM_freeResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05325">EDMA3_RM_getBaseAddress()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04475">EDMA3_RM_getCCRegister()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05434">EDMA3_RM_getGblConfigParams()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05498">EDMA3_RM_getInstanceInitCfg()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04993">EDMA3_RM_getPaRAM()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05165">EDMA3_RM_getPaRAMPhyAddr()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05597">EDMA3_RM_Ioctl()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03060">EDMA3_RM_mapEdmaChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03217">EDMA3_RM_mapQdmaChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00642">EDMA3_RM_open()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03369">EDMA3_RM_registerTccCb()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04382">EDMA3_RM_setCCRegister()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04830">EDMA3_RM_setPaRAM()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03529">EDMA3_RM_unregisterTccCb()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04560">EDMA3_RM_waitAndClearTcc()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05934">edma3CCErrHandler()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05778">edma3ComplHandler()</a>, <a class="el" href="edma3resmgr_8c_source.html#l06589">edma3GlobalRegionInit()</a>, <a class="el" href="edma3resmgr_8c_source.html#l06751">edma3MemCpy()</a>, <a class="el" href="edma3resmgr_8c_source.html#l06731">edma3MemSet()</a>, <a class="el" href="edma3resmgr_8c_source.html#l06637">edma3ShadowRegionInit()</a>, <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l07129">gblChngAllocContigRes()</a>.</p>
541 </div>
542 </div><p>
543 <a class="anchor" name="a8cecfc5c5c054d2875c03e77b7be15d"></a><!-- doxytag: member="edma3_common.h::TRUE" ref="a8cecfc5c5c054d2875c03e77b7be15d" args="" -->
544 <div class="memitem">
545 <div class="memproto">
546 <table class="memname">
547 <tr>
548 <td class="memname">#define TRUE (1u) </td>
549 </tr>
550 </table>
551 </div>
552 <div class="memdoc">
554 <p>
555 Debug mechanism used for Resource Manager Debug mechanism used for EDMA Driver Defines for boolean variables TRUE
556 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l03695">EDMA3_RM_allocContiguousResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02074">EDMA3_RM_allocLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01103">EDMA3_RM_allocResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l04696">EDMA3_RM_checkAndClearTcc()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00953">EDMA3_RM_close()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00367">EDMA3_RM_create()</a>, <a class="el" href="edma3resmgr_8c_source.html#l02703">EDMA3_RM_freeLogicalChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01710">EDMA3_RM_freeResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l03060">EDMA3_RM_mapEdmaChannel()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00642">EDMA3_RM_open()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05934">edma3CCErrHandler()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05778">edma3ComplHandler()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l07129">gblChngAllocContigRes()</a>.</p>
558 </div>
559 </div><p>
560 <hr><h2>Typedef Documentation</h2>
561 <a class="anchor" name="ee1231e7821da58418a37103a05effc4"></a><!-- doxytag: member="edma3_common.h::EDMA3_DRV_Handle" ref="ee1231e7821da58418a37103a05effc4" args="" -->
562 <div class="memitem">
563 <div class="memproto">
564 <table class="memname">
565 <tr>
566 <td class="memname">typedef void* <a class="el" href="edma3__common_8h.html#ee1231e7821da58418a37103a05effc4">EDMA3_DRV_Handle</a> </td>
567 </tr>
568 </table>
569 </div>
570 <div class="memdoc">
572 <p>
573 EDMA3 Driver Handle. It will be returned from EDMA3_DRV_open() and will be used to call other EDMA3 Driver APIs.
574 </div>
575 </div><p>
576 <a class="anchor" name="3476a90e368dd33d8e80805d3a2e80d7"></a><!-- doxytag: member="edma3_common.h::EDMA3_DRV_Result" ref="3476a90e368dd33d8e80805d3a2e80d7" args="" -->
577 <div class="memitem">
578 <div class="memproto">
579 <table class="memname">
580 <tr>
581 <td class="memname">typedef int <a class="el" href="edma3__common_8h.html#3476a90e368dd33d8e80805d3a2e80d7">EDMA3_DRV_Result</a> </td>
582 </tr>
583 </table>
584 </div>
585 <div class="memdoc">
587 <p>
588 EDMA3_DRV Result - return value of a function
589 </div>
590 </div><p>
591 <a class="anchor" name="f0395ad0dbb01a7a1e4df5a059b42c75"></a><!-- doxytag: member="edma3_common.h::EDMA3_OS_Sem_Handle" ref="f0395ad0dbb01a7a1e4df5a059b42c75" args="" -->
592 <div class="memitem">
593 <div class="memproto">
594 <table class="memname">
595 <tr>
596 <td class="memname">typedef void* <a class="el" href="edma3__common_8h.html#f0395ad0dbb01a7a1e4df5a059b42c75">EDMA3_OS_Sem_Handle</a> </td>
597 </tr>
598 </table>
599 </div>
600 <div class="memdoc">
602 <p>
603 OS specific Semaphore Handle. Used to acquire/free the semaphore, used for sharing of resources among multiple users.
604 </div>
605 </div><p>
606 <a class="anchor" name="5de00d3f01e8a0fcc22cfbdf8fb1b372"></a><!-- doxytag: member="edma3_common.h::EDMA3_RM_Handle" ref="5de00d3f01e8a0fcc22cfbdf8fb1b372" args="" -->
607 <div class="memitem">
608 <div class="memproto">
609 <table class="memname">
610 <tr>
611 <td class="memname">typedef void* <a class="el" href="edma3__common_8h.html#5de00d3f01e8a0fcc22cfbdf8fb1b372">EDMA3_RM_Handle</a> </td>
612 </tr>
613 </table>
614 </div>
615 <div class="memdoc">
617 <p>
618 EDMA3 Resource Manager Handle. It will be returned from <a class="el" href="group__Edma3RMMain.html#g06b18003d700ce3c227f70e422dd9897" title="Open EDMA3 Resource Manager Instance.">EDMA3_RM_open()</a> and will be used to call other Resource Manager APIs.
619 </div>
620 </div><p>
621 <a class="anchor" name="92509a51dd7317a97b313dd3a542b8fd"></a><!-- doxytag: member="edma3_common.h::EDMA3_RM_Result" ref="92509a51dd7317a97b313dd3a542b8fd" args="" -->
622 <div class="memitem">
623 <div class="memproto">
624 <table class="memname">
625 <tr>
626 <td class="memname">typedef int <a class="el" href="edma3__common_8h.html#92509a51dd7317a97b313dd3a542b8fd">EDMA3_RM_Result</a> </td>
627 </tr>
628 </table>
629 </div>
630 <div class="memdoc">
632 <p>
633 EDMA3_RM Result - return value of a function
634 </div>
635 </div><p>
636 <hr><h2>Function Documentation</h2>
637 <a class="anchor" name="cd7568cb09bf308af7c9501652af0de1"></a><!-- doxytag: member="edma3_common.h::edma3OsProtectEntry" ref="cd7568cb09bf308af7c9501652af0de1" args="(int level, unsigned int *intState)" -->
638 <div class="memitem">
639 <div class="memproto">
640 <table class="memname">
641 <tr>
642 <td class="memname">void edma3OsProtectEntry </td>
643 <td>(</td>
644 <td class="paramtype">int </td>
645 <td class="paramname"> <em>level</em>, </td>
646 </tr>
647 <tr>
648 <td class="paramkey"></td>
649 <td></td>
650 <td class="paramtype">unsigned int * </td>
651 <td class="paramname"> <em>intState</em></td><td> </td>
652 </tr>
653 <tr>
654 <td></td>
655 <td>)</td>
656 <td></td><td></td><td></td>
657 </tr>
658 </table>
659 </div>
660 <div class="memdoc">
662 <p>
663 EDMA3 OS Protect Entry.
664 <p>
665 Critical section entry and exit functions (OS dependent) should be implemented by the application for proper linking with the EDMA3 Driver and/or EDMA3 Resource Manager. Without the definitions being provided, the image won\92t get linked properly.<p>
666 It is possible that for some regions of code, user needs ultimate degree of protection where some or all external interrupts are blocked, essentially locking out the CPU exclusively for the critical section of code. On the other hand, user may wish to merely avoid thread or task switch from occuring inside said region of code, but he may wish to entertain ISRs to run if so required.<p>
667 Depending on the underlying OS, the number of levels of protection offered may vary. At the least, these basic levels of protection are supported --<ul>
668 <li>EDMA3_OS_PROTECT_INTERRUPT - Mask interrupts globally. This has real-time implications and must be used with descretion.</li></ul>
669 <p>
670 <ul>
671 <li>EDMA3_OS_PROTECT_SCHEDULER - Only turns off Kernel scheduler completely, but still allows h/w interrupts from being serviced.</li></ul>
672 <p>
673 <ul>
674 <li>EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION - Mask EDMA3 Transfer Completion Interrupt.</li></ul>
675 <p>
676 <ul>
677 <li>EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR - Mask EDMA3 CC Error Interrupt.</li></ul>
678 <p>
679 <ul>
680 <li>EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR - Mask EDMA3 TC Error Interrupt.</li></ul>
681 <p>
682 These APIs should be mandatorily implemented ONCE by the global initialization routine or by the user itself. This function saves the current state of protection in 'intState' variable passed by caller, if the protection level is EDMA3_OS_PROTECT_INTERRUPT. It then applies the requested level of protection. For EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION and EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR, variable 'intState' is ignored, and the requested interrupt is disabled. For EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR, '*intState' specifies the Transfer Controller number whose interrupt needs to be disabled.<p>
683 <dl compact><dt><b>Parameters:</b></dt><dd>
684 <table border="0" cellspacing="2" cellpadding="0">
685 <tr><td valign="top"></td><td valign="top"><em>level</em> </td><td>is numeric identifier of the desired degree of protection. </td></tr>
686 <tr><td valign="top"></td><td valign="top"><em>intState</em> </td><td>is memory location where current state of protection is saved for future use while restoring it via <a class="el" href="edma3__common_8h.html#f060890d10b8010c147ee0cfd0695e74" title="EDMA3 OS Protect Exit.">edma3OsProtectExit()</a> (Only for EDMA3_OS_PROTECT_INTERRUPT protection level).</td></tr>
687 </table>
688 </dl>
689 <dl class="return" compact><dt><b>Returns:</b></dt><dd>None </dd></dl>
691 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l00953">EDMA3_RM_close()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01710">EDMA3_RM_freeResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00642">EDMA3_RM_open()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05934">edma3CCErrHandler()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05778">edma3ComplHandler()</a>, <a class="el" href="edma3resmgr_8c_source.html#l06637">edma3ShadowRegionInit()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
693 </div>
694 </div><p>
695 <a class="anchor" name="f060890d10b8010c147ee0cfd0695e74"></a><!-- doxytag: member="edma3_common.h::edma3OsProtectExit" ref="f060890d10b8010c147ee0cfd0695e74" args="(int level, unsigned int intState)" -->
696 <div class="memitem">
697 <div class="memproto">
698 <table class="memname">
699 <tr>
700 <td class="memname">void edma3OsProtectExit </td>
701 <td>(</td>
702 <td class="paramtype">int </td>
703 <td class="paramname"> <em>level</em>, </td>
704 </tr>
705 <tr>
706 <td class="paramkey"></td>
707 <td></td>
708 <td class="paramtype">unsigned int </td>
709 <td class="paramname"> <em>intState</em></td><td> </td>
710 </tr>
711 <tr>
712 <td></td>
713 <td>)</td>
714 <td></td><td></td><td></td>
715 </tr>
716 </table>
717 </div>
718 <div class="memdoc">
720 <p>
721 EDMA3 OS Protect Exit.
722 <p>
723 This function undoes the protection enforced to original state as is specified by the variable 'intState' passed, if the protection level is EDMA3_OS_PROTECT_INTERRUPT. For EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION and EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR, variable 'intState' is ignored, and the requested interrupt is enabled. For EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR, 'intState' specifies the Transfer Controller number whose interrupt needs to be enabled.<p>
724 <dl compact><dt><b>Parameters:</b></dt><dd>
725 <table border="0" cellspacing="2" cellpadding="0">
726 <tr><td valign="top"></td><td valign="top"><em>level</em> </td><td>is numeric identifier of the desired degree of protection. </td></tr>
727 <tr><td valign="top"></td><td valign="top"><em>intState</em> </td><td>is original state of protection at time when the corresponding <a class="el" href="edma3__common_8h.html#cd7568cb09bf308af7c9501652af0de1" title="EDMA3 OS Protect Entry.">edma3OsProtectEntry()</a> was called (Only for EDMA3_OS_PROTECT_INTERRUPT protection level).</td></tr>
728 </table>
729 </dl>
730 <dl class="return" compact><dt><b>Returns:</b></dt><dd>None </dd></dl>
732 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l00953">EDMA3_RM_close()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01710">EDMA3_RM_freeResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l00642">EDMA3_RM_open()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05934">edma3CCErrHandler()</a>, <a class="el" href="edma3resmgr_8c_source.html#l05778">edma3ComplHandler()</a>, <a class="el" href="edma3resmgr_8c_source.html#l06637">edma3ShadowRegionInit()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
734 </div>
735 </div><p>
736 <a class="anchor" name="a5225bb19a1c4b64c8f55452c8c05c9c"></a><!-- doxytag: member="edma3_common.h::edma3OsSemGive" ref="a5225bb19a1c4b64c8f55452c8c05c9c" args="(EDMA3_OS_Sem_Handle hSem)" -->
737 <div class="memitem">
738 <div class="memproto">
739 <table class="memname">
740 <tr>
741 <td class="memname"><a class="el" href="edma3__common_8h.html#3476a90e368dd33d8e80805d3a2e80d7">EDMA3_DRV_Result</a> edma3OsSemGive </td>
742 <td>(</td>
743 <td class="paramtype"><a class="el" href="edma3__common_8h.html#f0395ad0dbb01a7a1e4df5a059b42c75">EDMA3_OS_Sem_Handle</a> </td>
744 <td class="paramname"> <em>hSem</em> </td>
745 <td> ) </td>
746 <td></td>
747 </tr>
748 </table>
749 </div>
750 <div class="memdoc">
752 <p>
753 EDMA3 OS Semaphore Give.
754 <p>
755 This function gives or relinquishes an already acquired semaphore token<p>
756 <dl compact><dt><b>Parameters:</b></dt><dd>
757 <table border="0" cellspacing="2" cellpadding="0">
758 <tr><td valign="top"></td><td valign="top"><em>hSem</em> </td><td>[IN] is the handle of the specified semaphore</td></tr>
759 </table>
760 </dl>
761 <dl class="return" compact><dt><b>Returns:</b></dt><dd>EDMA3_DRV_Result if successful else a suitable error code </dd></dl>
763 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l03695">EDMA3_RM_allocContiguousResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01103">EDMA3_RM_allocResource()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l04382">EDMA3_RM_setCCRegister()</a>.</p>
765 </div>
766 </div><p>
767 <a class="anchor" name="95102dc57149b720e77734cd95717835"></a><!-- doxytag: member="edma3_common.h::edma3OsSemTake" ref="95102dc57149b720e77734cd95717835" args="(EDMA3_OS_Sem_Handle hSem, int mSecTimeout)" -->
768 <div class="memitem">
769 <div class="memproto">
770 <table class="memname">
771 <tr>
772 <td class="memname"><a class="el" href="edma3__common_8h.html#3476a90e368dd33d8e80805d3a2e80d7">EDMA3_DRV_Result</a> edma3OsSemTake </td>
773 <td>(</td>
774 <td class="paramtype"><a class="el" href="edma3__common_8h.html#f0395ad0dbb01a7a1e4df5a059b42c75">EDMA3_OS_Sem_Handle</a> </td>
775 <td class="paramname"> <em>hSem</em>, </td>
776 </tr>
777 <tr>
778 <td class="paramkey"></td>
779 <td></td>
780 <td class="paramtype">int </td>
781 <td class="paramname"> <em>mSecTimeout</em></td><td> </td>
782 </tr>
783 <tr>
784 <td></td>
785 <td>)</td>
786 <td></td><td></td><td></td>
787 </tr>
788 </table>
789 </div>
790 <div class="memdoc">
792 <p>
793 EDMA3 OS Semaphore Take.
794 <p>
795 Counting Semaphore related functions (OS dependent) should be implemented by the application for proper linking with the EDMA3 Driver and Resource Manager. The EDMA3 Resource Manager uses these functions for proper sharing of resources (among various users) and assume the implementation of these functions to be provided by the application. Without the definitions being provided, the image won\92t get linked properly. This function takes a semaphore token if available. If a semaphore is unavailable, it blocks currently running thread in wait (for specified duration) for a free semaphore.<p>
796 <dl compact><dt><b>Parameters:</b></dt><dd>
797 <table border="0" cellspacing="2" cellpadding="0">
798 <tr><td valign="top"></td><td valign="top"><em>hSem</em> </td><td>[IN] is the handle of the specified semaphore </td></tr>
799 <tr><td valign="top"></td><td valign="top"><em>mSecTimeout</em> </td><td>[IN] is wait time in milliseconds</td></tr>
800 </table>
801 </dl>
802 <dl class="return" compact><dt><b>Returns:</b></dt><dd>EDMA3_DRV_Result if successful else a suitable error code </dd></dl>
804 <p>Referenced by <a class="el" href="edma3resmgr_8c_source.html#l03695">EDMA3_RM_allocContiguousResource()</a>, <a class="el" href="edma3resmgr_8c_source.html#l01103">EDMA3_RM_allocResource()</a>, and <a class="el" href="edma3resmgr_8c_source.html#l04382">EDMA3_RM_setCCRegister()</a>.</p>
806 </div>
807 </div><p>
808 <a class="anchor" name="d3b8c878f8dcf15a65c493e668532246"></a><!-- doxytag: member="edma3_common.h::lisrEdma3CCErrHandler0" ref="d3b8c878f8dcf15a65c493e668532246" args="(unsigned int arg)" -->
809 <div class="memitem">
810 <div class="memproto">
811 <table class="memname">
812 <tr>
813 <td class="memname">void lisrEdma3CCErrHandler0 </td>
814 <td>(</td>
815 <td class="paramtype">unsigned int </td>
816 <td class="paramname"> <em>arg</em> </td>
817 <td> ) </td>
818 <td></td>
819 </tr>
820 </table>
821 </div>
822 <div class="memdoc">
824 <p>
825 EDMA3 CC Error Interrupt Handler ISR Routine
826 <p>References <a class="el" href="edma3resmgr_8c_source.html#l05934">edma3CCErrHandler()</a>.</p>
828 </div>
829 </div><p>
830 <a class="anchor" name="1d031d64f3cc0a4b15ba4d02e6de7571"></a><!-- doxytag: member="edma3_common.h::lisrEdma3ComplHandler0" ref="1d031d64f3cc0a4b15ba4d02e6de7571" args="(unsigned int arg)" -->
831 <div class="memitem">
832 <div class="memproto">
833 <table class="memname">
834 <tr>
835 <td class="memname">void lisrEdma3ComplHandler0 </td>
836 <td>(</td>
837 <td class="paramtype">unsigned int </td>
838 <td class="paramname"> <em>arg</em> </td>
839 <td> ) </td>
840 <td></td>
841 </tr>
842 </table>
843 </div>
844 <div class="memdoc">
846 <p>
847 EDMA3 ISRs which need to be registered with the underlying OS by the user (Not all TC error ISRs need to be registered, register only for the available Transfer Controllers). EDMA3 Completion Handler ISR Routine
848 <p>References <a class="el" href="edma3resmgr_8c_source.html#l05778">edma3ComplHandler()</a>.</p>
850 </div>
851 </div><p>
852 <a class="anchor" name="45b2a68c0e53296ff8e8e6748a9c9476"></a><!-- doxytag: member="edma3_common.h::lisrEdma3TC0ErrHandler0" ref="45b2a68c0e53296ff8e8e6748a9c9476" args="(unsigned int arg)" -->
853 <div class="memitem">
854 <div class="memproto">
855 <table class="memname">
856 <tr>
857 <td class="memname">void lisrEdma3TC0ErrHandler0 </td>
858 <td>(</td>
859 <td class="paramtype">unsigned int </td>
860 <td class="paramname"> <em>arg</em> </td>
861 <td> ) </td>
862 <td></td>
863 </tr>
864 </table>
865 </div>
866 <div class="memdoc">
868 <p>
869 EDMA3 TC0 Error Interrupt Handler ISR Routine
870 <p>References <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
872 </div>
873 </div><p>
874 <a class="anchor" name="08808de4e3a6f09275e3446601eb2238"></a><!-- doxytag: member="edma3_common.h::lisrEdma3TC1ErrHandler0" ref="08808de4e3a6f09275e3446601eb2238" args="(unsigned int arg)" -->
875 <div class="memitem">
876 <div class="memproto">
877 <table class="memname">
878 <tr>
879 <td class="memname">void lisrEdma3TC1ErrHandler0 </td>
880 <td>(</td>
881 <td class="paramtype">unsigned int </td>
882 <td class="paramname"> <em>arg</em> </td>
883 <td> ) </td>
884 <td></td>
885 </tr>
886 </table>
887 </div>
888 <div class="memdoc">
890 <p>
891 EDMA3 TC1 Error Interrupt Handler ISR Routine
892 <p>References <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
894 </div>
895 </div><p>
896 <a class="anchor" name="0f211b2ebc69aa9ad7356db0cfd6651d"></a><!-- doxytag: member="edma3_common.h::lisrEdma3TC2ErrHandler0" ref="0f211b2ebc69aa9ad7356db0cfd6651d" args="(unsigned int arg)" -->
897 <div class="memitem">
898 <div class="memproto">
899 <table class="memname">
900 <tr>
901 <td class="memname">void lisrEdma3TC2ErrHandler0 </td>
902 <td>(</td>
903 <td class="paramtype">unsigned int </td>
904 <td class="paramname"> <em>arg</em> </td>
905 <td> ) </td>
906 <td></td>
907 </tr>
908 </table>
909 </div>
910 <div class="memdoc">
912 <p>
913 EDMA3 TC2 Error Interrupt Handler ISR Routine
914 <p>References <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
916 </div>
917 </div><p>
918 <a class="anchor" name="5b7e22f8bd3b05f3736a2744db4c9121"></a><!-- doxytag: member="edma3_common.h::lisrEdma3TC3ErrHandler0" ref="5b7e22f8bd3b05f3736a2744db4c9121" args="(unsigned int arg)" -->
919 <div class="memitem">
920 <div class="memproto">
921 <table class="memname">
922 <tr>
923 <td class="memname">void lisrEdma3TC3ErrHandler0 </td>
924 <td>(</td>
925 <td class="paramtype">unsigned int </td>
926 <td class="paramname"> <em>arg</em> </td>
927 <td> ) </td>
928 <td></td>
929 </tr>
930 </table>
931 </div>
932 <div class="memdoc">
934 <p>
935 EDMA3 TC3 Error Interrupt Handler ISR Routine
936 <p>References <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
938 </div>
939 </div><p>
940 <a class="anchor" name="6073ffa3c9e90c0df12ce5c98888509b"></a><!-- doxytag: member="edma3_common.h::lisrEdma3TC4ErrHandler0" ref="6073ffa3c9e90c0df12ce5c98888509b" args="(unsigned int arg)" -->
941 <div class="memitem">
942 <div class="memproto">
943 <table class="memname">
944 <tr>
945 <td class="memname">void lisrEdma3TC4ErrHandler0 </td>
946 <td>(</td>
947 <td class="paramtype">unsigned int </td>
948 <td class="paramname"> <em>arg</em> </td>
949 <td> ) </td>
950 <td></td>
951 </tr>
952 </table>
953 </div>
954 <div class="memdoc">
956 <p>
957 EDMA3 TC4 Error Interrupt Handler ISR Routine
958 <p>References <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
960 </div>
961 </div><p>
962 <a class="anchor" name="0c15f020fee99a310d4ced5ecc475880"></a><!-- doxytag: member="edma3_common.h::lisrEdma3TC5ErrHandler0" ref="0c15f020fee99a310d4ced5ecc475880" args="(unsigned int arg)" -->
963 <div class="memitem">
964 <div class="memproto">
965 <table class="memname">
966 <tr>
967 <td class="memname">void lisrEdma3TC5ErrHandler0 </td>
968 <td>(</td>
969 <td class="paramtype">unsigned int </td>
970 <td class="paramname"> <em>arg</em> </td>
971 <td> ) </td>
972 <td></td>
973 </tr>
974 </table>
975 </div>
976 <div class="memdoc">
978 <p>
979 EDMA3 TC5 Error Interrupt Handler ISR Routine
980 <p>References <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
982 </div>
983 </div><p>
984 <a class="anchor" name="3e4f0b5f3e7aca00eb69cef6c12e58ff"></a><!-- doxytag: member="edma3_common.h::lisrEdma3TC6ErrHandler0" ref="3e4f0b5f3e7aca00eb69cef6c12e58ff" args="(unsigned int arg)" -->
985 <div class="memitem">
986 <div class="memproto">
987 <table class="memname">
988 <tr>
989 <td class="memname">void lisrEdma3TC6ErrHandler0 </td>
990 <td>(</td>
991 <td class="paramtype">unsigned int </td>
992 <td class="paramname"> <em>arg</em> </td>
993 <td> ) </td>
994 <td></td>
995 </tr>
996 </table>
997 </div>
998 <div class="memdoc">
1000 <p>
1001 EDMA3 TC6 Error Interrupt Handler ISR Routine
1002 <p>References <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
1004 </div>
1005 </div><p>
1006 <a class="anchor" name="c7531bb216cf6ceea73c70cef9659414"></a><!-- doxytag: member="edma3_common.h::lisrEdma3TC7ErrHandler0" ref="c7531bb216cf6ceea73c70cef9659414" args="(unsigned int arg)" -->
1007 <div class="memitem">
1008 <div class="memproto">
1009 <table class="memname">
1010 <tr>
1011 <td class="memname">void lisrEdma3TC7ErrHandler0 </td>
1012 <td>(</td>
1013 <td class="paramtype">unsigned int </td>
1014 <td class="paramname"> <em>arg</em> </td>
1015 <td> ) </td>
1016 <td></td>
1017 </tr>
1018 </table>
1019 </div>
1020 <div class="memdoc">
1022 <p>
1023 EDMA3 TC7 Error Interrupt Handler ISR Routine
1024 <p>References <a class="el" href="edma3resmgr_8c_source.html#l06310">edma3TCErrHandler()</a>.</p>
1026 </div>
1027 </div><p>
1028 </div>
1029 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jun 3 22:21:17 2009 for EDMA3 Resource Manager by
1030 <a href="http://www.doxygen.org/index.html">
1031 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
1032 </body>
1033 </html>