Documents updated for release 02.11.14.18
[keystone-rtos/edma3_lld.git] / release_notes_edma3_lld.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html xmlns="http://www.w3.org/TR/REC-html40">
3 <head>
4   <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
5   <meta http-equiv="Content-Type" content="text/html">
6   <title>EDMA3 LLD 02.11.14 Release Notes</title>
7   <style type="text/css">
8 body
9 {
10     color: #000 ;
11     background-color: #fff ;
12     margin : 5px 20px 5px 20px;
13     font-family: Tahoma, Arial, Helvetica, sans-serif;
14     font-size: 10pt ;
15 }
17 a,
18 a:link,
19 a:visited,
21 {
22     color : #1a41a8 ;
23 }
25 a:hover
26 {
27     color : #2a3798 ;
28 }
30 img
31 {
32     text-decoration : none ;
33 }
35 p
36 {
37     color: #000 ;
38 }
40 table.tagline
41 {
42     width: 100%;
43 }
45 li
46 {
47     color : black ;
48 }
50 .title
51 {
52     text-align : center ;
53 }
55 th
56 {
57     text-align : left ;
58 }
59   </style>
60 </head>
61 <body>
62 <table border="0" cellpadding="0" cellspacing="0" width="100%">
63   <tbody>
64     <tr>
65       <td
66  style="background: black none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;"
67  width="222"> <a href="http://www.ti.com/"><img id="_x0000_i1025"
68  src="docs/html/tilogo.gif" alt="Texas Instruments" border="0"
69  height="54" width="222"> </a></td>
70       <td
71  style="background: red none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;">
72       <img id="_x0000_i1026" src="docs/html/titagline.gif"
73  alt="Technology for Innovators(tm)" border="0" height="26" width="314">
74       </td>
75     </tr>
76   </tbody>
77 </table>
78 <h1 class="title">EDMA3 LLD 02.11.14 Release Notes</h1>
79 <h2 class="title">June 30, 2014</h2>
80 <p>
81 This EDMA3 Low Level Driver Release is targeted to the users (device
82 drivers
83 and applications) for submitting and synchronizing with EDMA3 based DMA
84 transfers.
85 This release supports DA830,C6748,TCI6498,TI816X,C6472,TCI6486,TI814X,TI816X,TI811X,TCI6608,TCI6616,TCI6614,C6670,C6678,TCI6638K2K,TDA2xx,TDA3xx, DRA72x, platforms, on
86 SYS/BIOS 6 side &amp; OMAPL138 on SYS/BIOS and ARM side. Porting
87 instructions
88 are also provided to use the package for different platforms and
89 Operating
90 Systems.
91 </p>
92 <p>
93 <a href="#Introduction">Introduction</a>,
94 <a href="#Documentation">Documentation</a>,
95 <a href="#Whats_New">What's New</a>,
96 <a href="#Upgrade_Info">Upgrade Info</a>,
97 <a href="#Device_Support">Device Support</a>,
98 <a href="#Compatibility">Compatibility Information</a>,
99 <a href="#Validation">Validation Info</a>,
100 <a href="#Known_Issues">Known Issues</a>,
101 <a href="#Examples">Examples</a>,
102 <a href="#Version">Version Information</a>,
103 <a href="#Support">Technical Support</a>
104 </p>
105 <hr>
106 <a name="Introduction"></a>
107 <h2><a name="Introduction">Introduction</a></h2>
108 <p>
109 EDMA3 LLD is a single product package containing the following
110 stand-alone
111 software components:
112 </p>
113 <ul type="disc">
114   <a name="Introduction"> <li> <b>EDMA3 Resource Manager</b> - TI
115 mandated library for all EDMA3 peripheral users to acquire and
116 configure EDMA3 hardware resources (DMA/QDMA channels, PaRAM Sets, TCCs
117 etc.) and DMA Interrupt Service Routines. </li>
118   <li> <b>EDMA3 Driver</b> - Functional library providing APIs for
119 programming, scheduling and synchronizing with EDMA transfers and many
120 more. </li>
121   </a>
122 </ul>
123 <p>
124 EDMA3 Resource Manager can be used independently whereas the EDMA3
125 Driver requires
126 the Resource Manager services internally.
127 </p>
128 <p>
129 EDMA3 LLD (both Resource Manager and the Driver) is a platform
130 independent package.
131 Hence it can be used across multiple platforms. Porting instructions
132 are provided for both the components to do the same.
133 </p>
134 <p>
135 It is also an OS-agnostic package and thus can be used across multiple
136 operating
137 systems. OS-adaptation layer needs to be provided by the user (in case
138 it is needed)
139 for OS customization. Instructions to do the same are also provided
140 along with
141 the package.
142 </p>
143 <p>
144 The Low Level Driver has already been ported (SYS/BIOS Operating
145 Systems)
146 and tested on various platforms mentioned below. Sample initialization
147 libraries,
148 which configure the EDMA3 hardware and provide the necessary OS
149 abstraction layer,
150 are also a part of the package. These libraries are available both for
151 the EDMA3
152 Resource Manager and EDMA3 Driver. These could be used for proper
153 initialization of the software component(s) along with the OS
154 adaptation layer
155 for the same.
156 </p>
157 <p>
158 The Low Level Driver consists of the following packages:
159 </p>
160 <ul type="disc">
161   <a name="Introduction"> <li> <tt><b>ti.sdo.edma3.rm</b></tt> -
162 EDMA3 Resource Manager. </li>
163   <li> <tt><b>ti.sdo.edma3.rm.sample</b></tt> - Sample initialization
164 library / OS abstraction layer for the Resource Manager. </li>
165   <li> <tt><b>ti.sdo.edma3.drv</b></tt> - EDMA3 Driver. </li>
166   <li> <tt><b>ti.sdo.edma3.drv.sample</b></tt> - Sample initialization
167 library / OS abstraction layer for the Driver. </li>
168   </a>
169 </ul>
170 <p><b>Note: </b>
171 <ul type="disc">
172   <a name="Introduction"> <li> <b>Address translation is not done in EDMA3 LLD</b> </li>
173 <br>If the memory map of the EDMA is different than the host processor programming it,
174 EDMA3LLD being a low level driver the address translation is not done by this. It is expected that the application
175 will provide the addresses, corresponding to EDMA memory map to configure in PARAM.
176 </p>
177 </a>
178   <a name="Introduction"> <li> <FONT COLOR ='RED'><b>All resources are allocated to all cores in default sample configuration files of EDMA3 LLD</b> </FONT></li>
179 <br>The EDMA resources like Channels, PaRAMs and TCCs which are shared by multiple cores (Ex: in TI814X and TI816X), 
180 The default configuration file allocates all the resources to every core since the resource split is application dependant. 
181 The applications using EDMA3LLD should appropriately allocate the resources in the config files and build EDMA3LLD libraries.
182 </p>
183 </a>
184   <a name="Introduction"> <li> <b>Building EDMA3LLD libs and examples on windows 7</b> </li>
185 <br>On windows 7 there is a permission issue while building the libs and examples.set the environment variable CYGWIN in the command window where you are building <br> examples:       $set CYGWIN=nontsec <br>You might have to manually delete the generated files before building.
186 </p>
187 </a>
188 </ul>
189 <a name="Documentation">
190 </a>
191 <h2><a name="Documentation">Documentation</a></h2>
192 <p>The following documentation is available:
193 </p>
194 <ul type="disc">
195   <li><a href="docs/EDMA3_RM_Release_Notes.pdf">EDMA3 Resource Manager
196 Release Notes</a></li>
197   <li> <a href="packages/ti/sdo/edma3/rm/docs/EDMA3_RM_User_Guide.pdf">EDMA3
198 Resource Manager User's Guide</a> </li>
199   <li> <a href="docs/EDMA3_Driver_Release_Notes.pdf">EDMA3 Driver
200 Release Notes</a> </li>
201   <li> <a
202  href="packages/ti/sdo/edma3/drv/docs/EDMA3_Driver_User_Guide.pdf">EDMA3
203 Driver User's Guide</a> </li>
204   <li> EDMA3 Resource Manager Application Programming Interface (API)
205 Reference Guide (<a href="packages/ti/sdo/edma3/rm/docs/html/index.html">HTML</a>
206 | <a href="packages/ti/sdo/edma3/rm/docs/EDMA3_Resource_Manager.chm">CHM</a>)
207   </li>
208   <li> EDMA3 Driver Application Programming Interface Reference Guide (<a
209  href="packages/ti/sdo/edma3/drv/docs/html/index.html">HTML</a> | <a
210  href="packages/ti/sdo/edma3/drv/docs/EDMA3_Driver.chm">CHM</a>) </li>
211   <li> <a href="examples/CSL2_DAT_DEMO/docs/CSL_DAT_Adapter.ppt">CSL
212 2.x DAT Reference Implementation on EDMA3 Hardware using EDMA3 LLD</a> </li>
213 </ul>
214 <hr>
215 <a name="Whats_New"></a>
216 <h2><a name="Whats_New">What's New</a></h2>
218 <p>
219 <a name="Whats_New">The following significant changes have been made since 02.11.12:
220 </a></p>
222 <p><a name="Whats_New">02.11.14 - This release
223 </a></p>
225 <p>
226 <a name="Whats_New">The following IRs are implemented:
227 </a></p>
229 <table width="100%">
230   <tbody>
231     <tr>
232       <th>ID</th>
233       <th>Headline</th>
234     </tr>
235     <tr>
236       <td width="200">SDOCM00108310</td>
237       <td>release 02.11.12.16 cant be included as xdc module</td>
238     </tr>
239     <tr>
240       <td width="200">SDOCM00108311</td>
241       <td>tda2xx build doesnot include crossbar configuration</td>
242     </tr>
243   </tbody>
244 </table>
246 <br>
247 <hr><a name="Upgrade_Info"></a>
248 <h2><a name="Upgrade_Info">Upgrade Information</a></h2>
249 <p>
250 The EDMA3 LLD packages are available in the "packages/" subdirectory of
251 the product.
252 If you have a previous release of the EDMA3 LLD product, you can
253 install this
254 release next to it, and modify your application and/or server builds to
255 use this
256 newer release.
257 </p>
258 <hr>
259 <a name="Device_Support"></a>
260 <h2><a name="Device_Support">Device Support</a></h2>
261 <p>
262 This release supports and has been tested on the following devices:
263 </p>
264 <ul>
265   <a name="Device_Support"> <li>DA830 EVM:
266     <ul type="circle">
267       <li>C67x SYS/BIOS</li>
268     </ul>
269   </li>
270   <li>TCI6498 Simulator:</li>
271   </a>
272   <ul>
273     <li>C64X+ SYS/BIOS</li>
274   </ul>
275   <li>C6748 EVM:</li>
276   <li style="margin-left: 40px;" type="circle">C67x SYS/BIOS</li>
277   <li type="disc">OMAPL138 EVM:</li>
278   <li style="margin-left: 40px;" type="circle">C67x SYS/BIOS</li>
279   <li style="margin-left: 40px;" type="circle">ARM 9 SYSBIOS</li>
280     <li>TI816X EVM:</li>
281   </a>
282   <ul>
283     <li>C67X SYS/BIOS</li>
284         <li>A8 SYS/BIOS</li>
285     <li>M3 SYS/BIOS</li>
286   </ul>
287   <li>C6472 EVM:</li>
288   </a>
289   <ul>
290     <li>C64X+ SYS/BIOS</li>
291   </ul>
292     <li>TCI6486 EVM:</li>
293   </a>
294   <ul>
295     <li>C64X+ SYS/BIOS</li>
296   </ul>
297       <li>TI814X EVM:</li>
298   </a>
299   <ul>
300     <li>C67X SYS/BIOS</li>
301         <li>A8 SYS/BIOS</li>
302         <li>M3 SYS/BIOS</li>
303   </ul>
304     <li>TI811X EVM:</li>
305   </a>
306   <ul>
307     <li>C67X SYS/BIOS</li>
308         <li>A8 SYS/BIOS</li>
309     <li>M3 SYS/BIOS</li>
310   </ul>
311       <li>C6670 EVM:</li>
312   </a>
313   <ul>
314     <li>C66X SYS/BIOS</li>
315   </ul>      
316   <li>C6678 EVM:</li>
317   </a>
318   <ul>
319     <li>C66X SYS/BIOS</li>
320   </ul>      
321   <li>TCI6608 Simulator:</li>
322   </a>
323   <ul>
324     <li>C66X SYS/BIOS</li>
325   </ul>      
326   <li>TCI6616 Simulator:</li>
327   </a>
328   <ul>
329     <li>C66X SYS/BIOS</li>
330   </ul>
331   <li>TCI6614 EVM:</li>
332   </a>
333   <ul>
334     <li>C66X SYS/BIOS</li>
335   </ul>
336   <li>TCI6638K2K Simulator:</li>
337   </a>
338   <ul>
339     <li>C66X SYS/BIOS</li>
340   </ul>
341   <li>TCI6638K2K EVM:</li>
342   </a>
343   <ul>
344     <li>C66X SYS/BIOS</li>
345   </ul>
346   <li>TCI6636K2H EVM:</li>
347   </a>
348   <ul>
349     <li>C66X SYS/BIOS</li>
350         <li>A15 Arago</li>
351   </ul>
352   <li>TDA2XX EVM:</li>
353   </a>
354   <ul>
355     <li>M4 SYS/BIOS</li>
356     <li>a15 SYS/BIOS</li>
357     <li>c66x SYS/BIOS</li>
358     <li>EVE SYS/BIOS</li>
359   </ul>
360   <li>TDA3XX EVM:</li>
361   </a>
362   <ul>
363     <li>M4 SYS/BIOS</li>
364     <li>c66x SYS/BIOS</li>
365     <li>EVE SYS/BIOS</li>
366   </ul>
367   <li>DRA72X EVM:</li>
368   </a>
369   <ul>
370     <li>M4 SYS/BIOS</li>
371     <li>a15 SYS/BIOS</li>
372     <li>c66x SYS/BIOS</li>
373   </ul>
374     </ul>
375 <hr>
376 <a name="Compatibility"></a>
377 <h2><a name="Compatibility">Compatibility Information</a></h2>
378 <h3><a name="Compatibility">Compatibility Key Definitions</a></h3>
379 <p>
380 Compatibility keys are intentionally independent of Marketing product
381 numbers
382 and are intended to:
383 </p>
384 <ol start="1" type="1">
385   <a name="Compatibility"> <li> Enable tooling to identify
386 incompatibilities between components, and </li>
387   <li> Convey a level of compatibility between different releases to
388 set end user expectations. </li>
389   </a>
390 </ol>
391 <p>
392 Compatibility keys are composed of 3 comma-delimited numbers - M, S, R
393 - where:
394 </p>
395 <ul type="disc">
396   <a name="Compatibility"> <li> <b>M = Major</b>. A difference in M
397 indicates a break in compatibility. </li>
398   <li> <b>S = Source</b>. A difference in S indicates source
399 compatibility. That is, the user's source doesn't require change, but <i>does</i>
400 require rebuilding. </li>
401   <li> <b>R = Radix</b>. A difference in R indicates an introduction
402 of new features, but compatibility with previous interfaces has not
403 broken. If libraries are provided by the package, an application must
404 re-link with the new libraries, but not rebuild from source. </li>
405   </a>
406 </ul>
407 <hr>
408 <a name="Validation"></a>
409 <h2><a name="Validation">Validation</a></h2>
410 <p>
411 This release was built and validated against using the following
412 components:
413 </p>
414 <ul type="disc">
415   <a name="Validation"> <li>CCS 5.5.0</li>
416   <li>C6x Code Generation Tools version 7.4.4 </li>
417   <li>TMS470 Code Generation Tools 5.1.1</li>
418   <li>Arm GCC A15 Toolchain (Linaro) 4.7.3</li>
419   <li>ARP32 Code Generation Tools 1.0.2</li>
420   <li>SYS/BIOS 6.37.01.24</li>
421   <li>XDC Tools 3.25.05.94</li>
422   <li>TCI6498 Simulator 0.7.1</li>
423   </a>
424 </ul>
425 <p>
426 This release was validated in the following configurations:
427 </p>
428 <ul>
429   <li> DA830 EVM:
430     <ul type="circle">
431       <li>C67x SYS/BIOS</li>
432     </ul>
433   </li>
434   <li> TCI6498 Simulator:
435     <ul type="circle">
436       <li>C64X+ SYS/BIOS</li>
437     </ul>
438   </li>
439   <li>C6748 EVM:</li>
440   <li style="margin-left: 40px;" type="circle">C67x SYS/BIOS</li>
441   <li>OMAPL138 EVM:</li>
442   <ul>
443     <li>C67x SYS/BIOS</li>
444     <li>ARM 9 SYSBIOS</li>
445   </ul>
446     <li>TI816X EVM:</li>
447   </a>
448   <ul>
449     <li>C67X SYS/BIOS</li>
450         <li>A8 SYS/BIOS</li>
451         <li>M3 SYS/BIOS</li>
452   </ul>
453   <li>C6472 EVM:</li>
454   </a>
455   <ul>
456     <li>C64X+ SYS/BIOS</li>
457   </ul>
458     <li>TCI6486 EVM:</li>
459   </a>
460   <ul>
461     <li>C64X+ SYS/BIOS</li>
462   </ul>
463     <li>TI814X EVM:</li>
464   </a>
465   <ul>
466     <li>C67X SYS/BIOS</li>
467         <li>A8 SYS/BIOS</li>
468         <li>M3 SYS/BIOS</li>
469   </ul>
470     <li>TI811X EVM:</li>
471   </a>
472   <ul>
473     <li>C67X SYS/BIOS</li>
474         <li>A8 SYS/BIOS</li>
475         <li>M3 SYS/BIOS</li>
476   </ul>
477       <li>C6670 EVM:</li>
478   </a>
479   <ul>
480     <li>C66X SYS/BIOS</li>
481   </ul>      
482   <li>C6678 EVM:</li>
483   </a>
484   <ul>
485     <li>C66X SYS/BIOS</li>
486   </ul>      
487   <li>TCI6608 Simulator:</li>
488   </a>
489   <ul>
490     <li>C66X SYS/BIOS</li>
491   </ul>      
492   <li>TCI6616 Simulator:</li>
493   </a>
494   <ul>
495     <li>C66X SYS/BIOS</li>
496   </ul>
497   <li>TCI6614 EVM:</li>
498   </a>
499   <ul>
500     <li>C66X SYS/BIOS</li>
501   </ul>
502   <li>TCI6638K2K Simulator:</li>
503   </a>
504   <ul>
505     <li>C66X SYS/BIOS</li>
506   </ul>
507   <li>TCI6638K2K EVM:</li>
508   </a>
509   <ul>
510     <li>C66X SYS/BIOS</li>
511   </ul>
512   <li>TCI6636K2H EVM:</li>
513   </a>
514   <ul>
515     <li>C66X SYS/BIOS</li>
516         <li>A15 Arago</li>
517   </ul>
518   <li>TDA2XX EVM:</li>
519   </a>
520   <ul>
521   <li>A15 SYS/BIOS</li>
522   <li>M4 SYS/BIOS</li>
523   <li>DSP SYS/BIOS</li>
524   <li>EVE SYS/BIOS</li>
525   </ul>
526   <li>TDA3XX SIM:</li>
527   </a>
528   <ul>
529   <li>M4 SYS/BIOS</li>
530   <li>DSP SYS/BIOS</li>
531   <li>EVE SYS/BIOS</li>
532   </ul>
533   <li>DRA72X SIM:</li>
534   </a>
535   <ul>
536   <li>A15 SYS/BIOS</li>
537   <li>M4 SYS/BIOS</li>
538   <li>DSP SYS/BIOS</li>
539   </ul>
540   </ul>
541 <hr><a name="Known_Issues">
542 </a>
543 <h2><a name="Known_Issues">Known Issues</a></h2>
544 <p>
545 The following are known issues with the current EDMA3 LLD release:
546 </p>
547 <h4><a name="Known_Issues">Pre-built instrumented libraries for DA830
548 not provided initially.</a></h4>
549 <p>Pre-built instrumented EDMA3 libraries for DA830 will not be
550 provided
551 initially. XDC does not support the same and hence the limitation. See
552 IR#
553 SDOCM00036738 for more details.
554 </p>
555 <h4><a name="Known_Issues">EDMA3 hardware does not work properly in
556 FIFO mode with all the controllers.</a></h4>
557 <p>Very few peripherals support EDMA3 FIFO mode. EMIF controller
558 doesn't support
559 the same. So EDMA3 CANNOT be used in FIFO mode for doing a
560 memory-to-memory data
561 transfers, EDMA3 being configured in the FIFO mode. Applications trying
562 to use
563 EDMA3 in FIFO mode should first check their respective
564 peripheral-controller
565 document for this mode support.
566 </p>
567 <h4><a name="Known_Issues">PingPong Example Fails for certain EDMA
568 instances for some DSP cores in Release mode only.</a></h4>
569 <p>The PingPong example in the package fails for certain EDMA Instances
570 for some DSP cores in Release mode only. It passes for Debug mode. See
571 IR#
572 SDOCM00064758 for more details.
573 </p>
574 <hr>
575 <a name="Examples"></a>
576 <h2><a name="Examples">Examples</a></h2>
577 <p>
578 EDMA3 LLD sample initialization libraries / OS abstraction layers (for
579 different
580 platforms) are located in:
581 </p>
582 <ul type="disc">
583   <a name="Examples"> <li> For Resource Manager: They could be located
584 in <tt>edma3_lld_02_11_14_XX\packages\ti\sdo\edma3\rm\sample\lib</tt>
585 folder. </li>
586   <li> For EDMA3 Driver: They could be located in <tt>edma3_lld_02_11_14_XX\packages\ti\sdo\edma3\drv\sample\lib</tt>
587 folder. </li>
588   </a>
589 </ul>
590 <p>
591 EDMA3 LLD stand-alone applications (for different platforms) are
592 located in:
593 </p>
594 <ul type="disc">
595   <a name="Examples"> <li> EDMA3 Driver: They could be located in <tt>edma3_lld_02_11_14_XX\examples\edma3_driver\</tt>
596 folder. </li>
597   </a>
598 </ul>
599 <ul type="disc">
600   <a name="Examples"> <li> CSL2.x DAT Reference Implementation: It
601 could be located in <tt>edma3_lld_02_11_14_XX\examples\CSL2_DAT_DEMO\</tt>
602 folder. </li>
603   </a>
604 </ul>
605 <hr>
606 <a name="Version"></a>
607 <h2><a name="Version">Version Information</a></h2>
608 <p>
609 This product's version follows a version format, <b>M.mm.pp.bb</b>,
610 where
611 <b>M</b> is a 2 digit major number,
612 <b>mm</b> is 2 digit minor number,
613 <b>pp</b> is a 2 digit patch number, and
614 <b>b</b> is an unrestricted set of digits used as an incrementing build
615 counter.
616 </p>
617 <p>
618 To support multiple side-by-side installations of the product, the
619 product
620 version is encoded in the top level directory, ex. <b>edma3_lld_02_11_14_XX</b>.
621 </p>
622 <p>Subsequent releases of patch upgrades will be identified by the
623 patch number,
624 ex. EDMA3 LLD 02.11.14 with directory <b>edma3_lld_02_11_14_YY</b>.
625 Typically, these
626 patches only include critical bug fixes.
627 </p>
628 <hr>
629 <a name="Support"></a>
630 <h2><a name="Support">Technical Support</a></h2>
631 <p>
632 For technical support, Please post at TI E2E forum <a href="http://e2e.ti.com/support/embedded/f/355.aspx">http://e2e.ti.com/support/embedded/f/355.aspx</a>
633 </p>
634 <hr>
635 <p>Last updated: June 30, 2014
636 </p>
637 </body>
638 </html>