2025-08-04 11:57 AM
I know that the HSEM has been deprecated on the MP2x family of MPUs. However, it still appears to be supported, given that there is an entire chapter (22) dedicated to it in the user manual, as well as having some space carved out for it in the CUBE setup, though those options seem to be disabled. My question is, has anyone used the HSEM on an MP2 MCU, and if so, how is this accomplished? This all came about from a need to raise a *simple* interrupt between cores, without the latency and overhead of OpenAMP, the RIF, remoteproc, etc., etc. It seems straightforward enough, but if the MP2 does not support HSEM, then why is it presented in the manual as though it does? This makes no sense. I have had a couple of people tell me that HSEM is not preferred (okay, fine) but nobody has been able to explain why the documentation at least suggests it can be used, whatever its favored status. Thanks to anyone who can shed some light. It seems unbelievable that this beast of a micro has no was to send a simple EXTI between cores.
Solved! Go to Solution.
2025-08-05 5:52 AM
Hi,
I'm not expert, but there should be IPCC functions inside CubeMP2 HAL provided for Cortex-M33.
for Linux, there is already a driver provided.
Both are the basis of OpenAMP and you will find some examples.
see also https://wiki.st.com/stm32mpu/wiki/IPCC_internal_peripheral
Regards.
2025-08-05 12:04 AM
Hi @VO ,
HSEM is there for some legacy and maybe bare-metal usage. Due to long product development, sometimes some small pieces of HW are kept and in the end might not be used (or used only internally for tests purposes).
IPCC could be used for interprocessor interrupt generation.
Alternatively, SEV instruction could generate interrupt to other core thru EXTI.
regards.
2025-08-05 5:12 AM
Thank you, Patrick. That makes more sense than anything I have found so far.
On the IPCC, we are happy to use that but likewise have very little to go on to get started. The IPCC is a totally new concept here, and I will review the chapter dealing with it again today. If ST can help by pointing us to an app note, reference, or off the cuff code snippet, that may be all we need. Thanks again.
2025-08-05 5:52 AM
Hi,
I'm not expert, but there should be IPCC functions inside CubeMP2 HAL provided for Cortex-M33.
for Linux, there is already a driver provided.
Both are the basis of OpenAMP and you will find some examples.
see also https://wiki.st.com/stm32mpu/wiki/IPCC_internal_peripheral
Regards.