I got HeapMem out of memory message as below.
ti.sysbios.heaps.HeapMem: line 307: out of memory: handle=0x878638, size=3936
xdc.runtime.Error.raise: terminating execution
I assigned 16MBytes default Heap memory on DDR3 in the .cfg file
var heapMemParams = new HeapMem.Params;
//heapMemParams.size = 0x927C0; // 600KBytes
heapMemParams.size = 0xF42400; // 16MBytes
heapMemParams.sectionName = "systemHeap";
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
//Program.sectMap["systemHeap"] = Program.platform.dataMemory;
Program.sectMap["systemHeap"] = "DDR3_C1";
And, there's enough memory on the DDR3 Heap memory area.
Memory configuration of the map file is like this.
MEMORY CONFIGURATION
name origin length used unused attr fill
---------------------- -------- --------- -------- -------- ---- --------
L2SRAM 00800000 00100000 00098d1c 000672e4 RW X
MSMCSRAM 0c000000 00200000 001037fc 000fc804 RW X
DDR3_C0 80000000 04000000 00000000 04000000 RW X
DDR3_C1 84000000 04000000 00ff0a78 0300f588 RW X
DDR3_C2 88000000 04000000 00000000 04000000 RW X
DDR3_C3 8c000000 04000000 00000000 04000000 RW X
DDR3_TX 90000000 04000000 00000000 04000000 RW X
DDR3_RX 94000000 04000000 00000000 04000000 RW X
DDR3_IF_C0 98000000 02000000 00000000 02000000 RW X
DDR3_IF_C1 9a000000 02000000 00000000 02000000 RW X
DDR3_IF_C2 9c000000 02000000 00000000 02000000 RW X
DDR3_IF_C3 9e000000 02000000 00000000 02000000 RW X
In the ROV(HeapMem), I found something strange.
The Heap memory buffer starts at 0x84000000 with total size of 0xf42400(16M)
But, the FreeList says theres only 0x2 size if free
Did I miss something to do when assign Heap on DDR3?
Regards,
Hoon Lee.