Other Parts Discussed in Thread: SYSBIOS
We are currently trying to setup an example application for the R5F processor based on the IPC example code in the RTOS SDK.
With this example code we want to realize a shared memory handshake between the main application running on A53 and the application running on R5F.
This handshake works on the IPC echo_test_baremetal application on R5F when executing
CSL_armR5CacheEnableDCache(0); /* Disable D-cache */
On our manipulated BIOS-based echo_test application calling function on R5F
CSL_armR5CacheEnableDCache(0); /* Disable D-cache */
leads to an assert or crash, at least the application stops running after the call.
There is missing some initialization to be able to call the function without error, but i don't know what:
int main(void)
{
ipc_initSciclient();
ipc_boardInit(); /* für UART_printf */
UART_printf("UART initialized!\n");
Ipc_loadResourceTable((void*)&ti_ipc_remoteproc_ResourceTable);
UART_printf("LoadResourceTable = %p\n", &ti_ipc_remoteproc_ResourceTable);
CSL_armR5CacheEnableDCache(0); --> Crashes
UART_printf("CSL_armR5CacheEnableDCache\n");
...
}
Maybe someone can help us what is missing to be able to disable D-cache.
Thank you very much