ID |
Headline |
SDSCM00019578 |
DMAN3 should support the persistent property in IDMA3 requests |
SDSCM00024229 |
DSKT2 scratch and persistent alloc/free functions not exposed in the
DSKT2 public headers |
SDSCM00025464 |
Some ACPY3 functions give out garbage trace even if GT_set is not
called |
SDSCM00025628 |
RMAN examples missing common.cfg file |
SDSCM00025631 |
RMAN examples need build instructions |
The following enhancements were resolved:
ID |
Headline |
SDSCM00025515 |
HDINTC module hard codes Interrupt and Event number for the
BIOS-ISR |
SDSCM00025744 |
RMAN on ARM should support multi-process
|
SDSCM00025399 |
DMAN3 (and ACPY3) should have configuration for CPU copy
|
SDSCM00024890 |
Standardize lib directory for all FC libraries
|
2.10
- New features
- C64+ libraries built with CG 6.0.16
- Support for DM6467
- Introduced DSKT2 APIs for querying alg instance memory usage
at runtime
- Introduced IRES/RMAN app note (see documentation section above)
- Updated Dependencies
- EDMA3 Resource Manager 1.04.00
- The following defects were resolved:
ID |
Headline |
SDSCM00021022 |
In FC examples api.a64P should be picked up from FC not the CCS install |
- The following enhancements were resolved:
ID |
Headline |
SDSCM00015973 |
DMAN3's config parameter validation is required |
SDSCM00020192 |
DSKT2 debug builds should assert that algs that request IALG_SCRATCH implement algActivate()/algDeactivate() |
2.00
- New features
- Added ARM-based Linux support to DMAN3. This implementation
currently requires the Codec Engine to be configured into
the ARM-based Linux system.
- Initial RMAN implementation - supporting the new XDAIS IRES
interface.
- Introduced DSKT2_createAlgExt() to create algorithms
and provide external memory to them regardless of the memory they
asked for.
- Significant tracing rearchitecture. Many packages now include a
.trace config param which, when set to true, enables tracing
support.
- Updated Dependencies
- Updated to XDAIS 6.00
- Updated to XDC 3.00
- EDMA3 Resource Manager 1.01.00.01
- The following defects were resolved:
ID |
Headline |
SDSCM00015980 |
DMAN3's XDC config support fails when configuring
.scratchAllocFxn |
SDSCM00016134 |
ACPY3 build with ACPY3_INLINE_ALL flag gives build errors |
SDSCM00017450 |
DSKT2 can fail to correctly provide external scratch memory
to algorithms |
SDSCM00018734 |
DMAN3_grantDmaChannels() crashes in case of allocation
failures |
- The following enhancements were resolved:
ID |
Headline |
SDSCM00020198 |
DMAN3 should have the option of returning an error if alg requests
more resources than configured for its scratch group |
1.20
- C64+ libraries built with CG 6.0.8
- Updated fctools to XDAIS 5.20 release
- ACPY3_complete() inline support added.
- fastcopy example cleanup
- And the following MRs were resolved:
ID |
Headline |
SDSCM00002823 |
Remove dependency on BIOS types |
SDSCM00012024 |
DSKT2 User Guide documentation collateral should be provided for
Framework Components |
SDSCM00013086 |
FC DMAN3 example builds have poor out of box experience |
SDSCM00013781 |
Require instrumentation in ACPY3 library to support
DGT logging or any other kind of generic logging |
SDSCM00014395 |
DSKT2 scratch memory allocation & sharing is not optimal when
alignment is required |
SDSCM00014454 |
Hardlimit of DMAN3_MAXDMARECS to 32 not required in the dman3
library. Should be removed as a config option for DMAN3 |
SDSCM00014931 |
DMAN3_createChannels(), DMAN3_grantDMAChannels() memory overwrite
for non-ACPY3 channels |
1.10
- All libraries are built with CG 6.0.7
- Updated fctools to XDAIS 5.10 release
- And the following MRs were resolved:
ID |
Headline |
SDSCM00013041 |
ACPY3 susceptible to SDSCM00012367 (Silicon Errata) |
SDSCM00006288 |
Need to update the Joule DMA design guide |
SDSCM00012532 |
Source code does not line up when stepping through
debug libraries |
SDSCM00012770 |
ACPY3 specification changes are needed for
clarification and to match design and implementation changes |
SDSCM00012773 |
DMAN3 RTSC Configuration requires custom non-public
initialization call to configure DMAN3 heaps |
1.03
- All libraries are built with CG6x 6.0.5
1.02
- OMAPS00082651 - Allow IDMA3 channel env to be allocated in DSKT2
scratch memory
- Also tracked as SDSCM00005723 - FC ACPY3 needs to support scratch
environment memory for IDMA3 channel objects
- SDSCM00010132 - ACPY3 Changes Needed for Interoperability with Codecs
using QDMA Library
- SDSCM00010205 - DMAN3 uses wrong QCHMAP offsets
1.01
- OMAPS00081737 - Race condition can happen in DSKT2_freeAlg
- Also tracked as SDSCM00007366 - DSKT2_freeAlg and lazy
deactivate race condition
- OMAPS00079468 - ACPY3_activate causing DMA transfer when built
with -o3
- OMAPS00078941 - ACPY3_wait() inline version not inlining
- OMAPS00078784 - DSKT2 needs an API to deactivate all algs that have
been lazily deactivated
- Also tracked as SDSCM00006538 - DSKT2's lazy deactivate can cause
problems when power management is introduced
- This was satisfied with the introduction of
DSKT2_deactivateAll()
- OMAPS00079710 - DSKT2 should not try to deactivate an codec instance
that does not provide algDeactivate()
- OMAPS00076836 - DSKT2 can introduce some cache coherence issues
- Also tracked as SDSCM00005847 - DSKT2 doesn't BCACHE_flush
MEM_calloc initialized external, persistant data
- OMAPS00074261 - Support Visual Studio builds of dman3 and acpy3
libraries
- OMAPS00074262 - Fix CPU copy version of ACPY3 library
- Added DSKT2 documentation to the configuration reference guide
The Framework Components packages are available in the "packages/"
subdirectory of the product. If you have a previous release of the
Framework Components product, you can install this release next to it, and
modify your application and/or server builds to use this newer release.
If you're using the EZSDK, this can be done by setting the
FC_INSTALL_DIR variable in the Rules.make file at the
top of the EZSDK distribution directory.
Note, if you're upgrading from a release earlier than Framework Components 3.30.00.06, be
sure to review the Upgrade section for each of the releases between
your current FC release and this one. Previous release notes are
available in the relnotes_archive directory.
The details provided below describe each package's compatibility with the
previous release (framework_components_3_30_00_06).
Note, the Configuration Reference Guide contains
further details about each package.
Package |
framework_components_3_30_00_06 |
framework_components_3_31_00_02 |
ti.sdo.fc.dskt2 |
1, 0, 4 |
1, 0, 4 |
ti.sdo.fc.ecpy |
1, 0, 1 |
1, 0, 1 |
ti.sdo.fc.edma3 |
3, 0, 0 |
3, 0, 0 |
ti.sdo.fc.edmamgr |
1, 0, 0 |
1, 0, 0 |
ti.sdo.fc.global |
1, 0, 0 |
1, 0, 0 |
ti.sdo.fc.ires |
2, 0, 0 |
2, 0, 0 |
ti.sdo.fc.ires.bufres |
1, 0, 0 |
1, 0, 0 |
ti.sdo.fc.ires.edma3chan |
1, 0, 0 |
1, 0, 0 |
ti.sdo.fc.ires.hdvicp |
1, 0, 1 |
1, 0, 1 |
ti.sdo.fc.ires.nullresource |
1, 0, 0 |
1, 0, 0 |
ti.sdo.fc.ires.tiledmemory |
1, 0, 0 |
1, 0, 0 |
ti.sdo.fc.ires.vicp |
1, 0, 1 |
1, 0, 1 |
ti.sdo.fc.memutils |
1, 0, 0 |
1, 0, 0 |
ti.sdo.fc.rman |
2, 0, 0 |
2, 0, 0 |
ti.sdo.fc.utils |
1, 0, 3 |
1, 0, 3 |
ti.sdo.fc.utils.osalsupport |
1, 0, 0 |
1, 0, 0 |
ti.sdo.tiler |
1, 0, 0 |
1, 0, 0 |
Release notes for previous releases are available in the relnotes_archive directory.
Compatibility Key Definitions
Compatibility keys are intentionally independent of Marketing product
numbers and are intended to:
- Enable tooling to identify incompatibilities between components,
and
- Convey a level of compatibility between different releases to
set end user expectations.
Compatibility keys are composed of 3 comma-delimited numbers - M,S,R
- where:
- M = Major. A difference in M indicates a break in
compatibility.
- S = Source. A difference in S indicates source
compability. That is, the user's source doesn't require change, but
does require rebuilding.
- R = Radix. A difference in R indicates an introduction
of new features, but compatibility with previous interfaces has not
broken. If libraries are provided by the package, an application
must re-link with the new libraries, but not rebuild from source.
This release supports the following devices:
- C6A8149:
- single-processor C674 device, running SYS/BIOS
- single-processor A8 device, running Linux
- single-processor EVE device, running SYS/BIOS
- single-processor Cortex M3 device, running SYS/BIOS
- TI811X:
- single-processor C674 device, running SYS/BIOS
- single-processor Cortex A8 device, running Linux
- single-processor Cortex M3 device, running SYS/BIOS
- TI816X:
- single-processor C674 device, running SYS/BIOS
- single-processor Cortex A8 device, running Linux
- single-processor Cortex M3 device, running SYS/BIOS
- TI814X:
- single-processor C674 device, running SYS/BIOS
- single-processor Cortex A8 device, running Linux/QNX
- single-processor Cortex M3 device, running SYS/BIOS
- TI813X:
- single-processor Cortex A8 device, running Linux
- single-processor Cortex M3 device, running SYS/BIOS
- OMAP4430:
- single-processor C64T device, running SYS/BIOS
- single-processor Cortex A9 device, running Linux
- single-processor Cortex M3 device, running SYS/BIOS
- C6472 C6474:
- Multiple C64P processors, running SYS/BIOS
- C6678 C6670:
- Multiple C66 processors, running SYS/BIOS
- OMAP3530:
- single-processor, DSP-only configuration, running SYS/BIOS
- single-processor Cortex A8 device, running Linux
- OMAP-L138:
- single-processor, DSP-only configuration, running SYS/BIOS
- single-processor ARM9 device, running Linux
This release was built and validated against using the following software
components. Please use the versions below or any other that are compatible with the below:
- XDAIS 7.24.00.04
- XDCtools 3.25.00.48
- SYS/BIOS 6.35.01.29
- EDMA3 Resource Manager 02.11.10.09
- Pre-built binaries were built with the following toolchains:
- ti.targets.C64P - 7.2.0
- ti.targets.C674 - 7.2.0
- ti.targets.arm.elf.M3 - 5.0.1
- ti.targets.arm.elf.M4 - 5.0.1
- ti.targets.elf.C64P - 7.2.0
- ti.targets.elf.C64T - 7.2.0
- ti.targets.elf.C66_big_endian - 7.2.0
- ti.targets.elf.C66 - 7.2.0
- ti.targets.elf.C674 - 7.2.0
This release was validated using the following hardware platforms. Note
that more devices are supported, but validation was only performed on
a subset:
C674
M3
C66
TI816X
-
For the TI816X platform, there are issues when performing internal
memory transfers using DMA on the C674. The internal memory addresses
seem to be wrongly interpreted when the Channel Controller queue
priorities (or the QUEPRI register) are set to either 3 or 7. When using the ti.sdo.fc.edma3.Settings module, make sure you configure
priorities to be something other than 3 or 7.
EDMA3
-
The level of support for devices that have multiple EDMA3 hardware
instances is limited. E.g, OMAP-L138 devices have 2 EDMA3
hardware instances; the DMA related modules of Framework Components
let you configure/access only one of those devices at a time. No
support is available, as yet, for concurrent management/access to mutiple
EDMA3 Transfer Controllers.
Framework Components examples and instructions are located in the
"examples" directory.
This product's version follows a version format, M.mm.pp.bb,
where M is a single digit Major number, mm is 2 digit
minor number, pp is a 2 digit patch number, and b is an
unrestricted set of digits used as an incrementing build counter.
To support multiple side-by-side installations of the product, the
product version is encoded in the top level directory,
ex. framework_components_3_31_00_02.
Subsequent releases of patch upgrades will be identified by the patch
number, ex. FC 3.31.01.XX with directory framework_components_3_31_01_XX.
Typically, these patches only include critical bug fixes.
Questions/issues regarding this release may be posted at the E2E forum at http://e2e.ti.com/support/embedded/default.aspx
Check the following web site for updates: https://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/fc/index.html
Last updated: October 27, 2014