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.

[C6678, IPC] IPC notify with PCIe initialization (including BOOTCFG KICK register configuration)

Hi,

I came from here:
e2e.ti.com/.../919703

My customer has exactly same issue with this post. They are using IPC Notify API across the cores on C6678 and working fine.
Now they modified their code to add the feature of PCIe and then the problem raised -- In PCIe initialization code, there is code related to BOOTCFG KICK register configuration (CSL_BootCfgUnlockKicker() and CSL_BootCfgLockKicker()) and when these codes are executed at once in run-time, IPC Notify APIs get started not-working (No signaling interrupts happens). If they move the PCIe initialization code block to main(), they don't see any issue for now. So they are asking me if this is correct fix for this issue or not. From my thought, it is ok for them to initialize PCIe before Ipc_start() with "Sync all cores" configuration on Core0 for the workaround. I think this might ensure that PCIe initialization is completed before any IPC initialization to cause this issue. What do you think of this ?

Best Regards,
Naoki

PS,
IPC and related software (like PDK) comes form the latest MCSDK environment. I know ProcessorSDK so you don't need to inform this.

  • Hi,
    . So they are asking me if this is correct fix for this issue or not. From my thought, it is ok for them to initialize PCIe before Ipc_start() with "Sync all cores" configuration on Core0 for the workaround.

    From my understanding, Yes. It is good to initialize all the peripherals required before waking up the secondary cores of C66xx DSP and ipc_start()(synchronize across multiple cores).

    Thank you.
  • Ok, thanks Raja.

    Best Regards,
    Naoki