[Speex-dev] Patch, related to TI DSP C54x C55x C6x builds
Jim Crichton
jim.crichton at comcast.net
Thu Aug 18 13:18:07 PDT 2005
Jean-Marc,
I have attached a small patch with modifications to arch.h, bits.c, and
misc.c. This contains the few mods remaining to support the various fixed
point TI DSPs after the work that you did at the end of May (thank you for
this).
arch.h: Add switch for compilers not supporting "long long" (C55x does, C54x
and older C64x does not)
bits.c: Allow external definition for max buffer size, change
MAX_BYTES_PER_FRAME
to MAX_CHARS_PER_FRAME for consistency
misc.c: Added override switches to alloc routines, conditional include of
user file
changes to allow manual memory allocation rather than using heap
Note that none of these changes are necessary to get Speex to run on C55x.
The arch.h change allows operation with older versions of Code Composer
Studio.
The bits.c change reduces the data memory usage, for applications running a
subset of the Speex coding modes.
The misc.c change allows private memory allocation, for cases where it is
not desirable to use the normal heap.
This makes it possible to sort of comply with the TI algorithm interface
standard (xDAIS).
I changed my code today to follow the pattern used for the Sharc port
(OVERRIDE switches), but you might prefer a different style for including
the user-provided allocation routines.
Regards,
Jim Crichton
-------------- next part --------------
A non-text attachment was scrubbed...
Name: speex1-1-10-to-c55x.patch
Type: application/octet-stream
Size: 2882 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/speex-dev/attachments/20050818/7ea8ca40/speex1-1-10-to-c55x.obj
-------------- next part --------------
These are all of the changes and additions necessary to build a loopback application for the
TI C5509A simulator. This build runs 8kbps narrowband, with minimum complexity.
Changed files (from 1.1.10 base):
arch.h: Add switch for compilers not supporting "long long" (C55x does, C54x, old C64x does not)
bits.c: Allow external definition for max buffer size, change MAX_BYTES_PER_FRAME
to MAX_CHARS_PER_FRAME for consistency
misc.c: Added override switches to alloc routines, conditional include of user file
changes to allow manual memory allocation rather than using heap
Note that none of these changes are necessary to get Speex to run on C55x.
The arch.h change allows operation with older versions of Code Composer Studio.
The bits.c change reduces the data memory usage.
The misc.c change allows private memory allocation, for cases where it is not
desirable to use the normal heap.
Added files:
include\config.h (not automatically generated, sets memory sizes, enables manual alloc)
include\speex\speex_config_types.h (match Speex types to compiler types, not generated from types.in)
speex_c55_test\speex_c55_test.cmd (C5509A linker command file)
speex_c55_test\speex_c55_test.pjt (Code Composer Studio Project File )
src\boot.asm (to force wait states to 0 for the simulator, otherwise cycle count is much too high)
src\testenc-54x.c (derived from testenc.c, manual alloc, byte packing/unpacking added)
src\user_misc.h (contains the manual memory alloc routines, with debug code )
More information about the Speex-dev
mailing list