You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am currently using the STM32H747I-DISCO board and trying to implement Dual-Core communication using OpenAMP. I am encountering communication failure when using the provided sample code, and I am unsure about the root cause of the configuration issue. Thank you for your assistance!
Configuration Method
M7 Core: Flashed with the src/main.c from the OpenAMP sample [1].
M4 Core: Flashed with remote/src/main.c (my understanding is this is for the M4).
Both cores use the same overlay [1], detailed below.
Programs were built separately and then flashed to the respective cores using west flash.
M7 Flash Procedure
Path: \zephyrproject\zephyr\samples\subsys\ipc\openamp
M7 Build:
west build -p -b stm32h747i_disco/stm32h747xx/m7 -- "-DDTC_OVERLAY_FILE=boards/stm32h747i_disco_stm32h747xx_m7.overlay"
west flash
M4 Flashing Procedure
Path: \zephyrproject\zephyr\samples\subsys\ipc\openamp\remote
M4 Build:
west build -p -b stm32h747i_disco/stm32h747xx/m4 -- "-DDTC_OVERLAY_FILE=boards/stm32h747i_disco_stm32h747xx_m4.overlay"
west flash
Current Result
On the M7 side, all other initialization steps report no errors. However, execution halts at the line k_sem_take(&data_sem, K_FOREVER); because it does not receive the notification from the M4 (the platform_ipm_callback is not triggered). The M7 is stuck waiting for the M4's message.
Question
I haven't been able to pinpoint the configuration setting that is causing the issue. Since the M4 cannot use printk, it is difficult to confirm its status. I would like to ask the experts if there are any effective methods to debug and resolve this? Thank you!
Sample URL [1] https://github.com/.../main/samples/subsys/ipc/openamp
Overlay Code
DTS
/ {
chosen {
/*
* shared memory reserved for the inter-processor communication
*/
zephyr,ipc_shm = &sram4; // sram4 domainD3 shared memory
zephyr,ipc = &mailbox;
};
};
&mailbox {
status = "okay";
};
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
I am currently using the STM32H747I-DISCO board and trying to implement Dual-Core communication using OpenAMP. I am encountering communication failure when using the provided sample code, and I am unsure about the root cause of the configuration issue. Thank you for your assistance!
Configuration Method
M7 Core: Flashed with the src/main.c from the OpenAMP sample [1].
M4 Core: Flashed with remote/src/main.c (my understanding is this is for the M4).
Both cores use the same overlay [1], detailed below.
Programs were built separately and then flashed to the respective cores using west flash.
M7 Flash Procedure
Path: \zephyrproject\zephyr\samples\subsys\ipc\openamp
M7 Build:
west build -p -b stm32h747i_disco/stm32h747xx/m7 -- "-DDTC_OVERLAY_FILE=boards/stm32h747i_disco_stm32h747xx_m7.overlay"
west flash
M4 Flashing Procedure
Path: \zephyrproject\zephyr\samples\subsys\ipc\openamp\remote
M4 Build:
west build -p -b stm32h747i_disco/stm32h747xx/m4 -- "-DDTC_OVERLAY_FILE=boards/stm32h747i_disco_stm32h747xx_m4.overlay"
west flash
Current Result
On the M7 side, all other initialization steps report no errors. However, execution halts at the line k_sem_take(&data_sem, K_FOREVER); because it does not receive the notification from the M4 (the platform_ipm_callback is not triggered). The M7 is stuck waiting for the M4's message.
Question
I haven't been able to pinpoint the configuration setting that is causing the issue. Since the M4 cannot use printk, it is difficult to confirm its status. I would like to ask the experts if there are any effective methods to debug and resolve this? Thank you!
Sample URL [1]
https://github.com/.../main/samples/subsys/ipc/openamp
Overlay Code
Beta Was this translation helpful? Give feedback.
All reactions