Hi,
I'm using CCS Version: 6.1.0.00104, TIRTOS: tirtos_tivac_2_14_04_31 with TM4C129.
My Hardware design contain 8MB of external RAM and i was able to create two heap instance at the same time, internal heap (internal memory) and external heap (external memory). i want to make the internal memory for the small/fast heap allocation for tasks, mutex, mbox, so on. while the external memory for the large/slow heap allocation like WOLFSSL.
var heapExternalMemoryParams = new HeapMem.Params;
heapExternalMemoryParams.size = 0x40000;
heapExternalMemoryParams.sectionName = ".externalHeap";
heapExternalMemoryParams.instance.name = "externalHeap";
Program.global.externalHeap = HeapMem.create(heapExternalMemoryParams);
/* Internal heap
*/
var heapInternalMemoryParams = new HeapMem.Params;
heapInternalMemoryParams.size = 0x26000;
heapInternalMemoryParams.sectionName = ".bss";
heapInternalMemoryParams.instance.name = "internalHeap";
Program.global.internalHeap = HeapMem.create(heapInternalMemoryParams);
i set the default allocation for the external memory using
Memory.defaultHeapInstance = Program.global.externalHeap;
and i selected the internal heap for the tasks, mutex, mbox, so on., using
BIOS.common$.instanceHeap = Program.global.internalHeap;
Semaphore.common$.instanceHeap = Program.global.internalHeap;
Swi.common$.instanceHeap = Program.global.internalHeap;
Task.common$.instanceHeap = Program.global.internalHeap;
Event.common$.instanceHeap = Program.global.internalHeap;
Timer.common$.instanceHeap = Program.global.internalHeap;
Mailbox.common$.instanceHeap = Program.global.internalHeap;
GateMutexPri.common$.instanceHeap = Program.global.internalHeap;
Diags.common$.instanceHeap = Program.global.internalHeap;
unfortunately, the task stacks are allocated in the external memory while it should be allocated in the internal memory as expected.
the cmd and cfg file are included as well.5466.code.rar
Please advice.
Thanks,
Mohammed Fawzy