Hi,
First my tools versions are:
XDCtools 3.23.4.60
SYS/BIOS 6.33.6.50
IPC 1.24.3.32
CCS 5.1.0.090000
Device C6678
Gnerally the ROV problems are posted in CCS forum, but I think mine is related to the memory configuration I'm using, so I'm posting it here.
I'm getting errors when I try to see some modules in ROV (like GateMP, HeapMemMP, MessageQ). The error messages are like:
"Received exception from ROV server: Target memory read failed at address 0x88zzzzzz, length: 8 This read is at an INVALID address according to the applications section map. The application is likely either uninitializaed or corrupt."
The address varies with the module, but are always 0x88zzzzzz.
0x88000000 is related to the shared memory defined in the cfg file
/* Shared Memory base address and length */
var SHAREDMEM = 0x80000000;
var SHAREDMEMSIZE = 0x08000000;
If I set the size as 0x10000000 the errors address would be like 0x900zzzzz.
The platform was edited and the code memory is MSMCSRAM. Also the default heap is a HeapMem instance allocated in DDR3 memory.
In the .map I found the following entries related to the address 0x88000000:
ti.sdo.ipc.SharedRegion_0
* 0 80000000 08000000 NOLOAD SECTION
80000000 08000000 --HOLE--
systemHeap
* 0 88000000 00000000 UNINITIALIZED
LINKER GENERATED COPY TABLES
__TI_cinit_table @ 00832494 records: 5, size/record: 8, table size: 40
.fardata: load addr=008319ec, load size=00000a77 bytes, run addr=0082fd50, run size=00001b04 bytes, compression=rle
.neardata: load addr=00832470, load size=00000009 bytes, run addr=008319e0, run size=0000000c bytes, compression=rle
.bss: load addr=0083247c, load size=00000008 bytes, run addr=008319d4, run size=0000000a bytes, compression=zero_init
.far: load addr=00832484, load size=00000008 bytes, run addr=00816000, run size=00014390 bytes, compression=zero_init
systemHeap: load addr=0083248c, load size=00000008 bytes, run addr=88000000, run size=00000000 bytes, compression=zero_init
GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
address name
-------- ----
88000000 ti_sysbios_heaps_HeapMem_Instance_State_0_buf__A
If I use the MessageQ example the module address is located in L2 and the ROV works fine. Any idea of how I can allocate the queues in DDR3 and still use ROV?
Thanks