Revert "Merge branch 'master' into edma3_keystone2"
[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.11 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.11 Release Notes</h1>
79 <h2 class="title">Feb 19, 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 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   <a name="Introduction"> <li> <b>Platform name Vayu will Change in future release</b> </li>
189 <br>The package.xs file uses platform name vayu which will change in future release based on the official name given in BIOS for vayu platform.
190 </p>
191 </a>
192 </ul>
193 <a name="Documentation">
194 </a>
195 <h2><a name="Documentation">Documentation</a></h2>
196 <p>The following documentation is available:
197 </p>
198 <ul type="disc">
199   <li><a href="docs/EDMA3_RM_Release_Notes.pdf">EDMA3 Resource Manager
200 Release Notes</a></li>
201   <li> <a href="packages/ti/sdo/edma3/rm/docs/EDMA3_RM_User_Guide.pdf">EDMA3
202 Resource Manager User's Guide</a> </li>
203   <li> <a href="docs/EDMA3_Driver_Release_Notes.pdf">EDMA3 Driver
204 Release Notes</a> </li>
205   <li> <a
206  href="packages/ti/sdo/edma3/drv/docs/EDMA3_Driver_User_Guide.pdf">EDMA3
207 Driver User's Guide</a> </li>
208   <li> EDMA3 Resource Manager Application Programming Interface (API)
209 Reference Guide (<a href="packages/ti/sdo/edma3/rm/docs/html/index.html">HTML</a>
210 | <a href="packages/ti/sdo/edma3/rm/docs/EDMA3_Resource_Manager.chm">CHM</a>)
211   </li>
212   <li> EDMA3 Driver Application Programming Interface Reference Guide (<a
213  href="packages/ti/sdo/edma3/drv/docs/html/index.html">HTML</a> | <a
214  href="packages/ti/sdo/edma3/drv/docs/EDMA3_Driver.chm">CHM</a>) </li>
215   <li> <a href="examples/CSL2_DAT_DEMO/docs/CSL_DAT_Adapter.ppt">CSL
216 2.x DAT Reference Implementation on EDMA3 Hardware using EDMA3 LLD</a> </li>
217 </ul>
218 <hr>
219 <a name="Whats_New"></a>
220 <h2><a name="Whats_New">What's New</a></h2>
222 <p>
223 <a name="Whats_New">The following significant changes have been made since 02.11.11.13:
224 </a></p>
226 <p><a name="Whats_New">02.11.11.15 - This release
227 </a></p>
229 <p>
230 <a name="Whats_New">Major Actions:
231 </a></p>
232 <li> <font size="+1">User space support for Keystone 2 Devices. Static libraries, dynamic libraries, and examples are provided for TCI6636K2H, TCI6638K2K, TCI6630K2L, and C66AK2E.</font></li>
234 <p>
235 <a name="Whats_New">The following IRs are implemented:
236 </a></p>
238 <table width="100%">
239   <tbody>
240     <tr>
241       <th>ID</th>
242       <th>Headline</th>
243     </tr>
244     <tr>
245       <td width="200">SDOCM00106346</td>
246       <td>edma3lld needs to be compiled with --mem_model:data=far for use with OpenCL</td>
247     </tr>
248   </tbody>
249 </table>
251 <br>
252 <hr><a name="Upgrade_Info"></a>
253 <h2><a name="Upgrade_Info">Upgrade Information</a></h2>
254 <p>
255 The EDMA3 LLD packages are available in the "packages/" subdirectory of
256 the product.
257 If you have a previous release of the EDMA3 LLD product, you can
258 install this
259 release next to it, and modify your application and/or server builds to
260 use this
261 newer release.
262 </p>
263 <hr>
264 <a name="Device_Support"></a>
265 <h2><a name="Device_Support">Device Support</a></h2>
266 <p>
267 This release supports and has been tested on the following devices:
268 </p>
269 <ul>
270   <a name="Device_Support"> <li>DA830 EVM:
271     <ul type="circle">
272       <li>C67x SYS/BIOS</li>
273     </ul>
274   </li>
275   <li>TCI6498 Simulator:</li>
276   </a>
277   <ul>
278     <li>C64X+ SYS/BIOS</li>
279   </ul>
280   <li>C6748 EVM:</li>
281   <li style="margin-left: 40px;" type="circle">C67x SYS/BIOS</li>
282   <li type="disc">OMAPL138 EVM:</li>
283   <li style="margin-left: 40px;" type="circle">C67x SYS/BIOS</li>
284   <li style="margin-left: 40px;" type="circle">ARM 9 SYSBIOS</li>
285     <li>TI816X EVM:</li>
286   </a>
287   <ul>
288     <li>C67X SYS/BIOS</li>
289         <li>A8 SYS/BIOS</li>
290     <li>M3 SYS/BIOS</li>
291   </ul>
292   <li>C6472 EVM:</li>
293   </a>
294   <ul>
295     <li>C64X+ SYS/BIOS</li>
296   </ul>
297     <li>TCI6486 EVM:</li>
298   </a>
299   <ul>
300     <li>C64X+ SYS/BIOS</li>
301   </ul>
302       <li>TI814X EVM:</li>
303   </a>
304   <ul>
305     <li>C67X SYS/BIOS</li>
306         <li>A8 SYS/BIOS</li>
307         <li>M3 SYS/BIOS</li>
308   </ul>
309     <li>TI811X EVM:</li>
310   </a>
311   <ul>
312     <li>C67X SYS/BIOS</li>
313         <li>A8 SYS/BIOS</li>
314     <li>M3 SYS/BIOS</li>
315   </ul>
316       <li>C6670 EVM:</li>
317   </a>
318   <ul>
319     <li>C66X SYS/BIOS</li>
320   </ul>      
321   <li>C6678 EVM:</li>
322   </a>
323   <ul>
324     <li>C66X SYS/BIOS</li>
325   </ul>      
326   <li>TCI6608 Simulator:</li>
327   </a>
328   <ul>
329     <li>C66X SYS/BIOS</li>
330   </ul>      
331   <li>TCI6616 Simulator:</li>
332   </a>
333   <ul>
334     <li>C66X SYS/BIOS</li>
335   </ul>
336   <li>TCI6614 EVM:</li>
337   </a>
338   <ul>
339     <li>C66X SYS/BIOS</li>
340   </ul>
341   <li>TCI6638K2K Simulator:</li>
342   </a>
343   <ul>
344     <li>C66X SYS/BIOS</li>
345   </ul>
346   <li>TCI6638K2K EVM:</li>
347   </a>
348   <ul>
349     <li>C66X SYS/BIOS</li>
350   </ul>
351   <li>TCI6636K2H EVM:</li>
352   </a>
353   <ul>
354     <li>C66X SYS/BIOS</li>
355         <li>A15 Arago</li>
356   </ul>
357   <li>TDA2XX SIM:</li>
358   </a>
359   <ul>
360     <li>M4 SYS/BIOS</li>
361     <li>a15 SYS/BIOS</li>
362     <li>c66x SYS/BIOS</li>
363     <li>EVE SYS/BIOS</li>
364   </ul>
365     </ul>
366 <hr>
367 <a name="Compatibility"></a>
368 <h2><a name="Compatibility">Compatibility Information</a></h2>
369 <h3><a name="Compatibility">Compatibility Key Definitions</a></h3>
370 <p>
371 Compatibility keys are intentionally independent of Marketing product
372 numbers
373 and are intended to:
374 </p>
375 <ol start="1" type="1">
376   <a name="Compatibility"> <li> Enable tooling to identify
377 incompatibilities between components, and </li>
378   <li> Convey a level of compatibility between different releases to
379 set end user expectations. </li>
380   </a>
381 </ol>
382 <p>
383 Compatibility keys are composed of 3 comma-delimited numbers - M, S, R
384 - where:
385 </p>
386 <ul type="disc">
387   <a name="Compatibility"> <li> <b>M = Major</b>. A difference in M
388 indicates a break in compatibility. </li>
389   <li> <b>S = Source</b>. A difference in S indicates source
390 compatibility. That is, the user's source doesn't require change, but <i>does</i>
391 require rebuilding. </li>
392   <li> <b>R = Radix</b>. A difference in R indicates an introduction
393 of new features, but compatibility with previous interfaces has not
394 broken. If libraries are provided by the package, an application must
395 re-link with the new libraries, but not rebuild from source. </li>
396   </a>
397 </ul>
398 <hr>
399 <a name="Validation"></a>
400 <h2><a name="Validation">Validation</a></h2>
401 <p>
402 This release was built and validated against using the following
403 components:
404 </p>
405 <ul type="disc">
406   <a name="Validation"> <li>CCS 5.5.0</li>
407   <li>C6x Code Generation Tools version 7.4.4 </li>
408   <li>TMS470 Code Generation Tools 5.1.1</li>
409   <li>Arm GCC A15 Toolchain (Linaro) 4.7.3</li>
410   <li>ARP32 Code Generation Tools 1.0.2</li>
411   <li>SYS/BIOS 6.37.00.20</li>
412   <li>XDC Tools 3.25.05.94</li>
413   <li>TCI6498 Simulator 0.7.1</li>
414   </a>
415 </ul>
416 <p>
417 This release was validated in the following configurations:
418 </p>
419 <ul>
420   <li> DA830 EVM:
421     <ul type="circle">
422       <li>C67x SYS/BIOS</li>
423     </ul>
424   </li>
425   <li> TCI6498 Simulator:
426     <ul type="circle">
427       <li>C64X+ SYS/BIOS</li>
428     </ul>
429   </li>
430   <li>C6748 EVM:</li>
431   <li style="margin-left: 40px;" type="circle">C67x SYS/BIOS</li>
432   <li>OMAPL138 EVM:</li>
433   <ul>
434     <li>C67x SYS/BIOS</li>
435     <li>ARM 9 SYSBIOS</li>
436   </ul>
437     <li>TI816X EVM:</li>
438   </a>
439   <ul>
440     <li>C67X SYS/BIOS</li>
441         <li>A8 SYS/BIOS</li>
442         <li>M3 SYS/BIOS</li>
443   </ul>
444   <li>C6472 EVM:</li>
445   </a>
446   <ul>
447     <li>C64X+ SYS/BIOS</li>
448   </ul>
449     <li>TCI6486 EVM:</li>
450   </a>
451   <ul>
452     <li>C64X+ SYS/BIOS</li>
453   </ul>
454     <li>TI814X EVM:</li>
455   </a>
456   <ul>
457     <li>C67X SYS/BIOS</li>
458         <li>A8 SYS/BIOS</li>
459         <li>M3 SYS/BIOS</li>
460   </ul>
461     <li>TI811X EVM:</li>
462   </a>
463   <ul>
464     <li>C67X SYS/BIOS</li>
465         <li>A8 SYS/BIOS</li>
466         <li>M3 SYS/BIOS</li>
467   </ul>
468       <li>C6670 EVM:</li>
469   </a>
470   <ul>
471     <li>C66X SYS/BIOS</li>
472   </ul>      
473   <li>C6678 EVM:</li>
474   </a>
475   <ul>
476     <li>C66X SYS/BIOS</li>
477   </ul>      
478   <li>TCI6608 Simulator:</li>
479   </a>
480   <ul>
481     <li>C66X SYS/BIOS</li>
482   </ul>      
483   <li>TCI6616 Simulator:</li>
484   </a>
485   <ul>
486     <li>C66X SYS/BIOS</li>
487   </ul>
488   <li>TCI6614 EVM:</li>
489   </a>
490   <ul>
491     <li>C66X SYS/BIOS</li>
492   </ul>
493   <li>TCI6638K2K Simulator:</li>
494   </a>
495   <ul>
496     <li>C66X SYS/BIOS</li>
497   </ul>
498   <li>TCI6638K2K EVM:</li>
499   </a>
500   <ul>
501     <li>C66X SYS/BIOS</li>
502   </ul>
503   <li>TCI6636K2H EVM:</li>
504   </a>
505   <ul>
506     <li>C66X SYS/BIOS</li>
507         <li>A15 Arago</li>
508   </ul>
509   <li>TDA2XX SIM:</li>
510   </a>
511   <ul>
512   <li>A15 SYS/BIOS</li>
513   <li>M4 SYS/BIOS</li>
514   <li>DSP SYS/BIOS</li>
515   <li>EVE SYS/BIOS</li>
516   </ul>
517   </ul>
518 <hr><a name="Known_Issues">
519 </a>
520 <h2><a name="Known_Issues">Known Issues</a></h2>
521 <p>
522 The following are known issues with the current EDMA3 LLD release:
523 </p>
524 <h4><a name="Known_Issues">Pre-built instrumented libraries for DA830
525 not provided initially.</a></h4>
526 <p>Pre-built instrumented EDMA3 libraries for DA830 will not be
527 provided
528 initially. XDC does not support the same and hence the limitation. See
529 IR#
530 SDOCM00036738 for more details.
531 </p>
532 <h4><a name="Known_Issues">EDMA3 hardware does not work properly in
533 FIFO mode with all the controllers.</a></h4>
534 <p>Very few peripherals support EDMA3 FIFO mode. EMIF controller
535 doesn't support
536 the same. So EDMA3 CANNOT be used in FIFO mode for doing a
537 memory-to-memory data
538 transfers, EDMA3 being configured in the FIFO mode. Applications trying
539 to use
540 EDMA3 in FIFO mode should first check their respective
541 peripheral-controller
542 document for this mode support.
543 </p>
544 <h4><a name="Known_Issues">PingPong Example Fails for certain EDMA
545 instances for some DSP cores in Release mode only.</a></h4>
546 <p>The PingPong example in the package fails for certain EDMA Instances
547 for some DSP cores in Release mode only. It passes for Debug mode. See
548 IR#
549 SDOCM00064758 for more details.
550 </p>
551 <hr>
552 <a name="Examples"></a>
553 <h2><a name="Examples">Examples</a></h2>
554 <p>
555 EDMA3 LLD sample initialization libraries / OS abstraction layers (for
556 different
557 platforms) are located in:
558 </p>
559 <ul type="disc">
560   <a name="Examples"> <li> For Resource Manager: They could be located
561 in <tt>edma3_lld_02_11_11_XX\packages\ti\sdo\edma3\rm\sample\lib</tt>
562 folder. </li>
563   <li> For EDMA3 Driver: They could be located in <tt>edma3_lld_02_11_11_XX\packages\ti\sdo\edma3\drv\sample\lib</tt>
564 folder. </li>
565   </a>
566 </ul>
567 <p>
568 EDMA3 LLD stand-alone applications (for different platforms) are
569 located in:
570 </p>
571 <ul type="disc">
572   <a name="Examples"> <li> EDMA3 Driver: They could be located in <tt>edma3_lld_02_11_11_XX\examples\edma3_driver\</tt>
573 folder. </li>
574   </a>
575 </ul>
576 <ul type="disc">
577   <a name="Examples"> <li> CSL2.x DAT Reference Implementation: It
578 could be located in <tt>edma3_lld_02_11_11_XX\examples\CSL2_DAT_DEMO\</tt>
579 folder. </li>
580   </a>
581 </ul>
582 <hr>
583 <a name="Version"></a>
584 <h2><a name="Version">Version Information</a></h2>
585 <p>
586 This product's version follows a version format, <b>M.mm.pp.bb</b>,
587 where
588 <b>M</b> is a 2 digit major number,
589 <b>mm</b> is 2 digit minor number,
590 <b>pp</b> is a 2 digit patch number, and
591 <b>b</b> is an unrestricted set of digits used as an incrementing build
592 counter.
593 </p>
594 <p>
595 To support multiple side-by-side installations of the product, the
596 product
597 version is encoded in the top level directory, ex. <b>edma3_lld_02_11_11_XX</b>.
598 </p>
599 <p>Subsequent releases of patch upgrades will be identified by the
600 patch number,
601 ex. EDMA3 LLD 02.11.11 with directory <b>edma3_lld_02_11_11_YY</b>.
602 Typically, these
603 patches only include critical bug fixes.
604 </p>
605 <hr>
606 <a name="Support"></a>
607 <h2><a name="Support">Technical Support</a></h2>
608 <p>
609 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>
610 </p>
611 <hr>
612 <p>Last updated: Jan 7, 2013
613 </p>
614 </body>
615 </html>