Tool/software: Code Composer Studio
I use IPCGR for IPC interrupt. In my project, two cores, say core A and core B, may both send interrupts to Core C. In the C6678 Datesheet, it is said that before I can write the IPCGR register, I must unlock the kicker mechanism, My question is: what occur if core A and core B try to unlock the kicker mechanism simultaneous? I guess there are two possible cases.
Case 1: KICK0 and KICK1 registers do not care who unlock the kicker mechanism. Once it is unlocked by either core, the IPCGR register become writable. Then core A and core B can both write the IPCGR register for core C. In this case, will core C miss one of the interrupts?
Case 2: KICK0 and KICK1 registers know who unlock the kicker mechanism. If core A unlock it, then core B can not unlock it again until Core A lock the kicker mechanism. If this is true, the following scenario may occur: Core A unlock the kicker --> Core B try to unlock the kicker, but is blocked. So Core B will halt --> Core A lock the kicker --> Core B resume its execution and unlock the kicker.
Which case is true in C6678? Thank you.
Best wishes!