This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

platform_write in multicore applications

Hi all,

I am trying to make a multicore application for the C6678. For debugging purposes, I have lots of platform_write in my code, specially at startup.
When my application runs, these platform_write are mixed and I see garbled text on the console. So, I have made a new function
my_platform_write to ensure that no more than one core accesses platform_write simultaneously. It basically makes this:

GateMP_open()
platform_write()
GateMP_leave()

over a previously created GateMP. With this change the problem has gone. However, the problem still persists with those platform_write called from TI libraries.
For example, when initializing ethernet stuff, there is a

platform_write ("Ethernet subsystem successfully initialized \n");

which mixes with my my_platform_write calls from other cores, since the standard platform_write does not use my gate.

I have followed the code and platform_write calls platform_uart_write for each character, which just calls UartWriteData, which writes a register. So, it seems that there is no entry point for a user synchronization routine.

Is there a way of forcing platform_write (called from supplied libraries) to use my gate or any other similar mechanism to prevent garbling?