Board: EVMK2G
Tool/software: Linux
Hello,
I'm im having an issue loading my dsp .out image to my board using the mpmcl commands. I've created a DSP project (utilizing IPC to the ARM) that creates the following memory map:
name origin length used unused attr fill ---------------------- -------- --------- -------- -------- ---- -------- L2SRAM 00800000 00100000 000f5c3a 0000a3c6 RW X MSMCSRAM 0c000000 00100000 000ba618 000459e8 RW X DDR3 80000000 80000000 00000000 80000000 RW X
I use about 72% of my avaialbe 1mb of MSMCSRM and my code compiles correctly and I'm able to load with the debugger just fine.
However when I try and load it with the mpmcl commands:
mpmcl reset dsp0
mpmcl load dsp0 dsp.out
It pings just fine but I get an <error:-104>. I checked the daemon.log file and here is more detail:
Sep 11 17:54:44 k2g-evm mpmsrv[608]: mpmssm.c:541:mpm_reset_slave: resetting dsp0
Sep 11 17:54:44 k2g-evm mpmsrv[608]: mpmsrv.c:77:mpm_server: waiting for slave message
Sep 11 17:54:44 k2g-evm mpmsrv[608]: mpmsrv.c:110:mpm_server: received message of size 77 bytes for cmd 1
Sep 11 17:54:44 k2g-evm mpmsrv[608]: mpmsrv.c:134:mpm_server: received load command for dsp0 filename /home/root/projects/seti/exe/dsp
Sep 11 17:54:44 k2g-evm mpmsrv[608]: mpmdlif.c:183:map_and_copy_segment: transport mmap failed for addr 0xc000000 size 763416 (err: No such file or directory)
Sep 11 17:54:44 k2g-evm mpmsrv[608]: mpmdlif.c:1245:DLIF_allocate: map and copy failed for image /home/root/projects/seti/exe/dsp with addr 0xc000000, size 0xba618
Sep 11 17:54:44 k2g-evm mpmsrv[608]: mpmdlif.c:1408:DLIF_error: << D L O A D >> ERROR:
Sep 11 17:54:44 k2g-evm mpmsrv[608]: mpmdlif.c:1411:DLIF_error: Failed to allocate target memory for static executable.
.
My mpm_config.json had:
{ "name": "local-msmc", "globaladdr": "0x0c000000", "length": "0x600000", "devicename": "/dev/dspmem" },
and I fixed the 6mb to 1mb. I still get the error. The strange thing is, I can get it to load correctly if I only use ~30% or less of the MSMRAM
Why am I getting an error when I try to use more of the MSMC memory? How do I fix this?