This 'port' is largely based on the existing CCS port that exists for this part. It isn't 'zero copy' by any means and does have a few known issues:
*) IDLE (hook) task may be starved if any of the math tasks are run.
*) The suicidal tasks will consume memory faster than the IDLE task can reclaim the memory; or at least that is my current understanding.
*) heap5.c is used to isolate a block of memory for the demo vs. 'fighting' the linker; maybe not 100% required; but done.
*) some of the library routines are brought in to prevent the linker from bringing ones in that are incompatible with the processor's initialization requirements.
*) I comment things in and out a lot when I try to figure out what is wrong with code; so if that bugs you - feel free to erase all comments.
*) I am not 100% sure the FP tasks may not be going out of their advertised bounds when running; so you have been warned. I need to do a little more debug to make sure that is not happening.
*) main_blinky.c is where most of the demo is driven from - you can comment tasks in and out to see how things are run. If you have the HDK board you should see some LED activity - it will appear to blink in a circular pattern if the timer and queueing demo tasks are run.
EWARM v7.4, FreeRTOS kernel v8.2.1.
Attached file is in 7Zip compressed format. You can find that on the internet.
Hercules (ARM R4F Core) TMS570LS3137 IAR Port For TI's 3137 Based HDK
HDK_3137_IAR - 2.7z