Texas Instruments Technology for Innovators(tm)

IPC 1.00.01.48 GA Build Release Notes

This release note is divided into the following sections:

Introduction, Documentation, What's New, Upgrade & Compatibility Information, Host Support, Dependencies, Device Support, Validation Info, Known Issues, Examples, Version Information, Technical Support.

Introduction

This is the production (GA) release of IPC 1.00.01.48* 

Interprocess communication mechanisms including message passing, streams, and linked lists, which work transparently in both uniprocessor and muiltiprocessor configurations.

The IPC product is comprised of three main packages

These packages are provided as source code and prebuilt libraries.

*The "ti.sdo.ipc" package is an EA (Early Adopter) release, so minor changes may occur in the next release.

Documentation

The following documentation is available:

Release notes from previous releases are also available in the relnotes_archive directory.


What's New

1.00.01.48 GA Build Release (this release).

Build Changes:  The following were changed for this release

New Platforms: Custom platform files are supplied in the ti\sdo\ipc\examples\platforms directory. These platforms setup the memory maps for the multicore processors. These platforms are used in the multicore examples. The platforms are

The customization of the memory maps for the above platforms was removed from the etc\config.bld.default file. Instead the etc\config.bld.default file references the custom platform packages listed above.

New Modules: The following new modules are available:

Bug Fixes and Minor Enhancements: See the list below for abbreviated list of bug fixes and enhancements.

1.00.01.48 (This Release) 

For information on enhancements and defect fixes in earlier releases, please refer to the release notes from previous releases that are available in the relnotes_archive directory. 

Upgrade and Compatibility Information

Interface/API changes: This release in not backward compatible with  IPC 1.00.00.40 in the following areas:


Host Support

This release supports the following hosts:

Windows XP SP2/SP3

Windows Vista

Linux (Redhat 4 and 5)


Dependencies

This release requires the following other software components and tools versions to successfully function:


Device Support

Same devices as supported in DSP/BIOS 6.20.01.

Validation Information

This release was validated using the following components:

Known Issues

There are several know issues with this release, primarily in the ti\sdo\ipc package (which is at EA status)

ID Headline
SDOCM00058906 Remote NameServer_get hangs if dest. not up 
SDOCM00058860 HeapBuf_sharedMemReq should return UInt32 not Int 
SDOCM00058783 Shared memory modules must check for correct memory alignment
SDOCM00058782 Need to resolve reserved events config in Notify/Notify Driver
SDOCM00058747NotifyDriverLoopback should support static creation
SDOCM00057295 IPC: documention issue
SDOCM00057277NameServer: ROV should show ALLOWGROWTH instead of 0xffffffff for numDynamic
SDOCM00057275ipc modules do not handle when MultiProc.Id = INVALIDID
SDOCM00057267IPC modules with shared memory need to use BitsXX instead of UIntXX
SDOCM00057265IPC/NameServer needs asynchronous support 
SDOCM00057260ipc/family needs code review and full regression tests
SDOCM00057259 IPC Benchmarks need be examined 
SDOCM00057258IPC portion of User Guide needs updating 
SDOCM00057257All IPC modules should support cacheFlag for better performance
SDOCM00057255xGConf Product View for IPC needs to be refined. 
SDOCM00057254gates (Peterson and HWSem) needs code review and full regression tests
SDOCM00057253NameServerRemoteNotify needs code review and full regression tests
SDOCM00057251Notify needs code review and full regression tests 
SDOCM00057250ListMP needs code review and full regression tests 
SDOCM00057249SharedRegion needs code review and full regression tests
SDOCM00057248MessageQTransportShm needs code review and full regression tests
SDOCM00057247HeapMultiBuf needs code review and full regression tests
SDOCM00057246HeapBuf needs code review and full reSDOCM00057242gression tests
SDOCM00057245MessageQ needs code review and full regression tests
SDOCM00057244HeapBuf's trackMaxAllocs does not work properly
SDOCM00057243MessageQ heap management needs investigation [might require design change]
SDOCM00057242HeapMultiBuf does not work 
SDOCM00057241Notify/notifyDrivers does not support static instance creation
SDOCM00057239HeapBuf does not support static instance creation
SDOCM00057238NameServerRemoteNotify does not support static instance creation
SDOCM00057236MessageQTransportShm does not support static instance creation
SDOCM00057049GatePeterson should support max protection configuration for optimization
SDOCM00057006ROV views needed for GatePeterson and GateHWSem 
SDOCM00057005NotifyDriverShm should support static creation 
SDOCM00047848MSGQ needs sequence # and RTA hooks 
SDOCM00047053MessageQ_delete does not free memory back to user created heapMem


Examples

The IPC product ships with several examples. The following is an explaination of each one. Refer to the User Install Guide for details on building.
io\examples
- stream: This example shows the use of ti.sysbios.io.Stream module to demonstrate IO streaming using a driver.

utils\examples
- list: The list example shows how to use the basical functionality of the ti.sdo.utils.List module
- multiProc: The multiProc example shows how to use the basical functionality of the ti.sdo.utils.MultiProc module
- multiProcSingleImage: The multiProcSingleImage example shows how to configure an image to be able to run on multiple cores.

ipc\examples\singlecore
- notify_loopback: This example shows how to use the Notify module. The driver is the NotifyDriverLoopback, so it can be run on a single processor.

ipc\examples\multicore
Please refer to the readme.txt in the multicore platform specific directories for details on how to run.
- message: This example shows messageQ on a multiprocessor system.
- notify: This example shows how to run the Notify module only on a multiprocessor system. 

Version Information

All releases have 4 digits (M.mm.pp.bb). This includes GA and pre-releases (engineering, EA, beta, etc.). Pre-releases are denoted with a suffix (e.g. 1.01.00.15-eng or 1.01.00.21-beta).

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. ipc_1_00_00_40.

Subsequent releases of patch upgrades will be identified by the patch number, ex. IPC 1.00.01.41 with directory ipc_1_00_01_41. Typically, these patches only include critical bug fixes.

Please note that version numbers and compatibility keys are NOT the same. For an explanation of compatibility keys, please refer to the 'Upgrade and Compatibility Information' section.


Technical Support

For technical support, contact softwaresupport@ti.com


Last updated: June 11, 2009